lyh
2 天以前 0d06048c5d560e301bf17fad476975c8ffffcb56
lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java
@@ -19,10 +19,12 @@
import org.jeecg.modules.eam.dto.EchartsDto;
import org.jeecg.modules.eam.entity.EamEquipment;
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
import org.jeecg.modules.eam.entity.EamThirdMaintenanceWorkPlanSheet;
import org.jeecg.modules.eam.mapper.EamEquipmentMapper;
import org.jeecg.modules.eam.request.EamEquipmentQuery;
import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
import org.jeecg.modules.eam.service.IEamEquipmentService;
import org.jeecg.modules.eam.service.IEamThirdMaintenanceWorkPlanSheetService;
import org.jeecg.modules.eam.tree.FindsEquipmentEamCenterUtil;
import org.jeecg.modules.eam.tree.FindsEquipmentProductionUtil;
import org.jeecg.modules.eam.vo.EamEquipmentTree;
@@ -64,6 +66,10 @@
    private IBaseFactoryUserService baseFactoryUserService;
    @Autowired
    private IBaseFactoryService baseFactoryService;
    @Autowired
    private IEamThirdMaintenanceWorkPlanSheetService eamThirdMaintenanceWorkPlanSheetService;
    @Autowired
    private IEamEquipmentExtendService iEamEquipmentExtendService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -84,6 +90,10 @@
        eamEquipmentExtend.setRepairStatus(EquipmentRepairStatus.NORMAL.name());
        equipmentExtendService.save(eamEquipmentExtend);
        // 处理三保保养计划(不再进行日期比较)
        eamThirdMaintenanceWorkPlanSheetService.createMaintenancePlan(eamEquipment, eamEquipment.getLatestThirdMaintenance());
        eamThirdMaintenanceWorkPlanSheetService.createMaintenancePlan(eamEquipment, eamEquipment.getNextThirdMaintenance());
        //插入设备履历   @EquipmentHistoryLog
        return eamEquipment;
    }
@@ -94,9 +104,34 @@
     */
    @Override
    public EamEquipment updateEquipment(EamEquipment eamEquipment){
        if (eamEquipment == null) {
            return null;
        if (eamEquipment == null) return null;
        if (eamEquipment.getNextThirdMaintenance() != null &&
                eamEquipment.getThirdMaintenancePeriod() != null) {
            org.jeecg.common.util.DateUtils.calculateMaintenanceDates(
                    eamEquipment.getNextThirdMaintenance(),
                    eamEquipment.getThirdMaintenancePeriod(),
                    newDate -> eamEquipment.setNextThirdMaintenance(newDate),
                    latestDate -> eamEquipment.setLatestThirdMaintenance(latestDate)
            );
        }
        // 获取旧数据
        EamEquipmentExtend old = iEamEquipmentExtendService.getById(eamEquipment.getId());
        if (old == null) return null;
        // 提取新旧日期避免重复访问
        Date newLatest = eamEquipment.getLatestThirdMaintenance();
        Date newNext = eamEquipment.getNextThirdMaintenance();
        Date oldLatest = old.getLatestThirdMaintenance();
        Date oldNext = old.getNextThirdMaintenance();
        // 处理保养日期变更
        eamThirdMaintenanceWorkPlanSheetService.processMaintenanceDateChange(eamEquipment, oldLatest, newLatest);
        eamThirdMaintenanceWorkPlanSheetService.processMaintenanceDateChange(eamEquipment, oldNext, newNext);
        // 更新主表和扩展表
        eamEquipmentMapper.updateById(eamEquipment);
        EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend();
        BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend);