/* * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * Neither the name of the dreamlu.net developer nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * Author: Chill 庄骞 (smallchill@163.com) */ 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; import org.sxkj.fw.device.mapper.FwDeviceMaintainPlanMapper; import org.sxkj.fw.device.service.IFwDeviceMaintainPlanService; import org.springframework.stereotype.Service; 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 Aix * @since 2026-01-09 */ @Service public class FwDeviceMaintainPlanServiceImpl extends BaseServiceImpl implements IFwDeviceMaintainPlanService { @Override public FwDeviceMaintainPlanVO getFwDeviceMaintainPlanById(Long id) { return baseMapper.getFwDeviceMaintainPlanById(id); } @Override public IPage selectFwDeviceMaintainPlanPage(IPage page, FwDeviceMaintainPlanDTO fwDeviceMaintainPlan) { // 按当前部门及下级部门范围过滤数据 if (!AuthUtil.isAdministrator()) { List deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId())); fwDeviceMaintainPlan.setDeptList(deptList); } return page.setRecords(baseMapper.selectFwDeviceMaintainPlanPage(page, fwDeviceMaintainPlan)); } @Override public List exportFwDeviceMaintainPlan(Wrapper queryWrapper) { List fwDeviceMaintainPlanList = baseMapper.exportFwDeviceMaintainPlan(queryWrapper); return fwDeviceMaintainPlanList; } @Override public void batchUpdateExpiredPlans(List planIds) { if (planIds == null || planIds.isEmpty()) { return; } // 批量把计划调整为未维护状态 LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.in(FwDeviceMaintainPlanEntity::getId, planIds) .set(FwDeviceMaintainPlanEntity::getMaintainStatus, 0); // 未维护状态 // 执行批量更新 update(updateWrapper); } }