From 2c706a5d58e8315980ea92d6b82e0e4959bad8ca Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期一, 11 十二月 2023 17:44:40 +0800
Subject: [PATCH] 1.修改单据导出 2.修改物品信息导入

---
 consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java    |   50 ++++--
 consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseServiceImpl.java    |    4 
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormInventoryServiceImpl.java |    4 
 consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java    |    5 
 consum-base/src/main/java/com/consum/base/pojo/excel/ImportGoodsInfoTemplate.java       |   33 ++++
 consum-base/src/main/java/com/consum/base/cache/LocalFinSysTenantCache.java             |   10 
 consum-base/src/main/java/com/consum/base/config/RedisFinCacheConfig.java               |   17 +-
 consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java       |    4 
 consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java        |    6 
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java  |    4 
 consum-base/src/main/java/com/consum/base/config/LocalFinCacheConfig.java               |   11 
 consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java     |    4 
 consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantServiceImpl.java     |   91 ++++++-----
 consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java     |    4 
 consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java             |   33 ++--
 consum-base/src/main/java/com/consum/base/service/FinSysTenantService.java              |   39 ++++
 consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java   |   90 +++++++++++
 consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java      |    4 
 consum-base/src/main/java/com/consum/base/BaseController.java                           |   16 +
 19 files changed, 311 insertions(+), 118 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/BaseController.java b/consum-base/src/main/java/com/consum/base/BaseController.java
index f41965a..be0d5ba 100644
--- a/consum-base/src/main/java/com/consum/base/BaseController.java
+++ b/consum-base/src/main/java/com/consum/base/BaseController.java
@@ -1,8 +1,8 @@
 package com.consum.base;
 
+import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
+import java.io.InputStream;
 import java.net.URLEncoder;
 
 import javax.servlet.http.HttpServletResponse;
@@ -14,6 +14,7 @@
 import com.iplatform.base.util.UserUtils;
 import com.iplatform.core.BeanContextAware;
 import com.iplatform.model.po.S_user_core;
+import com.walker.file.FileInfo;
 
 public abstract class BaseController extends PlatformAdapterController {
 
@@ -48,8 +49,7 @@
         return this.getFinSysTenantUserCache().get(String.valueOf(userInfo.getId()));
     }
 
-    protected void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) throws IOException {
-        OutputStream out = response.getOutputStream();
+    protected String downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) throws Exception {
         response.setCharacterEncoding("UTF-8");
         response.setHeader("content-Type", "application/vnd.ms-excel");
         response.setHeader("Content-Disposition",
@@ -57,9 +57,13 @@
         ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
         workbook.write(byteArrayOutputStream);
         response.setHeader("Content-Length", String.valueOf(byteArrayOutputStream.size()));
-        out.write(byteArrayOutputStream.toByteArray());
+
+        InputStream byteArrayInputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
+        FileInfo fileInfo = this.uploadFileToLocal(byteArrayInputStream, fileName + ".xls", "-1",
+            byteArrayOutputStream.size(), 0, "-1");
+        String fileUrl = fileInfo.getUrl();
         workbook.close();
-        out.close();
+        return fileUrl;
     }
 
 }
diff --git a/consum-base/src/main/java/com/consum/base/cache/LocalFinSysTenantCache.java b/consum-base/src/main/java/com/consum/base/cache/LocalFinSysTenantCache.java
index 1897ee2..e3b8cb3 100644
--- a/consum-base/src/main/java/com/consum/base/cache/LocalFinSysTenantCache.java
+++ b/consum-base/src/main/java/com/consum/base/cache/LocalFinSysTenantCache.java
@@ -1,14 +1,14 @@
 package com.consum.base.cache;
 
+import java.util.List;
+
 import com.consum.base.Constants;
 import com.consum.base.FinSysTenantCacheProvider;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.model.po.FinSysTenant;
 import com.walker.cache.AbstractCacheProvider;
 import com.walker.cache.Cache;
 import com.walker.infrastructure.utils.StringUtils;
