From 8585b431e9257333413358eb37c30ae58f74db76 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 13 Aug 2026 15:46:10 +0800
Subject: [PATCH] refactor(database): 优化数据库查询中的字段映射
---
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml | 111 +++++++++++++++++++++++++++++++++----------------------
1 files changed, 66 insertions(+), 45 deletions(-)
diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml b/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml
index df7d844..fc24407 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/mapper/FwDeviceMaintainPlanMapper.xml
@@ -1,70 +1,91 @@
<?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="org.sxkj.fw.device.mapper.FwDeviceMaintainPlanMapper">
-
<!-- 通用查询映射结果 -->
- <resultMap id="fwDeviceMaintainPlanResultMap" type="org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity">
+ <resultMap id="fwDeviceMaintainPlanResultMap" type="org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO">
<result column="id" property="id"/>
<result column="device_id" property="deviceId"/>
- <result column="plan_cycle" property="planCycle"/>
- <result column="plan_time" property="planTime"/>
- <result column="area_code" property="areaCode"/>
- <result column="create_user" property="createUser"/>
- <result column="create_dept" property="createDept"/>
- <result column="create_time" property="createTime"/>
- <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="plan_cycle_type" property="planCycleType"/>
+ <result column="plan_cycle_value" property="planCycleValue"
+ typeHandler="com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler"/>
+ <result column="device_name" property="deviceName"/>
+ <result column="device_type" property="deviceType"/>
+ <result column="device_att" property="deviceAtt"/>
+ <result column="device_model" property="deviceModel"/>
+ <result column="belong_dept" property="belongDept"/>
+ <result column="device_specification" property="deviceSpecification"/>
+ <result column="manufacturer" property="manufacturer"/>
+ <result column="source" property="source"/>
+ <result column="purpose" property="purpose"/>
+ <result column="charger" property="charger"/>
+ <result column="device_create_time" property="createTime"/>
+ <result column="maintain_status" property="maintainStatus"/>
+ <result column="last_maintain_time" property="lastMaintainTime"/>
</resultMap>
+ <sql id="deviceFields">
+ b.device_name,
+ b.device_type,
+ b.device_att,
+ b.device_model,
+ b.belong_dept,
+ b.device_specification,
+ b.manufacturer,
+ b.source,
+ b.purpose,
+ b.charger,
+ b.create_time as device_create_time
+ </sql>
+
+ <select id="getFwDeviceMaintainPlanById" resultMap="fwDeviceMaintainPlanResultMap">
+ select
+ <include refid="deviceFields"/>,a.*
+ from
+ ja_fw_device_maintain_plan a
+ left join ja_fw_device b on (a.device_id::VARCHAR = b.id::VARCHAR)
+ <where>
+ a.is_deleted = 0
+ <if test="id != null and id != ''">
+ and a.id = #{id}
+ </if>
+ </where>
+ limit 1
+ </select>
<select id="selectFwDeviceMaintainPlanPage" resultMap="fwDeviceMaintainPlanResultMap">
- select * from ja_fw_device_maintain_plan
+ select
+ <include refid="deviceFields"/>,
+ a.*
+ from
+ ja_fw_device_maintain_plan a
+ left join
+ ja_fw_device b on (a.device_id::VARCHAR = b.id::VARCHAR)
<where>
- is_deleted = 0
- <if test="param2.id != null and param2.id != ''">
- and id = #{param2.id}
- </if>
+ a.is_deleted = 0
<if test="param2.deviceId != null and param2.deviceId != ''">
and device_id = #{param2.deviceId}
</if>
- <if test="param2.planCycle != null and param2.planCycle != ''">
- and plan_cycle = #{param2.planCycle}
+ <if test="param2.deviceName != null and param2.deviceName != ''">
+ and device_name like concat('%',#{param2.deviceName},'%')
</if>
- <if test="param2.planTime != null and param2.planTime != ''">
- and plan_time = #{param2.planTime}
+ <if test="param2.deviceType != null and param2.deviceType != ''">
+ and device_type = #{param2.deviceType}
</if>
- <if test="param2.areaCode != null and param2.areaCode != ''">
- and area_code = #{param2.areaCode}
+ <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.deptList != null and param2.deptList.size > 0">
+ and a.create_dept in
+ <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
</if>
</where>
</select>
<select id="exportFwDeviceMaintainPlan" resultType="org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel">
- SELECT * FROM ja_fw_device_maintain_plan ${ew.customSqlSegment}
+ SELECT *
+ FROM ja_fw_device_maintain_plan ${ew.customSqlSegment}
</select>
-
</mapper>
--
Gitblit v1.9.3