From dc1800d4d2d252b7b37d80d9f54285200c94ff3c Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期三, 15 十一月 2023 19:34:40 +0800
Subject: [PATCH] 出库单管理

---
 consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java |  121 ++++++++++++++++++++++++++++++----------
 1 files changed, 91 insertions(+), 30 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 90ea3a0..24c767c 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
@@ -1,20 +1,25 @@
 package com.consum.base.controller;
 
 import com.consum.base.BaseController;
+import com.consum.base.core.utils.IdUtil;
+import com.consum.base.core.utils.MapUtils;
+import com.consum.base.core.utils.MapperUtil;
+import com.consum.base.pojo.LWhFormTransferGoodsInfoParam;
 import com.consum.base.pojo.LWhFormTransferParam;
-import com.consum.base.pojo.LWhProcureModelParams;
 import com.consum.base.pojo.ProcureModelInfoDto;
 import com.consum.base.pojo.UseRecordDto;
 import com.consum.base.pojo.UseRecordSkuDto;
-import com.consum.base.pojo.query.TransferQryDto;
+import com.consum.base.pojo.query.TransferQry;
+import com.consum.base.pojo.response.FormTransferVO;
+import com.consum.base.pojo.response.FromTransferTemplateInfoVO;
+import com.consum.base.pojo.response.LWHFromTransferExtendVO;
+import com.consum.base.pojo.response.TransferInfoVO;
 import com.consum.base.service.BaseGoodsModelsServiceImpl;
-import com.consum.base.service.BaseWarehouseServiceImpl;
 import com.consum.base.service.LWhFormTransferCoreService;
 import com.consum.base.service.LWhFormTransferServiceImpl;
 import com.consum.base.service.LWhProcureModelService;
 import com.consum.base.service.LWhProcureModelUserRecordServiceImpl;
 import com.consum.base.service.LWhProcureModelUserServiceImpl;
-import com.consum.base.util.IdUtil;
 import com.consum.model.po.BaseGoodsModels;
 import com.consum.model.po.FinSysTenantUser;
 import com.consum.model.po.LWhFormTransfer;
@@ -22,15 +27,18 @@
 import com.consum.model.po.LWhProcureModelUser;
 import com.consum.model.po.LWhProcureModelUserRecord;
 import com.consum.model.vo.LWhFormOutputVo;
-import com.consum.model.vo.LWhFormTransferVo;
-import com.consum.model.vo.LWhProcureModelVo;
 import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.CollectionUtils;
 import com.walker.infrastructure.utils.DateUtils;
 import com.walker.web.ResponseValue;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 import java.lang.reflect.Field;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import org.apache.commons.compress.utils.Lists;
@@ -49,12 +57,11 @@
  */
 @RestController
 @RequestMapping("/pc/l/wh/form/transfer")
