mitao
2024-07-12 3e456f3e812ead6a19e80cfbdbf86ae0263d50b9
finance-system/src/main/resources/mapper/system/TbScoreMapper.xml
@@ -113,4 +113,53 @@
      </if>
    </where>
  </select>
  <select id="getCurrentScoreList" resultType="com.finance.system.vo.RiskMapVO">
    SELECT SUM(ts.score) score,
    su.area_code,
    su.area_name,
    su.area_level
    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>
      tbd.`quarter` = #{nowQuarter}
      <if test="areaCode !=  null and areaCode != ''">
        AND tbd.dept_area_code = #{areaCode}
      </if>
    </where>
    GROUP BY tbd.id
  </select>
  <select id="queryRiskRanking" resultType="com.finance.system.vo.RiskRankingVO"
    parameterType="java.lang.String">
    SELECT *
    FROM (SELECT SUM(ts.score) score, su.area_code, su.area_name
    FROM tb_score ts
    LEFT JOIN tb_basic_data tbd ON tbd.id = ts.basic_data_id
    LEFT JOIN sys_user su ON su.area_code = tbd.dept_area_code
    <where>
      AND tbd.quarter = #{nowQuarter}
      AND su.area_level = '${@com.finance.common.enums.AreaLevelEnum@COUNTY.getCode()}'
    </where>
    GROUP BY tbd.id) rs
    ORDER BY rs.score DESC
  </select>
  <select id="getScoreByYearType" resultType="com.finance.system.vo.RiskMapVO">
    SELECT *
    FROM (SELECT SUM(ts.score) score, su.area_code, su.area_name
    FROM tb_score ts
    LEFT JOIN tb_basic_data tbd ON tbd.id = ts.basic_data_id
    LEFT JOIN sys_user su ON su.area_code = tbd.dept_area_code
    <where>
      tbd.dept_area_code = #{areaCode}
      <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>
    </where>
    GROUP BY tbd.id) rs
    ORDER BY rs.score DESC
  </select>
</mapper>