吉安感知网项目-后端
rain
2026-02-09 66bfbdb9251c22ffa2b5f05595a76a3547a2f5eb
drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java
@@ -16,6 +16,10 @@
 */
package org.sxkj.fw.device.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import org.springblade.core.secure.utils.AuthUtil;
import org.sxkj.fw.device.dto.FwDeviceMaintainPlanDTO;
import org.sxkj.fw.device.entity.FwDeviceMaintainPlanEntity;
import org.sxkj.fw.device.vo.FwDeviceMaintainPlanVO;
import org.sxkj.fw.device.excel.FwDeviceMaintainPlanExcel;
@@ -25,19 +29,32 @@
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.sxkj.system.cache.SysCache;
import java.util.List;
/**
 * 设备维护计划表 服务实现类
 *
 * @author lw
 * @since 2026-01-07
 * @author Aix
 * @since 2026-01-09
 */
@Service
public class FwDeviceMaintainPlanServiceImpl extends BaseServiceImpl<FwDeviceMaintainPlanMapper, FwDeviceMaintainPlanEntity> implements IFwDeviceMaintainPlanService {
   @Override
   public IPage<FwDeviceMaintainPlanVO> selectFwDeviceMaintainPlanPage(IPage<FwDeviceMaintainPlanVO> page, FwDeviceMaintainPlanVO fwDeviceMaintainPlan) {
   public FwDeviceMaintainPlanVO getFwDeviceMaintainPlanById(Long id) {
      return baseMapper.getFwDeviceMaintainPlanById(id);
   }
   @Override
   public IPage<FwDeviceMaintainPlanVO> selectFwDeviceMaintainPlanPage(IPage<FwDeviceMaintainPlanVO> page, FwDeviceMaintainPlanDTO fwDeviceMaintainPlan) {
      // 按当前部门及下级部门范围过滤数据
      if (!AuthUtil.isAdministrator()) {
         List<Long> deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId()));
         fwDeviceMaintainPlan.setDeptList(deptList);
      }
      return page.setRecords(baseMapper.selectFwDeviceMaintainPlanPage(page, fwDeviceMaintainPlan));
   }
@@ -45,10 +62,21 @@
   @Override
   public List<FwDeviceMaintainPlanExcel> exportFwDeviceMaintainPlan(Wrapper<FwDeviceMaintainPlanEntity> queryWrapper) {
      List<FwDeviceMaintainPlanExcel> fwDeviceMaintainPlanList = baseMapper.exportFwDeviceMaintainPlan(queryWrapper);
      //fwDeviceMaintainPlanList.forEach(fwDeviceMaintainPlan -> {
      //   fwDeviceMaintainPlan.setTypeName(DictCache.getValue(DictEnum.YES_NO, FwDeviceMaintainPlan.getType()));
      //});
      return fwDeviceMaintainPlanList;
   }
   @Override
   public void batchUpdateExpiredPlans(List<Long> planIds) {
      if (planIds == null || planIds.isEmpty()) {
         return;
      }
      // 批量把计划调整为未维护状态
      LambdaUpdateWrapper<FwDeviceMaintainPlanEntity> updateWrapper = new LambdaUpdateWrapper<>();
      updateWrapper.in(FwDeviceMaintainPlanEntity::getId, planIds)
         .set(FwDeviceMaintainPlanEntity::getMaintainStatus, 0); // 未维护状态
      // 执行批量更新
      update(updateWrapper);
   }
}