hyingbo
18 小时以前 23396e93588f52941f729fc63cea84a70847d3bc
二保三保设备保养时间调整
已修改9个文件
181 ■■■■ 文件已修改
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/SecondMaintenanceOrderGenerateJob.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderGenerateJob.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentExtendService.java
@@ -1,7 +1,9 @@
package org.jeecg.modules.eam.service;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import java.util.Date;
/**
 * @Description: 设备台账扩展表
@@ -16,7 +18,7 @@
     * @param status 状态
     * @return
     */
    boolean updateEquipmentMaintenanceStatus(String equipmentId, String status);
    boolean updateEquipmentMaintenanceStatus(String equipmentId, String status, String maintenanceCategory, Date date);
    /**
     * 更新设备维修状态
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentExtendServiceImpl.java
@@ -1,14 +1,16 @@
package org.jeecg.modules.eam.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import org.jeecg.modules.eam.mapper.EamEquipmentExtendMapper;
import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.Objects;
/**
 * @Description: 设备台账扩展表
@@ -24,12 +26,22 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean updateEquipmentMaintenanceStatus(String equipmentId, String status) {
    public boolean updateEquipmentMaintenanceStatus(String equipmentId, String status, String maintenanceCategory, Date date) {
        EamEquipmentExtend entity = eamEquipmentExtendMapper.selectById(equipmentId);
        if (entity == null) {
            return false;
        }
        entity.setMaintenanceStatus(status);
        if (Objects.nonNull(date)) {
            if (MaintenanceCategoryEnum.SECOND_MAINTENANCE.name().equals(maintenanceCategory)) {
                entity.setLatestSecondMaintenance(new Date());
                entity.setNextSecondMaintenance(date);
            }else if (MaintenanceCategoryEnum.THIRD_MAINTENANCE.name().equals(maintenanceCategory)) {
                entity.setLatestThirdMaintenance(new Date());
                entity.setNextThirdMaintenance(date);
            }
        }
        eamEquipmentExtendMapper.updateById(entity);
        return true;
    }
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMaintenanceStandardController.java
@@ -18,7 +18,6 @@
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.util.FileUtil;
@@ -32,7 +31,6 @@
import org.jeecg.modules.eam.entity.EamEquipment;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.jeecg.modules.eam.entity.EamSysFiles;
import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
import org.jeecg.modules.eam.service.IEamEquipmentService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
@@ -388,7 +386,7 @@
    }
    /**
     * 通过excel导入数据
     * 二保-通过excel导入数据
     *
     * @param request
     * @param response
@@ -446,7 +444,7 @@
    }
    /**
     * 通过excel导入数据
     * 三保-通过excel导入数据
     *
     * @param request
     * @param response
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/SecondMaintenanceOrderGenerateJob.java
@@ -1,18 +1,21 @@
package org.jeecg.modules.eam.job;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.util.DateUtils;
import org.jeecg.modules.eam.constant.BusinessCodeConst;
import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
import org.jeecg.modules.eam.constant.OrderCreationMethodEnum;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.jeecg.modules.eam.entity.EamSecondMaintenanceOrderDetail;
import org.jeecg.modules.eam.request.EamSecondMaintenanceRequest;
import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
import org.jeecg.modules.eam.service.IEamSecondMaintenanceOrderService;
import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderService;
import org.jeecg.modules.mdc.util.ThrowableUtil;
import org.jeecg.modules.quartz.entity.QuartzJob;
import org.jeecg.modules.quartz.entity.SysQuartzLog;
@@ -30,6 +33,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Component
@@ -48,6 +52,8 @@
    private ISysQuartzLogService sysQuartzLogService;
    @Autowired
    private IQuartzJobService quartzJobService;
    @Autowired
    private IEamEquipmentExtendService equipmentExtendService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -69,6 +75,14 @@
            log.warn("没有配置任何二保标准,任务结束");
            return;
        }
        List<String> equipmentIdList = standardList.stream().map(EamMaintenanceStandard::getEquipmentId).collect(Collectors.toList());
        List<EamEquipmentExtend> eamEquipmentExtendList = equipmentExtendService.list(new LambdaQueryWrapper<EamEquipmentExtend>()
                .in(EamEquipmentExtend::getId, equipmentIdList));
        Map<String, EamEquipmentExtend> eamEquipmentExtendByIdMap = eamEquipmentExtendList.stream()
                .collect(Collectors.toMap(EamEquipmentExtend::getId,
                        eamEquipmentExtend -> eamEquipmentExtend,
                        (v1, v2) -> v1));
        //当前日期
        LocalDate now = LocalDate.now();
        try {
@@ -124,6 +138,14 @@
                standard.setLastGenerateTime(new Date());
                eamMaintenanceStandardService.updateById(standard);
                LocalDate nextSecondMaintenanceDate = DateUtils.dateToLocalDate(standard.getInitialDate()).plusDays(standard.getMaintenancePeriod());
                if (eamEquipmentExtendByIdMap.containsKey(standard.getEquipmentId())) {
                    EamEquipmentExtend eamEquipmentExtend = eamEquipmentExtendByIdMap.get(standard.getEquipmentId());
                    eamEquipmentExtend.setNextSecondMaintenance(DateUtils.localDateToDate(nextSecondMaintenanceDate));
                    equipmentExtendService.updateById(eamEquipmentExtend);
                }
            }
            quartzLog.setIsSuccess(0);
        } catch (Exception e) {
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenanceOrderGenerateJob.java
@@ -1,13 +1,13 @@
package org.jeecg.modules.eam.job;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.util.DateUtils;
import org.jeecg.modules.eam.constant.BusinessCodeConst;
import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
import org.jeecg.modules.eam.constant.OrderCreationMethodEnum;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.request.EamSecondMaintenanceRequest;
import org.jeecg.modules.eam.request.EamThirdMaintenanceRequest;
import org.jeecg.modules.eam.service.*;
import org.jeecg.modules.mdc.util.ThrowableUtil;
@@ -27,6 +27,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Component
@@ -47,6 +48,8 @@
    private ISysQuartzLogService sysQuartzLogService;
    @Autowired
    private IQuartzJobService quartzJobService;
    @Autowired
    private IEamEquipmentExtendService equipmentExtendService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -68,6 +71,14 @@
            log.warn("没有配置任何三保标准,任务结束");
            return;
        }
        List<String> equipmentIdList = standardList.stream().map(EamMaintenanceStandard::getEquipmentId).collect(Collectors.toList());
        List<EamEquipmentExtend> eamEquipmentExtendList = equipmentExtendService.list(new LambdaQueryWrapper<EamEquipmentExtend>()
                .in(EamEquipmentExtend::getId, equipmentIdList));
        Map<String, EamEquipmentExtend> eamEquipmentExtendByIdMap = eamEquipmentExtendList.stream()
                .collect(Collectors.toMap(EamEquipmentExtend::getId,
                        eamEquipmentExtend -> eamEquipmentExtend,
                        (v1, v2) -> v1));
        //当前日期
        LocalDate now = LocalDate.now();
        try {
@@ -139,6 +150,14 @@
                standard.setLastGenerateTime(new Date());
                eamMaintenanceStandardService.updateById(standard);
                LocalDate nextSecondMaintenanceDate = DateUtils.dateToLocalDate(standard.getInitialDate()).plusDays(standard.getMaintenancePeriod());
                if (eamEquipmentExtendByIdMap.containsKey(standard.getEquipmentId())) {
                    EamEquipmentExtend eamEquipmentExtend = eamEquipmentExtendByIdMap.get(standard.getEquipmentId());
                    eamEquipmentExtend.setNextThirdMaintenance(DateUtils.localDateToDate(nextSecondMaintenanceDate));
                    equipmentExtendService.updateById(eamEquipmentExtend);
                }
            }
            quartzLog.setIsSuccess(0);
        } catch (Exception e) {
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMaintenanceStandardServiceImpl.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.beust.jcommander.internal.Lists;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
@@ -15,24 +16,31 @@
import org.jeecg.common.exception.ExceptionCast;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.FileUtil;
import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamMaintenanceStandardDetail;
import org.jeecg.modules.eam.entity.EamSysFiles;
import org.jeecg.modules.eam.mapper.EamMaintenanceStandardMapper;
import org.jeecg.modules.eam.request.EamMaintenanceStandardRequest;
import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
import org.jeecg.modules.eam.service.IEamSysFilesService;
import org.jeecg.modules.system.service.ISysFilesService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -52,6 +60,8 @@
    @Autowired
    private IEamSysFilesService sysFilesService;
    @Autowired
    private IEamEquipmentExtendService eamEquipmentExtendService;
    @Override
    public IPage<EamMaintenanceStandard> queryPageList(Page<EamMaintenanceStandard> page, EamMaintenanceStandard eamMaintenanceStandard) {
@@ -136,6 +146,11 @@
            }
        }
        eamMaintenanceStandardMapper.insert(entity);
        //保养分类为二保/三保时设置下次保养时间
        if (Lists.newArrayList(MaintenanceCategoryEnum.SECOND_MAINTENANCE.name(), MaintenanceCategoryEnum.THIRD_MAINTENANCE.name()).contains(entity.getMaintenanceCategory())) {
            updateEquipmentExtendInfo(entity);
        }
        //处理明细数据
        if(CollectionUtil.isNotEmpty(standardRequest.getTableDetailList())) {
            standardRequest.getTableDetailList().forEach(tableDetail -> {
@@ -189,11 +204,25 @@
                eamMaintenanceStandardDetailService.updateBatchById(updateList);
            }
        }
        updateEquipmentExtendInfo(entity);
        if(CollectionUtil.isNotEmpty(standardRequest.getRemoveDetailList())) {
            List<String> ids = standardRequest.getRemoveDetailList().stream().map(EamMaintenanceStandardDetail::getId).collect(Collectors.toList());
            eamMaintenanceStandardDetailService.removeBatchByIds(ids);
        }
        return true;
    }
    private boolean updateEquipmentExtendInfo(EamMaintenanceStandard entity) {
        //查询设备扩展表
        EamEquipmentExtend eamEquipmentExtend = eamEquipmentExtendService.getById(entity.getEquipmentId());
        //处理设备扩展表中下次保养时间
        LocalDate nextSecondMaintenanceDate = DateUtils.dateToLocalDate(entity.getInitialDate()).plusDays(entity.getMaintenancePeriod());
        if (MaintenanceCategoryEnum.THIRD_MAINTENANCE.name().equals(entity.getMaintenanceCategory())) {
            eamEquipmentExtend.setNextThirdMaintenance(DateUtils.localDateToDate(nextSecondMaintenanceDate));
        }else if (MaintenanceCategoryEnum.SECOND_MAINTENANCE.name().equals(entity.getMaintenanceCategory())) {
            eamEquipmentExtend.setNextSecondMaintenance(DateUtils.localDateToDate(nextSecondMaintenanceDate));
        }
        return eamEquipmentExtendService.updateById(eamEquipmentExtend);
    }
    @Override
@@ -251,6 +280,8 @@
            });
            eamMaintenanceStandardDetailService.saveBatch(standardRequest.getTableDetailList());
        }
        updateEquipmentExtendInfo(entity);
        return true;
    }
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -19,10 +20,14 @@
import org.jeecg.common.constant.DataBaseConstant;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
import org.jeecg.modules.eam.constant.*;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.entity.EamEquipment;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamSecondMaintenanceOrder;
import org.jeecg.modules.eam.entity.EamSecondMaintenanceOrderDetail;
import org.jeecg.modules.eam.mapper.EamSecondMaintenanceOrderMapper;
import org.jeecg.modules.eam.request.EamSecondMaintenanceQuery;
import org.jeecg.modules.eam.request.EamSecondMaintenanceRequest;
@@ -40,6 +45,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -75,6 +81,8 @@
    private IEamReportRepairService eamReportRepairService;
    @Autowired
    private IEamEquipmentExtendService eamEquipmentExtendService;
    @Autowired
    private IEamMaintenanceStandardService eamMaintenanceStandardService;
    @Override
    public IPage<EamSecondMaintenanceOrder> queryPageList(Page<EamSecondMaintenanceOrder> page, EamSecondMaintenanceQuery query) {
@@ -180,7 +188,7 @@
                order.setActualStartTime(new Date());
                eamSecondMaintenanceOrderMapper.updateById(order);
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
        }
@@ -255,7 +263,7 @@
                entity.setActualStartTime(new Date());
                eamSecondMaintenanceOrderMapper.updateById(entity);
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
@@ -305,7 +313,7 @@
        Result result = flowDefinitionService.startProcessInstanceByKey("second_maintenance_process", variables);
        if (result != null) {
            //更新设备保养状态
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name());
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name(), null, null);
            return result.isSuccess();
        }
        return true;
@@ -359,7 +367,7 @@
                //车间设备管理员确认
                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004);
                if (CollectionUtil.isEmpty(userSelectors)) {
                    throw new JeecgBootException("设备未分配给车间设备管理员,无法进入下级审批!");
                    throw new JeecgBootException("设备未无分配给车间设备管理员,法进入下级审批!");
                }
                userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                values.put("dataId", entity.getId());
@@ -386,7 +394,7 @@
                    secondMaintenanceOrderDetailService.updateBatchById(request.getTableDetailList());
                }
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.SECOND_MAINTENANCE_WAIT_CONFIRM.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.SECOND_MAINTENANCE_WAIT_CONFIRM.name(), null, null);
                break;
            case WAIT_CONFIRM:
                // 维修主任确认
@@ -431,8 +439,15 @@
                entity.setConfirmLeader(user.getUsername());
                entity.setLeaderConfirmComment(request.getLeaderConfirmComment());
                entity.setLeaderConfirmTime(new Date());
                //查询保养标准
                EamMaintenanceStandard standard = eamMaintenanceStandardService.getOne(new LambdaQueryWrapper<EamMaintenanceStandard>()
                        .eq(EamMaintenanceStandard::getEquipmentId, entity.getEquipmentId())
                        .eq(EamMaintenanceStandard::getMaintenanceCategory, MaintenanceCategoryEnum.SECOND_MAINTENANCE.name()));
                LocalDate nextSecondMaintenanceDate = DateUtils.dateToLocalDate(standard.getInitialDate()).plusDays(standard.getMaintenancePeriod());
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name(), standard.getMaintenanceCategory(), DateUtils.localDateToDate(nextSecondMaintenanceDate));
                break;
        }
        request.setValues(values);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -19,13 +20,12 @@
import org.jeecg.common.constant.DataBaseConstant;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
import org.jeecg.modules.eam.constant.BusinessCodeConst;
import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus;
import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum;
import org.jeecg.modules.eam.constant.ThirdMaintenanceStatusEnum;
import org.jeecg.modules.eam.constant.*;
import org.jeecg.modules.eam.entity.EamEquipment;
import org.jeecg.modules.eam.entity.EamMaintenanceStandard;
import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrderDetail;
import org.jeecg.modules.eam.mapper.EamThirdMaintenanceOrderMapper;
@@ -45,6 +45,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -81,6 +82,8 @@
    private IEamEquipmentExtendService eamEquipmentExtendService;
    @Autowired
    private IEamPrecisionCheckDetailService precisionCheckDetailService;
    @Autowired
    private IEamMaintenanceStandardService eamMaintenanceStandardService;
    @Override
    public IPage<EamThirdMaintenanceOrder> queryPageList(Page<EamThirdMaintenanceOrder> page, EamThirdMaintenanceQuery query) {
@@ -190,7 +193,7 @@
            Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables);
            if (result != null) {
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
        }
@@ -261,7 +264,7 @@
            Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables);
            if (result != null) {
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
@@ -320,7 +323,7 @@
        Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables);
        if (result != null) {
            //更新设备保养状态
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name());
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name(), null, null);
            return result.isSuccess();
        }
        return true;
@@ -416,7 +419,7 @@
                }
                if (parallelCompletion) {
                    //更新设备保养状态
                    eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.THIRD_MAINTENANCE_WAIT_CONFIRM.name());
                    eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.THIRD_MAINTENANCE_WAIT_CONFIRM.name(), null, null);
                }
                break;
            case WAIT_CONFIRM:
@@ -453,8 +456,15 @@
                entity.setConfirmLeader(user.getUsername());
                entity.setLeaderConfirmComment(request.getLeaderConfirmComment());
                entity.setLeaderConfirmTime(new Date());
                //查询保养标准
                EamMaintenanceStandard standard = eamMaintenanceStandardService.getOne(new LambdaQueryWrapper<EamMaintenanceStandard>()
                        .eq(EamMaintenanceStandard::getEquipmentId, entity.getEquipmentId())
                        .eq(EamMaintenanceStandard::getMaintenanceCategory, MaintenanceCategoryEnum.THIRD_MAINTENANCE.name()));
                LocalDate nextThirdMaintenanceDate = DateUtils.dateToLocalDate(standard.getInitialDate()).plusDays(standard.getMaintenancePeriod());
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name(), standard.getMaintenanceCategory(), DateUtils.localDateToDate(nextThirdMaintenanceDate));
                break;
        }
        request.setValues(values);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
@@ -134,7 +134,7 @@
                order.setActualStartTime(new Date());
                eamWeekMaintenanceOrderMapper.updateById(order);
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
        }
@@ -260,7 +260,7 @@
                entity.setActualStartTime(new Date());
                eamWeekMaintenanceOrderMapper.updateById(entity);
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name(), null, null);
                return result.isSuccess();
            }
@@ -310,7 +310,7 @@
        Result result = flowDefinitionService.startProcessInstanceByKey("week_maintenance_process", variables);
        if (result != null) {
            //更新设备保养状态
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name());
            eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_WEEK_MAINTENANCE.name(), null, null);
            return result.isSuccess();
        }
        return true;
@@ -390,7 +390,7 @@
                    eamWeekMaintenanceOrderDetailService.updateBatchById(request.getTableDetailList());
                }
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.WEEK_MAINTENANCE_WAIT_CONFIRM.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.WEEK_MAINTENANCE_WAIT_CONFIRM.name(), null, null);
                break;
            case WAIT_CONFIRM:
                if (StringUtils.isBlank(equipment.getEquipmentManager())) {
@@ -474,7 +474,7 @@
                    }
                }
                //更新设备保养状态
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name());
                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.NORMAL.name(), null, null);
                break;
        }
        request.setValues(values);