From d68c61517a3a6d4ec4d47844c21bdc143f99cbab Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期三, 17 四月 2024 22:58:05 +0800 Subject: [PATCH] 大屏接口 --- ruoyi-system/src/main/resources/mapper/system/TbScoreMapper.xml | 161 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 109 insertions(+), 52 deletions(-) diff --git a/ruoyi-system/src/main/resources/mapper/system/TbScoreMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TbScoreMapper.xml index c2766c7..e8fa944 100644 --- a/ruoyi-system/src/main/resources/mapper/system/TbScoreMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/TbScoreMapper.xml @@ -1,59 +1,116 @@ <?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"> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.system.mapper.TbScoreMapper"> - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="com.ruoyi.system.domain.TbScore"> - <id column="id" property="id"/> - <result column="basic_data_config_id" property="basicDataConfigId"/> - <result column="basic_data_id" property="basicDataId"/> - <result column="score" property="score"/> - <result column="del_flag" property="delFlag"/> - <result column="create_by" property="createBy"/> - <result column="create_time" property="createTime"/> - <result column="update_by" property="updateBy"/> - <result column="update_time" property="updateTime"/> - </resultMap> + <!-- 通用查询映射结果 --> + <resultMap id="BaseResultMap" type="com.ruoyi.system.domain.TbScore"> + <id column="id" property="id"/> + <result column="basic_data_config_id" property="basicDataConfigId"/> + <result column="basic_data_id" property="basicDataId"/> + <result column="score" property="score"/> + <result column="del_flag" property="delFlag"/> + <result column="create_time" property="createTime"/> + <result column="update_time" property="updateTime"/> + </resultMap> - <!-- 通用查询结果列 --> - <sql id="Base_Column_List"> - id, basic_data_config_id, basic_data_id, score, del_flag, create_by, create_time, update_by, update_time - </sql> - <select id="pageScore" resultType="com.ruoyi.system.vo.ScoreVO"> - SELECT - tbdc.type_name, - tbdc.calculate_type, - ts.score - FROM - tb_score ts - LEFT JOIN tb_basic_data tbd ON ts.basic_data_id = tbd.id - LEFT JOIN tb_basic_data_config tbdc ON ts.basic_data_config_id = tbdc.id - WHERE - 1=1 - AND tbd.id = #{query.basicDataId} - <if test="query.typeName !=null and query.typeName!=''"> - AND tbdc.type_name like Concat('%',#{query.typeName},'%') - </if> - <if test="query.typeName !=null and query.typeName!=''"> - AND tbdc.calculate_type = #{query.type} - </if> + <!-- 通用查询结果列 --> + <sql id="Base_Column_List"> + id, basic_data_config_id, basic_data_id, score, del_flag, create_by, create_time, update_by, update_time + </sql> + <select id="pageScore" resultType="com.ruoyi.system.vo.ScoreVO"> + SELECT + tbdc.type_name, + tbdc.calculate_type, + ts.score + FROM + tb_score ts + LEFT JOIN tb_basic_data tbd ON ts.basic_data_id = tbd.id + LEFT JOIN tb_basic_data_config tbdc ON ts.basic_data_config_id = tbdc.id + WHERE + 1=1 + AND tbd.id = #{query.basicDataId} + <if test="query.typeName !=null and query.typeName!=''"> + AND tbdc.type_name like Concat('%',#{query.typeName},'%') + </if> + <if test="query.typeName !=null and query.typeName!=''"> + AND tbdc.calculate_type = #{query.type} + </if> - </select> - <select id="scoreCalculateDetail" resultType="com.ruoyi.system.vo.ScoreDetailVO"> - SELECT - su.area_name, - ts.score, - su.person_in_charge, - su.phone_number - FROM tb_score ts - LEFT JOIN tb_basic_data tbd ON ts.basic_data_id = tbd.id - LEFT JOIN sys_user su ON tbd.dept_area_code = su.area_code - <where> - ts.basic_data_config_id = #{query.id} - <if test="query.areaName != null and query.areaName != ''"> - AND su.area_name LIKE CONCAT('%',#{query.areaName},'%') - </if> - </where> - </select> + </select> + <select id="scoreCalculateDetail" resultType="com.ruoyi.system.vo.ScoreDetailVO"> + SELECT + su.area_name, + su.area_code, + ts.score, + su.person_in_charge, + su.phone_number + FROM tb_score ts + LEFT JOIN tb_basic_data tbd ON ts.basic_data_id = tbd.id + LEFT JOIN sys_user su ON tbd.dept_area_code = su.area_code + <where> + ts.basic_data_config_id = #{query.id} AND su.area_name IS NOT NULL + <if test="query.areaName != null and query.areaName != ''"> + AND su.area_name LIKE CONCAT('%',#{query.areaName},'%') + </if> + </where> + </select> + <select id="queryTotalScoreList" resultType="com.ruoyi.system.vo.ScoreRankVO"> + </select> + <select id="queryRankAndScoreByAreaCode" resultType="com.ruoyi.system.vo.ScoreRankVO"> + SET @rank = 0; + SELECT dept_area_code AS areaCode, + COALESCE(score, 0) AS score, + `rank` + FROM (SELECT tbc.dept_area_code, + SUM(ts.score) AS score, + (@rank := @rank + 1) AS `rank` + FROM tb_score ts + LEFT JOIN tb_basic_data tbc ON ts.basic_data_id = tbc.id + LEFT JOIN tb_basic_data_config tbdc ON ts.basic_data_config_id = tbdc.id + WHERE YEAR(tbc.reporting_time) = YEAR( + CURDATE()) + GROUP BY tbc.dept_area_code + ORDER BY score + DESC) AS ranked_data + WHERE dept_area_code = #{areaCode} + </select> + <select id="deptCalculateDetail" resultType="com.ruoyi.system.vo.DeptCalculateDetailVO"> + SELECT bdc.id, + ts.score, + bdc.type_name, + bdc.calculate_type + FROM tb_basic_data_category tbdc + LEFT JOIN tb_basic_data_config bdc ON tbdc.id = bdc.basic_data_category_id + LEFT JOIN tb_score ts ON ts.basic_data_config_id = bdc.id + LEFT JOIN tb_basic_data tbd ON tbd.id = ts.basic_data_id + WHERE 1 = 1 + AND tbdc.id = #{query.basicDataCategoryId} + AND tbd.quarter = #{nowQuarter} + <if test="query.areaCode != null and query.areaCode !=''"> + AND tbd.dept_area_code = #{query.areaCode} + </if> + </select> + <select id="fieldsDetail" resultType="com.ruoyi.system.vo.ScoreDetailVO"> + SELECT + su.area_name, + su.area_code, + ts.score, + su.person_in_charge, + su.phone_number + FROM tb_score ts + LEFT JOIN tb_basic_data tbd ON ts.basic_data_id = tbd.id + LEFT JOIN sys_user su ON tbd.dept_area_code = su.area_code + <where> + ts.basic_data_config_id = #{query.id} AND su.area_name IS NOT NULL + AND su.area_code IN + <foreach collection="countyList" item="code" open="(" separator="," close=")"> + #{code} + </foreach> + <if test="query.areaCode != null and query.areaCode != ''"> + AND su.area_code=#{query.areaCode} + </if> + </where> + </select> </mapper> -- Gitblit v1.7.1