+@Api(tags = "璋冩嫧鍒嗗彂绠$悊")
 public class LWhFormTransferController extends BaseController {
 
     @Autowired
     private LWhFormTransferServiceImpl lWhFormTransferService;
-    @Autowired
-    private BaseWarehouseServiceImpl baseWarehouseService;
     @Autowired
     private LWhProcureModelService lWhProcureModelService;
     @Autowired
@@ -69,17 +76,19 @@
     /**
      * @Description 鏂板
      */
+    @ApiOperation(value = "鍗曟嵁鏂板", notes = "鍗曟嵁鏂板")
+    @ApiImplicitParam(name = "param", value = "鍗曟嵁鏂板", required = true, dataType = "LWhFormTransferParam")
     @PostMapping("/add")
-    public ResponseValue add(@RequestBody LWhFormTransferParam param) {
+    public ResponseValue add(@RequestBody LWhFormTransferParam param) throws Exception {
         S_user_core currentUser = this.getCurrentUser();
         if (currentUser == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        List<LWhProcureModelParams> transferGoods = param.getModels();
+        List<LWhFormTransferGoodsInfoParam> transferGoods = param.getTransferGoods();
         if (CollectionUtils.isEmpty(transferGoods)) {
             return ResponseValue.error("璋冩嫧鍗曚笉鑳戒负绌�");
         }
-        int result = this.lWhFormTransferService.add(param, currentUser, this.getSysInfo());
+        int result = this.lWhFormTransferService.add(param, this.getSysInfo());
         if (result > 0) {
             return ResponseValue.success(1);
         }
@@ -90,26 +99,52 @@
      * @Description 鍒楄〃鏌ヨ(璋冩嫧鏄庣粏)
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/30
+     * <p>
+     * 1.鏌ヨ璋冩嫧鍗�
+     * <p>
+     * 2.鏌ヨ鐗╁搧鍨嬪彿
      */
-//    1.鏌ヨ璋冩嫧鍗�
-//    2.鏌ヨ鐗╁搧鍨嬪彿
+    @ApiOperation(value = "鍗曟嵁鍒楄〃鏌ヨ", notes = "鍗曟嵁鍒楄〃鏌ヨ")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "page", value = "椤电爜", required = true, dataType = "int"),
+        @ApiImplicitParam(name = "size", value = "姣忛〉鏉℃暟", required = true, dataType = "int"),
+        @ApiImplicitParam(name = "param", value = "鏉′欢鍙傛暟", required = true, dataType = "TransferQry"),
+    })
     @GetMapping("/list")
-    public ResponseValue queryFormTransferList(TransferQryDto param) {
+    public ResponseValue queryFormTransferList(TransferQry param) {
         S_user_core currentUser = this.getCurrentUser();
         if (currentUser == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        FinSysTenantUser sysInfo = getSysInfo();
-
-        //鍙兘鏌ヨ鏈骇 鍙婁互涓嬫満鏋勭殑璋冩嫧鍗�
-        //??????
 
         GenericPager genericPager = lWhFormTransferService.queryFormTransferList(param);
         List<LWhFormTransfer> datas = genericPager.getDatas();
-        ArrayList<LWhFormTransferVo> newDatas = new ArrayList<>();
+        ArrayList<FormTransferVO> result = new ArrayList<>();
         if (!CollectionUtils.isEmpty(datas)) {
             datas.forEach(item -> {
+                FormTransferVO formTransferVO = new FormTransferVO();
+                BeanUtils.copyProperties(item, formTransferVO);
+
+                List<FromTransferTemplateInfoVO> templateInfoList = Lists.newArrayList();
+
                 // 鏌ヨ鍨嬪彿鏁伴噺
+                String sql = "SELECT bgt.id,bgm.GOODS_TEMPLATES_ID,GOODS_NAME,sum( counts ) count FROM "
+                    + "l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON pm.BASE_GOODS_MODELS_ID = bgm.id "
+                    + "LEFT JOIN base_goods_template bgt ON bgm.GOODS_TEMPLATES_ID = bgt.id "
+                    + "WHERE pm.BUSINESS_ID =:id GROUP BY bgm.GOODS_TEMPLATES_ID";
+                Map<String, Object> paramMap = new HashMap<>();
+                paramMap.put("id", item.getId());
+                List<Map<String, Object>> procureModelList = lWhProcureModelService.select(sql, paramMap, new MapperUtil());
+                for (Map<String, Object> map : procureModelList) {
+                    FromTransferTemplateInfoVO procureTemplateInfoVO = MapUtils.convertMapToObj(map, FromTransferTemplateInfoVO.class);
+                    templateInfoList.add(procureTemplateInfoVO);
+                }
+                formTransferVO.setFromTransferTemplateInfoList(templateInfoList);
+
+                result.add(formTransferVO);
+
+
+                /*// 鏌ヨ鍨嬪彿鏁伴噺
                 LWhProcureModel lWhProcureModel = new LWhProcureModel();
                 Integer businessType = item.getBusinessType();
                 // TODO 璋冩嫧=0 鍒嗗彂=1 閫�鍥�=2
@@ -122,10 +157,6 @@
                         break;
                 }
                 lWhProcureModel.setBusinessId(item.getId());
-
-                LWhFormTransferVo formTransferExtend = new LWhFormTransferVo();
-                BeanUtils.copyProperties(item, formTransferExtend);
-
                 List<LWhProcureModel> models = lWhProcureModelService.select(lWhProcureModel);
                 List<LWhProcureModelVo> lWhProcureModelVoList = new ArrayList<>();
                 if (!CollectionUtils.isEmpty(models)) {
@@ -145,15 +176,14 @@
                         lWhProcureModelVoList.add(lWhProcureModelVo);
                     });
                 }
-
                 formTransferExtend.setModels(lWhProcureModelVoList);
-                newDatas.add(formTransferExtend);
+                newDatas.add(formTransferExtend);*/
             });
         }
         try {
             Field fieldDatas = GenericPager.class.getDeclaredField("datas");
             fieldDatas.setAccessible(true);
-            fieldDatas.set(genericPager, newDatas);
+            fieldDatas.set(genericPager, result);
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -165,12 +195,16 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/30
      */
+    @ApiOperation(value = "鏍规嵁id鏌ヨ璇︽儏", notes = "鏍规嵁id鏌ヨ璇︽儏")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),
+    })
     @GetMapping("/detail")
     public ResponseValue getById(Long id) {
         if (id == null) {
             return ResponseValue.error("璋冩嫧鍗昳d涓虹┖");
         }
-        LWhFormTransferVo vo = this.lWhFormTransferService.getById(id);
+        LWHFromTransferExtendVO vo = this.lWhFormTransferService.getById(id);
         return ResponseValue.success(vo);
     }
 
@@ -180,6 +214,10 @@
      * @author 鍗㈠簡闃�
      * @date 2023/10/31
      */
+    @ApiOperation(value = "鎾ら攢", notes = "鎾ら攢")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),
+    })
     @PostMapping("/updStatus")
     public ResponseValue updateStatus(Long id) {
         if (id == null) {
@@ -195,6 +233,10 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/31
      */
+    @ApiOperation(value = "璋冩嫧鍏ュ簱", notes = "璋冩嫧鍏ュ簱")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),
+    })
     @PostMapping("/income")
     public ResponseValue income(Long id) {
         lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser());
