From db40d04b8b242c6853f9baa0a8a675d65ecc04f9 Mon Sep 17 00:00:00 2001
From: luqingyang <lqy5492@163.com>
Date: 星期四, 26 十月 2023 17:23:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java |  151 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 151 insertions(+), 0 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
new file mode 100644
index 0000000..8201368
--- /dev/null
+++ b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseServiceImpl.java
@@ -0,0 +1,151 @@
+package com.consum.base.service;
+
+import com.consum.base.Constants;
+import com.consum.base.core.CodeGeneratorService;
+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.walker.db.page.GenericPager;
+import com.walker.infrastructure.utils.DateUtils;
+import com.walker.infrastructure.utils.StringUtils;
+import com.walker.jdbc.service.BaseServiceImpl;
+import org.springframework.beans.BeanUtils;
+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.stream.Collectors;
+
+/**
+ * @Description 浠撳簱绠$悊
+ * @Author 鍗㈠簡闃�
+ * @Date 2023/10/26
+ */
+@Service
+public class BaseWarehouseServiceImpl extends BaseServiceImpl {
+
+    @Autowired
+    private CodeGeneratorService codeGeneratorService;
+    @Autowired
+    private FinSysTenantServiceImpl finSysTenantService;
+    @Autowired
+    private FinSysTenantDepartmentServiceImpl departmentService;
+    @Autowired
+    private FinSysTenantUserServiceImpl userService;
+
+    /**
+     * @Description 鏂板
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public int add(BaseWarehouseParam param) {
+        BaseWarehouse baseWarehouse = new BaseWarehouse();
+        BeanUtils.copyProperties(param, baseWarehouse);
+        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());
+        }
+        baseWarehouse.setIsDefault(Constants.IS_DEFAULT_YES);
+
+        return this.insert(baseWarehouse);
+    }
+
+    /**
+     * @Description 浠撳簱鍒楄〃鏌ヨ
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public GenericPager<BaseWarehouse> queryList(BaseWarehouseParam param, FinSysTenantUser sysInfo) {
+        StringBuilder sql = new StringBuilder("SELECT * FROM base_warehouse WHERE 1 = 1 ");
+        HashMap<String, Object> paramts = new HashMap<>();
+
+        //浠撳簱鍚嶇О
+        if (!StringUtils.isEmpty(param.getWarehouseName())) {
+            sql.append(" and WAREHOUSE_NAME like:WAREHOUSE_NAME ");
+            paramts.put("WAREHOUSE_NAME", StringUtils.CHAR_PERCENT + param.getWarehouseName() + StringUtils.CHAR_PERCENT);
+        }
+        //绫诲瀷
+        if (!StringUtils.isEmpty(param.getClassificationCode())) {
+            sql.append(" and CLASSIFICATION_CODE =:CLASSIFICATION_CODE ");
+            paramts.put("CLASSIFICATION_CODE", param.getClassificationCode());
+        }
+        //鏈烘瀯id
+        sql.append(" and AGENCY_ID =:AGENCY_ID ");
+        if (param.getAgencyId() != null) {
+            paramts.put("AGENCY_ID", param.getAgencyId());
+        } else {
+            paramts.put("AGENCY_ID", Long.valueOf(sysInfo.getTenantId()));
+        }
+        //鐘舵��
+        if (param.getStates() != null) {
+            sql.append(" and states =:states ");
+            paramts.put("states", param.getStates());
+        } else {
+            sql.append(" and states !=3 ");
+        }
+
+        sql.append(" ORDER BY states ");
+        return selectSplit(sql.toString(), paramts, new BaseWarehouse());
+    }
+
+    /**
+     * @Description 缂栬緫(淇敼鐘舵��)
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public int updateBaseWarehouse(BaseWarehouse baseWarehouse) {
+        return this.update(baseWarehouse);
+    }
+
+    /**
+     * 鏍规嵁id鏌ヨ浠撳簱璇︽儏
+     * @author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public BaseWarehouse getById(Long id) {
+        return this.get(new BaseWarehouse(id));
+    }
+
+    /**
+     * @Description 鏍规嵁id鍒犻櫎浠撳簱
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public int updateById(BaseWarehouse baseWarehouse) {
+        baseWarehouse.setStates(Constants.STATES_DELETED);
+        return this.update(baseWarehouse);
+    }
+
+    /**
+     * @Description 鏍规嵁浠撳簱id鑾峰彇鏈烘瀯鐢ㄦ埛淇℃伅
+     * @Author 鍗㈠簡闃�
+     * @Date 2023/10/26
+     */
+    public void queryUserList(Long baseWarehouseId) {
+        //1.鏍规嵁浠撳簱id鏌ヨ浠撳簱
+        BaseWarehouse baseWarehouse = this.getById(baseWarehouseId);
+        if (baseWarehouse != null) {
+            Long agencyId = baseWarehouse.getAgencyId();
+            String agencyName = baseWarehouse.getAgencyName();
+            //2.鏍规嵁鏈烘瀯id鏌ヨ閮ㄩ棬
+            List<FinSysTenantDepartment> list = this.departmentService.getByTenantId(agencyId);
+            //鑾峰彇閮ㄩ棬id
+            Set<Long> deptIds = list.stream().map(dept -> dept.getId()).collect(Collectors.toSet());
+            //3.鏍规嵁閮ㄩ棬id鏌ヨ鐢ㄦ埛
+            //this.userService.getByDeptIds();
+
+        }
+
+
+    }
+}

--
Gitblit v1.9.1