刘小明
2024-07-25 a63751400e4a3415326b0bb4302e6d55ea4826bf
定时任务修改
1个文件已修改
30 ■■■■■ 已修改文件
pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanTask.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanTask.java
@@ -22,20 +22,24 @@
    @Override
    public void execute(JobExecutionContext ctx) {
        log.info("开始执行 组装计划任务定时检查");
        PrAssemblyPlanMapper assemblyDao = SpringContextUtil.getBean(PrAssemblyPlanMapper.class);
        PrDeviceMapper deviceDao = SpringContextUtil.getBean(PrDeviceMapper.class);
        Map<String,Object> planParams = new HashMap<>();
        planParams.put("status",PlanStatusEnum.NORMAL.getCode());
        List<PrAssemblyPlan> list = assemblyDao.selectSome(planParams);
        for (PrAssemblyPlan plan : list) {
            HashMap<String, Object> deviceParams = new HashMap<>();
            deviceParams.put("batchId", plan.getBatchId());
            deviceParams.put("status", DeviceStatus.COMPLETED.getCode());
            Long count = deviceDao.selectSomeCount(deviceParams);
            if(count>plan.number && DateUtil.between(DateUtil.parse(plan.endDate), DateUtil.date(), DateUnit.DAY)>3){
                plan.setStatus(PlanStatusEnum.END.getCode());
                assemblyDao.updateByPrimaryKeySelective(plan);
        try{
            PrAssemblyPlanMapper assemblyDao = SpringContextUtil.getBean(PrAssemblyPlanMapper.class);
            PrDeviceMapper deviceDao = SpringContextUtil.getBean(PrDeviceMapper.class);
            Map<String,Object> planParams = new HashMap<>();
            planParams.put("status",PlanStatusEnum.NORMAL.getCode());
            List<PrAssemblyPlan> list = assemblyDao.selectSome(planParams);
            for (PrAssemblyPlan plan : list) {
                HashMap<String, Object> deviceParams = new HashMap<>();
                deviceParams.put("batchId", plan.getBatchId());
                deviceParams.put("status", DeviceStatus.COMPLETED.getCode());
                Long count = deviceDao.selectSomeCount(deviceParams);
                if(count>plan.number && DateUtil.between(DateUtil.parse(plan.endDate), DateUtil.date(), DateUnit.DAY)>3){
                    plan.setStatus(PlanStatusEnum.END.getCode());
                    assemblyDao.updateByPrimaryKeySelective(plan);
                }
            }
        }catch (Exception e){
            log.error("组装计划任务定时检查异常",e);
        }
        log.info("完成 组装计划任务定时检查");
    }