zhangherong
4 天以前 0ae6cada776b00f80b1cb5cb1814f17fc8aefd6f
art: 周保、点检定时任务事务问题处理
已修改2个文件
28 ■■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/InspectionOrderGenerateJob.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/WeekMaintenanceOrderGenerateJob.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/InspectionOrderGenerateJob.java
@@ -13,7 +13,6 @@
import org.jeecg.modules.eam.service.IEamInspectionOrderService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
import org.jeecg.modules.mdc.util.ThrowableUtil;
import org.jeecg.modules.quartz.entity.QuartzJob;
import org.jeecg.modules.quartz.entity.SysQuartzLog;
import org.jeecg.modules.quartz.service.IQuartzJobService;
@@ -24,7 +23,6 @@
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDate;
import java.util.Date;
@@ -54,7 +52,6 @@
     * @throws JobExecutionException
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        //任务日志
        SysQuartzLog quartzLog = new SysQuartzLog();
@@ -69,12 +66,11 @@
         */
        List<EamMaintenanceStandard> standardList = eamMaintenanceStandardService.queryListByCategory(MaintenanceCategoryEnum.POINT_INSPECTION.name());
        if (CollectionUtil.isEmpty(standardList)) {
            log.warn("没有配置任何周保标准,任务结束");
            log.warn("没有配置任何点检标准,任务结束");
            return;
        }
        //当前日期
        LocalDate now = LocalDate.now();
        try {
            for (EamMaintenanceStandard standard : standardList) {
                if (standard.getMaintenancePeriod() == null || standard.getMaintenancePeriod() < 1) {
                    log.error("点检标准周期设置错误,请先配置标准周期, standard:{}", standard);
@@ -114,14 +110,13 @@
                request.setOrderNum(codeSeq);
                List<EamInspectionOrderDetail> collect = standardDetailList.stream().map(EamInspectionOrderDetail::new).collect(Collectors.toList());
                request.setTableDetailList(collect);
            try {
                eamInspectionOrderService.addInspectionOrder(request);
            } catch (Exception e) {
                log.error("点检生成执行定时任务失败,{}", e.getMessage(), e);
            }
            }
            quartzLog.setIsSuccess(0);
        } catch (Exception e) {
            log.error("周保过生成执行定时任务失败,{}", e.getMessage(), e);
            quartzLog.setIsSuccess(-1);
            quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e));
        }
        long endTime = System.currentTimeMillis();
        quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime)));
        sysQuartzLogService.save(quartzLog);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/WeekMaintenanceOrderGenerateJob.java
@@ -13,7 +13,6 @@
import org.jeecg.modules.eam.service.IEamMaintenanceStandardDetailService;
import org.jeecg.modules.eam.service.IEamMaintenanceStandardService;
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;
import org.jeecg.modules.quartz.service.IQuartzJobService;
@@ -24,7 +23,6 @@
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDate;
import java.util.Date;
@@ -54,7 +52,6 @@
     * @throws JobExecutionException
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        //任务日志
        SysQuartzLog quartzLog = new SysQuartzLog();
@@ -74,7 +71,6 @@
        }
        //当前日期
        LocalDate now = LocalDate.now();
        try {
            for (EamMaintenanceStandard standard : standardList) {
                if (standard.getMaintenancePeriod() == null || standard.getMaintenancePeriod() < 1) {
                    log.error("周保标准周期设置错误,请先配置标准周期, standard:{}", standard);
@@ -113,14 +109,13 @@
                request.setCreationMethod(OrderCreationMethodEnum.AUTO.name());
                List<EamWeekMaintenanceOrderDetail> collect = standardDetailList.stream().map(EamWeekMaintenanceOrderDetail::new).collect(Collectors.toList());
                request.setTableDetailList(collect);
            try {
                eamWeekMaintenanceOrderService.addWeekMaintenance(request);
            } catch (Exception e) {
                log.error("周保生成执行定时任务失败,{}", e.getMessage(), e);
            }
            }
            quartzLog.setIsSuccess(0);
        } catch (Exception e) {
            log.error("周保过生成执行定时任务失败,{}", e.getMessage(), e);
            quartzLog.setIsSuccess(-1);
            quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e));
        }
        long endTime = System.currentTimeMillis();
        quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime)));
        sysQuartzLogService.save(quartzLog);