新建立了MapLyStatistic包,在里面重新实现了一些逻辑。核心逻辑是通过一个baseservice查询每个任务下的各表,目前只实现了对小班的区级查询。街道查询同理可以先筛选出要查询的街道再调用baseservice方法进行查询

This commit is contained in:
dbc
2025-11-22 20:21:41 +08:00
parent 3a4aa12619
commit 49485a7ac1
15 changed files with 425 additions and 33 deletions

View File

@@ -0,0 +1,25 @@
<?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.whu.edu.LyStatistic.MapLyStatistic.Mapper.InfoMapper">
<select id="findByDistrict" resultType="com.whu.edu.LyStatistic.MapLyStatistic.Dto.UnitInfo">
SELECT task_name, schema_code, unit_name, district, village
FROM public.unit_info
WHERE district = #{district}
</select>
<select id="findByVillage" resultType="com.whu.edu.LyStatistic.MapLyStatistic.Dto.UnitInfo">
SELECT task_name, schema_code, unit_name, district, village
FROM public.unit_info
WHERE village = #{village}
</select>
<select id="findAll" resultType="com.whu.edu.LyStatistic.MapLyStatistic.Dto.UnitInfo">
SELECT task_name, schema_code, unit_name, district, village
FROM public.unit_info
</select>
</mapper>

View File

@@ -0,0 +1,43 @@
<?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.whu.edu.LyStatistic.MapLyStatistic.Mapper.TaskCommonMapper">
<!--
统计图斑信息:
- plotCount: 图斑数量
- totalArea: 图斑面积汇总 (XBMJ)
- 各状态数量 (-1,0,1,2)
-->
<select id="selectPlotStats" resultType="com.whu.edu.LyStatistic.MapLyStatistic.Dto.PlotStatsDTO">
SELECT
COUNT(*) AS plotCount,
COALESCE(SUM("XBMJ"), 0) AS totalArea,
COALESCE(SUM(CASE WHEN "status" = -1 THEN 1 ELSE 0 END), 0) AS unPassedCount,
COALESCE(SUM(CASE WHEN "status" = 0 THEN 1 ELSE 0 END), 0) AS assignedCount,
COALESCE(SUM(CASE WHEN "status" = 1 THEN 1 ELSE 0 END), 0) AS collectedCount,
COALESCE(SUM(CASE WHEN "status" = 2 THEN 1 ELSE 0 END), 0) AS approvedCount
FROM "${schema}".roottable1
</select>
<!-- 查询单个图斑详情 -->
<!-- <select id="getPlotDetail" resultType="com.whu.edu.LyStatistic.MapLyStatistic.Dto.PlotDetailDTO">-->
<!-- SELECT-->
<!-- plot_id,-->
<!-- XBMJ AS area,-->
<!-- status-->
<!-- FROM ${schema}.roottable1-->
<!-- WHERE plot_id = #{plotId}-->
<!-- </select>-->
<!-- 查询单个图斑的照片路径 -->
<select id="getPlotPhotos" resultType="string">
SELECT photo_path
FROM ${schema}.photo_table
WHERE plot_id = #{plotId}
</select>
</mapper>