From a3b902ce7b9cf0d3fd46fa1e66d6473ae68abe5d Mon Sep 17 00:00:00 2001
From: xiebin <vip_xiaobin810@163.com>
Date: Fri, 09 Jan 2026 15:24:44 +0800
Subject: [PATCH] add-反无大屏-基础管理-设备相关新增责任人
---
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml | 88 ++++++++++++++++++++++++++++++++------------
1 files changed, 64 insertions(+), 24 deletions(-)
diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml b/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml
index 1213545..28c5c3e 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMapper.xml
@@ -12,6 +12,10 @@
<result column="device_specification" property="deviceSpecification"/>
<result column="manufacturer" property="manufacturer"/>
<result column="source" property="source"/>
+ <result column="purpose" property="purpose"/>
+ <result column="belong_dept" property="belongDept"/>
+ <result column="charger" property="charger"/>
+ <result column="contact_phone" property="contactPhone"/>
<result column="remark" property="remark"/>
<result column="battery_pct" property="batteryPct"/>
<result column="azimuth" property="azimuth"/>
@@ -26,7 +30,7 @@
<result column="update_user" property="updateUser"/>
<result column="update_time" property="updateTime"/>
<result column="status" property="status"/>
- <result column="is_deleted" property="isDeleted"/>
+<!-- <result column="is_deleted" property="isDeleted"/>-->
</resultMap>
@@ -38,7 +42,7 @@
and id = #{param2.id}
</if>
<if test="param2.deviceName != null and param2.deviceName != ''">
- and device_name = #{param2.deviceName}
+ and device_name like concat('%',#{param2.deviceName},'%')
</if>
<if test="param2.deviceType != null and param2.deviceType != ''">
and device_type = #{param2.deviceType}
@@ -55,29 +59,14 @@
<if test="param2.source != null and param2.source != ''">
and source = #{param2.source}
</if>
- <if test="param2.remark != null and param2.remark != ''">
- and remark = #{param2.remark}
+ <if test="param2.belongDept != null and param2.belongDept != ''">
+ and belong_dept = #{param2.belongDept}
</if>
- <if test="param2.createUser != null and param2.createUser != ''">
- and create_user = #{param2.createUser}
- </if>
- <if test="param2.createDept != null and param2.createDept != ''">
- and create_dept = #{param2.createDept}
- </if>
- <if test="param2.createTime != null and param2.createTime != ''">
- and create_time = #{param2.createTime}
- </if>
- <if test="param2.updateUser != null and param2.updateUser != ''">
- and update_user = #{param2.updateUser}
- </if>
- <if test="param2.updateTime != null and param2.updateTime != ''">
- and update_time = #{param2.updateTime}
- </if>
- <if test="param2.status != null and param2.status != ''">
- and status = #{param2.status}
- </if>
- <if test="param2.isDeleted != null and param2.isDeleted != ''">
- and is_deleted = #{param2.isDeleted}
+ <if test="param2.deviceStatusList != null and param2.deviceStatusList != ''">
+ and status in
+ <foreach item="item" collection="param2.deviceStatusList" separator="," open="(" close=")" index="">
+ #{item}
+ </foreach>
</if>
</where>
</select>
@@ -87,4 +76,55 @@
SELECT * FROM ja_fw_device ${ew.customSqlSegment}
</select>
+ <!-- 统计设备类型(察打一体同时计入侦测和反制) -->
+ <select id="statisticalDeviceType" resultType="org.sxkj.fw.cockpit.vo.DeviceStatisticsVO">
+ SELECT
+ CASE split_device_type -- 自定义排序(可选)
+ WHEN '1' THEN '侦测设备'
+ WHEN '2' THEN '反制设备'
+ ELSE '其他'
+ END AS type,
+ COUNT(*) AS count
+ FROM (
+ -- 子查询:拆分察打一体设备为侦测/反制两类
+ SELECT
+ id,
+ CASE
+ WHEN device_type = '3' THEN '1' -- 察打一体拆分为侦测
+ ELSE device_type
+ END AS split_device_type
+ FROM ja_fw_device
+ WHERE is_deleted = 0 -- 排除已删除数据
+
+ UNION ALL -- 合并拆分的反制部分
+
+ SELECT
+ id,
+ CASE
+ WHEN device_type = '3' THEN '2' -- 察打一体拆分为反制
+ ELSE device_type
+ END AS split_device_type
+ FROM ja_fw_device
+ WHERE is_deleted = 0
+ AND device_type != '3' -- 避免普通设备重复统计
+ ) AS temp
+ GROUP BY split_device_type
+ ORDER BY split_device_type
+ </select>
+
+ <!-- 查询设备总数 + 无线电/光电/雷达设备数量 -->
+ <select id="statisticalDeviceAtt" resultType="org.sxkj.fw.cockpit.vo.AlarmStatisticsVO">
+ SELECT
+ -- 设备统计总数
+ (SELECT COUNT(*) FROM ja_fw_device WHERE is_deleted = 0) AS deviceCount,
+ -- 无线电设备数量
+ (SELECT COUNT(*) FROM ja_fw_device WHERE is_deleted = 0 AND device_att = '1') AS radioCount,
+ -- 光电设备数量
+ (SELECT COUNT(*) FROM ja_fw_device WHERE is_deleted = 0 AND device_att = '2') AS opticalCount,
+ -- 雷达设备数量
+ (SELECT COUNT(*) FROM ja_fw_device WHERE is_deleted = 0 AND device_att = '3') AS radarCount,
+ -- 设备告警
+ (SELECT COUNT(*) FROM ja_fw_device WHERE is_deleted = 0 AND status = '2') AS deviceAlarmCount;
+ </select>
+
</mapper>
--
Gitblit v1.9.3