From 66bfbdb9251c22ffa2b5f05595a76a3547a2f5eb Mon Sep 17 00:00:00 2001
From: rain <1679827795@qq.com>
Date: Mon, 09 Feb 2026 11:00:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java |   40 ++++++++++++++++++++++++++++++++++------
 1 files changed, 34 insertions(+), 6 deletions(-)

diff --git a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java b/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java
index 8fba3cc..80888ea 100644
--- a/drone-service/drone-fw/src/main/java/org/sxkj/fw/device/service/impl/FwDeviceMaintainPlanServiceImpl.java
+++ b/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);
+	}
 }

--
Gitblit v1.9.3