吉安感知网项目-后端
rain
2026-01-13 631b1895a9a12ceace45fcd877d3f4e6fbf0885f
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwAreaDivideServiceImpl.java
@@ -16,8 +16,14 @@
 */
package org.sxkj.fw.area.service.impl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.StringUtil;
import org.sxkj.common.utils.HeaderUtils;
import org.sxkj.fw.area.dto.FwAreaDivideDTO;
import org.sxkj.fw.area.dto.FwAreaDivideStatisticsDTO;
import org.sxkj.fw.area.entity.FwAreaDivideEntity;
import org.sxkj.fw.area.vo.FwAreaDivideVO;
import org.sxkj.fw.area.vo.FwAreaDivideStatisticsVO;
import org.sxkj.fw.area.excel.FwAreaDivideExcel;
import org.sxkj.fw.area.mapper.FwAreaDivideMapper;
import org.sxkj.fw.area.service.IFwAreaDivideService;
@@ -26,6 +32,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
import java.util.Date;
/**
 * 区域划分表 服务实现类
@@ -37,10 +44,29 @@
public class FwAreaDivideServiceImpl extends BaseServiceImpl<FwAreaDivideMapper, FwAreaDivideEntity> implements IFwAreaDivideService {
   @Override
   public IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideVO fwAreaDivide) {
   public IPage<FwAreaDivideVO> selectFwAreaDividePage(IPage<FwAreaDivideVO> page, FwAreaDivideDTO fwAreaDivide) {
      return page.setRecords(baseMapper.selectFwAreaDividePage(page, fwAreaDivide));
   }
   @Override
   public List<FwAreaDivideVO> selectFwAreaDivideList(Integer filterSelected, Long sceneId) {
      return baseMapper.selectFwAreaDivideList(filterSelected, sceneId);
   }
   @Override
   public IPage<FwAreaDivideStatisticsVO> selectFwAreaDivideStatisticsPage(IPage<FwAreaDivideStatisticsVO> page, FwAreaDivideStatisticsDTO fwAreaDivideStatistics) {
      return page.setRecords(baseMapper.selectFwAreaDivideStatisticsPage(page, fwAreaDivideStatistics));
   }
   @Override
   public FwAreaDivideStatisticsVO selectFwAreaDivideStatisticsDetail(FwAreaDivideStatisticsDTO fwAreaDivideStatistics) {
      return baseMapper.selectFwAreaDivideStatisticsDetail(fwAreaDivideStatistics);
   }
   @Override
   public FwAreaDivideVO selectFwAreaDivideDetail(Long id) {
      return baseMapper.selectFwAreaDivideDetail(id);
   }
   @Override
   public List<FwAreaDivideExcel> exportFwAreaDivide(Wrapper<FwAreaDivideEntity> queryWrapper) {
@@ -51,4 +77,63 @@
      return fwAreaDivideList;
   }
   @Override
   public boolean save(FwAreaDivideEntity fwAreaDivide) {
      fillCreateFields(fwAreaDivide);
      return baseMapper.insertWithGeom(fwAreaDivide) > 0;
   }
   @Override
   public boolean updateById(FwAreaDivideEntity fwAreaDivide) {
      fillUpdateFields(fwAreaDivide);
      return baseMapper.updateWithGeomById(fwAreaDivide) > 0;
   }
   @Override
   public boolean saveOrUpdate(FwAreaDivideEntity fwAreaDivide) {
      if (fwAreaDivide.getId() == null) {
         fillCreateFields(fwAreaDivide);
         return baseMapper.insertWithGeom(fwAreaDivide) > 0;
      } else {
         fillUpdateFields(fwAreaDivide);
         return baseMapper.updateWithGeomById(fwAreaDivide) > 0;
      }
   }
   private void fillCreateFields(FwAreaDivideEntity fwAreaDivide) {
      Long userId = AuthUtil.getUserId();
      String deptIdStr = AuthUtil.getDeptId();
      Long deptId = null;
      if (StringUtil.isNotBlank(deptIdStr)) {
         try {
            deptId = Long.valueOf(deptIdStr);
         } catch (NumberFormatException ignored) {
            deptId = null;
         }
      }
//      String areaCode = fwAreaDivide.getAreaCode();
//      if (StringUtil.isBlank(areaCode)) {
//         areaCode = HeaderUtils.getAreaCode();
//      }
      Date now = new Date();
      fwAreaDivide.setCreateUser(userId);
      fwAreaDivide.setUpdateUser(userId);
      if (deptId != null) {
         fwAreaDivide.setCreateDept(deptId);
      }
//      if (StringUtil.isNotBlank(areaCode)) {
//         fwAreaDivide.setAreaCode(areaCode);
//      }
      fwAreaDivide.setCreateTime(now);
      fwAreaDivide.setUpdateTime(now);
   }
   private void fillUpdateFields(FwAreaDivideEntity fwAreaDivide) {
      Long userId = AuthUtil.getUserId();
      if (userId != null) {
         fwAreaDivide.setUpdateUser(userId);
      }
      fwAreaDivide.setUpdateTime(new Date());
   }
}