You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
4.1 KiB
100 lines
4.1 KiB
<?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.epmet.dao.stats.FactGroupGridDailyDao">
|
|
|
|
<resultMap type="com.epmet.entity.stats.FactGroupGridDailyEntity" id="factGroupGridDailyMap">
|
|
<result property="id" column="ID"/>
|
|
<result property="agencyId" column="AGENCY_ID"/>
|
|
<result property="gridId" column="GRID_ID"/>
|
|
<result property="dateId" column="DATE_ID"/>
|
|
<result property="weekId" column="WEEK_ID"/>
|
|
<result property="monthId" column="MONTH_ID"/>
|
|
<result property="yearId" column="YEAR_ID"/>
|
|
<result property="quarterId" column="QUARTER_ID"/>
|
|
<result property="gridTotal" column="GRID_TOTAL"/>
|
|
<result property="groupTotal" column="GROUP_TOTAL"/>
|
|
<result property="groupMemberTotal" column="GROUP_MEMBER_TOTAL"/>
|
|
<result property="groupMemberAvgCount" column="GROUP_MEMBER_AVG_COUNT"/>
|
|
<result property="groupMedian" column="GROUP_MEDIAN"/>
|
|
<result property="groupIncr" column="GROUP_INCR"/>
|
|
<result property="groupMemberMaxCount" column="GROUP_MEMBER_MAX_COUNT"/>
|
|
<result property="maxMemberGroupId" column="MAX_MEMBER_GROUP_ID"/>
|
|
<result property="groupMemberMinCount" column="GROUP_MEMBER_MIN_COUNT"/>
|
|
<result property="minMemberGroupId" column="MIN_MEMBER_GROUP_ID"/>
|
|
<result property="delFlag" column="DEL_FLAG"/>
|
|
<result property="revision" column="REVISION"/>
|
|
<result property="createdBy" column="CREATED_BY"/>
|
|
<result property="createdTime" column="CREATED_TIME"/>
|
|
<result property="updatedBy" column="UPDATED_BY"/>
|
|
<result property="updatedTime" column="UPDATED_TIME"/>
|
|
</resultMap>
|
|
|
|
<insert id="insertGroupGridDaily">
|
|
INSERT INTO fact_group_grid_daily (ID, CUSTOMER_ID, AGENCY_ID, GRID_ID, DATE_ID, WEEK_ID, MONTH_ID, YEAR_ID, QUARTER_ID, GRID_TOTAL,
|
|
GROUP_TOTAL, GROUP_MEMBER_TOTAL, GROUP_MEMBER_AVG_COUNT, GROUP_MEDIAN, GROUP_INCR, GROUP_MEMBER_MAX_COUNT, MAX_MEMBER_GROUP_ID,
|
|
GROUP_MEMBER_MIN_COUNT, MIN_MEMBER_GROUP_ID, DEL_FLAG, REVISION, CREATED_BY, CREATED_TIME, UPDATED_BY, UPDATED_TIME)
|
|
VALUES
|
|
<foreach collection="formDto" item="grid" separator=",">
|
|
(
|
|
REPLACE(UUID(),'-',''),
|
|
#{grid.customerId},
|
|
#{grid.agencyId},
|
|
#{grid.gridId},
|
|
#{grid.dateId},
|
|
#{grid.weekId},
|
|
#{grid.monthId},
|
|
#{grid.yearId},
|
|
#{grid.quarterId},
|
|
#{grid.gridTotal},
|
|
#{grid.groupTotal},
|
|
#{grid.groupMemberTotal},
|
|
#{grid.groupMemberAvgCount},
|
|
#{grid.groupMedian},
|
|
#{grid.groupIncr},
|
|
#{grid.groupMemberMaxCount},
|
|
#{grid.maxMemberGroupId},
|
|
#{grid.groupMemberMinCount},
|
|
#{grid.minMemberGroupId},
|
|
#{grid.delFlag},
|
|
#{grid.revision},
|
|
#{grid.createdBy},
|
|
NOW(),
|
|
#{grid.updatedBy},
|
|
NOW()
|
|
)
|
|
</foreach>
|
|
</insert>
|
|
|
|
<!-- 删除已存在的数据【当天】防止当天数据多条 -->
|
|
<delete id="deleteInsertDateId">
|
|
DELETE
|
|
FROM
|
|
fact_group_grid_daily
|
|
WHERE
|
|
date_id = #{dateId}
|
|
AND customer_id = #{customerId}
|
|
limit 1000
|
|
</delete>
|
|
|
|
<!-- 根据机关级别查询小组数据 -->
|
|
<select id="selectGroupCountByOrgLevel" resultType="com.epmet.entity.evaluationindex.screen.ScreenUserTotalDataEntity">
|
|
SELECT
|
|
<choose>
|
|
<when test='"grid" == orgLevel'>GRID_ID AS orgId,GROUP_TOTAL AS groupTotal</when>
|
|
<otherwise>AGENCY_ID AS orgId,GROUP_TOTAL_COUNT AS groupTotal</otherwise>
|
|
</choose>
|
|
|
|
FROM
|
|
<choose>
|
|
<when test='"grid" == orgLevel'>fact_group_grid_daily</when>
|
|
<otherwise>fact_group_agency_daily</otherwise>
|
|
</choose>
|
|
|
|
WHERE
|
|
DEL_FLAG = '0'
|
|
AND CUSTOMER_ID = #{customerId}
|
|
AND DATE_ID = #{dateId}
|
|
</select>
|
|
|
|
</mapper>
|