<?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.ruoyi.system.mapper.TbDataScreenScoreMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.ruoyi.system.domain.TbDataScreenScore">
|
<id column="id" property="id"/>
|
<result column="dept_area_code" property="deptAreaCode"/>
|
<result column="basic_data_id" property="basicDataId"/>
|
<result column="data_screen_config_id" property="dataScreenConfigId"/>
|
<result column="score" property="score"/>
|
<result column="score_rate" property="scoreRate"/>
|
<result column="create_time" property="createTime"/>
|
</resultMap>
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
id, dept_area_code, basic_data_id, data_screen_config_id, score, score_rate, create_time
|
</sql>
|
<select id="queryScore4Map" resultType="com.ruoyi.system.vo.RiskMapVO">
|
SELECT tdss.score, su.area_code, su.area_name
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
LEFT JOIN sys_user su ON su.area_code = tbd.dept_area_code
|
WHERE 1 = 1
|
AND tbd.quarter = #{nowQuarter}
|
AND tbsc.id = #{dataScreenConfigId}
|
</select>
|
<select id="queryRiskRanking" resultType="com.ruoyi.system.vo.RiskRankingVO">
|
SELECT tdss.score, su.area_code, su.area_name
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
LEFT JOIN sys_user su ON su.area_code = tbd.dept_area_code
|
WHERE 1 = 1
|
AND tbd.quarter = #{nowQuarter}
|
AND tbsc.id = #{dataScreenConfigId}
|
AND su.area_level LIKE '县'
|
ORDER BY tdss.score DESC
|
</select>
|
<select id="selectRiskByQuarter" resultType="com.ruoyi.system.domain.TbDataScreenScore">
|
SELECT tdss.*
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
WHERE 1 = 1
|
AND tbd.quarter = #{nowQuarter}
|
AND tbsc.id = #{dataScreenConfigId}
|
<if test="areaCode !=null and areaCode !=''">
|
AND tbd.dept_area_code = #{areaCode}
|
</if>
|
</select>
|
<select id="queryScoreByAreaAndYear"
|
resultType="com.ruoyi.system.vo.DataScreenScoreVO">
|
SELECT tdss.*,tbsc.sub_type
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
WHERE 1 = 1
|
AND tbd.dept_area_code = #{areaCode}
|
AND tbsc.id = #{dataScreenConfigId}
|
<if test="yearType==1">
|
AND YEAR(tbd.reporting_time) = YEAR(CURDATE())
|
</if>
|
<if test="yearType==2">
|
AND YEAR(tbd.reporting_time) = YEAR(CURDATE())-1
|
</if>
|
</select>
|
<select id="selectIndicators"
|
resultType="com.ruoyi.system.vo.DataScreenScoreVO">
|
SELECT tdss.*,tbsc.sub_type,tbsc.max_score
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
WHERE 1 = 1
|
AND tbd.dept_area_code = #{areaCode}
|
AND tbsc.type = #{dataScreenConfigEnum}
|
<if test="yearType!=null and yearType==1">
|
AND YEAR(tbd.reporting_time) = YEAR(CURDATE())
|
</if>
|
<if test="yearType!=null and yearType==2">
|
AND YEAR(tbd.reporting_time) = YEAR(CURDATE())-1
|
</if>
|
<if test="nowQuarter!=null and nowQuarter != ''">
|
AND tbd.quarter = #{nowQuarter}
|
</if>
|
</select>
|
<select id="getRankByScore" resultType="java.lang.Integer">
|
SET @rank = 0;
|
|
SELECT `rank`,
|
score,
|
dept_area_code
|
FROM (SELECT tdss.score, tdss.dept_area_code, (@rank := @rank + 1) AS `rank`
|
FROM tb_data_screen_score tdss
|
LEFT JOIN tb_data_screen_config tbsc ON tbsc.id = tdss.data_screen_config_id
|
LEFT JOIN tb_basic_data tbd ON tbd.id = tdss.basic_data_id
|
WHERE 1 = 1
|
AND tbsc.type = #{dataScreenConfigEnum}
|
AND tbsc.sub_type = #{subType}
|
AND tbd.quarter = #{nowQuarter}
|
ORDER BY tdss.score DESC) AS rank_data
|
WHERE dept_area_code = #{areaCode}
|
AND score = #{score}
|
</select>
|
|
</mapper>
|