feat(watch): notice 入参新增 eventId、locateTime;新增 updateMonitorGps 接口

1. WatchNotifyVo、WatchMonitorData 新增 eventId 与 locateTime 字段
2. 新增 POST /watchApi/updateMonitorGps 接口
3. watchNo + eventId 联合定位告警数据,任一缺失则忽略
4. 已存在 lon/lat 数据则忽略本次更新,避免覆盖
5. GPS84 → GCJ02 坐标转换 + 高德地址反查(参考 createMonitorData 逻辑)
6. 仅更新 GPS 相关字段,不推送大屏与短信
This commit is contained in:
2026-09-03 10:40:14 +08:00
parent d75f21c17e
commit 822cdbf539
5 changed files with 148 additions and 0 deletions
@@ -151,6 +151,20 @@ public class WatchMonitorData implements Serializable {
@Excel(name = "部门编码", width = 15)
@Schema(title = "部门编码")
private java.lang.String orgCode;
/**
* 事件ID(用于告警事件与GPS位置更新关联的唯一标识)
*/
@Excel(name = "事件ID", width = 32)
@Schema(title = "事件ID")
private java.lang.String eventId;
/**
* 定位时间(手表上报的GPS定位时间,定时上报场景使用)
*/
@Excel(name = "定位时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Schema(title = "定位时间")
private java.util.Date locateTime;
@Schema(title = "员工编号")
@TableField(exist = false)
@@ -45,4 +45,15 @@ public class WatchNotifyVo implements Serializable {
private Date warnTime;
private String gpsErrorMsg;
/**
* 事件ID(用于告警事件与GPS位置更新关联的唯一标识)
*/
private String eventId;
/**
* 定位时间(手表上报的GPS定位时间,定时上报场景使用)
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date locateTime;
}