zhangyuewww il y a 3 ans
Parent
commit
11177038f7

+ 2 - 0
winsea-haixin-platform-backend/src/main/resources/application.yml

@@ -55,6 +55,8 @@ auth:
     - /salePlanInfo/*
     - /freightReceivingDispatching/*
     - /receivingUser/*
+    - /settledCompanyInfo/*
+    - /settledCompanyDynamics/*
     - /searchRecordsInfo/*
     - /saleOrder/*
     - /saleOrder/**/*

+ 29 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/TranProcessInfoServiceImpl.java

@@ -5,12 +5,15 @@ import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.google.common.collect.Lists;
 import com.winsea.svc.base.security.util.AuthSecurityUtils;
+import com.winsea.svc.base.workflow.entity.Workflow;
 import com.yh.saas.common.support.util.IdGenerator;
 import com.yh.saas.common.support.util.StringUtils;
 import com.yh.saas.plugin.base.service.ICommonBillOperateHisService;
 import com.yh.saas.plugin.yiliangyiyun.constant.NumberConstant;
 import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
 import com.yh.saas.plugin.yiliangyiyun.entity.*;
+import com.yh.saas.plugin.yiliangyiyun.exception.YException;
+import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.TranProcessInfoMapper;
 import com.yh.saas.plugin.yiliangyiyun.service.*;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
@@ -48,6 +51,8 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
     private IDriverViewInfoService driverViewInfoService;
     @Autowired
     private IDriverPayeeInfoService driverPayeeInfoService;
+    @Autowired
+    private INewWorkflowService workflowService;
     /**
      * 汽运调度分页列表查询
      * @param tranProcessInfo
@@ -238,6 +243,30 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                             tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
                             tranSettlementReport.setTransportPrice(tranProcessInfo.getTranPrice());
                             tranSettlementReportService.insert(tranSettlementReport);
+                            boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
+                            // 不是退回的单子
+                            if (isStartWorkflow) {
+                                Workflow workflow = workflowService
+                                        .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(),"TRANSPORTATION-SETTLEMENT-REPORT");
+                                // 没配置审核流程,直接结束并处理信息
+                                if (workflow == null) {
+                                    throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                }
+                                // 开启审核流
+                                else {
+
+                                    // 设置状态 已提交审核
+                                    tranSettlementReport.setWorkflowId(workflow.getId());
+                                    tranSettlementReportService.updateById(tranSettlementReport);
+                                    workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
+                                }
+                            }
+                            // 退回的单子 再启用
+                            else {
+
+                                tranSettlementReportService.updateById(tranSettlementReport);
+                                workflowService.activateInstance(tranSettlementReport.getWorkflowId(), tranSettlementReport.getId());
+                            }
                         }
                     }
                     //卸车反馈时状态改为已送达