@@ -206,6 +248,10 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/31
      */
+    @ApiOperation(value = "璋冩嫧鍑哄簱", notes = "璋冩嫧鍑哄簱")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),
+    })
     @PostMapping("/output")
     public ResponseValue output(Long id) {
         lWhFormTransferCoreService.doTransferOutPut(id, getCurrentUser());
@@ -230,17 +276,21 @@
     /**
      * 閮ㄩ棬鐗╁搧鍒嗗彂鍒楄〃鏄庣粏
      *
-     * @param transferQryDto
+     * @param transferQry
      * @return
      */
+    @ApiOperation(value = "閮ㄩ棬鐗╁搧鍒嗗彂鍒楄〃鏄庣粏", notes = "閮ㄩ棬鐗╁搧鍒嗗彂鍒楄〃鏄庣粏")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "transferQryDto", value = "璋冩嫧鍗曟煡璇㈡潯浠�", required = true)
+    })
     @GetMapping("/department/list")
-    public ResponseValue departmentTransferList(TransferQryDto transferQryDto) {
+    public ResponseValue departmentTransferList(TransferQry transferQry) {
 
         S_user_core currentUser = this.getCurrentUser();
         if (currentUser == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        GenericPager<Map<String, Object>> transferInfoDetailsVoGenericPager = this.lWhFormTransferService.queryTransferInfo(transferQryDto);
+        GenericPager<Map<String, Object>> transferInfoDetailsVoGenericPager = this.lWhFormTransferService.queryTransferInfo(transferQry);
         return ResponseValue.success(transferInfoDetailsVoGenericPager);
     }
 
@@ -347,4 +397,15 @@
         return ResponseValue.success(result);
     }
 
+
+    @ApiOperation(value = "鏌ヨ閮ㄩ棬涓嬬殑鍒嗗彂鍗�", notes = "鏌ヨ閮ㄩ棬涓嬬殑鍒嗗彂鍗�")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query")
+    })
+    @GetMapping("/query/detail")
+    public ResponseValue queryDepartmentTransferOrder(Long agencyId) {
+
+        TransferInfoVO transferInfoVO = new TransferInfoVO();
+        return ResponseValue.success(transferInfoVO);
+    }
 }

--
Gitblit v1.9.1