吉安感知网项目-后端
linwei
2026-01-27 a2fd9e8884883f31b7eb639a68625e93ad41602a
工单优化
2 files modified
23 ■■■■■ changed files
drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java 6 ●●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdPatrolTaskServiceImpl.java 17 ●●●●● patch | view | raw | blame | history
drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java
@@ -16,6 +16,7 @@
 */
package org.sxkj.gd.orderdata.service.impl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.sxkj.gd.orderdata.dto.GdDataObjectionDTO;
import org.sxkj.gd.orderdata.entity.GdDataObjectionAttachmentEntity;
@@ -33,6 +34,7 @@
import org.springblade.core.mp.base.BaseServiceImpl;
import org.sxkj.gd.orderdata.wrapper.GdDataObjectionWrapper;
import org.sxkj.gd.orderdata.wrapper.GdSupplyDemandAuditAttachmentWrapper;
import org.sxkj.system.cache.SysCache;
import java.util.List;
@@ -66,6 +68,10 @@
    @Override
    public boolean saveOrUpdateDataObjection(GdDataObjectionDTO gdDataEvaluationDTO) {
        GdDataObjectionEntity gdDataObjectionEntity = GdDataObjectionWrapper.build().entityDTO(gdDataEvaluationDTO);
        if(gdDataObjectionEntity.getObjectionStatus().equals("2")){
            String deptName = SysCache.getDeptName(Long.valueOf(AuthUtil.getDeptId()));
            gdDataObjectionEntity.setHandleUnit(deptName);
        }
        boolean result = saveOrUpdate(gdDataObjectionEntity);
        if (result) {
            if (gdDataEvaluationDTO.getAttachmentList() != null) {
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/service/impl/GdPatrolTaskServiceImpl.java
@@ -25,6 +25,7 @@
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.sxkj.common.constant.WordOrderConstant;
@@ -238,7 +239,7 @@
            // 这里可以根据allSubTasksAudited的结果执行后续逻辑,比如更新工单状态等
            if (allSubTasksAudited) {
                // 1.验收通过,生成报告
                exportPatrolReport(task.getWorkOrderId());
                asyncExportPatrolReport(task.getId());
                // 2.执行工单状态更新逻辑
                return updateWorkOrderStatusAndFlow(task.getWorkOrderId(),
                    WorkOrderStatusEnum.ACCEPTED_TO_BE_SETTLED);
@@ -386,6 +387,20 @@
        }
    }
    /**
     * 异步生成巡查报告
     *
     * @param patrolTaskId 巡查任务ID
     */
    @Async
    public void asyncExportPatrolReport(Long patrolTaskId) {
        try {
            exportPatrolReport(patrolTaskId);
        } catch (Exception e) {
            // 记录异步执行错误日志
            log.error("异步生成巡查报告失败,任务ID: {}");
        }
    }
    /**
     * 检查拒绝原因是否必填