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/record/vo/FwDroneAlarmRecordVO.java |  131 ++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 128 insertions(+), 3 deletions(-)

diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java b/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java
index 1f48f61..3181993 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java
+++ b/drone-service/drone-fw/src/main/java/org/sxkj/fw/record/vo/FwDroneAlarmRecordVO.java
@@ -16,20 +16,145 @@
  */
 package org.sxkj.fw.record.vo;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
 import org.sxkj.fw.record.entity.FwDroneAlarmRecordEntity;
 import org.springblade.core.tool.node.INode;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.math.BigDecimal;
+import java.util.Date;
+import java.io.Serializable;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+
 /**
  * 无人机告警表 视图实体类
  *
  * @author lw
- * @since 2026-01-07
+ * @since 2026-01-08
  */
 @Data
-@EqualsAndHashCode(callSuper = true)
-public class FwDroneAlarmRecordVO extends FwDroneAlarmRecordEntity {
+public class FwDroneAlarmRecordVO implements Serializable {
 	private static final long serialVersionUID = 1L;
 
+	@ApiModelProperty("主键id")
+	@JsonSerialize(using = ToStringSerializer.class)
+	private Long id;
+
+	/**
+	 * 反无设备ID(关联ja_fw_device.id)
+	 */
+	@ApiModelProperty(value = "反无设备ID(关联ja_fw_device.id)")
+	private Long deviceId;
+	/**
+	 * 无人机名称
+	 */
+	@ApiModelProperty(value = "无人机名称")
+	private String droneName;
+	/**
+	 * 无人机序列号
+	 */
+	@ApiModelProperty(value = "无人机序列号")
+	private String droneSerialNo;
+	/**
+	 * 无人机类型(微型机/植保机...)
+	 */
+	@ApiModelProperty(value = "无人机类型(1.微型机/2.植保机...)")
+	private String droneType;
+	/**
+	 * 告警类型:实时告警/历史告警
+	 */
+	@ApiModelProperty(value = "告警类型:1.实时告警/2.历史告警")
+	private String alarmType;
+	/**
+	 * 告警时间
+	 */
+	@ApiModelProperty(value = "告警时间")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private Date alarmTime;
+	/**
+	 * 触发原因
+	 */
+	@ApiModelProperty(value = "触发原因")
+	private String triggerReason;
+	/**
+	 * 飞行状态:侦测中/反制中
+	 */
+	@ApiModelProperty(value = "飞行状态:1.侦测中/2.反制中")
+	private String flightStatus;
+	/**
+	 * 当前经度
+	 */
+	@ApiModelProperty(value = "当前经度")
+	private Double longitude;
+	/**
+	 * 当前纬度
+	 */
+	@ApiModelProperty(value = "当前纬度")
+	private Double latitude;
+	/**
+	 * 信号频段(MHz)
+	 */
+	@ApiModelProperty(value = "信号频段(MHz)")
+	private Integer signalFreqMhz;
+	/**
+	 * 飞行高度(m)
+	 */
+	@ApiModelProperty(value = "飞行高度(m)")
+	private Integer flightHeightM;
+	/**
+	 * 飞行速度(m/s)
+	 */
+	@ApiModelProperty(value = "飞行速度(m/s)")
+	private BigDecimal flightSpeedMs;
+	/**
+	 * 停留时长 (秒)
+	 */
+	@ApiModelProperty(value = "停留时长(秒)")
+	private String stayDuration;
+	/**
+	 * 反制方式:信号干扰/诱导驱离/无
+	 */
+	@ApiModelProperty(value = "反制方式:1.信号干扰/2.诱导驱离/3.无")
+	private String counterWay;
+	/**
+	 * 区域名称
+	 */
+	@ApiModelProperty(value = "区域名称")
+	private String areaName;
+	/**
+	 * 区域编码
+	 */
+	@ApiModelProperty(value = "区域编码")
+	private String areaCode;
+
+	/**
+	 * 设备类型(察打一体/便捷侦测箱/反制枪)
+	 */
+	@ApiModelProperty(value = "设备类型(1.便捷侦测箱/2.反制枪/3.察打一体)")
+	private String deviceType;
+	/**
+	 * 设备名称
+	 */
+	@ApiModelProperty(value = "设备名称")
+	private String deviceName;
+
+	/**
+	 * 设备编号
+	 */
+	@ApiModelProperty(value = "设备编号")
+	private String deviceSn;
+
+	/**
+	 * 设备状态
+	 */
+	@ApiModelProperty(value = "设备状态(0:在线/1:离线/2:故障/3:报废)")
+	private String deviceStatus;
+
+	// favorited
+	@ApiModelProperty(value = "是否关注 0 未关注 1 已关注 ")
+	private Integer favorited;
 }

--
Gitblit v1.9.3