From d8fb6d11aa24b77b8bbcc5740140d31f5692837d Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期四, 16 十一月 2023 16:11:05 +0800
Subject: [PATCH] feat: 调拨调整

---
 consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java |  136 +++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 131 insertions(+), 5 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java b/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java
index 94e042f..241bff7 100644
--- a/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java
@@ -1,22 +1,33 @@
 package com.consum.base.controller;
 
 import com.consum.base.BaseController;
-import com.consum.base.pojo.BaseCategoryParam;
+import com.consum.base.core.utils.MapUtils;
+import com.consum.base.core.utils.MapperUtil;
 import com.consum.base.pojo.BaseGoodsTemplateParam;
-import com.consum.base.service.BaseCategoryServiceImpl;
+import com.consum.base.pojo.response.GoodsTemplateVO;
 import com.consum.base.service.BaseGoodsTemplateServiceImpl;
-import com.consum.model.po.BaseCategory;
+import com.consum.base.service.BaseWarehouseServiceImpl;
+import com.consum.base.service.LWhGoodsService;
+import com.consum.model.po.BaseGoodsModels;
 import com.consum.model.po.BaseGoodsTemplate;
+import com.consum.model.po.BaseWarehouse;
+import com.consum.model.po.SDictData;
 import com.consum.model.vo.BaseGoodsTemplateVo;
 import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.web.ResponseValue;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.compress.utils.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description 鐗╁搧妯℃澘
@@ -29,6 +40,12 @@
 
     @Autowired
     private BaseGoodsTemplateServiceImpl baseGoodsTemplateService;
+
+    @Autowired
+    private LWhGoodsService lWhGoodsService;
+
+    @Autowired
+    private BaseWarehouseServiceImpl baseWarehouseService;
 
     /**
      * @Description 鏂板鐗╁搧妯℃澘
@@ -50,7 +67,9 @@
         }
 
         int result = this.baseGoodsTemplateService.add(param, this.getCurrentUser());
-        if (result > 0) return ResponseValue.success(1);
+        if (result > 0) {
+            return ResponseValue.success(1);
+        }
         return ResponseValue.error("鏂板澶辫触锛�");
     }
 
@@ -71,6 +90,7 @@
 
     /**
      * 鏍规嵁鐗╁搧id鏌ヨ鐗╁搧璇︽儏
+     *
      * @author 鍗㈠簡闃�
      * @date 2023/9/26
      */
@@ -80,7 +100,9 @@
             return ResponseValue.error("鐗╁搧id涓虹┖");
         }
         BaseGoodsTemplateVo vo = this.baseGoodsTemplateService.getById(id);
-        if (vo == null) return ResponseValue.error("鏌ヨ澶辫触锛�");
+        if (vo == null) {
+            return ResponseValue.error("鏌ヨ澶辫触锛�");
+        }
         return ResponseValue.success("鏌ヨ鎴愬姛!", vo);
     }
 
@@ -94,10 +116,114 @@
         if (StringUtils.isEmpty(param.getGoodsName())) {
             return ResponseValue.error("鐗╁搧鍚嶇О涓虹┖");
         }
+        List<BaseGoodsModels> models = param.getModels();
+        if (CollectionUtils.isEmpty(models)) {
+            return ResponseValue.error("鐗╁搧鍨嬪彿涓虹┖");
+        }
 
         int num = this.baseGoodsTemplateService.updateBaseGoodsTemplate(param);
         return num > 0 ? ResponseValue.success(1) : ResponseValue.error("缂栬緫澶辫触锛�");
     }
 
