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/service/BaseWarehouseServiceImpl.java |   73 +++++++++++++++++++++++++++++-------
 1 files changed, 59 insertions(+), 14 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java
index 5a2733b..a52006d 100644
--- a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java
@@ -2,12 +2,12 @@
 
 import com.consum.base.Constants;
 import com.consum.base.core.CodeGeneratorService;
+import com.consum.base.core.utils.IdUtil;
 import com.consum.base.pojo.BaseWarehouseParam;
-import com.consum.base.util.IdUtil;
 import com.consum.model.po.BaseWarehouse;
 import com.consum.model.po.FinSysTenant;
 import com.consum.model.po.FinSysTenantDepartment;
-import com.consum.model.po.FinSysTenantUser;
+import com.consum.model.po.SDictData;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
@@ -15,9 +15,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.HashMap;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -36,6 +34,8 @@
     private FinSysTenantDepartmentServiceImpl departmentService;
     @Autowired
     private FinSysTenantUserServiceImpl userService;
+    @Autowired
+    private SDictDataServiceImpl sDictDataService;
 
     /**
      * @Description 鏂板
@@ -48,12 +48,17 @@
         baseWarehouse.setId(IdUtil.generateId());
         baseWarehouse.setWarehouseType(Constants.WAREHOUSE_TYPE_TENANT);
         baseWarehouse.setWarehouseCode(codeGeneratorService.createWarehouseCode());
-//        //鏍规嵁鏈烘瀯id鏌ヨ鏈烘瀯
-//        FinSysTenant finSysTenant = finSysTenantService.get(new FinSysTenant(baseWarehouse.getAgencyId()));
-//        if (finSysTenant != null) {
-//            baseWarehouse.setParentAgencyId(finSysTenant.getParentId());
-//            baseWarehouse.setAgencyName(finSysTenant.getName());
-//        }
+        //鏍规嵁鏈烘瀯id鏌ヨ鏈烘瀯
+        FinSysTenant finSysTenant = finSysTenantService.get(new FinSysTenant(baseWarehouse.getAgencyId()));
+        if (finSysTenant != null) {
+            baseWarehouse.setParentAgencyId(finSysTenant.getParentId());
+            baseWarehouse.setAgencyName(finSysTenant.getName());
+        }
+        //鏍规嵁CLASSIFICATION_CODE鏌ヨCLASSIFICATION_NAME
+        SDictData dictData = this.sDictDataService.get(new SDictData(Long.valueOf(param.getClassificationCode())));
+        if (dictData != null) {
+            baseWarehouse.setClassificationName(dictData.getDict_label());
+        }
         baseWarehouse.setIsDefault(Constants.IS_DEFAULT_YES);
 
         return this.insert(baseWarehouse);
@@ -104,11 +109,22 @@
      * @Date 2023/10/26
      */
     public int updateBaseWarehouse(BaseWarehouse baseWarehouse) {
+        SDictData SDictData = this.sDictDataService.get(new SDictData(Long.valueOf(baseWarehouse.getClassificationCode())));
+        if (SDictData != null) {
+            baseWarehouse.setClassificationName(SDictData.getDict_label());
+        }
+        //鏍规嵁鏈烘瀯id鏌ヨ鏈烘瀯
+        FinSysTenant finSysTenant = finSysTenantService.get(new FinSysTenant(baseWarehouse.getAgencyId()));
+        if (finSysTenant != null) {
+            baseWarehouse.setParentAgencyId(finSysTenant.getParentId());
+            baseWarehouse.setAgencyName(finSysTenant.getName());
+        }
         return this.update(baseWarehouse);
     }
 
     /**
      * 鏍规嵁id鏌ヨ浠撳簱璇︽儏
+     *
      * @author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
@@ -150,12 +166,12 @@
     }
 
     /**
-     * @Description  鏍规嵁鏈烘瀯id鏌ヨ鏈烘瀯浠撳簱
+     * @return
+     * @Description 鏍规嵁鏈烘瀯id鏌ヨ鏈烘瀯浠撳簱
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/27
-     * @return
      */
-    public List<BaseWarehouse> getByAgencyId(Long agencyId) {
+    public List<BaseWarehouse> getByAgencyId(Long agencyId, Short isDefault, Short states) {
         StringBuilder sql = new StringBuilder("SELECT * FROM base_warehouse WHERE 1 = 1 ");
         HashMap<String, Object> paramts = new HashMap<>();
 
@@ -164,6 +180,35 @@
             sql.append(" and AGENCY_ID =:AGENCY_ID ");
             paramts.put("AGENCY_ID", agencyId);
         }
+        // 鏄惁涓洪粯璁や粨搴�
+        if (isDefault != null) {
+            sql.append(" and IS_DEFAULT =:isDefault ");
+            paramts.put("isDefault", isDefault);
+        }
+        // 鐘舵��
+        if (states != null) {
+            sql.append(" and states =:states ");
+            paramts.put("states", states);
+        }
         return select(sql.toString(), paramts, new BaseWarehouse());
     }
+
+
+    /**
+     * 鏍规嵁鏈烘瀯id鏌ヨ榛樿浠撳簱
+     *
+     * @param agencyId
+     * @return
+     */
+    public BaseWarehouse getDefaultWarehouseByAgencyId(Long agencyId) {
+        StringBuilder sql = new StringBuilder("SELECT * FROM base_warehouse WHERE IS_DEFAULT = 1 and AGENCY_ID =:agencyId ");
+        Map<String, Object> param = new HashMap<>();
+        param.put("agencyId", agencyId);
+        List<BaseWarehouse> select = select(sql.toString(), param, new BaseWarehouse());
+        Optional<BaseWarehouse> optional = select.stream().findFirst();
+        if (optional.isPresent()) {
+            return optional.get();
+        }
+        return null;
+    }
 }

--
Gitblit v1.9.1