From f6cfa006799083136a586b551a3b7eb2dd15aa9f Mon Sep 17 00:00:00 2001
From: luqingyang <lqy5492@163.com>
Date: 星期二, 31 十月 2023 17:33:49 +0800
Subject: [PATCH] 库存盘点 暂存和完成盘点

---
 consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java |   99 +++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 91 insertions(+), 8 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java
index 630e05c..0cf4d6a 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java
@@ -1,20 +1,22 @@
 package com.consum.base.controller;
 
 import com.consum.base.BaseController;
-import com.consum.base.pojo.BaseGoodsTemplateParam;
-import com.consum.base.pojo.LWhFormOutputParam;
+import com.consum.base.pojo.*;
 import com.consum.base.service.BaseCategoryServiceImpl;
 import com.consum.base.service.LWhFormOutputServiceImpl;
-import com.consum.model.po.BaseGoodsTemplate;
-import com.consum.model.po.FinSysTenantUser;
+import com.consum.model.po.*;
 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.StringUtils;
 import com.walker.web.ResponseValue;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @Description 鍑哄簱鍗�
@@ -44,6 +46,87 @@
         return ResponseValue.error("鏂板澶辫触锛�");
     }
 
+    /**
+     * @Description 鍒楄〃鏌ヨ
+     */
+    @GetMapping("/list")
+    public ResponseValue queryFormOutputList(LWhFormOutputParam param) {
+        S_user_core currentUser = this.getCurrentUser();
+        if (currentUser == null) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
+        }
+        FinSysTenantUser sysInfo = getSysInfo();
+
+        //鍙兘鏌ヨ鏈骇 鍙婁互涓嬫満鏋勭殑鍑哄簱鍗�
+        //??????
+
+        GenericPager genericPager = lWhFormOutputService.queryFormOutputList(param);
+        List<LWhFormOutput> datas = genericPager.getDatas();
+        ArrayList<LWhFormProcureExtend> newDatas = new ArrayList<>();
+        if (!CollectionUtils.isEmpty(datas)) {
+            datas.forEach(item -> {
+                // 鏌ヨ鍨嬪彿鏁伴噺
+                LWhProcureModel lWhProcureModel = new LWhProcureModel();
+                lWhProcureModel.setBusinessType(3);
+                lWhProcureModel.setBusinessId(item.getId());
+                List<LWhProcureModel> models = lWhFormOutputService.select(lWhProcureModel);
+                LWhFormProcureExtend formProcureExtend = new LWhFormProcureExtend();
+                BeanUtils.copyProperties(item, formProcureExtend);
+                formProcureExtend.setModels(models);
+                newDatas.add(formProcureExtend);
+            });
+        }
+        try {
+            Field fieldDatas = GenericPager.class.getDeclaredField("datas");
+            fieldDatas.setAccessible(true);
+            fieldDatas.set(genericPager, newDatas);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+//        genericPager.setDatas(newDatas);
+        return ResponseValue.success(genericPager);
+    }
+
+    /**
+     * 鏍规嵁id鏌ヨ璇︽儏
+     */
+    @GetMapping("/detail")
+    public ResponseValue getById(Long id) throws IllegalAccessException {
+        if (id == null) {
+            return ResponseValue.error("鍑哄簱鍗昳d涓虹┖");
+        }
+        LWhFormOutput lWhFormOutput = lWhFormOutputService.get(new LWhFormOutput(id));
+        LWhFormOutputExtend formOutputExtend = new LWhFormOutputExtend();
+        BeanUtils.copyProperties(lWhFormOutput, formOutputExtend);
+
+        // 鐗╁搧
+        LWhFormProcureGoods lWhFormProcureGoods = new LWhFormProcureGoods();
+        lWhFormProcureGoods.setWhFormProcureId(id);
+        List<LWhFormProcureGoods> formProcureGoods = lWhFormOutputService.select(lWhFormProcureGoods);
+
+        Field fieldModels = null;
+        try {
+            fieldModels = LWhFormProcureGoodsParams.class.getDeclaredField("models");
+        } catch (NoSuchFieldException e) {
+            e.printStackTrace();
+        }
+        fieldModels.setAccessible(true);
+        ArrayList<LWhFormProcureGoodsParams> procureGoodsParams = new ArrayList<>();
+        for (LWhFormProcureGoods formProcureGood : formProcureGoods) {
+            LWhFormProcureGoodsParams lWhFormProcureGoodsParams = new LWhFormProcureGoodsParams();
+            BeanUtils.copyProperties(formProcureGood, lWhFormProcureGoodsParams);
+
+            // 鏌ヨ鍨嬪彿鏁伴噺
+            LWhProcureModel lWhProcureModel = new LWhProcureModel();
+            lWhProcureModel.setFromProcureGoodsId(formProcureGood.getId());
+            List<LWhProcureModel> models = lWhFormOutputService.select(lWhProcureModel);
+            fieldModels.set(lWhFormProcureGoodsParams, models);
+            procureGoodsParams.add(lWhFormProcureGoodsParams);
+        }
+        formOutputExtend.setProcureGoods(procureGoodsParams);
+        return ResponseValue.success("鏌ヨ鎴愬姛!", formOutputExtend);
+    }
+
 
 
 

--
Gitblit v1.9.1