烟台政务云平台
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.
 
 
 
 
 

139 lines
4.4 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.DimCustomerPartymemberDao">
<!-- 批量插入党员信息 -->
<insert id="insertPartyMemberInfo">
INSERT INTO dim_customer_partymember (
ID,
CUSTOMER_ID,
GRID_ID,
AGENCY_ID,
PARENT_ID,
PIDS,
DATE_ID,
WEEK_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID,
USER_ID,
ID_CARD,
BIRTHDAY,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME
)
VALUES
<foreach collection="partyMemberInfos" item="item" separator=",">
(
REPLACE ( UUID(), '-', '' ),
#{item.customerId},
#{item.gridId},
#{item.agencyId},
#{item.parentId},
#{item.pids},
#{item.dateId},
#{item.weekId},
#{item.monthId},
#{item.quarterId},
#{item.yearId},
#{item.userId},
#{item.idCard},
#{item.birthday},
#{item.delFlag},
#{item.revision},
#{item.createdBy},
NOW(),
#{item.updatedBy},
NOW()
)
</foreach>
</insert>
<!-- 删除旧党员记录 -->
<delete id="deleteOldPartyRecord">
DELETE FROM dim_customer_partymember
WHERE
CUSTOMER_ID = #{customerId}
AND DATE_ID = #{dateId}
</delete>
<!-- 查询客户下所有的党员, 构造好党员相关-党建能力初始值 -->
<select id="selectPartyMemberList" parameterType="java.lang.String" resultType="com.epmet.entity.evaluationindex.indexcoll.FactIndexPartyAblityCpcMonthlyEntity">
SELECT
dcp.CUSTOMER_ID,
dcp.GRID_ID,
dcp.AGENCY_ID,
dcp.PARENT_ID,
null as MONTH_ID,
null as QUARTER_ID,
null as YEAR_ID,
dcp.USER_ID,
0 as CREATE_TOPIC_COUNT,
0 as JOIN_TOPIC_COUNT,
0 as SHIFT_ISSUE_COUNT,
0 as SHIFT_PROJECT_COUNT,
0 as JOIN_THREE_MEETS_COUNT,
0 as GROUP_USER_COUNT,
0 as GROUP_ACTIVE_USER_COUNT,
0 as GROUP_TOPIC_COUNT,
0 as TOPIC_TO_ISSUE_RATIO
FROM
dim_customer_partymember dcp
WHERE
dcp.DEL_FLAG = '0'
AND dcp.CUSTOMER_ID =#{customerId}
</select>
<!-- 查询党员信息 -->
<select id="selectPartyMemberInfo" resultType="com.epmet.dto.extract.result.PartyMemberInfoResultDTO">
SELECT
dcp.GRID_ID,
dcp.AGENCY_ID,
dcp.PARENT_ID,
dcp.BIRTHDAY,
scg.GRID_NAME,
sca.AGENCY_NAME
FROM dim_customer_partymember dcp
LEFT JOIN screen_customer_grid scg ON scg.GRID_ID = dcp.GRID_ID
LEFT JOIN screen_customer_agency sca ON sca.AGENCY_ID = dcp.AGENCY_ID
WHERE
dcp.DEL_FLAG = '0'
AND scg.DEL_FLAG = 0
AND sca.DEL_FLAG = 0
AND dcp.CUSTOMER_ID = #{customerId}
AND
(
<foreach collection="gridIds" item="gridId" separator=" OR ">
dcp.GRID_ID = #{gridId}
</foreach>
)
</select>
<!-- 查询网格内注册的党员,用户id -->
<select id="selectGridPartyMemberUserIds" parameterType="map" resultType="java.lang.String">
select dcp.USER_ID
FROM
dim_customer_partymember dcp
WHERE
dcp.DEL_FLAG = '0'
AND dcp.CUSTOMER_ID =#{customerId}
and dcp.GRID_ID=#{gridId}
</select>
<!-- 社区内注册的党员 -->
<select id="selectCommunityPartyMemberUserIds" parameterType="map" resultType="java.lang.String">
select dcp.USER_ID
FROM
dim_customer_partymember dcp
WHERE
dcp.DEL_FLAG = '0'
AND dcp.CUSTOMER_ID =#{customerId}
and dcp.AGENCY_ID=#{communityId}
</select>
</mapper>