From 33032d320cb75854def7391026b0401f1bfb8360 Mon Sep 17 00:00:00 2001
From: 黎星凯 <13949086503@163.com>
Date: 星期六, 11 五月 2024 17:26:02 +0800
Subject: [PATCH] 20240511修改: 分发单优化, 分类,物品,分发单明细,采购单明细数据导入

---
 consum-base/src/main/java/com/consum/base/controller/FinSysTenantController.java |  391 ++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 241 insertions(+), 150 deletions(-)

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 85fa9bd..0607533 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
@@ -1,22 +1,17 @@
 package com.consum.base.controller;
 
-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.pojo.FinSysTenantParam;
-import com.consum.base.pojo.FinSysTenantSearchParam;
-import com.consum.base.service.FinSysTenantServiceImpl;
-import com.consum.base.service.FinSysTenantUserServiceImpl;
-import com.consum.base.util.FinSysTenantUtils;
-import com.consum.model.po.FinSysTenant;
-import com.consum.model.po.FinSysTenantUser;
-import com.consum.model.vo.FinSysTenantUserResult;
-import com.walker.db.page.GenericPager;
-import com.walker.infrastructure.tree.TreeNode;
-import com.walker.infrastructure.utils.StringUtils;
-import com.walker.web.ResponseValue;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URLEncoder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.TreeMap;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.core.io.ClassPathResource;
@@ -26,30 +21,56 @@
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
+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 java.io.IOException;
-import java.io.InputStream;
-import java.net.URLEncoder;
-import java.util.*;
+import com.alibaba.excel.EasyExcelFactory;
+import com.alibaba.excel.context.AnalysisContext;
+import com.alibaba.excel.event.AnalysisEventListener;
+import com.alibaba.excel.exception.ExcelDataConvertException;
+import com.alibaba.excel.read.metadata.holder.ReadSheetHolder;
+import com.consum.base.BaseController;
+import com.consum.base.core.utils.CommonUtil;
+import com.consum.base.core.utils.FinSysTenantUtils;
+import com.consum.base.pojo.FinSysTenantParam;
+import com.consum.base.pojo.FinSysTenantSearchParam;
+import com.consum.base.pojo.excel.ImportTenantTemplate;
+import com.consum.base.service.FinSysTenantService;
+import com.consum.base.service.FinSysTenantUserService;
+import com.consum.model.po.FinSysTenant;
+import com.consum.model.po.FinSysTenantUser;
+import com.consum.model.vo.FinSysTenantUserResult;
+import com.walker.db.page.GenericPager;
+import com.walker.infrastructure.tree.TreeNode;
+import com.walker.infrastructure.utils.StringUtils;
+import com.walker.web.ResponseValue;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 
 /**
- * @Description 鍖哄垝
+ * @Description 鏈烘瀯
  * @Author wh
  * @Date 2023/7/13 19:51
  */