-
-import java.util.List;
 
 /**
  * 鍖哄垝缂撳瓨
@@ -68,9 +68,9 @@
         return FinSysTenant.class;
     }
 
-    public void setFinSysTenantService(FinSysTenantServiceImpl finSysTenantService) {
+    public void setFinSysTenantService(FinSysTenantService finSysTenantService) {
         this.finSysTenantService = finSysTenantService;
     }
 
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
 }
diff --git a/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java b/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java
index ab9b570..93ae049 100644
--- a/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java
+++ b/consum-base/src/main/java/com/consum/base/cache/RedisFinSysTenantCache.java
@@ -1,38 +1,39 @@
 package com.consum.base.cache;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import com.consum.base.Constants;
 import com.consum.base.FinSysTenantCacheProvider;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.model.po.FinSysTenant;
 import com.walker.infrastructure.ApplicationRuntimeException;
 import com.walker.infrastructure.utils.JsonUtils;
 import com.walker.support.redis.cache.RedisCacheProvider;
 
-import java.util.ArrayList;
-import java.util.List;
-
 /**
  * 鍖哄垝缂撳瓨
- * @浣滆�咃細power
- * @鏃堕棿锛�2023/7/20 20:35
+ * 
+ * @浣滆�咃細power @鏃堕棿锛�2023/7/20 20:35
  */
 public class RedisFinSysTenantCache extends RedisCacheProvider<FinSysTenant> implements FinSysTenantCacheProvider {
-    public RedisFinSysTenantCache(){
+    public RedisFinSysTenantCache() {
         this.setUseRedis(true);
         this.setLoadPage(false);
     }
+
     @Override
     public FinSysTenant get(String code) {
         FinSysTenant finSysTenant = this.getCacheData(code);
-        if(finSysTenant == null){
+        if (finSysTenant == null) {
             finSysTenant = this.finSysTenantService.queryOneByCode(code);
-            if(finSysTenant == null){
+            if (finSysTenant == null) {
                 logger.warn("浠庢暟鎹簱鏈煡璇㈠埌鍖哄垝锛屾棤娉曠紦瀛橈紝code = {}", code);
                 return null;
             }
 
             // 2023-07-26锛屾椂鍏嬭嫳锛屽尯鍒掔浉瀵瑰浐瀹氾紝鏃犻渶璁剧疆澶辨晥鏃堕棿锛岃浠栨案杩滃瓨鍌ㄥ惂銆�
-//            this.putCacheData(code, finSysTenant,7200);
+            // this.putCacheData(code, finSysTenant,7200);
             this.putCacheData(code, finSysTenant);
         }
         return finSysTenant;
@@ -56,9 +57,9 @@
     @Override
     public FinSysTenant getById(String id) {
         FinSysTenant finSysTenant = this.getCacheData(id);
-        if(finSysTenant == null){
+        if (finSysTenant == null) {
             finSysTenant = this.finSysTenantService.get(new FinSysTenant(Long.parseLong(id)));
-            if(finSysTenant == null){
+            if (finSysTenant == null) {
                 logger.warn("浠庢暟鎹簱鏈煡璇㈠埌鍖哄垝锛屾棤娉曠紦瀛橈紝id = {}", id);
                 return null;
             }
@@ -71,11 +72,11 @@
     public List<FinSysTenant> selectAll() {
         List<FinSysTenant> allTree = new ArrayList<>();
         FinSysTenant temp = null;
-        for(String value : this.getCache().getIterator(null)) {
+        for (String value : this.getCache().getIterator(null)) {
             try {
                 temp = JsonUtils.jsonStringToObject(value, FinSysTenant.class);
             } catch (Exception ex) {
-                throw new ApplicationRuntimeException("redis瀛樺偍'EbProductBrand'瑙f瀽閿欏惔:"+ value,ex);
+                throw new ApplicationRuntimeException("redis瀛樺偍'EbProductBrand'瑙f瀽閿欏惔:" + value, ex);
             }
             allTree.add(temp);
         }
@@ -92,9 +93,9 @@
         return FinSysTenant.class;
     }
 
-    public void setFinSysTenantService(FinSysTenantServiceImpl finSysTenantService) {
+    public void setFinSysTenantService(FinSysTenantService finSysTenantService) {
         this.finSysTenantService = finSysTenantService;
     }
 
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
 }
diff --git a/consum-base/src/main/java/com/consum/base/config/LocalFinCacheConfig.java b/consum-base/src/main/java/com/consum/base/config/LocalFinCacheConfig.java
index 1179225..90a046f 100644
--- a/consum-base/src/main/java/com/consum/base/config/LocalFinCacheConfig.java
+++ b/consum-base/src/main/java/com/consum/base/config/LocalFinCacheConfig.java
@@ -1,5 +1,9 @@
 package com.consum.base.config;
 
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
 import com.consum.base.FinOrgCacheProvider;
 import com.consum.base.FinSysTenantCacheProvider;
 import com.consum.base.FinSysTenantUserCacheProvider;
@@ -9,12 +13,9 @@
 import com.consum.base.cache.LocalFinSysTenantUserCache;
 import com.consum.base.cache.LocalTokenCache;
 import com.consum.base.service.FinOrgService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.FinSysTenantUserServiceImpl;
 import com.iplatform.base.config.CacheConfiguration;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
 
 @Configuration
 @ConditionalOnProperty(prefix = "iplatform.cache", name = "redis-enabled", havingValue = "false", matchIfMissing = true)
@@ -63,7 +64,7 @@
      * @date 2023-07-05
      */
     @Bean
-    public FinSysTenantCacheProvider finSysTenantCacheProvider(FinSysTenantServiceImpl finSysTenantService){
+    public FinSysTenantCacheProvider finSysTenantCacheProvider(FinSysTenantService finSysTenantService){
         LocalFinSysTenantCache cache = new LocalFinSysTenantCache();
         cache.setFinSysTenantService(finSysTenantService);
         return cache;
diff --git a/consum-base/src/main/java/com/consum/base/config/RedisFinCacheConfig.java b/consum-base/src/main/java/com/consum/base/config/RedisFinCacheConfig.java
index b9665c6..da5547a 100644
--- a/consum-base/src/main/java/com/consum/base/config/RedisFinCacheConfig.java
+++ b/consum-base/src/main/java/com/consum/base/config/RedisFinCacheConfig.java
@@ -1,5 +1,12 @@
 package com.consum.base.config;
 
+import org.springframework.boot.autoconfigure.AutoConfigureAfter;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
 import com.consum.base.FinOrgCacheProvider;
 import com.consum.base.FinSysTenantCacheProvider;
 import com.consum.base.FinSysTenantUserCacheProvider;
@@ -9,17 +16,11 @@
 import com.consum.base.cache.RedisFinSysTenantUserCache;
 import com.consum.base.cache.RedisTokenCache;
 import com.consum.base.service.FinOrgService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.FinSysTenantUserServiceImpl;
 import com.iplatform.base.config.CacheConfiguration;
 import com.walker.support.redis.RedisHelper;
 import com.walker.support.redis.cache.RedisCacheProvider;
-import org.springframework.boot.autoconfigure.AutoConfigureAfter;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
-import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
 
 @Configuration
 @ConditionalOnProperty(prefix = "iplatform.cache", name = "redis-enabled", havingValue = "true", matchIfMissing = false)
@@ -75,7 +76,7 @@
      * @date 2023-07-05
      */
     @Bean
-    public FinSysTenantCacheProvider finSysTenantCacheProvider(RedisHelper redisHelper, FinSysTenantServiceImpl finSysTenantService){
+    public FinSysTenantCacheProvider finSysTenantCacheProvider(RedisHelper redisHelper, FinSysTenantService finSysTenantService){
         RedisFinSysTenantCache cache = new RedisFinSysTenantCache();
         cache.setRedisHelper(redisHelper);
         cache.setFinSysTenantService(finSysTenantService);
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 ff4f99a..da2fb8c 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,5 +1,6 @@
 package com.consum.base.controller;
 
+import java.io.IOException;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -12,23 +13,32 @@
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
 
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.context.AnalysisContext;
+import com.alibaba.excel.event.AnalysisEventListener;
+import com.alibaba.excel.exception.ExcelDataConvertException;
 import com.consum.base.BaseController;
 import com.consum.base.core.utils.CommonUtil;
 import com.consum.base.core.utils.MapUtils;
 import com.consum.base.core.utils.MapperUtil;
 import com.consum.base.pojo.BaseGoodsTemplateParam;
+import com.consum.base.pojo.excel.ImportGoodsInfoTemplate;
 import com.consum.base.pojo.response.GoodsTemplateVO;
 import com.consum.base.service.BaseGoodsTemplateService;
 import com.consum.base.service.BaseWarehouseService;
+import com.consum.base.service.FinSysTenantService;
 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.FinSysTenant;
 import com.consum.model.po.FinSysTenantUser;
 import com.consum.model.po.SDictData;
 import com.consum.model.vo.BaseGoodsTemplateVo;
 import com.walker.db.page.GenericPager;
+import com.walker.infrastructure.utils.DateUtils;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.web.ResponseValue;
 
@@ -53,6 +63,9 @@
 
     @Autowired
     private BaseWarehouseService baseWarehouseService;
+
+    @Autowired
+    private FinSysTenantService finSysTenantService;
 
     /**
      * @Description 鏂板鐗╁搧妯℃澘
@@ -266,4 +279,81 @@
         return ResponseValue.success("鏌ヨ鎴愬姛!", resultList);
     }
 
+    @PostMapping("/import")
+    public ResponseValue upload(MultipartFile file) throws IOException {
+        String originalFilename = file.getOriginalFilename();
+        if (!originalFilename.endsWith(".xls")) {
+            return ResponseValue.error("鏂囦欢鏍煎紡鏈夎!");
+        }
+        FinSysTenantUser sysInfo = this.getSysInfo();
+        if (sysInfo == null) {
+            return ResponseValue.error("褰撳墠鐧诲綍鐢ㄦ埛涓虹┖");
+        }
+        EasyExcel.read(file.getInputStream(), ImportGoodsInfoTemplate.class,
+            new AnalysisEventListener<ImportGoodsInfoTemplate>() {
+                List<BaseGoodsTemplateParam> list = Lists.newArrayList();
+
+                @Override
+                public void invoke(ImportGoodsInfoTemplate data, AnalysisContext analysisContext) {
+                    String categoryOne = data.getCategoryOne();
+                    String categoryTwo = data.getCategoryTwo();
+                    String categoryThree = data.getCategoryThree();
+                    String goodName = data.getGoodName();
+                    String goodModel = data.getGoodModel();
+                    String unit = data.getUnit();
+                    String type = data.getType();
+                    String agencyName = data.getAgencyName();
+
+                    list.stream().forEach(item -> {
+                        if (!item.getCategoryId().equals(categoryThree)) {
+                            BaseGoodsTemplateParam baseGoodsTemplate = new BaseGoodsTemplateParam();
+                            baseGoodsTemplate.setCategoryId(Long.valueOf(categoryThree));
+                            baseGoodsTemplate.setGoodsName(goodName);
+                            baseGoodsTemplate.setStates(1);
+                            FinSysTenant finSysTenant = finSysTenantService.selectByName(agencyName);
+                            baseGoodsTemplate.setAgencyId(finSysTenant.getId());
+
+                            List<BaseGoodsModels> models = Lists.newArrayList();
+                            BaseGoodsModels baseGoodsModels = new BaseGoodsModels();
+                            baseGoodsModels.setModelName(goodModel);
+                            baseGoodsModels.setStates(1);
+                            baseGoodsModels.setGoodsTemplatesId(item.getId());
+                            baseGoodsModels.setUnit(unit);
+                            baseGoodsModels.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
+                            models.add(baseGoodsModels);
+                            baseGoodsTemplate.setModels(models);
+                        } else {
+                            List<BaseGoodsModels> models = item.getModels();
+                            BaseGoodsModels baseGoodsModels = new BaseGoodsModels();
+                            baseGoodsModels.setModelName(goodModel);
+                            baseGoodsModels.setStates(1);
+                            baseGoodsModels.setGoodsTemplatesId(item.getId());
+                            baseGoodsModels.setUnit(unit);
+                            baseGoodsModels.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
+                            models.add(baseGoodsModels);
+                        }
+                    });
+
+                }
+
+                @Override
+                public void doAfterAllAnalysed(AnalysisContext analysisContext) {
+                    for (BaseGoodsTemplateParam a : list) {
+                        baseGoodsTemplateService.add(a, sysInfo);
+                    }
+                }
+
+                @Override
+                public void onException(Exception exception, AnalysisContext analysisContext) throws Exception {
+                    if (exception instanceof ExcelDataConvertException) {
+                        ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException)exception;
+                        Integer row = excelDataConvertException.getRowIndex() + 1;
+                        Integer column = excelDataConvertException.getColumnIndex() + 1;
+                        throw new RuntimeException("绗�" + row + "琛岋紝绗�" + column + "鍒楄В鏋愬紓甯革紝璇锋纭~鍐�");
+                    }
+                }
+            }).sheet(0).doRead();
+
+        return ResponseValue.success("瀵煎叆鎴愬姛!", 1);
+    }
 }
diff --git a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java
index ece10af..88718da 100644
--- a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java
@@ -36,7 +36,7 @@
 import com.consum.base.core.utils.FinSysTenantUtils;
 import com.consum.base.pojo.FinSysTenantParam;
 import com.consum.base.pojo.FinSysTenantSearchParam;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.FinSysTenantUserServiceImpl;
 import com.consum.model.po.FinSysTenant;
 import com.consum.model.po.FinSysTenantUser;
@@ -59,13 +59,13 @@
 @RequestMapping("/pc/fin/sys/tenant")
 public class FinSysTenantController extends BaseController {
 
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
 
     @Autowired
     private FinSysTenantUserServiceImpl finSysTenantUserService;
 
     @Autowired
-    public FinSysTenantController(FinSysTenantServiceImpl finSysTenantService) {
+    public FinSysTenantController(FinSysTenantService finSysTenantService) {
         this.finSysTenantService = finSysTenantService;
     }
 
diff --git a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java
index d16b267..2bb2d93 100644
--- a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java
@@ -1,6 +1,28 @@
 package com.consum.base.controller;
 
-import cn.hutool.core.util.ReflectUtil;
+import java.io.IOException;
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+
+import org.apache.commons.compress.utils.Lists;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.context.AnalysisContext;
 import com.alibaba.excel.event.AnalysisEventListener;
@@ -17,7 +39,7 @@
 import com.consum.base.pojo.response.FinSysTenantVO;
 import com.consum.base.pojo.response.UserVO;
 import com.consum.base.service.FinSysTenantDepartmentService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.FinSysTenantUserServiceImpl;
 import com.consum.model.po.FinSysTenant;
 import com.consum.model.po.FinSysTenantDepartment;
@@ -31,22 +53,18 @@
 import com.iplatform.model.po.S_role;
 import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
-import com.walker.infrastructure.utils.*;
+import com.walker.infrastructure.utils.CollectionUtils;
+import com.walker.infrastructure.utils.DateUtils;
+import com.walker.infrastructure.utils.NumberGenerator;
+import com.walker.infrastructure.utils.PhoneNumberUtils;
+import com.walker.infrastructure.utils.StringUtils;
 import com.walker.web.ResponseValue;
+
+import cn.hutool.core.util.ReflectUtil;
 import io.swagger.annotations.Api;
 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.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.IOException;
-import java.lang.reflect.Field;
-import java.util.*;
 
 /**
  * @Description 绯荤粺鐢ㄦ埛
@@ -64,7 +82,7 @@
 
     private UserServiceImpl userService;
 
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
 
     private RoleServiceImpl roleService;
 
@@ -77,7 +95,7 @@
     }
 
     @Autowired
-    public FinSysTenantUserController(FinSysTenantServiceImpl finSysTenantService,
+    public FinSysTenantUserController(FinSysTenantService finSysTenantService,
         FinSysTenantUserServiceImpl finSysTenantUserService, RoleServiceImpl roleService) {
         this.finSysTenantUserService = finSysTenantUserService;
         this.finSysTenantService = finSysTenantService;
@@ -224,7 +242,7 @@
         }
         tenantUser.setUserPhone(encPhone);
         // 鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹�
-//        tenantUser.setSysDeptId(3L); // 瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞�
+        // tenantUser.setSysDeptId(3L); // 瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞�
         this.finSysTenantUserService.insert(tenantUser);
 
         // 鎻掑叆骞冲彴鐢ㄦ埛
diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java
index 1a90e83..59bd8af 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java
@@ -307,7 +307,7 @@
     @ApiImplicitParams({
         @ApiImplicitParam(name = "id", value = "鐩樼偣鍗昳d", dataType = "Long", required = true, paramType = "query")})
     @GetMapping("/list/export")
-    public void export(Long id, HttpServletResponse response) throws Exception {
+    public String export(Long id, HttpServletResponse response) throws Exception {
 
         List<InventoryExcelTemplate> exportList = lWhFormInventoryService.getExportList(id);
         if (CollectionUtils.isEmpty(exportList)) {
@@ -329,8 +329,7 @@
         map.put("monitorName", monitorName);
         map.put("name", operatorName);
         Workbook workbook = ExcelExportUtil.exportExcel(params, InventoryExcelTemplate.class, exportList, map);
-
-        downLoadExcel("浣庡�兼槗鑰楀搧鐩樼偣琛�", response, workbook);
+        return downLoadExcel("浣庡�兼槗鑰楀搧鐩樼偣琛�", response, workbook);
     }
 
 }
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 0a5dff4..ab16dde 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
@@ -215,7 +215,7 @@
     @ApiOperation(value = "鍑哄簱鍗曞鍑�", notes = "鍑哄簱鍗曞鍑�")
     @ApiImplicitParam(name = "id", value = "鍑哄簱鍗昳d", required = true, dataType = "Long", paramType = "query")
     @GetMapping("/list/export")
-    public void export(Long id, HttpServletResponse response) throws Exception {
+    public String export(Long id, HttpServletResponse response) throws Exception {
         FinSysTenantUser sysInfo = this.getSysInfo();
         if (sysInfo == null) {
             throw new RuntimeException("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
@@ -251,7 +251,7 @@
         map.put("totalAmount", totalAmount);
 
         Workbook workbook = ExcelExportUtil.exportExcel(params, OutputExcelTemplate.class, exportList, map);
-        downLoadExcel("鍑哄簱鍗�", response, workbook);
+        return downLoadExcel("鍑哄簱鍗�", response, workbook);
 
     }
 
diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
index 4b84bd2..f0cc2f3 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
@@ -274,7 +274,7 @@
     @ApiImplicitParams({
         @ApiImplicitParam(name = "id", value = "閲囪喘鍗昳d", required = true, dataType = "Long", paramType = "query")})
     @GetMapping("/list/export")
-    public void export(Long id, HttpServletResponse response) throws Exception {
+    public String export(Long id, HttpServletResponse response) throws Exception {
         TemplateExportParams params = new TemplateExportParams("import/閲囪喘鍏ュ簱鍗�.xls");
         params.setHeadingStartRow(2);
         FinSysTenantUser sysInfo = this.getSysInfo();
@@ -305,7 +305,7 @@
         map.put("totalAmount", totalAmount);
 
         Workbook workbook = ExcelExportUtil.exportExcel(params, ProcureExcelTemplate.class, exportList, map);
-        downLoadExcel("閲囪喘鍏ュ簱鍗�", response, workbook);
+        return downLoadExcel("閲囪喘鍏ュ簱鍗�", response, workbook);
 
     }
 }
diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java
index 125fb25..4bb8dbd 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java
@@ -155,7 +155,7 @@
     @ApiOperation(value = "瀵煎嚭鎶ュ簾鍗�", notes = "瀵煎嚭鎶ュ簾鍗�")
     @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "鎶ュ簾鍗昳d", dataType = "Long", paramType = "query")})
     @GetMapping("/list/export")
-    public void export(Long id, HttpServletResponse response) throws Exception {
+    public String export(Long id, HttpServletResponse response) throws Exception {
         if (id == null) {
             throw new RuntimeException("鎶ュ簾鍗昳d涓虹┖");
         }
@@ -186,7 +186,7 @@
         map.put("totalAmount", totalAmount);
 
         Workbook sheets = ExcelExportUtil.exportExcel(exportParams, ScrappedInfoExcelTemplate.class, export, map);
-        downLoadExcel("鎶ュ簾鐧昏鍗�", response, sheets);
+        return downLoadExcel("鎶ュ簾鐧昏鍗�", response, sheets);
 
     }
 
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 5dd5eae..09ebe84 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
@@ -288,7 +288,7 @@
     @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),
         @ApiImplicitParam(name = "type", value = "瀵煎嚭绫诲瀷 1 鍏ュ簱 2 鍑哄簱", required = true, dataType = "Integer"),})
     @GetMapping("/list/export")
-    public void export(Long id, Integer type, HttpServletResponse response) throws Exception {
+    public String export(Long id, Integer type, HttpServletResponse response) throws Exception {
 
         TemplateExportParams params;
         String fileName;
@@ -322,7 +322,7 @@
         map.put("totalAmount", totalAmount);
 
         Workbook workbook = ExcelExportUtil.exportExcel(params, TransferExcelTemplate.class, export, map);
-        downLoadExcel(fileName, response, workbook);
+        return downLoadExcel(fileName, response, workbook);
 
     }
 
diff --git a/consum-base/src/main/java/com/consum/base/pojo/excel/ImportGoodsInfoTemplate.java b/consum-base/src/main/java/com/consum/base/pojo/excel/ImportGoodsInfoTemplate.java
new file mode 100644
index 0000000..fa6df0d
--- /dev/null
+++ b/consum-base/src/main/java/com/consum/base/pojo/excel/ImportGoodsInfoTemplate.java
@@ -0,0 +1,33 @@
+package com.consum.base.pojo.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+
+import lombok.Data;
+
+/**
+ * @author asus
+ * @version 1.0
+ * @description: 瀵煎叆鐗╁搧淇℃伅
+ * @date 2023/12/11 14:25
+ */
+@Data
+public class ImportGoodsInfoTemplate {
+
+    @ExcelProperty("涓�绾у垎绫�")
+    private String categoryOne;
+    @ExcelProperty("浜岀骇鍒嗙被")
+    private String categoryTwo;
+    @ExcelProperty("涓夌骇鍒嗙被")
+    private String categoryThree;
+    @ExcelProperty("鐗╁搧鍚嶇О")
+    private String goodName;
+    @ExcelProperty("瑙勬牸鍨嬪彿")
+    private String goodModel;
+    @ExcelProperty("鍗曚綅")
+    private String unit;
+    @ExcelProperty("閲囪喘绫诲瀷")
+    private String type;
+    @ExcelProperty("鎵�灞炴満鏋�")
+    private String agencyName;
+
+}
diff --git a/consum-base/src/main/java/com/consum/base/service/FinSysTenantService.java b/consum-base/src/main/java/com/consum/base/service/FinSysTenantService.java
new file mode 100644
index 0000000..3eccac0
--- /dev/null
+++ b/consum-base/src/main/java/com/consum/base/service/FinSysTenantService.java
@@ -0,0 +1,39 @@
+package com.consum.base.service;
+
+import java.util.List;
+import java.util.Map;
+
+import com.consum.base.pojo.FinSysTenantParam;
+import com.consum.model.po.FinSysTenant;
+import com.consum.model.po.FinSysTenantUser;
+import com.walker.jdbc.service.BaseService;
+
+/**
+ * FinSysTenantService
+ *
+ * @author asus
+ * @version 2023/12/11 17:14
+ **/
+public interface FinSysTenantService extends BaseService {
+    FinSysTenant queryOneByCode(String code);
+
+    List<FinSysTenant> queryForTree();
+
+    List<FinSysTenant> queryTreeById(Long id, Integer lv);
+
+    Map<Long, List<FinSysTenant>> queryCountyByCityCode(Long id, Integer lv);
+
+    int updateById(FinSysTenantParam param, FinSysTenantUser sysInfo);
+
+    int addFinSysTenant(FinSysTenantParam param, FinSysTenantUser sysInfo, int lv);
+
+    void setLvIdAndName(FinSysTenantParam param, FinSysTenant finSysTenant, long id, int lv);
+
+    void insertFinSysTenantBatch(List<FinSysTenantParam> params, FinSysTenantUser sysInfo, int lv);
+
+    int updateFinSysTenant(FinSysTenant finSysTenant, FinSysTenantUser sysInfo);
+
+    FinSysTenant selectById(Long id);
+
+    FinSysTenant selectByName(String tenantName);
+}
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseServiceImpl.java
index 68e3c76..9b1754a 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseServiceImpl.java
@@ -17,7 +17,7 @@
 import com.consum.base.pojo.BaseWarehouseParam;
 import com.consum.base.service.BaseWarehouseService;
 import com.consum.base.service.FinSysTenantDepartmentService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.SDictDataServiceImpl;
 import com.consum.model.po.BaseWarehouse;
 import com.consum.model.po.FinSysTenant;
@@ -40,7 +40,7 @@
     @Autowired
     private CodeGeneratorService codeGeneratorService;
     @Autowired
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
     @Autowired
     private FinSysTenantDepartmentService departmentService;
     @Autowired
diff --git a/consum-base/src/main/java/com/consum/base/service/FinSysTenantServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantServiceImpl.java
similarity index 81%
rename from consum-base/src/main/java/com/consum/base/service/FinSysTenantServiceImpl.java
rename to consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantServiceImpl.java
index 60fb4a2..b6e9692 100644
--- a/consum-base/src/main/java/com/consum/base/service/FinSysTenantServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantServiceImpl.java
@@ -1,31 +1,36 @@
-package com.consum.base.service;
+package com.consum.base.service.impl;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import org.springframework.stereotype.Service;
 
 import com.consum.base.pojo.FinSysTenantParam;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.model.po.FinSysTenant;
 import com.consum.model.po.FinSysTenantUser;
 import com.walker.infrastructure.utils.CollectionUtils;
 import com.walker.infrastructure.utils.DateUtils;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-import org.springframework.stereotype.Service;
 
 @Service
-public class FinSysTenantServiceImpl extends BaseServiceImpl {
+public class FinSysTenantServiceImpl extends BaseServiceImpl implements FinSysTenantService {
 
-    private static final String QUERY_TREE_ALL = "select * from FIN_SYS_TENANT where is_delete = 0 and status = 1  order by parent_id, LV ASC";
+    private static final String QUERY_TREE_ALL =
+        "select * from FIN_SYS_TENANT where is_delete = 0 and status = 1  order by parent_id, LV ASC";
     private static final String QUERY_TREE_BY_CODE = "SELECT * FROM FIN_SYS_TENANT  ";
-    private static final String QUERY_LIST_BY_CITY_CODE = "SELECT ID, NAME, CODE, CASE WHEN LV = 2 THEN ID ELSE PARENT_ID END AS PARENT_ID, LV, TENANT_TYPE, BELONG_PROVINCE FROM FIN_SYS_TENANT  ";
-    private static final String QUERY_LV2_ALL = "SELECT * FROM FIN_SYS_TENANT WHERE LV < 3 ORDER BY CODE ASC";
+    private static final String QUERY_LIST_BY_CITY_CODE =
+        "SELECT ID, NAME, CODE, CASE WHEN LV = 2 THEN ID ELSE PARENT_ID END AS PARENT_ID, LV, TENANT_TYPE, BELONG_PROVINCE FROM FIN_SYS_TENANT  ";
 
     /**
      * @Author 锛歱ower
      * @Date 锛� 2023/7/20 20:41 鑾峰彇鍖哄垝淇℃伅 涓昏鐢ㄤ簬缂撳瓨
      */
+    @Override
     public FinSysTenant queryOneByCode(String code) {
         FinSysTenant tenant = new FinSysTenant();
         tenant.setCode(code);
@@ -36,16 +41,17 @@
         return null;
     }
 
-
+    @Override
     public List<FinSysTenant> queryForTree() {
         // 灞曠ず鍏ㄩ儴鑺傜偣
-        return this.select(QUERY_TREE_ALL, new Object[]{}, new FinSysTenant());
+        return this.select(QUERY_TREE_ALL, new Object[] {}, new FinSysTenant());
     }
 
     /**
      * @Author 锛歱ower
      * @Date 锛� 2023/7/20 16:34 鏍规嵁id 鏌ヨ涓嬬骇鎵�鏈夎妭鐐� 鍦板競鏌ヨ鑷繁 鐪佹煡璇㈡墍鏈夊湴甯�
      */
+    @Override
     public List<FinSysTenant> queryTreeById(Long id, Integer lv) {
         if (lv == 3) {
             return new ArrayList<>();
@@ -67,6 +73,7 @@
      * @Author 锛歱ower
      * @Date 锛� 2023/7/21 14:46 鐗规畩鏁版嵁 绂佹鍏朵粬鎺ュ彛浣跨敤
      */
+    @Override
     public Map<Long, List<FinSysTenant>> queryCountyByCityCode(Long id, Integer lv) {
         Map<String, Object> parameter = new HashMap<>(5);
         StringBuilder sql = new StringBuilder(QUERY_LIST_BY_CITY_CODE);
@@ -80,20 +87,10 @@
         }
         sql.append(" ORDER BY PARENT_ID ,ID ");
         List<FinSysTenant> list = this.select(sql.toString(), parameter, new FinSysTenant());
-        // return list.stream().filter(tenant -> Objects.nonNull(tenant.getParentId())).collect(Collectors.groupingBy(FinSysTenant::getParentId));
+        // return list.stream().filter(tenant ->
+        // Objects.nonNull(tenant.getParentId())).collect(Collectors.groupingBy(FinSysTenant::getParentId));
         return list.stream().collect(Collectors.groupingBy(FinSysTenant::getParentId));
     }
-
-
-    /**
-     * @Description 鏌ヨ鎵�鏈夌殑甯傜骇甯︽渤鍗楃渷鐨勫尯鍒�
-     * @Author wh
-     * @Date 2023/7/20 15:29
-     */
-    public List<FinSysTenant> selectByLV2() {
-        return this.select(QUERY_LV2_ALL, new Object[]{}, new FinSysTenant());
-    }
-
 
     /**
      * 鍒犻櫎
@@ -101,6 +98,7 @@
      * @author 鍗㈠簡闃�
      * @date 2023/10/4
      */
+    @Override
     public int updateById(FinSysTenantParam param, FinSysTenantUser sysInfo) {
         FinSysTenant finSysTenant = new FinSysTenant();
         finSysTenant.setTempId(param.getId());
@@ -112,17 +110,17 @@
         return this.update(finSysTenant);
     }
 
-
     /**
      * 娣诲姞鏈烘瀯
      *
      * @author 鍗㈠簡闃�
      * @date 2023/10/4
      */
+    @Override
     public int addFinSysTenant(FinSysTenantParam param, FinSysTenantUser sysInfo, int lv) {
         FinSysTenant finSysTenant = new FinSysTenant();
 
-        //id鍜宼empId
+        // id鍜宼empId
         StringBuilder sql = new StringBuilder("SELECT max(id) FROM fin_sys_tenant WHERE 1=1");
         HashMap<String, Object> paramts = new HashMap<>();
 
@@ -132,7 +130,7 @@
         List<Map<String, Object>> list = this.select(sql.toString(), paramts);
         long id = 0L;
         if (!CollectionUtils.isEmpty(list) && list.get(0).get("max(id)") != null) {
-            id = (Long) list.get(0).get("max(id)") + 1;
+            id = (Long)list.get(0).get("max(id)") + 1;
         } else {
             id = param.getParentId() * 1000 + 1;
         }
@@ -142,13 +140,13 @@
 
         finSysTenant.setParentId(param.getParentId());
         finSysTenant.setCode(param.getCode());
-        //璁剧疆璇︾粏鍦板潃鍙婄粡绾害
+        // 璁剧疆璇︾粏鍦板潃鍙婄粡绾害
         finSysTenant.setName(param.getName());
         finSysTenant.setCreateTime3(DateUtils.getDate("yyyy-MM-dd HH:mm:ss"));
         finSysTenant.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
         finSysTenant.setSummary(param.getSummary());
         finSysTenant.setCreateBy(sysInfo.getUserName());
-        //璁剧疆鍚勫眰绾d鍙婂悕绉�
+        // 璁剧疆鍚勫眰绾d鍙婂悕绉�
         finSysTenant.setLv(lv);
         setLvIdAndName(param, finSysTenant, id, lv);
 
@@ -161,9 +159,10 @@
      * @author 鍗㈠簡闃�
      * @date 2023/10/4
      */
-    private void setLvIdAndName(FinSysTenantParam param, FinSysTenant finSysTenant, long id, int lv) {
-        if (lv == 2) {    //鏂板甯傜骇鏈烘瀯
-            //鏌ヨ涓婁竴绾� - 鐪佺骇
+    @Override
+    public void setLvIdAndName(FinSysTenantParam param, FinSysTenant finSysTenant, long id, int lv) {
+        if (lv == 2) { // 鏂板甯傜骇鏈烘瀯
+            // 鏌ヨ涓婁竴绾� - 鐪佺骇
             FinSysTenant finSysTenant1 = this.get(new FinSysTenant(param.getParentId()));
             if (finSysTenant1 != null) {
                 finSysTenant.setLv1Id(finSysTenant1.getId());
@@ -171,11 +170,11 @@
                 finSysTenant.setLv2Id(id);
                 finSysTenant.setLv2Name(param.getName());
             }
-        } else if (lv == 3) {     //鏂板鍘跨骇鏈烘瀯
-            //鏌ヨ涓婁竴绾� - 甯傜骇
+        } else if (lv == 3) { // 鏂板鍘跨骇鏈烘瀯
+            // 鏌ヨ涓婁竴绾� - 甯傜骇
             FinSysTenant finSysTenant2 = this.get(new FinSysTenant(param.getParentId()));
             if (finSysTenant2 != null) {
-                //鏌ヨ涓婁竴绾� - 鐪佺骇
+                // 鏌ヨ涓婁竴绾� - 鐪佺骇
                 FinSysTenant finSysTenant1 = this.get(new FinSysTenant(finSysTenant2.getParentId()));
 
                 finSysTenant.setLv1Id(finSysTenant1.getId());
@@ -185,14 +184,14 @@
                 finSysTenant.setLv3Id(id);
                 finSysTenant.setLv3Name(param.getName());
             }
-        } else if (lv == 4) {      //鏂板鏀眬鏈烘瀯
-            //鏌ヨ涓婁竴绾� - 鍘跨骇
+        } else if (lv == 4) { // 鏂板鏀眬鏈烘瀯
+            // 鏌ヨ涓婁竴绾� - 鍘跨骇
             FinSysTenant finSysTenant3 = this.get(new FinSysTenant(param.getParentId()));
             if (finSysTenant3 != null) {
-                //鏌ヨ涓婁竴绾� - 甯傜骇
+                // 鏌ヨ涓婁竴绾� - 甯傜骇
                 FinSysTenant finSysTenant2 = this.get(new FinSysTenant(finSysTenant3.getParentId()));
                 if (finSysTenant2 != null) {
-                    //鏌ヨ涓婁竴绾� - 鐪佺骇
+                    // 鏌ヨ涓婁竴绾� - 鐪佺骇
                     FinSysTenant sysTenant1 = this.get(new FinSysTenant(finSysTenant2.getParentId()));
                     if (sysTenant1 != null) {
                         finSysTenant.setLv1Id(sysTenant1.getId());
@@ -209,19 +208,18 @@
         }
     }
 
-
     /**
      * 鎵归噺娣诲姞鏈烘瀯
      *
      * @author jlq
      * @date 2023/10/9
      */
+    @Override
     public void insertFinSysTenantBatch(List<FinSysTenantParam> params, FinSysTenantUser sysInfo, int lv) {
         for (FinSysTenantParam param : params) {
             addFinSysTenant(param, sysInfo, lv);
         }
     }
-
 
     /**
      * 缂栬緫
@@ -229,6 +227,7 @@
      * @author 鍗㈠簡闃�
      * @date 2023/10/6
      */
+    @Override
     public int updateFinSysTenant(FinSysTenant finSysTenant, FinSysTenantUser sysInfo) {
         Integer lv = finSysTenant.getLv();
         if (lv == 1) {
@@ -244,9 +243,17 @@
         return this.update(finSysTenant);
     }
 
+    @Override
     public FinSysTenant selectById(Long id) {
         FinSysTenant tenant = new FinSysTenant();
         tenant.setTempId(id);
         return this.get(tenant);
     }
+
+    @Override
+    public FinSysTenant selectByName(String tenantName) {
+        FinSysTenant tenant = new FinSysTenant();
+        tenant.setName(tenantName);
+        return this.select(tenant).stream().findFirst().orElse(null);
+    }
 }
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormInventoryServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormInventoryServiceImpl.java
index e2845c7..d04ee57 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormInventoryServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormInventoryServiceImpl.java
@@ -27,7 +27,7 @@
 import com.consum.base.pojo.response.FormInventoryGoodsVO;
 import com.consum.base.pojo.response.FormInventoryVO;
 import com.consum.base.service.BaseWarehouseService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.LWhFormInventoryGoodsService;
 import com.consum.base.service.LWhFormInventoryService;
 import com.consum.base.service.LWhGoodsService;
@@ -61,7 +61,7 @@
     @Autowired
     private LWhGoodsService lWhGoodsService;
     @Autowired
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
     @Autowired
     @Lazy
     private LWhFormInventoryCoreService lWhFormInventoryCoreService;
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
index 28451b3..0d2a6c6 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormTransferServiceImpl.java
@@ -37,7 +37,7 @@
 import com.consum.base.pojo.response.LWHFromTransferExtendVO;
 import com.consum.base.service.BaseWarehouseManagerService;
 import com.consum.base.service.BaseWarehouseService;
-import com.consum.base.service.FinSysTenantServiceImpl;
+import com.consum.base.service.FinSysTenantService;
 import com.consum.base.service.LWhFormTransferService;
 import com.consum.base.service.LWhGoodsService;
 import com.consum.base.service.LWhProcureModelService;
@@ -69,7 +69,7 @@
     @Autowired
     private CodeGeneratorService codeGeneratorService;
     @Autowired
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
     @Autowired
     private LWhGoodsService lWhGoodsService;
     @Autowired

--
Gitblit v1.9.1