<?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.dg.core.db.gen.mapper.HomeStatisticsMapper">
|
|
<!-- 按办结量排序 -->
|
<select id="guidePlatePeople" resultType="com.dg.core.db.gen.entity.GuidePlate">
|
SELECT
|
user_name as userName,
|
(SELECT organization_name FROM automessage_organization_chart WHERE automessage_organization_chart.id=department_id) as departmentNmae,
|
(select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
and automessage_guide_repair_order.state=3
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>) as num
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY
|
num DESC
|
LIMIT 10
|
</select>
|
|
<!-- 按评分排序 -->
|
<select id="score" resultType="com.dg.core.db.gen.entity.GuidePlate">
|
SELECT
|
user_name,
|
(SELECT organization_name FROM automessage_organization_chart WHERE automessage_organization_chart.id=department_id) as departmentNmae,
|
( format((select sum(IF(evaluate_state='1',10,IF(evaluate_state='2',5,0))) from automessage_guide_repair_order
|
WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
)/(select count(id) from automessage_guide_repair_order
|
WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>),1)
|
) as num
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY
|
num DESC
|
LIMIT 10
|
</select>
|
|
<!-- 按超时 -->
|
<select id="timeout" resultType="com.dg.core.db.gen.entity.GuidePlate">
|
SELECT
|
user_name as userName,
|
(SELECT organization_name FROM automessage_organization_chart WHERE automessage_organization_chart.id=department_id) as departmentNmae,
|
(select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
and automessage_guide_repair_order.is_timeout=2 <if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
) as num
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY
|
num DESC
|
LIMIT 10
|
</select>
|
|
|
<!-- 按未办结 -->
|
<select id="tosettled" resultType="com.dg.core.db.gen.entity.GuidePlate">
|
SELECT
|
user_name as userName,
|
(SELECT organization_name FROM automessage_organization_chart WHERE automessage_organization_chart.id=department_id) as departmentNmae,
|
(select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
and automessage_guide_repair_order.state=2
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
) as num
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY
|
num DESC
|
LIMIT 10
|
</select>
|
|
<!-- 按工单量 -->
|
<select id="workunit" resultType="com.dg.core.db.gen.entity.GuidePlate">
|
SELECT
|
user_name as userName,
|
(SELECT organization_name FROM automessage_organization_chart WHERE automessage_organization_chart.id=department_id) as departmentNmae,
|
(select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>) as num
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY
|
num DESC
|
LIMIT 10
|
</select>
|
|
|
<!-- 导办人员统计数 -->
|
<select id="staffNum" resultType="int">
|
SELECT count(id)
|
FROM automessage_sys_user
|
<where>
|
user_type=2
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
<!-- 获取一级组织 -->
|
<select id="getDepartment" resultType="com.dg.core.db.gen.entity.OrganizationEntity">
|
SELECT
|
organization_name as departmentNmae,
|
id
|
FROM automessage_organization_chart
|
WHERE grade=1
|
</select>
|
|
|
<!-- 组织排行榜 按评价 -->
|
<select id="organizationScore" resultType="int">
|
SELECT sum(IF(evaluate_state='1',10,IF(evaluate_state='2',5,0)))
|
FROM automessage_guide_repair_order
|
WHERE department_id in
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</select>
|
|
|
|
<!-- 组织排行榜 按办结量 -->
|
<select id="organizationNum" resultType="int">
|
SELECT count(id) FROM automessage_guide_repair_order WHERE department_id in
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</select>
|
|
<!-- 办事指南 根据导办数量排序 -->
|
<select id="guidanceTransaction" resultType="com.dg.core.db.gen.entity.Guidance">
|
SELECT matter_name as name ,(select count(id) from automessage_guide_repair_order
|
where automessage_guide_repair_order.matter_id=automessage_transaction_event.id
|
<if test="ids != null">
|
and automessage_guide_repair_order.guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
) as num
|
from automessage_transaction_event
|
<where>
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY num DESC
|
LIMIT 10
|
</select>
|
|
<!-- 办事指南 根据导办数量排序 -->
|
<select id="guidanceBrowse" resultType="com.dg.core.db.gen.entity.Guidance">
|
SELECT matter_name as name ,browse_num as num from
|
automessage_transaction_event
|
<where>
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
ORDER BY num DESC
|
LIMIT 10
|
</select>
|
|
|
<!-- 办事指南 统计数量 -->
|
<select id="countWork" resultType="int">
|
SELECT count(id) from automessage_transaction_event
|
<where>
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
|
|
<!-- 首页统计 勿动 -->
|
<select id="countStatisticsNum" resultType="int">
|
select count(id) from automessage_transaction_event
|
<where>
|
<if test="classifyIds != null">
|
and classify_id IN
|
<foreach collection="classifyIds" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
<if test="ids != null">
|
and department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
|
<!-- 首页统计用 勿动 -->
|
<select id="getClassify" parameterType="string" resultType="com.dg.core.db.gen.entity.ClassifyAdministration">
|
select id,classify_name from automessage_classify_administration
|
<where>
|
<if test="parentId != null and parentId != ''">
|
AND parent_id=#{parentId}
|
</if>
|
<if test="classifyGrade != null and classifyGrade != ''">
|
AND classify_grade = #{classifyGrade}
|
</if>
|
</where>
|
|
</select>
|
|
|
<!-- 首页统计区域下的部门 -->
|
<select id="countId" parameterType="string" resultType="string">
|
select id from automessage_organization_chart
|
<where>
|
<if test="district != null ">
|
AND district=#{district}
|
</if>
|
</where>
|
</select>
|
|
|
<!-- 首页统计使用 勿动 -->
|
<select id="reversionRate" resultType="string">
|
select nullif(SUM(m.num),0) from (
|
select count(id) as num from automessage_guide_evolve
|
<where>
|
<if test="state != null and state != ''">
|
and automessage_guide_evolve.state=#{state}
|
</if>
|
<if test="isTimeout != null and isTimeout != ''">
|
and automessage_guide_evolve.is_timeout=#{isTimeout}
|
</if>
|
</where>
|
GROUP BY automessage_guide_evolve.id
|
) as m
|
</select>
|
|
|
|
<!-- 首页统计 区域统计 勿动 -->
|
<select id="rangeStatistics" parameterType="string" resultType="int">
|
select count(id) from automessage_guide_repair_order
|
<where>
|
<if test="ids != null">
|
and guide_department_id IN
|
<foreach collection="ids" item="param" open="(" close=")" separator=",">
|
#{param}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
|
|
</mapper>
|