|
|
|
<?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.issue.StatsIssueDao">
|
|
|
|
<select id="selectAgencyIssueTotal" resultType="com.epmet.dto.issue.IssueAgencyDTO">
|
|
|
|
SELECT ORG_ID AS "agencyId",
|
|
|
|
ORG_ID_PATH AS "pIds",
|
|
|
|
ISSUE_STATUS AS "status",
|
|
|
|
COUNT(ID) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(UPDATED_TIME) <![CDATA[ <= ]]> #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID, ISSUE_STATUS
|
|
|
|
</select>
|
|
|
|
<select id="selectAgencyIssueInc" resultType="com.epmet.dto.issue.IssueAgencyDTO">
|
|
|
|
SELECT
|
|
|
|
*
|
|
|
|
FROM
|
|
|
|
(
|
|
|
|
SELECT
|
|
|
|
i.ORG_ID AS "agencyId",
|
|
|
|
i.ORG_ID_PATH AS "pIds",
|
|
|
|
ip.ISSUE_STATUS AS "status",
|
|
|
|
COUNT( ip.ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue i
|
|
|
|
INNER JOIN issue_process ip ON i.ID = ip.ISSUE_ID
|
|
|
|
AND ip.DEL_FLAG = '0'
|
|
|
|
WHERE
|
|
|
|
i.DEL_FLAG = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(ip.CREATED_TIME) = #{date}
|
|
|
|
GROUP BY
|
|
|
|
i.ORG_ID,
|
|
|
|
ip.ISSUE_STATUS
|
|
|
|
) a
|
|
|
|
ORDER BY
|
|
|
|
agencyId
|
|
|
|
|
|
|
|
</select>
|
|
|
|
<select id="selectAgencyClosedIssueTotal" resultType="com.epmet.dto.issue.IssueAgencyDTO">
|
|
|
|
SELECT
|
|
|
|
ORG_ID AS "agencyId",
|
|
|
|
ORG_ID_PATH AS "pIds",
|
|
|
|
RESOLVE_TYPE AS "status",
|
|
|
|
COUNT( ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND ISSUE_STATUS = 'closed'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(UPDATED_TIME) <![CDATA[ <= ]]> #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID,
|
|
|
|
RESOLVE_TYPE
|
|
|
|
</select>
|
|
|
|
<select id="selectAgencyClosedIssueInc" resultType="com.epmet.dto.issue.IssueAgencyDTO">
|
|
|
|
SELECT
|
|
|
|
ORG_ID AS "agencyId",
|
|
|
|
ORG_ID_PATH AS "pIds",
|
|
|
|
RESOLVE_TYPE AS "status",
|
|
|
|
COUNT( ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND ISSUE_STATUS = 'closed'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(UPDATED_TIME) = #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID,
|
|
|
|
RESOLVE_TYPE
|
|
|
|
</select>
|
|
|
|
<select id="selectGridIssueTotal" resultType="com.epmet.dto.issue.IssueGridDTO">
|
|
|
|
SELECT ORG_ID AS "agencyId",
|
|
|
|
GRID_ID AS "gridId",
|
|
|
|
ISSUE_STATUS AS "status",
|
|
|
|
COUNT(ID) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(CREATED_TIME) <![CDATA[ <= ]]> #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID, GRID_ID, ISSUE_STATUS
|
|
|
|
</select>
|
|
|
|
<select id="selectGridIssueInc" resultType="com.epmet.dto.issue.IssueGridDTO">
|
|
|
|
SELECT
|
|
|
|
*
|
|
|
|
FROM
|
|
|
|
(
|
|
|
|
SELECT
|
|
|
|
i.ORG_ID AS "agencyId",
|
|
|
|
i.GRID_ID AS "gridId",
|
|
|
|
ip.ISSUE_STATUS AS "status",
|
|
|
|
COUNT( ip.ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue i
|
|
|
|
INNER JOIN issue_process ip ON i.ID = ip.ISSUE_ID
|
|
|
|
AND ip.DEL_FLAG = '0'
|
|
|
|
WHERE
|
|
|
|
i.DEL_FLAG = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(ip.CREATED_TIME) = #{date}
|
|
|
|
GROUP BY
|
|
|
|
i.ORG_ID,
|
|
|
|
i.GRID_ID,
|
|
|
|
ip.ISSUE_STATUS
|
|
|
|
) a
|
|
|
|
ORDER BY
|
|
|
|
agencyId
|
|
|
|
</select>
|
|
|
|
<select id="selectGridClosedIssueTotal" resultType="com.epmet.dto.issue.IssueGridDTO">
|
|
|
|
SELECT
|
|
|
|
ORG_ID AS "agencyId",
|
|
|
|
GRID_ID AS "gridId",
|
|
|
|
RESOLVE_TYPE AS "status",
|
|
|
|
COUNT( ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND ISSUE_STATUS = 'closed'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(UPDATED_TIME) <![CDATA[ <= ]]> #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID,
|
|
|
|
GRID_ID,
|
|
|
|
RESOLVE_TYPE
|
|
|
|
</select>
|
|
|
|
<select id="selectGridClosedIssueInc" resultType="com.epmet.dto.issue.IssueGridDTO">
|
|
|
|
SELECT
|
|
|
|
ORG_ID AS "agencyId",
|
|
|
|
GRID_ID AS "gridId",
|
|
|
|
RESOLVE_TYPE AS "status",
|
|
|
|
COUNT( ID ) AS "count"
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND ISSUE_STATUS = 'closed'
|
|
|
|
AND CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE(UPDATED_TIME) = #{date}
|
|
|
|
GROUP BY
|
|
|
|
ORG_ID,
|
|
|
|
GRID_ID,
|
|
|
|
RESOLVE_TYPE
|
|
|
|
</select>
|
|
|
|
<select id="selectIssueProjectList" resultType="com.epmet.dto.issue.IssueProjectDTO">
|
|
|
|
SELECT
|
|
|
|
i.ID AS "issueId",
|
|
|
|
ipr.PROJECT_ID AS "projectId",
|
|
|
|
i.GRID_ID AS "gridId"
|
|
|
|
FROM
|
|
|
|
issue i
|
|
|
|
INNER JOIN issue_project_relation ipr ON (i.ID = ipr.ISSUE_ID AND ipr.DEL_FLAG = '0')
|
|
|
|
WHERE
|
|
|
|
i.DEL_FLAG = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<select id="selectGridProjectList" resultType="com.epmet.entity.issue.IssueEntity">
|
|
|
|
SELECT
|
|
|
|
i.id AS "id",
|
|
|
|
i.grid_id AS "gridId",
|
|
|
|
i.org_id AS "orgId",
|
|
|
|
ipr.project_id AS "projectId"
|
|
|
|
FROM
|
|
|
|
issue i
|
|
|
|
INNER JOIN issue_project_relation ipr ON i.id = ipr.issue_id
|
|
|
|
WHERE
|
|
|
|
i.del_flag = '0'
|
|
|
|
AND ipr.del_flag = '0'
|
|
|
|
AND i.customer_id = #{customerId}
|
|
|
|
<![CDATA[AND DATE_FORMAT(ipr.created_time, "%Y-%m-%d") <= DATE_FORMAT(#{createdTime}, "%Y-%m-%d")]]>
|
|
|
|
</select>
|
|
|
|
<select id="selectIssueInfoByIds" resultType="com.epmet.dto.issue.IssueDTO" parameterType="java.util.List">
|
|
|
|
SELECT
|
|
|
|
ID,
|
|
|
|
ISSUE_STATUS,
|
|
|
|
SOURCE_TYPE,
|
|
|
|
SOURCE_ID,
|
|
|
|
CLOSE_REASON,
|
|
|
|
RESOLVE_TYPE,
|
|
|
|
ISSUE_TITLE,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
GRID_ID,
|
|
|
|
ORG_ID_PATH,
|
|
|
|
ORG_ID,
|
|
|
|
CREATED_BY
|
|
|
|
FROM
|
|
|
|
issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND SOURCE_TYPE = 'resi_topic'
|
|
|
|
<foreach collection="ids" item="item" open="AND( " separator=" OR " index="index" close=")">
|
|
|
|
ID = #{item}
|
|
|
|
</foreach>
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询议题信息【根据客户,dateId 】 -->
|
|
|
|
<select id="selectIssueInfo" resultType="com.epmet.dto.extract.result.IssueInfoResultDTO">
|
|
|
|
SELECT
|
|
|
|
ID AS issueId,
|
|
|
|
ISSUE_STATUS,
|
|
|
|
RESOLVE_TYPE as resolveType,
|
|
|
|
SOURCE_ID AS topicId,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
GRID_ID,
|
|
|
|
ORG_ID AS agencyId,
|
|
|
|
CREATED_BY AS userId
|
|
|
|
FROM issue
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND customer_id = #{customerId}
|
|
|
|
AND DATE_FORMAT( CREATED_TIME, '%Y%m%d' ) = #{dateId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询议题process信息 -->
|
|
|
|
<select id="selectIssueProcessInfo" resultType="com.epmet.dto.extract.result.IssueProcessInfoResultDTO">
|
|
|
|
SELECT
|
|
|
|
i.GRID_ID AS gridId,
|
|
|
|
i.ORG_ID AS agencyId,
|
|
|
|
i.CUSTOMER_ID AS customerId,
|
|
|
|
ip.ISSUE_ID AS issueId,
|
|
|
|
ip.CREATED_BY AS userId,
|
|
|
|
ip.created_time as createTime,
|
|
|
|
(case when i.RESOLVE_TYPE = 'resolved' then 'closed_resolved'
|
|
|
|
when i.RESOLVE_TYPE = 'unresolved' then 'closed_unresolved'
|
|
|
|
else ip.ISSUE_STATUS end ) AS actionCode
|
|
|
|
FROM
|
|
|
|
issue_process ip
|
|
|
|
LEFT JOIN issue i ON i.id = ip.issue_id
|
|
|
|
WHERE
|
|
|
|
i.DEL_FLAG = '0'
|
|
|
|
AND ip.DEL_FLAG = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE_FORMAT(i.CREATED_TIME,'%Y%m%d') = #{dateId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询议题满意度评价信息 -->
|
|
|
|
<select id="selectIssueSatisfactionInfo" resultType="com.epmet.dto.extract.result.SatisfactionInfoResultDTO">
|
|
|
|
SELECT
|
|
|
|
isd.ISSUE_ID AS issueId,
|
|
|
|
( CASE WHEN isd.SATISFACTION = 'bad' THEN 'evaluste_bad'
|
|
|
|
WHEN isd.SATISFACTION = 'good' THEN 'evaluste_good'
|
|
|
|
WHEN isd.SATISFACTION = 'perfect' THEN 'evaluste_perfect'
|
|
|
|
ELSE '' END ) AS actionCode,
|
|
|
|
isd.CREATED_BY AS userId,
|
|
|
|
i.GRID_ID AS gridId,
|
|
|
|
i.ORG_ID AS agencyId,
|
|
|
|
i.CUSTOMER_ID AS customerId
|
|
|
|
FROM
|
|
|
|
issue_satisfaction_detail isd
|
|
|
|
LEFT JOIN issue i ON i.id = isd.issue_id
|
|
|
|
WHERE
|
|
|
|
isd.del_flag = '0'
|
|
|
|
AND i.del_flag = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE_FORMAT(isd.CREATED_TIME,'%Y%m%d') = #{dateId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询议题支持反对信息 -->
|
|
|
|
<select id="selectIssueVoteInfo" resultType="com.epmet.dto.extract.result.SatisfactionInfoResultDTO">
|
|
|
|
SELECT
|
|
|
|
ivd.ISSUE_ID AS issueId,
|
|
|
|
( CASE WHEN ivd.ATTITUDE = 'support' THEN 'vote_support'
|
|
|
|
WHEN ivd.ATTITUDE = 'opposition' THEN 'vote_opposition'
|
|
|
|
ELSE '' END ) AS actionCode,
|
|
|
|
ivd.CREATED_BY AS userId,
|
|
|
|
i.GRID_ID AS gridId,
|
|
|
|
i.ORG_ID AS agencyId,
|
|
|
|
i.CUSTOMER_ID AS customerId
|
|
|
|
FROM
|
|
|
|
issue_vote_detail ivd
|
|
|
|
LEFT JOIN issue i ON i.id = ivd.issue_id
|
|
|
|
WHERE
|
|
|
|
ivd.del_flag = '0'
|
|
|
|
AND i.del_flag = '0'
|
|
|
|
AND i.CUSTOMER_ID = #{customerId}
|
|
|
|
AND DATE_FORMAT(ivd.CREATED_TIME,'%Y%m%d') = #{dateId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
</mapper>
|