吉安感知网项目-后端
rain
2026-01-09 3ae46f2a59f9d4e751f78d8dc1a896ceba5ca495
drone-service/drone-fw/src/main/java/org/sxkj/fw/area/service/impl/FwDefenseSceneServiceImpl.java
@@ -16,6 +16,9 @@
 */
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.entity.FwDefenseSceneEntity;
import org.sxkj.fw.area.vo.FwDefenseSceneVO;
import org.sxkj.fw.area.excel.FwDefenseSceneExcel;
@@ -26,12 +29,13 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import java.util.List;
import java.util.Date;
/**
 * 防控场景表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 * @since 2026-01-08
 */
@Service
public class FwDefenseSceneServiceImpl extends BaseServiceImpl<FwDefenseSceneMapper, FwDefenseSceneEntity> implements IFwDefenseSceneService {
@@ -51,4 +55,62 @@
      return fwDefenseSceneList;
   }
   @Override
   public boolean save(FwDefenseSceneEntity fwDefenseScene) {
      fillCreateFields(fwDefenseScene);
      return super.save(fwDefenseScene);
   }
   @Override
   public boolean updateById(FwDefenseSceneEntity fwDefenseScene) {
      fillUpdateFields(fwDefenseScene);
      return super.updateById(fwDefenseScene);
   }
   @Override
   public boolean saveOrUpdate(FwDefenseSceneEntity fwDefenseScene) {
      if (fwDefenseScene.getId() == null) {
         fillCreateFields(fwDefenseScene);
      } else {
         fillUpdateFields(fwDefenseScene);
      }
      return super.saveOrUpdate(fwDefenseScene);
   }
   private void fillCreateFields(FwDefenseSceneEntity fwDefenseScene) {
      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 = HeaderUtils.getAreaCode();
      if (StringUtil.isBlank(areaCode)) {
         areaCode = fwDefenseScene.getAreaCode();
      }
      Date now = new Date();
      fwDefenseScene.setCreateUser(userId);
      fwDefenseScene.setUpdateUser(userId);
      if (deptId != null) {
         fwDefenseScene.setCreateDept(deptId);
      }
      if (StringUtil.isNotBlank(areaCode)) {
         fwDefenseScene.setAreaCode(areaCode);
      }
      fwDefenseScene.setCreateTime(now);
      fwDefenseScene.setUpdateTime(now);
   }
   private void fillUpdateFields(FwDefenseSceneEntity fwDefenseScene) {
      Long userId = AuthUtil.getUserId();
      if (userId != null) {
         fwDefenseScene.setUpdateUser(userId);
      }
      fwDefenseScene.setUpdateTime(new Date());
   }
}