+@Api(value = "鏈烘瀯绠$悊", tags = "鏈烘瀯绠$悊")
 @RestController
 @RequestMapping("/pc/fin/sys/tenant")
 public class FinSysTenantController extends BaseController {
 
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantService finSysTenantService;
 
     @Autowired
-    private FinSysTenantUserServiceImpl finSysTenantUserService;
+    private FinSysTenantUserService finSysTenantUserService;
 
     @Autowired
-    public FinSysTenantController(FinSysTenantServiceImpl finSysTenantService) {
+    public FinSysTenantController(FinSysTenantService finSysTenantService) {
         this.finSysTenantService = finSysTenantService;
     }
 
@@ -63,36 +84,33 @@
     private long defaultParentId = 0L;
 
     /**
-     * @Description 鑾峰彇鍖哄垝鏍�
+     * @Description 鑾峰彇鏈烘瀯鏍�
      * @Author wh
      * @Date 2023/7/11 11:15
      */
     @GetMapping("/select/tree_fin_tenant")
     public ResponseValue listOrgRootTree() {
-        List<FinSysTenant> finSysTenantList = null;
-        FinSysTenantUser finSysTenantUser = new FinSysTenantUser();
-        finSysTenantUser.setSysUserId(this.getCurrentUser().getId());
-        List<FinSysTenantUser> finSysTenantUserList = finSysTenantUserService.select(finSysTenantUser);
-        FinSysTenantUser user = null; // 绯荤粺鐢ㄦ埛
-        FinSysTenant finSysTenant1 = null;
-        List<TreeNode> treeRootList = null; // 鏁板垪琛�
-        FinSysTenant finSysTenant = new FinSysTenant();
-        // 鑾峰彇鍦板尯鐖剁骇
-        finSysTenantList = this.finSysTenantService.queryForTree();
-        // 鏍规嵁鐧婚檰浜篿d鑾峰彇绯荤粺鐢ㄦ埛锛屽鏋滄湁绯荤粺鐢ㄦ埛鏃�
-        if (finSysTenantUserList.size() > 0) {
-            // 鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
-            user = finSysTenantUserList.get(0);
-            String tenantId = user.getTenantId();
-            finSysTenant.setId(new Long(tenantId));
-            // 鏌ヨ鍖哄煙
-            List<FinSysTenant> select = finSysTenantService.select(finSysTenant);
-            if (select.size() > 0) {
-                finSysTenant1 = select.get(0);
-            }
+        // 绯荤粺鐢ㄦ埛
+        FinSysTenantUser user = this.getSysInfo();
+        if (Objects.isNull(user)) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        if (finSysTenant1 != null) {
-            if (finSysTenant1.getLv() != 1 && finSysTenant1.getParentId() != 0 && user != null) {
+
+        // 鑾峰彇鎵�鏈夋満鏋�
+        List<FinSysTenant> finSysTenantList = this.finSysTenantService.queryForTree();
+        // 鏍规嵁鐧婚檰浜篿d鑾峰彇绯荤粺鐢ㄦ埛锛屽鏋滄湁绯荤粺鐢ㄦ埛鏃�
+        // 鑾峰彇褰撳墠鐢ㄦ埛淇℃伅
+        String tenantId = user.getTenantId();
+        FinSysTenant finSysTenant = new FinSysTenant();
+        finSysTenant.setId(new Long(tenantId));
+        // 涓婚敭鏄疶empId
+        finSysTenant.setTempId(new Long(tenantId));
+        // 鏌ヨ褰撳墠鐢ㄦ埛鐨勬満鏋�
+        FinSysTenant userTenant = finSysTenantService.get(finSysTenant);
+        // 鏍戝垪琛�
+        List<TreeNode> treeRootList;
+        if (userTenant != null) {
+            if (userTenant.getLv() != 1 && userTenant.getParentId() != 0) {
                 rootMap.clear();
                 this.childMap.clear();
                 this.defaultParentId = new Long(user.getTenantId());
@@ -120,7 +138,12 @@
      * @Date 2023/7/14 13:59
      */
     @RequestMapping("/select/list")
-    public ResponseValue allocatedList(FinSysTenantSearchParam param) {
+    public ResponseValue allocatedList() {
+        FinSysTenantSearchParam param = CommonUtil.getObjFromReq(FinSysTenantSearchParam.class);
+        FinSysTenantSearchParam param2 = new FinSysTenantSearchParam();
+        CommonUtil.copyProperties(param, param2);
+        param = param2;
+
         FinSysTenantUser sysInfo = getSysInfo();
         if (sysInfo == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
@@ -142,11 +165,11 @@
             whStr.append(" and parent_id=:parent_id");
             paramts.put("parent_id", param.getTenantId());
         }
-        if (param.getName() != null && !param.getName().equals("")) {
+        if (StringUtils.isNotEmpty(param.getName())) {
             whStr.append(" and name like:name");
             paramts.put("name", "%" + param.getName() + "%");
         }
-        if (param.getCode() != null && !param.getCode().equals("")) {
+        if (StringUtils.isNotEmpty(param.getCode())) {
             whStr.append(" and code=:code");
             paramts.put("code", param.getCode());
         }
@@ -295,13 +318,19 @@
      * @Description 涓嶅垎椤垫煡璇�
      */
     @RequestMapping("/select/allList")
-    public ResponseValue allList(FinSysTenantSearchParam param) {
+    public ResponseValue allList() {
+        FinSysTenantSearchParam param = CommonUtil.getObjFromReq(FinSysTenantSearchParam.class);
+        FinSysTenantSearchParam param2 = new FinSysTenantSearchParam();
+        CommonUtil.copyProperties(param, param2);
+        param = param2;
+
         StringBuilder whStr = new StringBuilder("where 1=1 and status = 1 and is_delete = 0 ");
-        HashMap  parameter = new HashMap<>();
-        if (param.getFirstZmS() != null && !param.getFirstZmS().equals("")) {
+        HashMap parameter = new HashMap<>();
+        if (StringUtils.isNotEmpty(param.getFirstZmS())) {
             whStr.append(" and name is not null and(");
             String upperCase = param.getFirstZmS().toUpperCase();
-            whStr.append("instr(:upperFirstZmS,F_PINYIN( SUBSTR(name, 1, 1)))>0 or instr(:upperFirstZmS2,SUBSTR(name, 1, 1))>0");
+            whStr.append(
+                    "instr(:upperFirstZmS,F_PINYIN( SUBSTR(name, 1, 1)))>0 or instr(:upperFirstZmS2,SUBSTR(name, 1, 1))>0");
             parameter.put("upperFirstZmS", upperCase);
             parameter.put("upperFirstZmS2", upperCase);
             whStr.append(")");
@@ -311,28 +340,39 @@
         return ResponseValue.success(select);
     }
 
-
     /**
      * 鍒犻櫎
+     *
      * @author 鍗㈠簡闃�
      * @date 2023/10/4
      */
     @PostMapping("/del")
-    public ResponseValue del(@RequestBody FinSysTenantParam param) {
+    public ResponseValue del() {
+        FinSysTenantParam param = CommonUtil.getObjFromReqBody(FinSysTenantParam.class);
+        FinSysTenantParam finSysTenantParam = new FinSysTenantParam();
+        CommonUtil.copyProperties(param, finSysTenantParam);
+        param = finSysTenantParam;
+
         if (param.getId() == null) {
             return ResponseValue.error("鏈烘瀯id涓虹┖");
         }
-        int num =this.finSysTenantService.updateById(param,this.getSysInfo());
-        return num>0 ? ResponseValue.success(1):ResponseValue.error("鍒犻櫎澶辫触锛�");
+        int num = this.finSysTenantService.updateById(param, this.getSysInfo());
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("鍒犻櫎澶辫触锛�");
     }
 
     /**
      * 娣诲姞鏈烘瀯
+     *
      * @author 鍗㈠簡闃�
      * @date 2023/10/4
      */
     @PostMapping("/add")
-    public ResponseValue add(@RequestBody FinSysTenantParam param){
+    public ResponseValue add() {
+        FinSysTenantParam param = CommonUtil.getObjFromReqBody(FinSysTenantParam.class);
+        FinSysTenantParam finSysTenantParam = new FinSysTenantParam();
+        CommonUtil.copyProperties(param, finSysTenantParam);
+        param = finSysTenantParam;
+
         if (param == null) {
             return ResponseValue.error("鍙傛暟涓虹┖");
         }
@@ -342,7 +382,7 @@
         if (StringUtils.isEmpty(param.getName())) {
             return ResponseValue.error("鏈烘瀯鍚嶇О涓虹┖");
         }
-        FinSysTenant finSysTenant = this.finSysTenantService.selectByTenantId(param.getCode());
+        FinSysTenant finSysTenant = this.finSysTenantService.queryOneByCode(param.getCode());
         if (finSysTenant != null) {
             return ResponseValue.error("鏈烘瀯缂栧彿宸插瓨鍦�");
         }
@@ -351,65 +391,50 @@
         if (lv > 4) {
             return ResponseValue.error("涓嶈兘鍒涘缓鏀眬浠ヤ笅鏈烘瀯");
         }
-        int num = this.finSysTenantService.addFinSysTenant(param,this.getSysInfo(),lv);
-        if(num>0) return ResponseValue.success(1);
+        int num = this.finSysTenantService.addFinSysTenant(param, this.getSysInfo(), lv);
+        if (num > 0) {
+            return ResponseValue.success(1);
+        }
         return ResponseValue.error("鎻掑叆澶辫触锛�");
     }
 
     @GetMapping("getImportTemplate")
-    public ResponseEntity<InputStreamResource> getImportTemplate() throws IOException {
+    public ResponseEntity<InputStreamResource> getImportTemplate(String type) throws IOException {
         // 浠庡綋鍓嶉」鐩祫婧愮洰褰曡幏鍙栨枃浠�
-        Resource resource = new ClassPathResource("import/鏈烘瀯瀵煎叆妯℃澘.xls");
+        String fileName = null;
+        if ("tenant".equals(type)) {
+            fileName = "鏈烘瀯瀵煎叆妯℃澘.xls";
+        } else if ("goods".equals(type)) {
+            fileName = "鐗╁搧淇℃伅.xls";
+        } else if ("procure".equals(type)) {
+            fileName = "閲囪喘瀵煎叆.xls";
+        } else if ("distribute".equals(type)) {
+            fileName = "鍒嗗彂瀵煎叆.xls";
+        } else if ("classification".equals(type)) {
+            fileName = "鐗╁搧鍒嗙被.xls";
+        }
+        Resource resource = new ClassPathResource("import/" + fileName);
         // 鑾峰彇鏂囦欢杈撳叆娴�
         InputStream inputStream = resource.getInputStream();
         // 璁剧疆HTTP鍝嶅簲澶�
         HttpHeaders headers = new HttpHeaders();
         headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
-        String encodedFilename = URLEncoder.encode("鏈烘瀯瀵煎叆妯℃澘.xls", "UTF-8");
+        String encodedFilename = URLEncoder.encode(fileName, "UTF-8");
         headers.setContentDispositionFormData("attachment", encodedFilename);
         // 鍒涘缓InputStreamResource瀵硅薄锛屽皢鏂囦欢杈撳叆娴佸寘瑁呰捣鏉�
         InputStreamResource resourceToDownload = new InputStreamResource(inputStream);
         // 杩斿洖甯︽湁鏂囦欢杈撳叆娴佺殑ResponseEntity瀵硅薄
-        return ResponseEntity
-                .status(HttpStatus.OK)
-                .headers(headers)
-                .body(resourceToDownload);
+        return ResponseEntity.status(HttpStatus.OK).headers(headers).body(resourceToDownload);
     }
-
-
-    /**
-     * @return 鑾峰彇椤圭洰瀵煎叆鐨勬ā鏉�
-     * @throws IOException
-     */
-    @GetMapping("getProjectImportTemplate")
-    public ResponseEntity<InputStreamResource> getProjectImportTemplate() throws IOException {
-        // 浠庡綋鍓嶉」鐩祫婧愮洰褰曡幏鍙栨枃浠�
-        Resource resource = new ClassPathResource("import/椤圭洰瀵煎叆妯℃澘.xls");
-        // 鑾峰彇鏂囦欢杈撳叆娴�
-        InputStream inputStream = resource.getInputStream();
-        // 璁剧疆HTTP鍝嶅簲澶�
-        HttpHeaders headers = new HttpHeaders();
-        headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
-        String encodedFilename = URLEncoder.encode("椤圭洰瀵煎叆妯℃澘.xls", "UTF-8");
-        headers.setContentDispositionFormData("attachment", encodedFilename);
-        // 鍒涘缓InputStreamResource瀵硅薄锛屽皢鏂囦欢杈撳叆娴佸寘瑁呰捣鏉�
-        InputStreamResource resourceToDownload = new InputStreamResource(inputStream);
-        // 杩斿洖甯︽湁鏂囦欢杈撳叆娴佺殑ResponseEntity瀵硅薄
-        return ResponseEntity
-                .status(HttpStatus.OK)
-                .headers(headers)
-                .body(resourceToDownload);
-    }
-
 
     @PostMapping("import")
     public ResponseValue upload(@RequestParam Long pid, MultipartFile file) throws IOException {
         String originalFilename = file.getOriginalFilename();
-        if (!"xls".equals(originalFilename.substring(originalFilename.lastIndexOf(".") + 1))){
+        if (!originalFilename.endsWith("xls")) {
             return ResponseValue.error("鏂囦欢鏍煎紡鏈夎!");
         }
         FinSysTenantUser sysInfo = this.getSysInfo();
-        if (sysInfo==null){
+        if (sysInfo == null) {
             return ResponseValue.error("褰撳墠鐧诲綍鐢ㄦ埛涓虹┖");
         }
         String parentIdStr = pid + "";
@@ -418,59 +443,80 @@
             return ResponseValue.error("涓嶈兘鍒涘缓鍘匡紙鍖猴級绾т互涓嬫満鏋�");
         }
 
-        EasyExcel.read(file.getInputStream(), FinSysTenantParam.class, new AnalysisEventListener<FinSysTenantParam>() {
-            LinkedList<FinSysTenantParam> finSysTenantParams = new LinkedList<>();
-            @Override
-            public void invoke(FinSysTenantParam finSysTenantParam, AnalysisContext analysisContext) {
-                if (StringUtils.isEmpty(finSysTenantParam.getCode())||finSysTenantParam.getCode().length()>20){
-                    IllegalStateException exception = new IllegalStateException("绗�" + analysisContext.readSheetHolder().getRowIndex() + "琛�,鏈烘瀯缂栧彿涓嶈兘涓虹┖鎴栭暱搴﹀ぇ浜�20");
-                    throw exception;
-                }
-                if (null!=finSysTenantService.selectByTenantId(finSysTenantParam.getCode())){
-                    throw new IllegalStateException("绗�" + analysisContext.readSheetHolder().getRowIndex() + "琛�,鏈烘瀯缂栧彿宸插瓨鍦�");
-                }
-                if (StringUtils.isEmpty(finSysTenantParam.getName())||finSysTenantParam.getName().length()>100){
-                    IllegalStateException exception = new IllegalStateException("绗�" + analysisContext.readSheetHolder().getRowIndex() + "琛�,鏈烘瀯鍚嶇О涓嶈兘涓虹┖鎴栭暱搴﹀ぇ浜�100");
-                    throw exception;
-                }
-                finSysTenantParam.setParentId(pid);
-                finSysTenantParam.setStatus(1);
-                finSysTenantParam.setSummary("绯荤粺瀵煎叆");
-                finSysTenantParams.add(finSysTenantParam);
-            }
-            @Override
-            public void doAfterAllAnalysed(AnalysisContext analysisContext) {
-                finSysTenantService.insertFinSysTenantBatch(finSysTenantParams,sysInfo,lv);
-            }
+        EasyExcelFactory
+                .read(file.getInputStream(), ImportTenantTemplate.class, new AnalysisEventListener<ImportTenantTemplate>() {
+                    LinkedList<FinSysTenantParam> finSysTenantParams = new LinkedList<>();
 
-            @Override
-            public void onException(Exception exception, AnalysisContext context) {
-                // 濡傛灉鏄煇涓�涓崟鍏冩牸鐨勮浆鎹㈠紓甯� 鑳借幏鍙栧埌鍏蜂綋琛屽彿
-                if (exception instanceof ExcelDataConvertException) {
-                    ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException)exception;
-                    logger.error("绗瑊}琛岋紝绗瑊}鍒楄В鏋愬紓甯革紝鏁版嵁涓�:{}",excelDataConvertException.getRowIndex(),
-                            excelDataConvertException.getColumnIndex()+1, excelDataConvertException.getCellData().getStringValue());
-                    throw new IllegalStateException("绗�"+(excelDataConvertException.getRowIndex()+1)+"琛岋紝绗�"+(excelDataConvertException.getColumnIndex()+1)+"鍒楄В鏋愬紓甯�,寮傚父鏁版嵁涓�:[ "+excelDataConvertException.getCellData().getStringValue()+" ]");
-                }
-                if (exception instanceof IllegalStateException){
-                    throw (IllegalStateException)exception;
-                }
+                    @Override
+                    public void invoke(ImportTenantTemplate finSysTenantParam, AnalysisContext analysisContext) {
+                        String code = finSysTenantParam.getCode();
+                        String tenantName = finSysTenantParam.getTenantName();
+                        ReadSheetHolder readSheetHolder = analysisContext.readSheetHolder();
+                        Integer rowIndex = readSheetHolder.getRowIndex() + 1;
+                        if (StringUtils.isEmpty(code) || code.length() > 20) {
+                            IllegalStateException exception =
+                                    new IllegalStateException("绗�" + rowIndex + "琛�,鏈烘瀯缂栧彿涓嶈兘涓虹┖鎴栭暱搴﹀ぇ浜�20");
+                            throw exception;
+                        }
+                        if (null != finSysTenantService.queryOneByCode(code)) {
+                            throw new IllegalStateException("绗�" + rowIndex + "琛�,鏈烘瀯缂栧彿宸插瓨鍦�");
+                        }
+                        if (StringUtils.isEmpty(tenantName) || tenantName.length() > 100) {
+                            IllegalStateException exception =
+                                    new IllegalStateException("绗�" + rowIndex + "琛�,鏈烘瀯鍚嶇О涓嶈兘涓虹┖鎴栭暱搴﹀ぇ浜�100");
+                            throw exception;
+                        }
+                        FinSysTenantParam tenantParam = new FinSysTenantParam();
+                        tenantParam.setParentId(pid);
+                        tenantParam.setStatus(1);
+                        tenantParam.setSummary("绯荤粺瀵煎叆");
+                        tenantParam.setCode(code);
+                        tenantParam.setName(tenantName);
+                        finSysTenantParams.add(tenantParam);
+                    }
 
-            }
+                    @Override
+                    public void doAfterAllAnalysed(AnalysisContext analysisContext) {
+                        finSysTenantService.insertFinSysTenantBatch(finSysTenantParams, sysInfo, lv);
+                    }
 
-        }).doReadAll();
+                    @Override
+                    public void onException(Exception exception, AnalysisContext context) {
+                        // 濡傛灉鏄煇涓�涓崟鍏冩牸鐨勮浆鎹㈠紓甯� 鑳借幏鍙栧埌鍏蜂綋琛屽彿
+                        if (exception instanceof ExcelDataConvertException) {
+                            ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException) exception;
+                            Integer rowIndex = excelDataConvertException.getRowIndex() + 1;
+                            Integer columnIndex = excelDataConvertException.getColumnIndex();
+                            String stringValue = excelDataConvertException.getCellData().getStringValue();
+                            logger.error("绗瑊}琛岋紝绗瑊}鍒楄В鏋愬紓甯革紝鏁版嵁涓�:{}", rowIndex, columnIndex, stringValue);
+                            throw new IllegalStateException(
+                                    "绗�" + rowIndex + "琛岋紝绗�" + columnIndex + "鍒楄В鏋愬紓甯�,寮傚父鏁版嵁涓�:[ " + stringValue + " ]");
+                        }
+                        if (exception instanceof IllegalStateException) {
+                            throw (IllegalStateException) exception;
+                        }
 
-        return ResponseValue.success("瀵煎叆鎴愬姛!",1);
+                    }
+
+                }).doReadAll();
+
+        return ResponseValue.success("瀵煎叆鎴愬姛!", 1);
     }
 
     /**
      * 缂栬緫
+     *
      * @author 鍗㈠簡闃�
      * @date 2023/10/6
      */
     @PostMapping("/edit")
-    public ResponseValue edit(@RequestBody FinSysTenant finSysTenant) {
-        Long id = finSysTenant.getId();
+    public ResponseValue edit() {
+        FinSysTenant param = CommonUtil.getObjFromReqBody(FinSysTenant.class);
+        FinSysTenant finSysTenant = new FinSysTenant();
+        CommonUtil.copyProperties(param, finSysTenant);
+        param = finSysTenant;
+
+        Long id = param.getId();
         if (id == null || id.longValue() <= 0) {
             return ResponseValue.error("缂栬緫鐨勬満鏋勪笉瀛樺湪");
         }
@@ -478,12 +524,33 @@
         if (sysInfo == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        //        FinSysTenant finSysTenant1 = this.finSysTenantService.selectByTenantId(sysInfo.getTenantCode());
-//        if (finSysTenant1.getLv() != 1) {
-//            return ResponseValue.error("鏆傛棤淇敼鏉冮檺");
-//        }
-        int num = this.finSysTenantService.updateFinSysTenant(finSysTenant,this.getSysInfo());
-        return num>0 ? ResponseValue.success(1):ResponseValue.error("缂栬緫澶辫触锛�");
+
+        int num = this.finSysTenantService.updateFinSysTenant(param, this.getSysInfo());
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("缂栬緫澶辫触锛�");
+    }
+
+    /**
+     * 淇敼鍚敤绂佺敤鐘舵��
+     *
+     * @return
+     */
+    @PostMapping("/editState")
+    public ResponseValue editState() {
+        FinSysTenant param = CommonUtil.getObjFromReqBody(FinSysTenant.class);
+        FinSysTenant selFinSysTenant = finSysTenantService.selectById(param.getId());
+        selFinSysTenant.setStatus(param.getStatus());
+        //FinSysTenant finSysTenant = new FinSysTenant();
+        param = selFinSysTenant;
+        Long id = param.getId();
+        if (id == null || id.longValue() <= 0) {
+            return ResponseValue.error("缂栬緫鐨勬満鏋勪笉瀛樺湪");
+        }
+        FinSysTenantUser sysInfo = getSysInfo();
+        if (sysInfo == null) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
+        }
+        int num = this.finSysTenantService.updateFinSysTenant(param, this.getSysInfo());
+        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("缂栬緫澶辫触锛�");
     }
 
     /**
@@ -522,7 +589,8 @@
             }
             // 鐪�
             FinSysTenant finSysTenant1 = this.finSysTenantService.get(new FinSysTenant(finSysTenant.getParentId()));
-            List<FinSysTenantUser> finSysTenantUserList = this.finSysTenantUserService.getByOrgId(finSysTenant1.getId());
+            List<FinSysTenantUser> finSysTenantUserList =
+                    this.finSysTenantUserService.getByOrgId(finSysTenant1.getId());
             if (!StringUtils.isEmptyList(finSysTenantUserList)) {
                 FinSysTenantUserResult finSysTenantUserResult = new FinSysTenantUserResult();
                 finSysTenantUserResult.setOrgId(finSysTenant1.getId());
@@ -543,7 +611,8 @@
             }
             // 甯�
             FinSysTenant finSysTenant2 = this.finSysTenantService.get(new FinSysTenant(finSysTenant.getParentId()));
-            List<FinSysTenantUser> finSysTenantUserList2 = this.finSysTenantUserService.getByOrgId(finSysTenant2.getId());
+            List<FinSysTenantUser> finSysTenantUserList2 =
+                    this.finSysTenantUserService.getByOrgId(finSysTenant2.getId());
             if (!StringUtils.isEmptyList(finSysTenantUserList2)) {
                 FinSysTenantUserResult finSysTenantUserResult = new FinSysTenantUserResult();
                 finSysTenantUserResult.setOrgId(finSysTenant2.getId());
@@ -553,7 +622,8 @@
             }
             // 鐪�
             FinSysTenant finSysTenant1 = this.finSysTenantService.get(new FinSysTenant(finSysTenant2.getParentId()));
-            List<FinSysTenantUser> finSysTenantUserList = this.finSysTenantUserService.getByOrgId(finSysTenant1.getId());
+            List<FinSysTenantUser> finSysTenantUserList =
+                    this.finSysTenantUserService.getByOrgId(finSysTenant1.getId());
             if (!StringUtils.isEmptyList(finSysTenantUserList)) {
                 FinSysTenantUserResult finSysTenantUserResult = new FinSysTenantUserResult();
                 finSysTenantUserResult.setOrgId(finSysTenant1.getId());
@@ -564,4 +634,25 @@
         }
         return ResponseValue.success(finSysTenantUserResults);
     }
+
+    @ApiOperation(value = "鑾峰彇鐖剁骇鏈烘瀯", notes = "鑾峰彇鐖剁骇鏈烘瀯")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "Authorization", value = "token", dataType = "String", paramType = "header"),})
+    @GetMapping("/get/parent/tenant")
+    public ResponseValue getParentTenant() {
+        FinSysTenantUser sysInfo = getSysInfo();
+        if (sysInfo == null) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
+        }
+        String tenantId = sysInfo.getTenantId();
+        FinSysTenant userTenant = finSysTenantService.selectById(Long.valueOf(tenantId));
+        Long parentId = userTenant.getParentId();
+        // 绗竴绾�
+        if (parentId == 0) {
+            return ResponseValue.success(userTenant);
+        } else {
+            FinSysTenant result = finSysTenantService.selectById(parentId);
+            return ResponseValue.success(result);
+        }
+    }
 }

--
Gitblit v1.9.1