吉安感知网项目-后端
linwei
2026-01-26 4f4872af1eef1c14d95f04bffe2a4f2d2f7d835d
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;
@@ -25,6 +27,7 @@
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
/**
@@ -37,18 +40,38 @@
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(GdManageDevicePageParam gdManageDevice) {
      return baseMapper.selectGdManageDevice(gdManageDevice);
   }
   @Override
   public List<GdManageDeviceExcel> exportGdManageDevice(Wrapper<GdManageDeviceEntity> queryWrapper) {
      List<GdManageDeviceExcel> gdManageDeviceList = baseMapper.exportGdManageDevice(queryWrapper);
      //gdManageDeviceList.forEach(gdManageDevice -> {
      // gdManageDeviceList.forEach(gdManageDevice -> {
      //   gdManageDevice.setTypeName(DictCache.getValue(DictEnum.YES_NO, GdManageDevice.getType()));
      //});
      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);
   }
}