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.
 
 
 
 
 

126 lines
4.2 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.indexcoll.FactIndexPartyAblityCpcMonthlyDao">
<delete id="deleteFactIndexPartyAblityCpcMonthly">
delete from fact_index_party_ablity_cpc_monthly
where CUSTOMER_ID = #{customerId} AND AGENCY_ID = #{agencyId} AND GRID_ID = #{gridId} AND USER_ID = #{userId}
AND YEAR_ID = #{yearId} AND MONTH_ID = #{monthId} AND QUARTER_ID = #{quarterId}
</delete>
<insert id="batchInsertFactIndexPartyAblityCpcMonthly" parameterType="map">
insert into fact_index_party_ablity_cpc_monthly
(
ID,
CUSTOMER_ID,
AGENCY_ID,
PARENT_ID,
GRID_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID,
CREATE_TOPIC_COUNT,
JOIN_TOPIC_COUNT,
SHIFT_ISSUE_COUNT,
SHIFT_PROJECT_COUNT,
JOIN_THREE_MEETS_COUNT,
GROUP_USER_COUNT,
GROUP_TOPIC_COUNT,
TOPIC_TO_ISSUE_RATIO,
GROUP_ACTIVE_USER_COUNT,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME,
USER_ID
) values
<foreach collection="list" item="item" index="index" separator=",">
(
(SELECT REPLACE(UUID(), '-', '') AS id),
#{customerId},
#{item.agencyId},
#{item.parentId},
#{item.gridId},
#{item.monthId},
#{item.quarterId},
#{item.yearId},
#{item.createTopicCount},
#{item.joinTopicCount},
#{item.shiftIssueCount},
#{item.shiftProjectCount},
#{item.joinThreeMeetsCount},
#{item.groupUserCount},
#{item.groupTopicCount},
#{item.topicToIssueRatio},
#{item.groupActiveUserCount},
0,
0,
'APP_USER',
now(),
'APP_USER',
now(),
#{item.userId}
)
</foreach>
</insert>
<select id="getExtremeValue" resultType="java.util.Map">
SELECT
MIN( CREATE_TOPIC_COUNT ) CREATE_TOPIC_COUNT_MIN,
MAX( CREATE_TOPIC_COUNT ) CREATE_TOPIC_COUNT_MAX,
MAX( JOIN_TOPIC_COUNT ) JOIN_TOPIC_COUNT_MIN,
MAX( JOIN_TOPIC_COUNT ) JOIN_TOPIC_COUNT_MAX,
MIN( SHIFT_ISSUE_COUNT ) SHIFT_ISSUE_COUNT_MIN,
MAX( SHIFT_ISSUE_COUNT ) SHIFT_ISSUE_COUNT_MAX,
MIN( SHIFT_PROJECT_COUNT ) SHIFT_PROJECT_COUNT_MIN,
MAX( SHIFT_PROJECT_COUNT ) SHIFT_PROJECT_COUNT_MAX,
MIN( JOIN_THREE_MEETS_COUNT ) JOIN_THREE_MEETS_COUNT_MIN,
MAX( JOIN_THREE_MEETS_COUNT ) JOIN_THREE_MEETS_COUNT_MAX,
MIN( GROUP_USER_COUNT ) GROUP_USER_COUNT_MIN,
MAX( GROUP_USER_COUNT ) GROUP_USER_COUNT_MAX,
MIN( GROUP_ACTIVE_USER_COUNT ) GROUP_ACTIVE_USER_COUNT_MIN,
MAX( GROUP_ACTIVE_USER_COUNT ) GROUP_ACTIVE_USER_COUNT_MAX,
MIN( GROUP_TOPIC_COUNT ) GROUP_TOPIC_COUNT_MIN,
MAX( GROUP_TOPIC_COUNT ) GROUP_TOPIC_COUNT_MAX,
MIN( TOPIC_TO_ISSUE_RATIO ) TOPIC_TO_ISSUE_RATIO_MIN,
MAX( TOPIC_TO_ISSUE_RATIO ) TOPIC_TO_ISSUE_RATIO_MAX
FROM
fact_index_party_ablity_cpc_monthly
WHERE
CUSTOMER_ID = #{customerId,jdbcType=VARCHAR} AND DEL_FLAG = '0'
</select>
<select id="getCountByMonthId" resultType="java.util.Map">
SELECT
CUSTOMER_ID,
AGENCY_ID,
PARENT_ID,
GRID_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID,
USER_ID,
CREATE_TOPIC_COUNT,
JOIN_TOPIC_COUNT,
SHIFT_ISSUE_COUNT,
SHIFT_PROJECT_COUNT,
JOIN_THREE_MEETS_COUNT,
GROUP_USER_COUNT,
GROUP_TOPIC_COUNT,
TOPIC_TO_ISSUE_RATIO,
GROUP_ACTIVE_USER_COUNT
FROM
fact_index_party_ablity_cpc_monthly
WHERE
CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
AND MONTH_ID = #{monthId,jdbcType=VARCHAR}
LIMIT #{offset},#{pageSize}
</select>
</mapper>