From ffea930626dbf049d678e5abfa16edfdf5133dbf Mon Sep 17 00:00:00 2001
From: luqingyang <lqy5492@163.com>
Date: 星期二, 31 十月 2023 10:50:36 +0800
Subject: [PATCH] 调拨管理 相关代码

---
 consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java |   60 +++++++++++++++++++-
 consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java   |   72 ++++++++++++++++++++++-
 consum-model-pojo/src/main/java/com/consum/model/vo/LWhGoodsRecordVo.java           |   19 ++++++
 consum-model-pojo/src/main/java/com/consum/model/vo/LWhFormOutputVo.java            |   21 +++++++
 4 files changed, 164 insertions(+), 8 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
index bfd5da1..d58d8d1 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java
@@ -7,6 +7,7 @@
 import com.consum.base.pojo.*;
 import com.consum.base.service.*;
 import com.consum.model.po.*;
+import com.consum.model.vo.LWhFormOutputVo;
 import com.consum.model.vo.LWhFormTransferVo;
 import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
@@ -39,6 +40,8 @@
     private BaseWarehouseServiceImpl baseWarehouseService;
     @Autowired
     private LWhProcureModelService lWhProcureModelService;
+    @Autowired
+    private LWhFormTransferCoreService lWhFormTransferCoreService;
 
     /**
      * @Description 鏂板
@@ -59,7 +62,7 @@
     }
 
     /**
-     * @Description  鍒楄〃鏌ヨ
+     * @Description  鍒楄〃鏌ヨ(璋冩嫧鏄庣粏)
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/30
      */
@@ -73,7 +76,7 @@
         }
         FinSysTenantUser sysInfo = getSysInfo();
 
-        //鍙兘鏌ヨ鏈骇 鍙婁互涓嬫満鏋勭殑杩涜揣鍗�
+        //鍙兘鏌ヨ鏈骇 鍙婁互涓嬫満鏋勭殑璋冩嫧鍗�
         //??????
 
         GenericPager genericPager = lWhFormTransferService.queryFormTransferList(param);
@@ -109,7 +112,7 @@
      * @Date 2023/10/30
      */
     @GetMapping("/detail")
-    public ResponseValue getById(Long id) throws IllegalAccessException {
+    public ResponseValue getById(Long id) {
         if (id == null) {
             return ResponseValue.error("璋冩嫧鍗昳d涓虹┖");
         }
@@ -117,5 +120,56 @@
         return ResponseValue.success(vo);
     }
 
+    /**
+     * 鎾ら攢
+     * @author 鍗㈠簡闃�
+     * @date 2023/10/31
+     */
+    @PostMapping("/updStatus")
+    public ResponseValue updateStatus(Long id) {
+        if (id == null) {
+            return ResponseValue.error("鍙傛暟閿欒");
+        }
+
+        int num = this.lWhFormTransferService.updateStatus(id);
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("淇敼澶辫触锛�");
+    }
+
+    /**
+     * @Description  璋冩嫧鍏ュ簱
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/31
+     */
+    @PostMapping("/income")
+    public ResponseValue income(Long id) {
+        lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser());
+        return ResponseValue.success();
+    }
+
+    /**
+     * @Description  璋冩嫧鍑哄簱
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/31
+     */
+    @PostMapping("/output")
+    public ResponseValue output(Long id) {
+        lWhFormTransferCoreService.doTransferOutPut(id, getCurrentUser());
+        return ResponseValue.success();
+    }
+
+    /**
+     * @Description  瀵煎嚭璋冩嫧鍑哄簱鍗�
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/31
+     */
+    @GetMapping("/export")
+    public ResponseValue export(Long id) {
+        if (id == null) {
+            return ResponseValue.error("璋冩嫧鍗昳d涓虹┖");
+        }
+        LWhFormOutputVo vo = this.lWhFormTransferService.export(id,this.getCurrentUser());
+        return ResponseValue.success(vo);
+    }
+
 
 }
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
index 98db533..44335c4 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
@@ -3,11 +3,14 @@
 import com.consum.base.Constants;
 import com.consum.base.core.CodeGeneratorEnum;
 import com.consum.base.core.CodeGeneratorService;
+import com.consum.base.core.WhBusinessEnum;
 import com.consum.base.core.param.BaseWarehouseParam1;
 import com.consum.base.pojo.*;
 import com.consum.base.util.IdUtil;
 import com.consum.model.po.*;
+import com.consum.model.vo.LWhFormOutputVo;
 import com.consum.model.vo.LWhFormTransferVo;
+import com.consum.model.vo.LWhGoodsRecordVo;
 import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.DateUtils;
@@ -41,11 +44,19 @@
     private LWhGoodsService lWhGoodsService;
     @Autowired
     private LWhProcureModelService lWhProcureModelService;
+    @Autowired
+    private LWhFormOutputCoreService lWhFormOutputCoreService;
+    @Autowired
+    private LWhFormOutputServiceImpl lWhFormOutputService;
+    @Autowired
+    private LWhGoodsRecordService lWhGoodsRecordService;
+    @Autowired
+    private BaseGoodsModelsServiceImpl baseGoodsModelsService;
 
     private static String QUERY_FORM_TRANSFER_LIST = "SELECT * FROM l_wh_form_transfer WHERE 1 = 1";
 
     /**
-     * @Description
+     * @Description 鏂板
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/30
      */
