ParkinglotHeatmapDaySMapper.xml 3.61 KB
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.zteits.park.mapper.smapper.ParkinglotHeatmapDaySMapper" >
  <resultMap id="BaseResultMap" type="com.zteits.park.domain.ParkinglotHeatmapDay" >
    <id column="id" property="id" jdbcType="BIGINT" />
    <result column="pl_no" property="plNo" jdbcType="VARCHAR" />
    <result column="pl_name" property="plName" jdbcType="VARCHAR" />
    <result column="pl_province_id" property="plProvinceId" jdbcType="BIGINT" />
    <result column="pl_province_name" property="plProvinceName" jdbcType="VARCHAR" />
    <result column="pl_city_id" property="plCityId" jdbcType="BIGINT" />
    <result column="pl_city_name" property="plCityName" jdbcType="VARCHAR" />
    <result column="pl_country_id" property="plCountryId" jdbcType="BIGINT" />
    <result column="pl_country_name" property="plCountryName" jdbcType="VARCHAR" />
    <result column="lon" property="lon" jdbcType="DECIMAL" />
    <result column="lat" property="lat" jdbcType="DECIMAL" />
    <result column="current_park_count" property="currentParkCount" jdbcType="INTEGER" />
    <result column="ranges" property="ranges" jdbcType="INTEGER" />
    <result column="heatmap_time" property="heatmapTime" jdbcType="TIMESTAMP" />
    <result column="remark" property="remark" jdbcType="VARCHAR" />
    <result column="data_status" property="dataStatus" jdbcType="INTEGER" />
    <result column="create_empid" property="createEmpid" jdbcType="VARCHAR" />
    <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
    <result column="modfiy_empid" property="modfiyEmpid" jdbcType="VARCHAR" />
    <result column="modfiy_date" property="modfiyDate" jdbcType="TIMESTAMP" />
  </resultMap>
  <sql id="Base_Column_List" >
    id, pl_no, pl_name, pl_province_id, pl_province_name, pl_city_id, pl_city_name, pl_country_id, 
    pl_country_name, lon, lat, current_park_count, ranges, heatmap_time, remark, data_status, 
    create_empid, create_date, modfiy_empid, modfiy_date
  </sql>
   <!-- 批量插入 -->
  <insert id="insertParkinglotHeatmapDayList">  
       INSERT INTO parkinglot_heatmap_day
		( pl_no,pl_name,pl_province_id , pl_province_name ,
		  pl_city_id , pl_city_name, pl_country_id,pl_country_name ,
		  lon,lat, current_park_count,ranges ,
		  heatmap_time , create_date)
		SELECT  a.pl_no AS plNo,a.pl_name AS plName,
			a.pl_province_id AS plProvinceId,
			a.pl_province_name  AS plProvinceName,
			a.pl_city_id AS plCityId,
			a.pl_city_name AS plCityName,
			a.pl_country_id AS plCountryId,
			a.pl_country_name  AS plCountryName,
			a.lon AS lon,
			a.lat AS lat ,
		    MAX(a.current_park_count) AS current_park_count,
		    a.ranges AS ranges,
		    MAX(DATE(a.heatmap_time)) AS heatmap_time,
		    NOW() AS create_date
		FROM parkinglot_heatmap_hour a 
		WHERE  DATE(a.heatmap_time) = DATE(#{heatmapTime})
		GROUP BY  a.pl_no,a.pl_name,a.pl_province_id,a.pl_province_name,
			a.pl_city_id,a.pl_city_name,a.pl_country_id,
			a.pl_country_name,a.lon,a.lat, a.ranges
    </insert>  
    <!-- 查询热力分布数据  -->
    <select id="queryParkHeatmapByDay" resultMap="BaseResultMap" >
	    select 
	    <include refid="Base_Column_List" />
	    from parkinglot_heatmap_day
	    where data_status = 1
	    	and pl_province_id = #{provId}
	    	and pl_city_id = #{cityId}
	    	and heatmap_time = DATE(#{queryDate})
	</select>
    
    <!-- 根据heatmapTime 时间删除数据. -->
    <delete id="deleteParkinglotHeatmapDayByheatmapTime" >
         delete from parkinglot_heatmap_day where heatmap_time= #{heatmapTime}
    </delete>
</mapper>