Kaynağa Gözat

Merge branch 'master' of http://47.100.3.209:3000/gdc/yiliangyiyun

ccjgmwz 3 yıl önce
ebeveyn
işleme
8b620db2f3

+ 8 - 13
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/WarehousingOrderController.java

@@ -1,7 +1,10 @@
 package com.yh.saas.plugin.yiliangyiyun.controller;
 
 
+import com.yh.saas.plugin.yiliangyiyun.entity.SourceRelationInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehouseInOutInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.WarehousingOrder;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseInOutInfoService;
 import com.yh.saas.plugin.yiliangyiyun.service.IWarehousingOrderService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -28,23 +31,15 @@ public class WarehousingOrderController {
     @Autowired
     private IWarehousingOrderService warehousingOrderService;
 
+
     /**
-     * 添加/编辑出库选择货源
-     * @param warehousingOrder
-     * @return
-     */
-    @PostMapping("/editSourceOfGoods")
-    public String editSourceOfGoods(WarehousingOrder warehousingOrder){
-        return warehousingOrderService.editSourceOfGoods(warehousingOrder);
-    }
-    /**
-     * 查看货源-出库
-     * @param sourceId
+     * 退库货源列表
+     * @param contractNo,moveTaskNo
      * @return
      */
     @GetMapping("/getSourceOfGoodsList")
-    public List<WarehousingOrder> getSourceOfGoodsList(String sourceId){
-        return warehousingOrderService.getSourceOfGoodsList(sourceId);
+    public List<SourceRelationInfo> getReturnSourceList(String compId, String contractNo, String moveTaskNo){
+        return warehousingOrderService.getReturnSourceList(compId,contractNo,moveTaskNo);
     }
     /**
      * 入库单列表查询

+ 5 - 1
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/SourceRelationInfo.java

@@ -90,7 +90,11 @@ public class SourceRelationInfo extends BaseModel<SourceRelationInfo> {
      */
     @TableField(exist = false)
     private String warehouseInOutId;
-
+    /**
+     * 退库勾选标识(0未勾选1已勾选)
+     */
+    @TableField(exist = false)
+    private String returnTickFlag;
 
     @Override
     protected Serializable pkVal() {

+ 6 - 8
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IWarehousingOrderService.java

@@ -1,6 +1,8 @@
 package com.yh.saas.plugin.yiliangyiyun.service;
 
 import com.baomidou.mybatisplus.plugins.Page;
+import com.yh.saas.plugin.yiliangyiyun.entity.SourceRelationInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehouseInOutInfo;
 import com.yh.saas.plugin.yiliangyiyun.entity.WarehousingOrder;
 import com.baomidou.mybatisplus.service.IService;
 
@@ -15,16 +17,12 @@ import java.util.List;
  * @since 2022-05-17
  */
 public interface IWarehousingOrderService extends IService<WarehousingOrder> {
+
     /**
-     * 添加/编辑出库选择货源
-     * @param warehousingOrder
-     */
-    String editSourceOfGoods(WarehousingOrder warehousingOrder);
-    /**
-     * 查看货源-出库
-     * @param sourceId
+     * 退库货源列表
+     * @param contractNo,moveTaskNo
      */
-    List<WarehousingOrder> getSourceOfGoodsList(String sourceId);
+    List<SourceRelationInfo> getReturnSourceList(String compId, String contractNo, String moveTaskNo);
 
     /**
      * 信息分页列表查询

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

@@ -1,6 +1,7 @@
 package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.winsea.svc.base.workflow.entity.Workflow;
 import com.yh.saas.plugin.yiliangyiyun.entity.InOutWarehouseTask;
 import com.yh.saas.plugin.yiliangyiyun.entity.PaymentManagement;
@@ -70,44 +71,53 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
     private ICommonBillOperateHisService billOperateHisService;
     @Autowired
     private IExpenseAllocationInfoService expenseAllocationInfoService;
+    @Autowired
+    private ISourceRelationInfoService sourceRelationInfoService;
 
     /**
-     * 添加/编辑出库选择货源
-     * @param warehousingOrder
+     * 退库货源列表
+     * @param contractNo
      */
     @Override
-    public String editSourceOfGoods(WarehousingOrder warehousingOrder) {
-        List<WarehousingOrder> orderList = warehousingOrder.getOrderList();
-        if(!CollectionUtils.isEmpty(orderList)){
-            for(WarehousingOrder warehousingOrder1 : orderList){
-                WarehousingOrder warehousingOrder2 = this.selectById(warehousingOrder1.getId());
-                //添加货源
-                if("0".equals(warehousingOrder.getTaskFlag())){
-                    warehousingOrder2.setEstimateOutWarehouseWeight(warehousingOrder2.getEstimateOutWarehouseWeight() + warehousingOrder1.getOutWeight());
-                }
-                //编辑货源
-                else{
-                    warehousingOrder2.setEstimateOutWarehouseWeight(warehousingOrder2.getEstimateOutWarehouseWeight() + warehousingOrder1.getOutWeight() - warehousingOrder2.getOutWeight());
+    public List<SourceRelationInfo> getReturnSourceList(String compId,String contractNo,String moveTaskNo) {
+        List<SourceRelationInfo> sourceRelationInfoList=new ArrayList<>();
+        Wrapper<WarehouseInOutInfo> warehouseInOutInfoWrapper = new EntityWrapper<>();
+        warehouseInOutInfoWrapper.eq("status_flag", "3").eq("delete_flag", "0").eq("return_tick_flag", "0");
+        if (!StringUtils.isEmpty(contractNo)) {
+            warehouseInOutInfoWrapper.eq("contract_no", contractNo);
+        }
+        if (!StringUtils.isEmpty(moveTaskNo)) {
+            warehouseInOutInfoWrapper.eq("in_out_task_no", moveTaskNo);
+        }
+        List<WarehouseInOutInfo> warehouseInOutInfoList = warehouseInOutInfoService.selectList(warehouseInOutInfoWrapper);
+        if (!CollectionUtils.isEmpty(warehouseInOutInfoList)){
+            for (WarehouseInOutInfo warehouseInOutInfo:warehouseInOutInfoList){
+                SourceRelationInfo sourceRelationInfo=new SourceRelationInfo();
+                sourceRelationInfo.setCarNo(warehouseInOutInfo.getCarNo());
+                sourceRelationInfo.setEstimateOutWarehouseWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
+                sourceRelationInfo.setIssuingTime(warehouseInOutInfo.getInOutDate());
+                sourceRelationInfo.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                sourceRelationInfo.setReturnTickFlag(warehouseInOutInfo.getReturnTickFlag());
+                String goodsSource="";
+                InOutWarehouseTask inOutWarehouseTask=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                .eq("in_out_task_no",warehouseInOutInfo.getInOutTaskNo())
+                .eq("comp_id",compId));
+                if (inOutWarehouseTask!=null) {
+                    List<SourceRelationInfo> sourceRelationInfoList1 = sourceRelationInfoService.selectList(new EntityWrapper<SourceRelationInfo>()
+                            .eq("task_id", inOutWarehouseTask.getId())
+                            .eq("delete_flag", "0"));
+                    if (!CollectionUtils.isEmpty(sourceRelationInfoList)){
+                        for (SourceRelationInfo sourceRelationInfo1:sourceRelationInfoList1){
+                            goodsSource=goodsSource+","+sourceRelationInfo1.getGoodsSource();
+                        }
+                    }
                 }
-                this.updateById(warehousingOrder2);
+                sourceRelationInfo.setGoodsSource(goodsSource);
+                sourceRelationInfo.setWarehouseInOutId(warehouseInOutInfo.getId());
+                sourceRelationInfoList.add(sourceRelationInfo);
             }
-
-        }
-        return "ok";
-    }
-    /**
-     * 查看货源-出库
-     * @param sourceId
-     */
-    @Override
-    public List<WarehousingOrder> getSourceOfGoodsList(String sourceId) {
-        List<WarehousingOrder> warehousingOrderList=new ArrayList<>();
-        String[] sourceIdNew = sourceId.split(",");
-        for (String id : sourceIdNew) {
-            WarehousingOrder warehousingOrder=this.selectById(id);
-            warehousingOrderList.add(warehousingOrder);
         }
-        return warehousingOrderList;
+        return sourceRelationInfoList;
     }
 
 
@@ -213,33 +223,10 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                 warehousingOrder.setAmountEdPayable(0d);
                 warehousingOrder.setIssuingTime(new Date());
                 warehousingOrder.setGrainFund(paymentManagement.getAmountIngPayable());
-//                boolean isStartWorkflow = StringUtils.isBlank(warehousingOrder.getWorkflowId());
-//                // 不是退回的单子
-//                if (isStartWorkflow) {
-//                    Workflow workflow = workflowService
-//                            .findLatestWorkflowByBusinessCodeByApp(paymentManagement.getCompId(), "SALE-CONTRACT-APPROVE");
-//                    // 没配置审核流程,直接结束并处理信息
-//                    if (workflow == null) {
-//                        throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
-//                    }
-//                    // 开启审核流
-//                    else {
-//
-//                        // 设置状态 已提交审核
-//                        warehousingOrder.setWorkflowId(workflow.getId());
-//                        this.updateById(warehousingOrder);
-//                        workflowService.startInstance(workflow.getId(), warehousingOrder.getId());
-//                    }
-//                }
-//                // 退回的单子 再启用
-//                else {
-//
-//                    this.updateById(warehousingOrder);
-//                    workflowService.activateInstance(warehousingOrder.getWorkflowId(), warehousingOrder.getId());
-//                }
                 this.insert(warehousingOrder);
             }
         }
+        String compId = AuthSecurityUtils.getStaffById(AuthSecurityUtils.getCurrentUserId()).getCompId();
         //采购入库
         List<WarehouseInOutInfo> warehouseInOutInfoList = warehouseInOutInfoService.selectList(new EntityWrapper<WarehouseInOutInfo>()
                 .eq("status", "已提交")
@@ -271,30 +258,6 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                 warehousingOrder.setSurplusWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
                 warehousingOrder.setIssuingTime(new Date());
                 warehousingOrder.setGrainFund(warehouseInOutInfo.getCost()*warehouseInOutInfo.getNetWeight());
-//                boolean isStartWorkflow = StringUtils.isBlank(warehousingOrder.getWorkflowId());
-//                // 不是退回的单子
-//                if (isStartWorkflow) {
-//                    Workflow workflow = workflowService
-//                            .findLatestWorkflowByBusinessCodeByApp(paymentManagement.getCompId(), "SALE-CONTRACT-APPROVE");
-//                    // 没配置审核流程,直接结束并处理信息
-//                    if (workflow == null) {
-//                        throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
-//                    }
-//                    // 开启审核流
-//                    else {
-//
-//                        // 设置状态 已提交审核
-//                        warehousingOrder.setWorkflowId(workflow.getId());
-//                        this.updateById(warehousingOrder);
-//                        workflowService.startInstance(workflow.getId(), warehousingOrder.getId());
-//                    }
-//                }
-//                // 退回的单子 再启用
-//                else {
-//
-//                    this.updateById(warehousingOrder);
-//                    workflowService.activateInstance(warehousingOrder.getWorkflowId(), warehousingOrder.getId());
-//                }
                 this.insert(warehousingOrder);
             }
         }
@@ -328,7 +291,7 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
 //                // 不是退回的单子
 //                if (isStartWorkflow) {
 //                    Workflow workflow = workflowService
-//                            .findLatestWorkflowByBusinessCodeByApp(paymentManagement.getCompId(), "SALE-CONTRACT-APPROVE");
+//                            .findLatestWorkflowByBusinessCodeByApp(compId, "WAREHOUSING-ORDER-APPROVE");
 //                    // 没配置审核流程,直接结束并处理信息
 //                    if (workflow == null) {
 //                        throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
@@ -365,6 +328,8 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                         .eq("in_out_task_no", warehouseInOutInfo.getInOutTaskNo()));
                 warehousingOrder.setWarehouseInOutId(warehouseInOutInfo.getId());
                 warehousingOrder.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                warehousingOrder.setStatusFlag(StatusEnum.PENDING_PAYMENT.getFlag());
+                warehousingOrder.setStatus(StatusEnum.PENDING_PAYMENT.getName());
                 //货源为发货库
                 warehousingOrder.setGoodsSource(inOutWarehouseTask.getAgent()+"(退)");
                 warehousingOrder.setCompId(inOutWarehouseTask.getCompId());
@@ -426,29 +391,30 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
             //请款
             else {
                 for (WarehousingOrder warehousingOrder1 : warehousingOrderList) {
-                boolean isStartWorkflow = StringUtils.isBlank(warehousingOrder1.getWorkflowId());
-                // 不是退回的单子
-                if (isStartWorkflow) {
-                    Workflow workflow = workflowService
-                            .findLatestWorkflowByBusinessCodeByApp(warehousingOrder1.getCompId(), "WAREHOUSING-ORDER-APPROVE");
-                    // 没配置审核流程,直接结束并处理信息
-                    if (workflow == null) {
-                        throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                    warehousingOrder1.setStatusFlag(StatusEnum.PENDING_PAYMENT.getFlag());
+                    warehousingOrder1.setStatus(StatusEnum.PENDING_PAYMENT.getName());
+                    boolean isStartWorkflow = StringUtils.isBlank(warehousingOrder1.getWorkflowId());
+                    // 不是退回的单子
+                    if (isStartWorkflow) {
+                        Workflow workflow = workflowService
+                                .findLatestWorkflowByBusinessCodeByApp(warehousingOrder1.getCompId(), "WAREHOUSING-ORDER-APPROVE");
+                        // 没配置审核流程,直接结束并处理信息
+                        if (workflow == null) {
+                            throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                        }
+                        // 开启审核流
+                        else {
+                            // 设置状态 已提交审核
+                            warehousingOrder1.setWorkflowId(workflow.getId());
+                            this.updateById(warehousingOrder1);
+                            workflowService.startInstance(workflow.getId(), warehousingOrder1.getId());
+                        }
                     }
-                    // 开启审核流
+                    // 退回的单子 再启用
                     else {
-
-                        // 设置状态 已提交审核
-                        warehousingOrder1.setWorkflowId(workflow.getId());
                         this.updateById(warehousingOrder1);
-                        workflowService.startInstance(workflow.getId(), warehousingOrder1.getId());
+                        workflowService.activateInstance(warehousingOrder1.getWorkflowId(), warehousingOrder1.getId());
                     }
-                }
-                // 退回的单子 再启用
-                else {
-                    this.updateById(warehousingOrder1);
-                    workflowService.activateInstance(warehousingOrder1.getWorkflowId(), warehousingOrder1.getId());
-                }
                     this.updateById(warehousingOrder1);
                 }
             }

+ 2 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/WarehousingOrderMapper.xml

@@ -41,6 +41,8 @@
             resultType="com.yh.saas.plugin.yiliangyiyun.entity.WarehousingOrder">
         SELECT
         id,
+        comp_id as compId,
+        car_no as carNo,
         goods_source as goodsSource,
         warehouse_name as warehouseName,
         contract_no as contractNo,