@@ -135,8 +146,8 @@
         }
         //鎺ユ敹鏈烘瀯
         if (param.getInAgencyId() != null){
-            sql.append(" and OUT_AGENCY_ID = :OUT_AGENCY_ID ");
-            paramts.put("OUT_AGENCY_ID",   param.getOutAgencyId() );
+            sql.append(" and IN_AGENCY_ID = :IN_AGENCY_ID ");
+            paramts.put("IN_AGENCY_ID",   param.getInAgencyId() );
         }
         //鐘舵��
         if (param.getStates() != null) {
@@ -186,7 +197,58 @@
             BeanUtils.copyProperties(lWhFormTransfer,vo);
         }
         //2.鏌ヨ鐗╁搧鍨嬪彿
-//        this.lWhProcureModelService.getModelByForm(id)
-        return null;
+        List<LWhProcureModel> models = this.lWhProcureModelService.getModelByForm(WhBusinessEnum.DIAOBO, id);
+        if (!CollectionUtils.isEmpty(models)) {
+            vo.setModels(models);
+        }
+        return vo;
+    }
+
+    /**
+     * @Description  瀵煎嚭璋冩嫧鍑哄簱鍗�
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/31
+     */
+    public LWhFormOutputVo export(Long id, S_user_core currentUser) {
+        LWhFormOutputVo result = new LWhFormOutputVo();
+        long dealTime = DateUtils.getDateTimeNumber(System.currentTimeMillis());
+        //1.鏍规嵁璋冩嫧鍗曠敓鎴愬嚭搴撳崟
+        Long outWarehouseFormId = this.lWhFormOutputCoreService.createOutFormByTransId(id, currentUser, dealTime);
+        //2.鍑哄簱鍗昳d鏌ヨ鍑哄簱鍗�
+        LWhFormOutput lWhFormOutput = this.lWhFormOutputService.get(new LWhFormOutput(outWarehouseFormId));
+        if (lWhFormOutput!= null) {
+            BeanUtils.copyProperties(lWhFormOutput,result);
+        }
+        //3.鏍规嵁杩涘嚭搴撴祦姘存�昏〃id鏌ヨl_wh_goods_record
+        LWhGoodsRecord record = new LWhGoodsRecord();
+        record.setWarehouseFlowId(lWhFormOutput.getWarehouseFlowId());
+        List<LWhGoodsRecord> recordList = this.lWhGoodsRecordService.select(record);
+        List<LWhGoodsRecordVo> voList = new ArrayList<>();
+        if (!CollectionUtils.isEmpty(recordList)) {
+            for (LWhGoodsRecord lWhGoodsRecord : recordList) {
+                LWhGoodsRecordVo vo = new LWhGoodsRecordVo();
+                BeanUtils.copyProperties(lWhGoodsRecord,vo);
+                //鏍规嵁鍨嬪彿id鏌ヨ鍨嬪彿
+                BaseGoodsModels baseGoodsModels = baseGoodsModelsService.get(new BaseGoodsModels(id));
+                if (baseGoodsModels != null) {
+                    vo.setUnit(baseGoodsModels.getUnit());
+                }
+                voList.add(vo);
+            }
+        }
+        result.setRecordVoList(voList);
+
+        return result;
+    }
+
+    /**
+     * 鎾ら攢
+     * @author 鍗㈠簡闃�
+     * @date 2023/10/31
+     */
+    public int updateStatus(Long id) {
+        LWhFormTransfer lWhFormTransfer = new LWhFormTransfer(id);
+        lWhFormTransfer.setStates(4);
+        return this.update(lWhFormTransfer);
     }
 }
diff --git a/consum-model-pojo/src/main/java/com/consum/model/vo/LWhFormOutputVo.java b/consum-model-pojo/src/main/java/com/consum/model/vo/LWhFormOutputVo.java
new file mode 100644
index 0000000..0555a3c
--- /dev/null
+++ b/consum-model-pojo/src/main/java/com/consum/model/vo/LWhFormOutputVo.java
@@ -0,0 +1,21 @@
+
+package com.consum.model.vo;
+
+import com.consum.model.po.LWhFormOutput;
+
+import java.util.List;
+
+public class LWhFormOutputVo extends LWhFormOutput {
+    /**
+     * 鍚勮鏍肩墿鍝佺殑杩涘嚭搴撹褰�
+     */
+    private List<LWhGoodsRecordVo> recordVoList;
+
+    public List<LWhGoodsRecordVo> getRecordVoList() {
+        return recordVoList;
+    }
+
+    public void setRecordVoList(List<LWhGoodsRecordVo> recordVoList) {
+        this.recordVoList = recordVoList;
+    }
+}
diff --git a/consum-model-pojo/src/main/java/com/consum/model/vo/LWhGoodsRecordVo.java b/consum-model-pojo/src/main/java/com/consum/model/vo/LWhGoodsRecordVo.java
new file mode 100644
index 0000000..912fab9
--- /dev/null
+++ b/consum-model-pojo/src/main/java/com/consum/model/vo/LWhGoodsRecordVo.java
@@ -0,0 +1,19 @@
+
+package com.consum.model.vo;
+
+import com.consum.model.po.LWhGoodsRecord;
+
+public class LWhGoodsRecordVo extends LWhGoodsRecord {
+    /**
+     * 鐗╁搧鍗曚綅
+     */
+    private String unit;
+
+    public String getUnit() {
+        return unit;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+}

--
Gitblit v1.9.1