fix(report): 修复巡检统计数据源逻辑错误

- 修改Board5Mapper.xml中的应检设备计算方式,从DMS_PLAN_INSPECT表改为从工单表统计
- 调整已检设备统计逻辑,统一使用工单实例表数据源
- 移除DMS_BILLS_INSPECT_INSTANCE_ACTIVITY表查询中的冗余别名关键字
- 在DMS_BILLS_INSPECT_INSTANCE表映射中添加planInspectCode字段映射
master
zangch@mesnac.com 6 days ago
parent 79a6fb301b
commit f597b06774

@ -34,8 +34,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectDmsBillsInspectInstanceActivityList" parameterType="DmsBillsInspectInstanceActivity" resultMap="DmsBillsInspectInstanceActivityResult">
select a.instance_activity_id, a.inspect_instance_id, a.process_activity_id,
a.inspect_route_id,b.route_name, a.device_amount, a.performer, a.process_handle_resolution, a.remark, a.process_handle_status, a.process_step_order, a.start_time, a.end_time, a.handle_user_id, a.handle_by, a.handle_time, a.create_by, a.create_time, a.transfer_user_id, a.attr1
from dms_bills_inspect_instance_activity as a
left join dms_base_inspect_route as b on a.inspect_route_id = b.inspect_route_id
from dms_bills_inspect_instance_activity a
left join dms_base_inspect_route b on a.inspect_route_id = b.inspect_route_id
<where>
<if test="inspectInstanceId != null "> and inspect_instance_id = #{inspectInstanceId}</if>
<if test="processActivityId != null "> and process_activity_id = #{processActivityId}</if>

@ -24,6 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="updateTime" column="update_time" />
<result property="inspectRouteId" column="inspect_route_id" />
<result property="routeName" column="route_name" />
<result property="planInspectCode" column="plan_inspect_code" />
</resultMap>
<sql id="selectDmsBillsInspectInstanceVo">

@ -55,11 +55,11 @@
</select>
<!-- 查询巡检执行情况统计(全量历史) -->
<!-- 应检设备 = DMS_PLAN_INSPECT.DEVICE_AMOUNT 求和 -->
<!-- 已检设备 = DMS_BILLS_INSPECT_INSTANCE 中 INSPECT_STATUS='3'(已完成) 的设备数量 -->
<!-- 数据来源DMS_PLAN_INSPECT, DMS_BILLS_INSPECT_INSTANCE -->
<!-- 应检设备 = 从工单表统计不同计划ID数 × 18每计划18台设备 -->
<!-- 已检设备 = DMS_BILLS_INSPECT_INSTANCE 中 INSPECT_STATUS='3'(已完成) 的工单数量 -->
<!-- 数据来源DMS_BILLS_INSPECT_INSTANCE -->
<select id="selectInspectStatistics" resultType="java.util.HashMap">
SELECT (SELECT NVL(SUM(DEVICE_AMOUNT), 0) FROM DMS_PLAN_INSPECT WHERE IS_FLAG = '1') AS DEVICE_COUNT,
SELECT (SELECT COUNT(DISTINCT PLAN_INSPECT_ID) * 18 FROM DMS_BILLS_INSPECT_INSTANCE WHERE IS_FLAG = '1') AS DEVICE_COUNT,
(SELECT COUNT(*) FROM DMS_BILLS_INSPECT_INSTANCE WHERE IS_FLAG = '1' AND INSPECT_STATUS = '3') AS COMPLETE_COUNT
FROM DUAL
</select>

Loading…
Cancel
Save