From dcbf66105a86b5983e67e430d7efa73eb4d03dc4 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期日, 31 八月 2025 14:51:53 +0800
Subject: [PATCH] 暂存0829

---
 service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java |  103 +++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 91 insertions(+), 12 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java b/service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java
index 7827aa5..5a5d37a 100644
--- a/service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java
+++ b/service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java
@@ -1,21 +1,33 @@
 package com.java110.api.smo.assetImport.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.fasterxml.jackson.core.JsonParseException;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.java110.api.importData.DefaultImportDataAdapt;
+import com.java110.api.importData.IImportDataCleaningAdapt;
 import com.java110.api.smo.DefaultAbstractComponentSMO;
 import com.java110.api.smo.assetImport.IAssetImportSMO;
 import com.java110.core.context.IPageData;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.PropertyWhiteListFlowDto;
 import com.java110.dto.log.AssetImportLogDetailDto;
+import com.java110.dto.payFee.PayFeeBatchDto;
 import com.java110.dto.system.ComponentValidateResult;
+import com.java110.dto.user.UserDto;
+import com.java110.intf.IImportPropertyWhiteListfFlowServiceSMO;
 import com.java110.intf.common.IAssetImportLogDetailInnerServiceSMO;
 import com.java110.intf.common.IAssetImportLogInnerServiceSMO;
+import com.java110.intf.fee.IPayFeeBatchV1InnerServiceSMO;
 import com.java110.intf.job.IUserImportDataV1InnerServiceSMO;
+import com.java110.intf.user.IMenuUserV1InnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
 import com.java110.po.log.AssetImportLogDetailPo;
 import com.java110.po.log.AssetImportLogPo;
+import com.java110.po.payFee.PayFeeBatchPo;
 import com.java110.utils.factory.ApplicationContextFactory;
 import com.java110.utils.util.*;
 import com.java110.vo.ResultVo;
-import com.java110.api.importData.IImportDataCleaningAdapt;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.slf4j.Logger;
 import com.java110.core.log.LoggerFactory;
@@ -26,8 +38,10 @@
 import org.springframework.web.client.RestTemplate;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Calendar;
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -45,7 +59,7 @@
     /**
      * 瀵煎叆鏈�澶ц鏁�
      */