+    /**
+     * 淇敼鐘舵��
+     *
+     * @author 鍗㈠簡闃�
+     * @date 2023/10/25
+     */
+    //TODO 鐗╁搧鐨勭鐢ㄦ垨鍒犻櫎锛屼笉褰卞搷宸茬粡閲囪喘鍏ヨ繃搴撶殑鐗╁搧淇℃伅銆�
+    @PostMapping("/updStatus")
+    public ResponseValue updateStatus(@RequestBody BaseGoodsTemplate goodsTemplate) {
+        if (goodsTemplate == null || goodsTemplate.getId() == null || goodsTemplate.getStates() == null) {
+            return ResponseValue.error("鍙傛暟閿欒");
+        }
+
+        int num = this.baseGoodsTemplateService.updateStatus(goodsTemplate);
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("淇敼澶辫触锛�");
+    }
+
+    /**
+     * @Description 鏍规嵁鐗╁搧id鍒犻櫎鐗╁搧
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/25
+     */
+    //TODO 鐗╁搧鐨勭鐢ㄦ垨鍒犻櫎锛屼笉褰卞搷宸茬粡閲囪喘鍏ヨ繃搴撶殑鐗╁搧淇℃伅銆�
+    @DeleteMapping("/del")
+    public ResponseValue updateById(@RequestBody BaseGoodsTemplate goodsTemplate) {
+        if (goodsTemplate.getId() == null) {
+            return ResponseValue.error("鐗╁搧id涓虹┖");
+        }
+        int num = this.baseGoodsTemplateService.updateById(goodsTemplate, this.getCurrentUser());
+
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("鍒犻櫎澶辫触锛�");
+    }
+
+    /**
+     * @Description 鏌ヨ浠撳簱绫诲瀷(鏁版嵁瀛楀吀)
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/30
+     */
+    @GetMapping("/select/classificationCode")
+    public ResponseValue queryClassificationCode() {
+        List<SDictData> list = this.baseGoodsTemplateService.queryClassificationCode();
+        return ResponseValue.success(list);
+    }
+
+    /**
+     * @Description 鏍规嵁鍒嗙被id鏌ヨ鐗╁搧妯℃澘
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/30
+     */
+    @GetMapping("/selectByCategoryId")
+    public ResponseValue queryByCategoryId(Long categoryId) {
+        List<BaseGoodsTemplate> list = this.baseGoodsTemplateService.queryByCategoryId(categoryId);
+        return ResponseValue.success(list);
+    }
+
+    @GetMapping("/query/goodsTemplate")
+    public ResponseValue queryGoodsTemplateByCategoryId(Long agencyId, Long categoryId) {
+        List<BaseGoodsTemplate> list = this.baseGoodsTemplateService.queryGoodsTemplateByCategoryId(agencyId, categoryId);
+        if (list == null) {
+            return ResponseValue.error("鏌ヨ澶辫触锛�");
+        }
+        return ResponseValue.success("鏌ヨ鎴愬姛!", list);
+    }
+
+
+    @ApiOperation(value = "鏌ヨ鏈烘瀯涓嬮粯璁や粨搴撲笅鐨勫垎绫绘ā鏉夸俊鎭�", notes = "鏌ヨ鏈烘瀯涓嬮粯璁や粨搴撲笅鐨勫垎绫绘ā鏉夸俊鎭�")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "agencyId", value = "鐖剁骇鏈烘瀯id", required = true, dataType = "Long", paramType = "query"),
+        @ApiImplicitParam(name = "categoryId", value = "鍒嗙被id", required = true, dataType = "Long", paramType = "query")
+    })
+    @GetMapping("/query/warehouse/goods")
+    public ResponseValue queryWarehouseGoods(Long agencyId, Long categoryId) {
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("categoryId", categoryId);
+
+        List<BaseWarehouse> baseWarehouseList = baseWarehouseService.getByAgencyId(agencyId,(short)1,(short)1);
+        if (CollectionUtils.isEmpty(baseWarehouseList)){
+            return ResponseValue.error("鏈烘瀯鏃犻粯璁や粨搴擄紒");
+
+        }
+        map.put("warehouseId", baseWarehouseList.get(0).getId());
+
+        String sql = "SELECT DISTINCT bgt.id,bgt.GOODS_NAME FROM l_wh_goods g LEFT JOIN base_goods_template bgt ON g.BASE_GOODS_TEMPLATE_ID = bgt.id "
+            + "WHERE WAREHOUSE_TYPE = 0 "
+            + "AND WAREHOUSE_ID = :warehouseId "
+            + "AND CATEGORY_ID = :categoryId "
+            // 1:闆嗛噰,2:鑷��璐�
+            + "AND BUY_TYPE =1";
+
+        List<GoodsTemplateVO> resultList = Lists.newArrayList();
+        List<Map<String, Object>> goodsTemplateList = lWhGoodsService.select(sql, map, new MapperUtil());
+        goodsTemplateList.forEach(item -> {
+            GoodsTemplateVO goodsTemplateVO = MapUtils.convertMapToObj(item, GoodsTemplateVO.class);
+            resultList.add(goodsTemplateVO);
+        });
+        return ResponseValue.success("鏌ヨ鎴愬姛!", resultList);
+    }
+
+
 }
 

--
Gitblit v1.9.1