From 4f4872af1eef1c14d95f04bffe2a4f2d2f7d835d Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 26 Jan 2026 16:33:43 +0800
Subject: [PATCH] 巡查任务优化

---
 drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdManageDeviceServiceImpl.java |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdManageDeviceServiceImpl.java b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdManageDeviceServiceImpl.java
index f69f051..a1981ec 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdManageDeviceServiceImpl.java
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdManageDeviceServiceImpl.java
@@ -16,7 +16,9 @@
  */
 package org.sxkj.gd.workorder.service.impl;
 
+import org.sxkj.gd.utils.GeomUtils;
 import org.sxkj.gd.workorder.entity.GdManageDeviceEntity;
+import org.sxkj.gd.workorder.param.GdManageDevicePageParam;
 import org.sxkj.gd.workorder.vo.GdManageDeviceVO;
 import org.sxkj.gd.workorder.excel.GdManageDeviceExcel;
 import org.sxkj.gd.workorder.mapper.GdManageDeviceMapper;
@@ -38,12 +40,12 @@
 public class GdManageDeviceServiceImpl extends BaseServiceImpl<GdManageDeviceMapper, GdManageDeviceEntity> implements IGdManageDeviceService {
 
 	@Override
-	public IPage<GdManageDeviceVO> selectGdManageDevicePage(IPage<GdManageDeviceVO> page, GdManageDeviceVO gdManageDevice) {
+	public IPage<GdManageDeviceVO> selectGdManageDevicePage(IPage<GdManageDeviceVO> page, GdManageDevicePageParam gdManageDevice) {
 		return page.setRecords(baseMapper.selectGdManageDevicePage(page, gdManageDevice));
 	}
 
 	@Override
-	public List<GdManageDeviceVO> selectGdManageDevice(GdManageDeviceVO gdManageDevice) {
+	public List<GdManageDeviceVO> selectGdManageDevice(GdManageDevicePageParam gdManageDevice) {
 		return baseMapper.selectGdManageDevice(gdManageDevice);
 	}
 
@@ -56,4 +58,20 @@
 		return gdManageDeviceList;
 	}
 
+	/**
+	 * 保存或更新设备信息
+	 *
+	 * @param gdManageDeviceEntity
+	 * @return
+	 * @throws Exception
+	 */
+	@Override
+	public boolean saveOrUpdateDevice(GdManageDeviceEntity gdManageDeviceEntity) throws Exception {
+		// 获取设备位置 生成缓冲区
+		if (gdManageDeviceEntity.getLongitude() != null && gdManageDeviceEntity.getLatitude() != null) {
+			String bufferAroundPointAsString = GeomUtils.getBufferAroundPointAsString(gdManageDeviceEntity.getLongitude(), gdManageDeviceEntity.getLatitude(), 5 * 1000);
+			gdManageDeviceEntity.setGeom(bufferAroundPointAsString);
+		}
+		return saveOrUpdate(gdManageDeviceEntity);
+	}
 }

--
Gitblit v1.9.3