-    public static final int MAX_LINE = 2000;
+    public static final int MAX_LINE = 10000;
 
     /**
      * 瀵煎叆鏈�澶ц鏁�
@@ -68,9 +82,20 @@
     @Autowired
     private IUserImportDataV1InnerServiceSMO userImportDataV1InnerServiceSMOImpl;
 
+    @Autowired
+    private IUserInnerServiceSMO iUserInnerServiceSMOImpl;
+
+    @Autowired
+    private IImportPropertyWhiteListfFlowServiceSMO importPropertyWhiteListfFlowServiceSMO;
+
+
+    @Autowired
+    private IPayFeeBatchV1InnerServiceSMO payFeeBatchV1InnerServiceSMOImpl;
+
     @Override
     public ResponseEntity<String> importExcelData(IPageData pd, MultipartFile uploadFile) throws Exception {
         JSONObject paramIn = JSONObject.parseObject(pd.getReqData());
+        paramIn.put("userId", pd.getUserId());
         Assert.hasKeyAndValue(paramIn, "importAdapt", "鏈寘鍚ā鏉�");
         String importAdapt = paramIn.getString("importAdapt") + "DataCleaning";
 
@@ -81,21 +106,66 @@
         }
         try {
             ComponentValidateResult result = this.validateStoreStaffCommunityRelationship(pd, restTemplate);
+            paramIn.put("storeId", result.getStoreId());
 
             Workbook workbook = null;  //宸ヤ綔绨�
             //宸ヤ綔琛�
             String[] headers = null;   //琛ㄥご淇℃伅
-            workbook = ImportExcelUtils.createWorkbook(uploadFile);
+            if(uploadFile == null || uploadFile.getSize() == 0){
 
-            // todo 閫傞厤鍣ㄥ皝瑁呮暟鎹�
-            List datas = importDataCleaningAdapt.analysisExcel(workbook, paramIn, result);
+                PropertyWhiteListFlowDto propertyWhiteListFlowDto = new PropertyWhiteListFlowDto();
+                propertyWhiteListFlowDto.setCommunityId((String) JSONObject.parseObject(pd.getReqData()).get("communityId"));
+                // todo 閫傞厤鍣ㄥ皝瑁呮暟鎹�
+                List<PropertyWhiteListFlowDto> datas = importPropertyWhiteListfFlowServiceSMO.queryPropertyWhiteListFlow(propertyWhiteListFlowDto);
+                PayFeeBatchPo payFeeBatchPo = new PayFeeBatchPo();
+                payFeeBatchPo.setBatchId(GenerateCodeFactory.getGeneratorId("12"));
+                payFeeBatchPo.setCommunityId(paramIn.getString("communityId"));
+                payFeeBatchPo.setCreateUserId(paramIn.getString("userId"));
+                UserDto userDto = new UserDto();
+                userDto.setUserId(paramIn.getString("userId"));
+                List<UserDto> userDtos = iUserInnerServiceSMOImpl.getUsers(userDto);
 
-            if (datas == null || datas.size() > MAX_LINE) {
-                throw new IllegalArgumentException("鏁版嵁涓虹┖锛屾垨鑰呮暟鎹鏁板ぇ浜�" + MAX_LINE);
+                Assert.listOnlyOne(userDtos, "鐢ㄦ埛涓嶅瓨鍦�");
+                payFeeBatchPo.setCreateUserName(userDtos.get(0).getUserName());
+                payFeeBatchPo.setState(PayFeeBatchDto.STATE_NORMAL);
+                payFeeBatchPo.setMsg("姝e父");
+                int flag = payFeeBatchV1InnerServiceSMOImpl.savePayFeeBatch(payFeeBatchPo);
+
+                if (flag < 1) {
+                    throw new IllegalArgumentException("鐢熸垚鎵规澶辫触");
+                }
+
+                paramIn.put("batchId", payFeeBatchPo.getBatchId());
+
+                for (PropertyWhiteListFlowDto importRoomFee : datas) {
+                    importRoomFee.setUserId(paramIn.getString("userId"));
+                    importRoomFee.setStoreId(paramIn.getString("storeId"));
+                    importRoomFee.setCommunityId(paramIn.getString("communityId"));
+                    importRoomFee.setBatchId(paramIn.getString("batchId"));
+                    importRoomFee.setObjType(paramIn.getString("objType"));
+                }
+
+                if (datas == null || datas.size() > MAX_LINE) {
+                    throw new IllegalArgumentException("鏁版嵁涓虹┖锛屾垨鑰呮暟鎹鏁板ぇ浜�" + MAX_LINE);
+                }
+
+                // 淇濆瓨鏁版嵁
+                return saveLogAndImportData(pd, datas, result, paramIn.getString("importAdapt"));
             }
+            else{
+                workbook = ImportExcelUtils.createWorkbook(uploadFile);
 
-            // 淇濆瓨鏁版嵁
-            return saveLogAndImportData(pd, datas, result, paramIn.getString("importAdapt"));
+                // todo 閫傞厤鍣ㄥ皝瑁呮暟鎹�
+                List datas = importDataCleaningAdapt.analysisExcel(workbook, paramIn, result);
+
+
+                if (datas == null || datas.size() > MAX_LINE) {
+                    throw new IllegalArgumentException("鏁版嵁涓虹┖锛屾垨鑰呮暟鎹鏁板ぇ浜�" + MAX_LINE);
+                }
+
+                // 淇濆瓨鏁版嵁
+                return saveLogAndImportData(pd, datas, result, paramIn.getString("importAdapt"));
+            }
         } catch (Exception e) {
             logger.error("瀵煎叆澶辫触 ", e);
             return new ResponseEntity<String>("闈炲父鎶辨瓑锛屾偍濉啓鐨勬ā鏉挎暟鎹湁璇細" + e.getMessage(), HttpStatus.BAD_REQUEST);
@@ -108,8 +178,8 @@
      * @param datas 鏁版嵁
      */
     private ResponseEntity<String> saveLogAndImportData(IPageData pd,
-                                                 List datas,
-                                                 ComponentValidateResult result, String logType) {
+                                                        List datas,
+                                                        ComponentValidateResult result, String logType) {
         ResponseEntity<String> responseEntity = null;
 
         String logId = GenerateCodeFactory.getGeneratorId("10");
@@ -120,6 +190,16 @@
         assetImportLogPo.setLogType(logType);
         assetImportLogPo.setErrorCount("0");
         assetImportLogPo.setSuccessCount("0");
+        String userId = null;
+        userId = pd.getUserId();
+        if(userId != null) {
+            UserDto userDto = new UserDto();
+            userDto.setUserId(userId);
+            List<UserDto> users = iUserInnerServiceSMOImpl.getUsers(userDto);
+            if(users != null && users.size() > 0) {
+                assetImportLogPo.setUserName(users.get(0).getUserName());
+            }
+        }
         assetImportLogInnerServiceSMOImpl.saveAssetImportLog(assetImportLogPo);
 
         List<AssetImportLogDetailPo> assetImportLogDetailPos = new ArrayList<>();
@@ -160,7 +240,6 @@
         }
         return ResultVo.error("瀵煎叆澶辫触");
     }
-
 
 
 }

--
Gitblit v1.8.0