ccjgmwz 3 years ago
parent
commit
2426d19d67

+ 4 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/WarehousingOrder.java

@@ -42,6 +42,10 @@ public class WarehousingOrder extends BaseModel<WarehousingOrder> {
      * 仓库id
      */
     private String baseId;
+    /**
+     * 批次id
+     */
+    private String batchId;
     /**
      * 公司id
      */

+ 13 - 5
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WarehousingOrderServiceImpl.java

@@ -390,9 +390,10 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
             }
             //请款
             else {
-                for (WarehousingOrder warehousingOrder1 : warehousingOrderList) {
-                    warehousingOrder1.setStatusFlag(StatusEnum.PENDING_PAYMENT.getFlag());
-                    warehousingOrder1.setStatus(StatusEnum.PENDING_PAYMENT.getName());
+                String batchId = UUID.randomUUID().toString();
+                String workflowId = "";
+                if(warehousingOrderList.size() > 0){
+                    WarehousingOrder warehousingOrder1 = warehousingOrderList.get(0);
                     boolean isStartWorkflow = StringUtils.isBlank(warehousingOrder1.getWorkflowId());
                     // 不是退回的单子
                     if (isStartWorkflow) {
@@ -404,17 +405,24 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                         }
                         // 开启审核流
                         else {
+                            workflowId = workflow.getId();
                             // 设置状态 已提交审核
                             warehousingOrder1.setWorkflowId(workflow.getId());
                             this.updateById(warehousingOrder1);
-                            workflowService.startInstance(workflow.getId(), warehousingOrder1.getId());
+                            workflowService.startInstance(workflow.getId(), batchId);
                         }
                     }
                     // 退回的单子 再启用
                     else {
                         this.updateById(warehousingOrder1);
-                        workflowService.activateInstance(warehousingOrder1.getWorkflowId(), warehousingOrder1.getId());
+                        workflowService.activateInstance(warehousingOrder1.getWorkflowId(), warehousingOrder1.getBatchId());
                     }
+                }
+
+                for (WarehousingOrder warehousingOrder1 : warehousingOrderList) {
+                    warehousingOrder1.setStatusFlag(StatusEnum.PENDING_PAYMENT.getFlag());
+                    warehousingOrder1.setStatus(StatusEnum.PENDING_PAYMENT.getName());
+                    warehousingOrder1.setWorkflowId(workflowId);
                     this.updateById(warehousingOrder1);
                 }
             }