From b6184e2ddf3db37a94f7efb3b619bbc64642a292 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期二, 27 一月 2026 18:12:48 +0800
Subject: [PATCH] Z四

---
 service-api/src/main/java/com/java110/api/smo/assetImport/impl/AssetImportSMOImpl.java | 1521 ++++++---------------------------------------------------
 1 files changed, 174 insertions(+), 1,347 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 0d8abe6..f7fd3b7 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,34 +1,48 @@
 package com.java110.api.smo.assetImport.impl;
 
-import com.alibaba.fastjson.JSONArray;
 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.smo.ISaveTransactionLogSMO;
-import com.java110.dto.RoomDto;
-import com.java110.dto.assetImportLog.AssetImportLogDto;
-import com.java110.dto.assetImportLog.AssetImportLogDetailDto;
-import com.java110.dto.owner.OwnerDto;
-import com.java110.entity.assetImport.*;
-import com.java110.entity.component.ComponentValidateResult;
+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 org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.slf4j.Logger;
 import com.java110.core.log.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.text.SimpleDateFormat;
+import java.io.IOException;
 import java.util.ArrayList;
-import java.util.Date;
+import java.util.Calendar;
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -43,48 +57,121 @@
 public class AssetImportSMOImpl extends DefaultAbstractComponentSMO implements IAssetImportSMO {
     private final static Logger logger = LoggerFactory.getLogger(AssetImportSMOImpl.class);
 
+    /**
+     * 瀵煎叆鏈�澶ц鏁�
+     */
+    @Value("${import.line.max}")
+    public int MAX_LINE;
+
+    /**
+     * 瀵煎叆鏈�澶ц鏁�
+     */
+    public static final int DEFAULT_ROWS = 200;
+
+
     @Autowired
     private RestTemplate restTemplate;
 
+
+    private IImportDataCleaningAdapt importDataCleaningAdapt;
+
     @Autowired
-    private ISaveTransactionLogSMO saveTransactionLogSMOImpl;
+    private IAssetImportLogInnerServiceSMO assetImportLogInnerServiceSMOImpl;
+
+    @Autowired
+    private IAssetImportLogDetailInnerServiceSMO assetImportLogDetailInnerServiceSMOImpl;
+
+    @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());
+        if (paramIn.getString("userId").isEmpty() || paramIn.getString("userId").equals("null")){
+            throw new IllegalArgumentException("userId涓虹┖");
+        }
+        paramIn.put("userId", pd.getUserId());
+        Assert.hasKeyAndValue(paramIn, "importAdapt", "鏈寘鍚ā鏉�");
+        Assert.hasKeyAndValue(paramIn, "userId", "鏈寘鍚玼serId");
+        String importAdapt = paramIn.getString("importAdapt") + "DataCleaning";
 
+        importDataCleaningAdapt = ApplicationContextFactory.getBean(importAdapt, IImportDataCleaningAdapt.class);
+
+        if (importDataCleaningAdapt == null) {
+            throw new IllegalArgumentException("閫傞厤鍣ㄦ病鏈夊疄鐜�" + importAdapt);
+        }
         try {
             ComponentValidateResult result = this.validateStoreStaffCommunityRelationship(pd, restTemplate);
-
-            //InputStream is = uploadFile.getInputStream();
+            paramIn.put("storeId", result.getStoreId());
 
             Workbook workbook = null;  //宸ヤ綔绨�
             //宸ヤ綔琛�
             String[] headers = null;   //琛ㄥご淇℃伅
-            List<ImportFloor> floors = new ArrayList<ImportFloor>();
-            List<ImportOwner> owners = new ArrayList<ImportOwner>();
-            List<ImportFee> fees = new ArrayList<>();
-            List<ImportRoom> rooms = new ArrayList<ImportRoom>();
-            List<ImportParkingSpace> parkingSpaces = new ArrayList<ImportParkingSpace>();
-            workbook = ImportExcelUtils.createWorkbook(uploadFile);
-            //鑾峰彇妤间俊鎭�
-            getFloors(workbook, floors);
-            //鑾峰彇涓氫富淇℃伅
-            getOwners(workbook, owners);
+            if(uploadFile == null || uploadFile.getSize() == 0){
+
+                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);
+
+                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);
+                result.setImportFileName(uploadFile.getOriginalFilename());
+                // todo 閫傞厤鍣ㄥ皝瑁呮暟鎹�
+                List datas = importDataCleaningAdapt.analysisExcel(workbook, paramIn, result);
 
 
-            getFee(workbook, fees);
+                if (datas == null || datas.size() > MAX_LINE) {
+                    throw new IllegalArgumentException("鏁版嵁涓虹┖锛屾垨鑰呮暟鎹鏁板ぇ浜�" + MAX_LINE);
+                }
 
-            //鑾峰彇鎴垮眿淇℃伅
-            getRooms(workbook, rooms, floors, owners);
-
-            //鑾峰彇杞︿綅淇℃伅
-            getParkingSpaces(workbook, parkingSpaces, owners);
-
-            //鏁版嵁鏍¢獙
-            importExcelDataValidate(floors, owners, rooms, fees, parkingSpaces);
-
-            // 淇濆瓨鏁版嵁
-            return dealExcelData(pd, floors, owners, rooms, parkingSpaces, fees, result);
+                // 淇濆瓨鏁版嵁
+                return saveLogAndImportData(pd, datas, result, paramIn.getString("importAdapt"));
+            }
         } catch (Exception e) {
             logger.error("瀵煎叆澶辫触 ", e);
             return new ResponseEntity<String>("闈炲父鎶辨瓑锛屾偍濉啓鐨勬ā鏉挎暟鎹湁璇細" + e.getMessage(), HttpStatus.BAD_REQUEST);
@@ -94,1332 +181,72 @@
     /**
      * 澶勭悊ExcelData鏁版嵁
      *
-     * @param floors        妤兼爧鍗曞厓淇℃伅
-     * @param owners        涓氫富淇℃伅
-     * @param rooms         鎴垮眿淇℃伅
-     * @param parkingSpaces 杞︿綅淇℃伅
+     * @param datas 鏁版嵁
      */
-    private ResponseEntity<String> dealExcelData(IPageData pd,
-                                                 List<ImportFloor> floors,
-                                                 List<ImportOwner> owners,
-                                                 List<ImportRoom> rooms,
-                                                 List<ImportParkingSpace> parkingSpaces,
-                                                 List<ImportFee> fees,
-                                                 ComponentValidateResult result) {
+    private ResponseEntity<String> saveLogAndImportData(IPageData pd,
+                                                        List datas,
+                                                        ComponentValidateResult result, String logType) {
         ResponseEntity<String> responseEntity = null;
-        //淇濆瓨鍗曞厓淇℃伅 鍜� 妤兼爧淇℃伅
-        responseEntity = savedFloorAndUnitInfo(pd, floors, result);
 
-        if (responseEntity == null || responseEntity.getStatusCode() != HttpStatus.OK) {
-            return responseEntity;
-        }
+        String logId = GenerateCodeFactory.getGeneratorId("10");
 
-        // 淇濆瓨涓氫富淇℃伅
-        responseEntity = savedOwnerInfo(pd, owners, result);
-        if (responseEntity == null || responseEntity.getStatusCode() != HttpStatus.OK) {
-            return responseEntity;
-        }
-
-        // 淇濆瓨璐圭敤椤�
-        responseEntity = savedFeeInfo(pd, fees, result);
-        if (responseEntity == null || responseEntity.getStatusCode() != HttpStatus.OK) {
-            return responseEntity;
-        }
-
-        //淇濆瓨鎴垮眿
-        responseEntity = savedRoomInfo(pd, rooms, fees, result);
-        if (responseEntity == null || responseEntity.getStatusCode() != HttpStatus.OK) {
-            return responseEntity;
-        }
-
-        //淇濆瓨杞︿綅
-        responseEntity = savedParkingSpaceInfo(pd, parkingSpaces, result);
-
-        if (responseEntity == null || responseEntity.getStatusCode() != HttpStatus.OK) {
-            return responseEntity;
-        }
-
-        return responseEntity;
-    }
-
-    private ResponseEntity<String> savedFeeInfo(IPageData pd, List<ImportFee> fees, ComponentValidateResult result) {
-        String apiUrl = "";
-        JSONObject paramIn = null;
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>("鎴愬姛", HttpStatus.OK);
-        ImportOwner owner = null;
-
-        AssetImportLogDto assetImportLogDto = new AssetImportLogDto();
-        assetImportLogDto.setSuccessCount(0L);
-        assetImportLogDto.setErrorCount(0L);
-        assetImportLogDto.setCommunityId(result.getCommunityId());
-        assetImportLogDto.setLogType(AssetImportLogDto.LOG_TYPE_FEE_IMPORT);
-        List<AssetImportLogDetailDto> assetImportLogDetailDtos = new ArrayList<>();
-        assetImportLogDto.setAssetImportLogDetailDtos(assetImportLogDetailDtos);
-        long successCount = 0L;
-        long failCount = 0L;
-        AssetImportLogDetailDto assetImportLogDetailDto = null;
-        try {
-            for (ImportFee fee : fees) {
-                JSONObject savedFeeConfigInfo = getExistsFee(pd, result, fee);
-                if (savedFeeConfigInfo != null) {
-                    successCount += 1;
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                    continue;
-                }
-                //paramIn = new JSONObject();
-                //淇濆瓨 璐圭敤椤�
-
-                apiUrl = "feeConfig.saveFeeConfig";
-
-                paramIn = JSONObject.parseObject(JSONObject.toJSONString(fee));
-                paramIn.put("communityId", result.getCommunityId());
-
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                    /***************************************瀵煎叆鏃ュ織璁板綍****************************************************/
-                    failCount += 1;
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(fee.getFeeName());
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(fee.getFeeName());
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                    } else {
-                        successCount += 1;
-                    }
-                }
-                assetImportLogDto.setSuccessCount(successCount);
-                assetImportLogDto.setErrorCount(failCount);
-            }
-        } finally {
-            saveTransactionLogSMOImpl.saveAssetImportLog(assetImportLogDto);
-        }
-
-        return responseEntity;
-    }
-
-    /**
-     * 淇濆瓨杞︿綅淇℃伅
-     *
-     * @param pd
-     * @param parkingSpaces
-     * @param result
-     * @return
-     */
-    private ResponseEntity<String> savedParkingSpaceInfo(IPageData pd, List<ImportParkingSpace> parkingSpaces, ComponentValidateResult result) {
-        String apiUrl = "";
-        JSONObject paramIn = null;
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>("鎴愬姛", HttpStatus.OK);
-        ImportOwner owner = null;
-        AssetImportLogDto assetImportLogDto = new AssetImportLogDto();
-        assetImportLogDto.setSuccessCount(0L);
-        assetImportLogDto.setErrorCount(0L);
-        assetImportLogDto.setCommunityId(result.getCommunityId());
-        assetImportLogDto.setLogType(AssetImportLogDto.LOG_TYPE_AREA_PARKING_IMPORT);
-        List<AssetImportLogDetailDto> assetImportLogDetailDtos = new ArrayList<>();
-        assetImportLogDto.setAssetImportLogDetailDtos(assetImportLogDetailDtos);
-        long successCount = 0L;
-        long failCount = 0L;
-        AssetImportLogDetailDto assetImportLogDetailDto = null;
-        try {
-            for (ImportParkingSpace parkingSpace : parkingSpaces) {
-                responseEntity = ResultVo.success();
-                JSONObject savedParkingAreaInfo = getExistsParkingArea(pd, result, parkingSpace);
-                paramIn = new JSONObject();
-                // 濡傛灉涓嶅瓨鍦紝鎵嶆彃鍏�
-                if (savedParkingAreaInfo == null) {
-                    apiUrl = "parkingArea.saveParkingArea";
-                    paramIn.put("communityId", result.getCommunityId());
-                    paramIn.put("typeCd", parkingSpace.getTypeCd());
-                    paramIn.put("num", parkingSpace.getPaNum());
-
-                    responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                    savedParkingAreaInfo = getExistsParkingArea(pd, result, parkingSpace);
-                }
-                if (responseEntity != null && responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-                    failCount += 1;
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(parkingSpace.getPaNum());
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                    continue;
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(parkingSpace.getPaNum());
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                        continue;
-                    } else {
-                        successCount += 1;
-                    }
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                }
-
-                JSONObject savedParkingSpaceInfo = getExistsParkSpace(pd, result, parkingSpace);
-                if (savedParkingSpaceInfo != null) {
-                    continue;
-                }
-
-                apiUrl = "parkingSpace.saveParkingSpace";
-
-                paramIn.put("paId", savedParkingAreaInfo.getString("paId"));
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("userId", result.getUserId());
-                paramIn.put("num", parkingSpace.getPsNum());
-                paramIn.put("area", parkingSpace.getArea());
-                paramIn.put("typeCd", parkingSpace.getTypeCd());
-                paramIn.put("parkingType", "1");
-
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(parkingSpace.getPaNum());
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    failCount += 1;
-                    successCount = successCount > 0 ? successCount - 1 : successCount;
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                    continue;
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(parkingSpace.getPaNum());
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                        failCount += 1;
-                        successCount = successCount > 0 ? successCount - 1 : successCount;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                        continue;
-                    }
-                }
-
-                savedParkingSpaceInfo = getExistsParkSpace(pd, result, parkingSpace);
-                if (savedParkingSpaceInfo == null) {
-                    continue;
-                }
-
-                //鏄惁鏈変笟涓讳俊鎭�
-                if (parkingSpace.getImportOwner() == null) {
-                    continue;
-                }
-
-                paramIn.clear();
-
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("ownerId", parkingSpace.getImportOwner().getOwnerId());
-                paramIn.put("userId", result.getUserId());
-                paramIn.put("carNum", parkingSpace.getCarNum());
-                paramIn.put("carBrand", parkingSpace.getCarBrand());
-                paramIn.put("carType", parkingSpace.getCarType());
-                paramIn.put("carColor", parkingSpace.getCarColor());
-                paramIn.put("psId", savedParkingSpaceInfo.getString("psId"));
-                paramIn.put("storeId", result.getStoreId());
-                paramIn.put("sellOrHire", parkingSpace.getSellOrHire());
-                paramIn.put("startTime", parkingSpace.getStartTime());
-                paramIn.put("endTime", parkingSpace.getEndTime());
-
-                if ("H".equals(parkingSpace.getSellOrHire())) {
-                    paramIn.put("cycles", "0");
-                }
-
-                apiUrl = "parkingSpace.sellParkingSpace";
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-
-                if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                    /***************************************瀵煎叆鏃ュ織璁板綍****************************************************/
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(parkingSpace.getCarNum());
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    failCount += 1;
-                    successCount = successCount > 0 ? successCount - 1 : successCount;
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(parkingSpace.getCarNum());
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        successCount = successCount > 0 ? successCount - 1 : successCount;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                    }
-                }
-            }
-        } catch (Exception e) {
-            logger.error("瀵煎叆杞︿綅寮傚父", e);
-            saveTransactionLogSMOImpl.saveAssetImportLog(assetImportLogDto);
-            throw e;
-        }
-
-        return responseEntity;
-    }
-
-
-    /**
-     * 淇濆瓨鎴垮眿淇℃伅
-     *
-     * @param pd
-     * @param rooms
-     * @param result
-     * @return
-     */
-    private ResponseEntity<String> savedRoomInfo(IPageData pd, List<ImportRoom> rooms, List<ImportFee> fees, ComponentValidateResult result) {
-        String apiUrl = "";
-        JSONObject paramIn = null;
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>("鎴愬姛", HttpStatus.OK);
-        ImportOwner owner = null;
-        AssetImportLogDto assetImportLogDto = new AssetImportLogDto();
-        assetImportLogDto.setSuccessCount(0L);
-        assetImportLogDto.setErrorCount(0L);
-        assetImportLogDto.setCommunityId(result.getCommunityId());
-        assetImportLogDto.setLogType(AssetImportLogDto.LOG_TYPE_ROOM_IMPORT);
-        List<AssetImportLogDetailDto> assetImportLogDetailDtos = new ArrayList<>();
-        assetImportLogDto.setAssetImportLogDetailDtos(assetImportLogDetailDtos);
-        long successCount = 0L;
-        long failCount = 0L;
-        AssetImportLogDetailDto assetImportLogDetailDto = null;
-        try {
-            for (ImportRoom room : rooms) {
-                paramIn = new JSONObject();
-                JSONObject savedRoomInfo = getExistsRoom(pd, result, room);
-                if (savedRoomInfo != null) {
-                    //濡傛灉绌洪棽鍏ヤ綇涓�涓�
-                    if (RoomDto.STATE_FREE.equals(savedRoomInfo.getString("state")) && room.getImportOwner() != null) {
-                        paramIn.clear();
-                        apiUrl = "room.sellRoom";
-                        paramIn.put("communityId", result.getCommunityId());
-                        paramIn.put("ownerId", room.getImportOwner().getOwnerId());
-                        paramIn.put("roomId", savedRoomInfo.getString("roomId"));
-                        paramIn.put("state", "2001");
-                        paramIn.put("storeId", result.getStoreId());
-                        if (!StringUtil.isEmpty(room.getRoomFeeId()) && "0".equals(room.getRoomFeeId())) {
-                            paramIn.put("feeEndDate", room.getFeeEndDate());
-                        }
-                        responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                    }
-                    continue;
-                }
-                //淇濆瓨 鎴垮眿
-                apiUrl = "room.saveRoom";
-
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("unitId", room.getFloor().getUnitId());
-                paramIn.put("roomNum", room.getRoomNum());
-                paramIn.put("layer", room.getLayer());
-                paramIn.put("section", "1");
-                paramIn.put("apartment", room.getSection());
-                paramIn.put("state", "2002");
-                paramIn.put("builtUpArea", room.getBuiltUpArea());
-                paramIn.put("feeCoefficient", "1.00");
-                paramIn.put("roomSubType", room.getRoomSubType());
-                paramIn.put("roomArea", room.getRoomArea());
-                paramIn.put("roomRent", room.getRoomRent());
-                paramIn.put("roomType", "0".equals(room.getFloor().getUnitNum()) ? RoomDto.ROOM_TYPE_SHOPS : RoomDto.ROOM_TYPE_SHOPS);
-
-
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                    failCount += 1;
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                    continue;
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                        continue;
-                    } else {
-                        successCount += 1;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                    }
-                }
-
-                savedRoomInfo = getExistsRoom(pd, result, room);
-                if (savedRoomInfo == null) {
-                    continue;
-                }
-                if (room.getImportOwner() == null) {
-                    continue;
-                }
-                paramIn.clear();
-                apiUrl = "room.sellRoom";
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("ownerId", room.getImportOwner().getOwnerId());
-                paramIn.put("roomId", savedRoomInfo.getString("roomId"));
-                paramIn.put("state", "2001");
-                paramIn.put("storeId", result.getStoreId());
-                if (!StringUtil.isEmpty(room.getRoomFeeId()) && "0".equals(room.getRoomFeeId())) {
-                    paramIn.put("feeEndDate", room.getFeeEndDate());
-                }
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    continue;
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        continue;
-                    }
-                }
-                //鍒涘缓璐圭敤
-                if (StringUtil.isEmpty(room.getRoomFeeId()) || "0".equals(room.getRoomFeeId())) {
-                    continue;
-                }
-                String[] feeIds = room.getRoomFeeId().split("#");
-
-                for (int feeIndex = 0; feeIndex < feeIds.length; feeIndex++) {
-                    String feeId = feeIds[feeIndex];
-                    ImportFee tmpFee = null;
-                    for (ImportFee fee : fees) {
-                        if (feeId.equals(fee.getId())) {
-                            tmpFee = fee;
-                        }
-                    }
-
-                    if (tmpFee == null) {
-                        continue;//娌℃湁璐圭敤椤癸紝鍙兘鍐欓敊浜�
-                    }
-
-                    JSONObject ttFee = getExistsFee(pd, result, tmpFee);
-
-                    if (ttFee == null) {
-                        continue;//娌℃湁璐圭敤椤癸紝鍙兘鍐欓敊浜�
-                    }
-
-                    apiUrl = "fee.saveRoomCreateFee";
-                    paramIn.put("communityId", result.getCommunityId());
-                    paramIn.put("locationTypeCd", "3000");
-                    paramIn.put("locationObjId", savedRoomInfo.getString("roomId"));
-                    paramIn.put("configId", ttFee.getString("configId"));
-                    paramIn.put("storeId", result.getStoreId());
-                    paramIn.put("feeEndDate", room.getFeeEndDate().split("#")[feeIndex]);
-                    paramIn.put("startTime", paramIn.getString("feeEndDate"));
-
-                    responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-
-                    if (responseEntity.getStatusCode() != HttpStatus.OK) {
-                        /***************************************瀵煎叆鏃ュ織璁板綍****************************************************/
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        if (Assert.isJsonObject(responseEntity.getBody())) {
-                            JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                            assetImportLogDetailDto.setState(paramOut.getString("code"));
-                            assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                        } else {
-                            assetImportLogDetailDto.setState("F");
-                            assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                        }
-                        assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        successCount = successCount > 0 ? successCount - 1 : successCount;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                    } else {
-                        JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                        if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                            assetImportLogDetailDto = new AssetImportLogDetailDto();
-                            assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                            assetImportLogDetailDto.setState(body.getString("code"));
-                            assetImportLogDetailDto.setMessage(body.getString("msg"));
-                            assetImportLogDetailDto.setObjName(room.getRoomNum() + "瀹�");
-                            assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                            failCount += 1;
-                            successCount = successCount > 0 ? successCount - 1 : successCount;
-                            assetImportLogDto.setSuccessCount(successCount);
-                            assetImportLogDto.setErrorCount(failCount);
-                        }
-                    }
-                }
-
-            }
-        } finally {
-            saveTransactionLogSMOImpl.saveAssetImportLog(assetImportLogDto);
-        }
-
-        return responseEntity;
-    }
-
-    /**
-     * 鏌ヨ瀛樺湪鐨勬埧灞嬩俊鎭�
-     * room.queryRooms
-     *
-     * @param pd
-     * @param result
-     * @param parkingSpace
-     * @return
-     */
-    private JSONObject getExistsParkSpace(IPageData pd, ComponentValidateResult result, ImportParkingSpace parkingSpace) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "parkingSpace.queryParkingSpaces?page=1&row=1&communityId=" + result.getCommunityId()
-                + "&num=" + parkingSpace.getPsNum() + "&areaNum=" + parkingSpace.getPaNum();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedParkingSpaceInfoResults = JSONObject.parseObject(responseEntity.getBody());
-
-
-        if (!savedParkingSpaceInfoResults.containsKey("parkingSpaces") || savedParkingSpaceInfoResults.getJSONArray("parkingSpaces").size() != 1) {
-            return null;
-        }
-
-
-        JSONObject savedParkingSpaceInfo = savedParkingSpaceInfoResults.getJSONArray("parkingSpaces").getJSONObject(0);
-
-        return savedParkingSpaceInfo;
-    }
-
-    /**
-     * 鏌ヨ瀛樺湪鐨勬埧灞嬩俊鎭�
-     * room.queryRooms
-     *
-     * @param pd
-     * @param result
-     * @param fee
-     * @return
-     */
-    private JSONObject getExistsFee(IPageData pd, ComponentValidateResult result, ImportFee fee) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "feeConfig.listFeeConfigs?page=1&row=1&communityId=" + result.getCommunityId()
-                + "&feeName=" + fee.getFeeName();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedRoomInfoResults = JSONObject.parseObject(responseEntity.getBody());
-
-
-        if (!savedRoomInfoResults.containsKey("feeConfigs") || savedRoomInfoResults.getJSONArray("feeConfigs").size() != 1) {
-            return null;
-        }
-
-
-        JSONObject savedFeeConfigInfo = savedRoomInfoResults.getJSONArray("feeConfigs").getJSONObject(0);
-
-        return savedFeeConfigInfo;
-    }
-
-
-    /**
-     * 鏌ヨ瀛樺湪鐨勬埧灞嬩俊鎭�
-     * room.queryRooms
-     *
-     * @param pd
-     * @param result
-     * @param room
-     * @return
-     */
-    private JSONObject getExistsRoom(IPageData pd, ComponentValidateResult result, ImportRoom room) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "room.queryRooms?page=1&row=1&communityId=" + result.getCommunityId()
-                + "&floorId=" + room.getFloor().getFloorId() + "&unitId=" + room.getFloor().getUnitId() + "&roomNum=" + room.getRoomNum();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedRoomInfoResults = JSONObject.parseObject(responseEntity.getBody());
-
-
-        if (!savedRoomInfoResults.containsKey("rooms") || savedRoomInfoResults.getJSONArray("rooms").size() != 1) {
-            return null;
-        }
-
-
-        JSONObject savedRoomInfo = savedRoomInfoResults.getJSONArray("rooms").getJSONObject(0);
-
-        return savedRoomInfo;
-    }
-
-    /**
-     * 淇濆瓨涓氫富淇℃伅
-     *
-     * @param pd
-     * @param owners
-     * @param result
-     * @return
-     */
-    private ResponseEntity<String> savedOwnerInfo(IPageData pd, List<ImportOwner> owners, ComponentValidateResult result) {
-        String apiUrl = "";
-        JSONObject paramIn = null;
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>("鎴愬姛", HttpStatus.OK);
-        AssetImportLogDto assetImportLogDto = new AssetImportLogDto();
-        assetImportLogDto.setSuccessCount(0L);
-        assetImportLogDto.setErrorCount(0L);
-        assetImportLogDto.setCommunityId(result.getCommunityId());
-        assetImportLogDto.setLogType(AssetImportLogDto.LOG_TYPE_OWENR_IMPORT);
-        List<AssetImportLogDetailDto> assetImportLogDetailDtos = new ArrayList<>();
-        assetImportLogDto.setAssetImportLogDetailDtos(assetImportLogDetailDtos);
-        long successCount = 0L;
-        long failCount = 0L;
-        AssetImportLogDetailDto assetImportLogDetailDto = null;
-        try {
-            for (ImportOwner owner : owners) {
-                JSONObject savedOwnerInfo = getExistsOwner(pd, result, owner);
-
-                if (savedOwnerInfo != null) {
-                    owner.setOwnerId(savedOwnerInfo.getString("ownerId"));
-                    continue;
-                }
-                paramIn = new JSONObject();
-
-                apiUrl = "owner.saveOwner";
-
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("userId", result.getUserId());
-                paramIn.put("name", owner.getOwnerName());
-                paramIn.put("age", owner.getAge());
-                paramIn.put("link", owner.getTel());
-                paramIn.put("sex", owner.getSex());
-                paramIn.put("ownerTypeCd", owner.getOwnerTypeCd());
-                paramIn.put("idCard", owner.getIdCard());
-                paramIn.put("source", "BatchImport");
-                if (!OwnerDto.OWNER_TYPE_CD_OWNER.equals(owner.getOwnerTypeCd())) {
-                    //鏌ヨ涓氫富ID
-                    paramIn.put("ownerId", getOwnerId(owners, owner));
-                }
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-
-                /***************************************瀵煎叆鏃ュ織璁板綍****************************************************/
-                if (responseEntity.getStatusCode() == HttpStatus.OK) {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(owner.getOwnerName());
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                        throw new IllegalArgumentException(body.getString("msg"));
-                    }
-                    savedOwnerInfo = getExistsOwner(pd, result, owner);
-                    owner.setOwnerId(savedOwnerInfo.getString("ownerId"));
-                    successCount += 1;
-                } else {
-                    failCount += 1;
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(owner.getOwnerName());
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                }
-                assetImportLogDto.setSuccessCount(successCount);
-                assetImportLogDto.setErrorCount(failCount);
-            }
-        } finally {
-            saveTransactionLogSMOImpl.saveAssetImportLog(assetImportLogDto);
-        }
-
-        return responseEntity;
-    }
-
-    private String getOwnerId(List<ImportOwner> owners, ImportOwner owner) {
-        for (ImportOwner owner1 : owners) {
-            if (owner1.getOwnerNum().equals(owner.getParentOwnerId())) {
-                return owner1.getOwnerId();
+        AssetImportLogPo assetImportLogPo = new AssetImportLogPo();
+        assetImportLogPo.setCommunityId(result.getCommunityId());
+        assetImportLogPo.setLogId(logId);
+        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());
             }
         }
-        throw new IllegalArgumentException("璇峰皢涓氫富鎴愬憳鏀惧埌涓氫富鍚庨潰,鎴栬�呬笟涓绘垚鍛樻湭鎵惧埌瀵瑰簲鐨勪笟涓�");
-    }
+        assetImportLogPo.setImportFileName(result.getImportFileName());
+        assetImportLogInnerServiceSMOImpl.saveAssetImportLog(assetImportLogPo);
 
-    /**
-     * 淇濆瓨 妤兼爧鍜� 鍗曞厓淇℃伅
-     *
-     * @param pd
-     * @param floors
-     * @param result
-     * @return
-     */
-    private ResponseEntity<String> savedFloorAndUnitInfo(IPageData pd, List<ImportFloor> floors, ComponentValidateResult result) {
-        String apiUrl = "";
-        JSONObject paramIn = null;
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>("鎴愬姛", HttpStatus.OK);
-
-        AssetImportLogDto assetImportLogDto = new AssetImportLogDto();
-        assetImportLogDto.setSuccessCount(0L);
-        assetImportLogDto.setErrorCount(0L);
-        assetImportLogDto.setCommunityId(result.getCommunityId());
-        assetImportLogDto.setLogType(AssetImportLogDto.LOG_TYPE_FLOOR_UNIT_IMPORT);
-        List<AssetImportLogDetailDto> assetImportLogDetailDtos = new ArrayList<>();
-        assetImportLogDto.setAssetImportLogDetailDtos(assetImportLogDetailDtos);
-        long successCount = 0L;
-        long failCount = 0L;
-        AssetImportLogDetailDto assetImportLogDetailDto = null;
-        try {
-            for (int floorIndex = 0; floorIndex < floors.size(); floorIndex++) {
-                ImportFloor importFloor = floors.get(floorIndex);
-                paramIn = new JSONObject();
-                //鍏堜繚瀛� 妤兼爧淇℃伅
-                JSONObject savedFloorInfo = getExistsFloor(pd, result, importFloor);
-                // 濡傛灉涓嶅瓨鍦紝鎵嶆彃鍏�
-                if (savedFloorInfo == null) {
-                    apiUrl = "floor.saveFloor";
-                    paramIn.put("communityId", result.getCommunityId());
-                    paramIn.put("floorNum", importFloor.getFloorNum());
-                    paramIn.put("userId", result.getUserId());
-                    paramIn.put("name", importFloor.getFloorNum() + "鏍�");
-                    paramIn.put("floorArea", 1.00);
-                    paramIn.put("seq",floorIndex+1);
-
-                    responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                    savedFloorInfo = getExistsFloor(pd, result, importFloor);
+        List<AssetImportLogDetailPo> assetImportLogDetailPos = new ArrayList<>();
+        AssetImportLogDetailPo assetImportLogDetailPo = null;
+        int flag = 0;
+        Calendar createTimeCal = Calendar.getInstance();
+        for (Object data : datas) {
+            createTimeCal.add(Calendar.SECOND,1);
+            assetImportLogDetailPo = new AssetImportLogDetailPo();
+            assetImportLogDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId("11"));
+            assetImportLogDetailPo.setLogId(logId);
+            assetImportLogDetailPo.setState(AssetImportLogDetailDto.STATE_WAIT_IMPORT);
+            assetImportLogDetailPo.setMessage("寰呭鍏�");
+            assetImportLogDetailPo.setCommunityId(result.getCommunityId());
+            assetImportLogDetailPo.setContent(JSONObject.toJSONString(data));
+            assetImportLogDetailPo.setCreateTime(DateUtil.getFormatTimeStringA(createTimeCal.getTime()));
+            assetImportLogDetailPos.add(assetImportLogDetailPo);
+            if (assetImportLogDetailPos.size() > DEFAULT_ROWS) {
+                flag = assetImportLogDetailInnerServiceSMOImpl.saveAssetImportLogDetails(assetImportLogDetailPos);
+                if (flag < 1) {
+                    throw new IllegalArgumentException("淇濆瓨澶辫触");
                 }
-
-                /***************************************瀵煎叆鏃ュ織璁板綍****************************************************/
-                if (responseEntity != null && responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-                    failCount += 1;
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(importFloor.getFloorNum() + "鏍�");
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                    continue;
-                } else {
-                    successCount += 1;
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                }
-
-
-                if (savedFloorInfo == null) {
-                    continue;
-                }
-                importFloor.setFloorId(savedFloorInfo.getString("floorId"));
-                paramIn.clear();
-                //鍒ゆ柇鍗曞厓淇℃伅鏄惁宸茬粡瀛樺湪锛屽鏋滃瓨鍦ㄥ垯涓嶄繚瀛樻暟鎹畊nit.queryUnits
-                JSONObject savedUnitInfo = getExistsUnit(pd, result, importFloor);
-                if (savedUnitInfo != null) {
-                    importFloor.setUnitId(savedUnitInfo.getString("unitId"));
-                    continue;
-                }
-
-                apiUrl = "unit.saveUnit";
-
-                paramIn.put("communityId", result.getCommunityId());
-                paramIn.put("floorId", savedFloorInfo.getString("floorId"));
-                paramIn.put("unitNum", importFloor.getUnitNum());
-                paramIn.put("layerCount", importFloor.getLayerCount());
-                paramIn.put("lift", importFloor.getLift());
-                paramIn.put("unitArea", 1.00);
-                responseEntity = this.callCenterService(restTemplate, pd, paramIn.toJSONString(), apiUrl, HttpMethod.POST);
-                /****************************** 寮�濮嬭褰曞け璐ユ棩蹇� *******************************/
-                if (responseEntity != null && responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-                    assetImportLogDetailDto = new AssetImportLogDetailDto();
-                    assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                    if (Assert.isJsonObject(responseEntity.getBody())) {
-                        JSONObject paramOut = JSONObject.parseObject(responseEntity.getBody());
-                        assetImportLogDetailDto.setState(paramOut.getString("code"));
-                        assetImportLogDetailDto.setMessage(paramOut.getString("msg"));
-                    } else {
-                        assetImportLogDetailDto.setState("F");
-                        assetImportLogDetailDto.setMessage(responseEntity.getBody());
-                    }
-                    assetImportLogDetailDto.setObjName(importFloor.getFloorNum() + "鏍�" + importFloor.getUnitNum() + "鍗曞厓");
-                    assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                    failCount += 1;
-                    successCount = successCount > 0 ? successCount - 1 : successCount;
-                    assetImportLogDto.setSuccessCount(successCount);
-                    assetImportLogDto.setErrorCount(failCount);
-                } else {
-                    JSONObject body = JSONObject.parseObject(responseEntity.getBody());
-                    if (body.containsKey("code") && body.getIntValue("code") != 0) {
-                        assetImportLogDetailDto = new AssetImportLogDetailDto();
-                        assetImportLogDetailDto.setCommunityId(assetImportLogDto.getCommunityId());
-                        assetImportLogDetailDto.setState(body.getString("code"));
-                        assetImportLogDetailDto.setMessage(body.getString("msg"));
-                        assetImportLogDetailDto.setObjName(importFloor.getFloorNum() + "鏍�" + importFloor.getUnitNum() + "鍗曞厓");
-                        assetImportLogDetailDtos.add(assetImportLogDetailDto);
-                        failCount += 1;
-                        successCount = successCount > 0 ? successCount - 1 : successCount;
-                        assetImportLogDto.setSuccessCount(successCount);
-                        assetImportLogDto.setErrorCount(failCount);
-                    }
-                }
-                //灏唘nitId 鍒峰叆ImportFloor瀵硅薄
-                savedUnitInfo = getExistsUnit(pd, result, importFloor);
-                importFloor.setUnitId(savedUnitInfo.getString("unitId"));
-
-            }
-        } finally {
-            saveTransactionLogSMOImpl.saveAssetImportLog(assetImportLogDto);
-        }
-        return responseEntity;
-    }
-
-    private JSONObject getExistsUnit(IPageData pd, ComponentValidateResult result, ImportFloor importFloor) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "unit.queryUnits?communityId=" + result.getCommunityId()
-                + "&floorId=" + importFloor.getFloorId() + "&unitNum=" + importFloor.getUnitNum();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONArray savedFloorInfoResults = JSONArray.parseArray(responseEntity.getBody());
-
-        if (savedFloorInfoResults == null || savedFloorInfoResults.size() != 1) {
-            return null;
-        }
-
-        JSONObject savedUnitInfo = savedFloorInfoResults.getJSONObject(0);
-
-        return savedUnitInfo;
-    }
-
-    private JSONObject getExistsFloor(IPageData pd, ComponentValidateResult result, ImportFloor importFloor) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "floor.queryFloors?page=1&row=1&communityId=" + result.getCommunityId() + "&floorNum=" + importFloor.getFloorNum();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedFloorInfoResult = JSONObject.parseObject(responseEntity.getBody());
-
-        if (!savedFloorInfoResult.containsKey("apiFloorDataVoList") || savedFloorInfoResult.getJSONArray("apiFloorDataVoList").size() != 1) {
-            return null;
-        }
-
-        JSONObject savedFloorInfo = savedFloorInfoResult.getJSONArray("apiFloorDataVoList").getJSONObject(0);
-
-        return savedFloorInfo;
-    }
-
-    /**
-     * 鏌ヨ瀛樺湪鐨勪笟涓�
-     *
-     * @param pd
-     * @param result
-     * @param importOwner
-     * @return
-     */
-    private JSONObject getExistsOwner(IPageData pd, ComponentValidateResult result, ImportOwner importOwner) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "owner.queryOwners?page=1&row=1&communityId=" + result.getCommunityId()
-                + "&ownerTypeCd=" + importOwner.getOwnerTypeCd() + "&name=" + importOwner.getOwnerName() + "&link=" + importOwner.getTel();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedOwnerInfoResult = JSONObject.parseObject(responseEntity.getBody());
-
-        if (!savedOwnerInfoResult.containsKey("owners") || savedOwnerInfoResult.getJSONArray("owners").size() != 1) {
-            return null;
-        }
-
-        JSONObject savedOwnerInfo = savedOwnerInfoResult.getJSONArray("owners").getJSONObject(0);
-
-        return savedOwnerInfo;
-    }
-
-    /**
-     * 鏌ヨ瀛樺湪鐨勫仠杞﹀満
-     *
-     * @param pd
-     * @param result
-     * @param parkingSpace
-     * @return
-     */
-    private JSONObject getExistsParkingArea(IPageData pd, ComponentValidateResult result, ImportParkingSpace parkingSpace) {
-        String apiUrl = "";
-        ResponseEntity<String> responseEntity = null;
-        apiUrl = "parkingArea.listParkingAreas?page=1&row=1&communityId=" + result.getCommunityId()
-                + "&num=" + parkingSpace.getPaNum();
-        responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET);
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) { //璺宠繃 淇濆瓨鍗曞厓淇℃伅
-            return null;
-        }
-
-        JSONObject savedParkingAreaInfoResult = JSONObject.parseObject(responseEntity.getBody());
-
-        if (!savedParkingAreaInfoResult.containsKey("parkingAreas") || savedParkingAreaInfoResult.getJSONArray("parkingAreas").size() != 1) {
-            return null;
-        }
-
-        JSONObject savedParkingAreaInfo = savedParkingAreaInfoResult.getJSONArray("parkingAreas").getJSONObject(0);
-
-        return savedParkingAreaInfo;
-    }
-
-    /**
-     * 鏁版嵁鏍¢獙澶勭悊
-     *
-     * @param floors
-     * @param owners
-     * @param rooms
-     * @param parkingSpaces
-     */
-    private void importExcelDataValidate(List<ImportFloor> floors, List<ImportOwner> owners, List<ImportRoom> rooms, List<ImportFee> fees, List<ImportParkingSpace> parkingSpaces) {
-
-    }
-
-    /**
-     * 鑾峰彇杞︿綅淇℃伅
-     *
-     * @param workbook
-     * @param parkingSpaces
-     */
-    private void getParkingSpaces(Workbook workbook, List<ImportParkingSpace> parkingSpaces, List<ImportOwner> owners) {
-        Sheet sheet = null;
-        sheet = ImportExcelUtils.getSheet(workbook, "杞︿綅淇℃伅");
-        List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet);
-        ImportParkingSpace importParkingSpace = null;
-        for (int osIndex = 0; osIndex < oList.size(); osIndex++) {
-            Object[] os = oList.get(osIndex);
-            if (osIndex == 0) { // 绗竴琛屾槸 澶撮儴淇℃伅 鐩存帴璺宠繃
-                continue;
-            }
-            if (StringUtil.isNullOrNone(os[0])) {
-                continue;
-            }
-            Assert.hasValue(os[0], "杞︿綅淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屽仠杞﹀満缂栧彿涓虹┖");
-            Assert.hasValue(os[1], "杞︿綅淇℃伅閫夐」涓�" + (osIndex + 1) + "琛岃溅浣嶇紪鐮佷负绌�");
-            Assert.hasValue(os[2], "杞︿綅淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屽仠杞﹀満绫诲瀷涓虹┖");
-            Assert.hasValue(os[3], "杞︿綅淇℃伅閫夐」涓�" + (osIndex + 1) + "琛岄潰绉负绌猴紝娌℃湁璇峰~鍐欒瀹氬�� 濡�10");
-            importParkingSpace = new ImportParkingSpace();
-            importParkingSpace.setPaNum(os[0].toString());
-            importParkingSpace.setPsNum(os[1].toString());
-            importParkingSpace.setTypeCd(os[2].toString());
-            importParkingSpace.setArea(Double.parseDouble(os[3].toString()));
-            if (os.length < 5 || StringUtil.isNullOrNone(os[4])) {
-                parkingSpaces.add(importParkingSpace);
-                continue;
-            }
-            ImportOwner importOwner = getImportOwner(owners, os[4].toString());
-            importParkingSpace.setImportOwner(importOwner);
-            if (importOwner != null) {
-                importParkingSpace.setCarNum(os[5].toString());
-                importParkingSpace.setCarBrand(os[6].toString());
-                importParkingSpace.setCarType(os[7].toString());
-                importParkingSpace.setCarColor(os[8].toString());
-                importParkingSpace.setSellOrHire(os[9].toString());
-
-                String startTime = excelDoubleToDate(os[10].toString());
-                String endTime = excelDoubleToDate(os[11].toString());
-                Assert.isDate(startTime, DateUtil.DATE_FORMATE_STRING_B, (osIndex + 1) + "琛屽紑濮嬫椂闂存牸寮忛敊璇� 璇峰~鍐橸YYY-MM-DD 鏂囨湰鏍煎紡");
-                Assert.isDate(endTime, DateUtil.DATE_FORMATE_STRING_B, (osIndex + 1) + "琛岀粨鏉熸椂闂存牸寮忛敊璇� 璇峰~鍐橸YYY-MM-DD 鏂囨湰鏍煎紡");
-                importParkingSpace.setStartTime(startTime);
-                importParkingSpace.setEndTime(endTime);
-            }
-
-            parkingSpaces.add(importParkingSpace);
-        }
-    }
-
-    //瑙f瀽Excel鏃ユ湡鏍煎紡
-    public static String excelDoubleToDate(String strDate) {
-        if (strDate.length() == 5) {
-            try {
-                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-                Date tDate = DoubleToDate(Double.parseDouble(strDate));
-                return sdf.format(tDate);
-            } catch (Exception e) {
-                e.printStackTrace();
-                return strDate;
-            }
-        }
-        return strDate;
-    }
-
-
-    //瑙f瀽Excel鏃ユ湡鏍煎紡
-    public static Date DoubleToDate(Double dVal) {
-        Date tDate = new Date();
-        long localOffset = tDate.getTimezoneOffset() * 60000; //绯荤粺鏃跺尯鍋忕Щ 1900/1/1 鍒� 1970/1/1 鐨� 25569 澶�
-        tDate.setTime((long) ((dVal - 25569) * 24 * 3600 * 1000 + localOffset));
-
-        return tDate;
-    }
-
-    /**
-     * 鑾峰彇 鎴垮眿淇℃伅
-     *
-     * @param workbook
-     * @param rooms
-     */
-    private void getRooms(Workbook workbook, List<ImportRoom> rooms,
-                          List<ImportFloor> floors, List<ImportOwner> owners) {
-        Sheet sheet = null;
-        sheet = ImportExcelUtils.getSheet(workbook, "鎴垮眿淇℃伅");
-        List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet);
-        ImportRoom importRoom = null;
-        for (int osIndex = 0; osIndex < oList.size(); osIndex++) {
-            try {
-                Object[] os = oList.get(osIndex);
-                if (osIndex == 0) { // 绗竴琛屾槸 澶撮儴淇℃伅 鐩存帴璺宠繃
-                    continue;
-                }
-                if (StringUtil.isNullOrNone(os[0])) {
-                    continue;
-                }
-                Assert.hasValue(os[1], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屾ゼ鏍嬬紪鍙蜂负绌�");
-                Assert.hasValue(os[2], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屽崟鍏冪紪鍙蜂负绌�");
-                Assert.hasValue(os[3], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屾埧灞嬫ゼ灞備负绌�");
-                Assert.hasValue(os[4], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屾埧灞嬫埛鍨嬩负绌�");
-                Assert.hasValue(os[5], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屽缓绛戦潰绉负绌�");
-                if (os.length > 6 && !StringUtil.isNullOrNone(os[6])) {
-                    Assert.hasValue(os[7], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屾埧灞嬭垂鐢ㄤ负绌�");
-                    Assert.hasValue(os[8], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛岃垂鐢ㄥ埌鏈熸椂闂翠负绌�");
-                }
-                Assert.hasValue(os[9], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屾埧灞嬬被鍨嬩负绌�");
-                Assert.hasValue(os[10], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屽鍐呴潰绉负绌�");
-                Assert.hasValue(os[11], "鎴垮眿淇℃伅閫夐」涓�" + (osIndex + 1) + "琛岀閲戜负绌�");
-                importRoom = new ImportRoom();
-                importRoom.setRoomNum(os[0].toString());
-                importRoom.setFloor(getImportFloor(floors, os[1].toString(), os[2].toString()));
-                importRoom.setLayer(Integer.parseInt(os[3].toString()));
-                importRoom.setSection(os[4].toString());
-                importRoom.setBuiltUpArea(Double.parseDouble(os[5].toString()));
-                importRoom.setRoomSubType(os[9].toString());
-                importRoom.setRoomArea(os[10].toString());
-                importRoom.setRoomRent(os[11].toString());
-
-
-                if (os.length > 6 && !StringUtil.isNullOrNone(os[6])) {
-                    importRoom.setRoomFeeId(os[7].toString());
-                    String feeEndDate = excelDoubleToDate(os[8].toString());
-                    importRoom.setFeeEndDate(feeEndDate);
-                }
-                if (os.length < 7 || StringUtil.isNullOrNone(os[6])) {
-                    rooms.add(importRoom);
-                    continue;
-                }
-                importRoom.setImportOwner(getImportOwner(owners, os[6].toString()));
-                rooms.add(importRoom);
-            } catch (Exception e) {
-                logger.error("鎴垮眿鏁版嵁鏍¢獙澶辫触", e);
-                throw new IllegalArgumentException("鎴垮眿淇℃伅sheet涓" + (osIndex + 1) + "琛屾暟鎹敊璇紝璇锋鏌�" + e.getLocalizedMessage());
-            }
-        }
-    }
-
-    /**
-     * 鑾峰彇 鎴垮眿淇℃伅
-     *
-     * @param workbook
-     * @param importFees
-     */
-    private void getFee(Workbook workbook, List<ImportFee> importFees) {
-        Sheet sheet = null;
-        sheet = ImportExcelUtils.getSheet(workbook, "璐圭敤璁剧疆");
-        List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet);
-        ImportFee importFee = null;
-        for (int osIndex = 0; osIndex < oList.size(); osIndex++) {
-            Object[] os = oList.get(osIndex);
-            if (osIndex == 0) { // 绗竴琛屾槸 澶撮儴淇℃伅 鐩存帴璺宠繃
-                continue;
-            }
-            if (StringUtil.isNullOrNone(os[0])) {
-                continue;
-            }
-            Assert.hasValue(os[0], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃垂鐢ㄧ紪鍙蜂负绌�");
-            Assert.hasValue(os[1], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃垂鐢ㄧ被鍨嬩负绌�");
-            Assert.hasValue(os[2], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛屾敹璐归」鐩负绌�");
-            Assert.hasValue(os[3], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃垂鐢ㄦ爣璇嗕负绌�");
-            Assert.hasValue(os[4], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃垂鐢ㄧ被鍨嬩负绌�");
-            Assert.hasValue(os[5], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岀即璐瑰懆鏈熶负绌�");
-            Assert.isInteger(os[5].toString(), "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岀即璐瑰懆鏈熶笉鏄鏁存暟");
-            Assert.hasValue(os[6], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛屽嚭璐︾被鍨嬩负绌�");
-            Assert.isDate(os[7].toString(), DateUtil.DATE_FORMATE_STRING_B, "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃璐硅捣濮嬫椂闂翠笉鏄湁鏁堟椂闂存牸寮� 璇疯緭鍏ョ被浼�2020-06-01");
-            Assert.isDate(os[8].toString(), DateUtil.DATE_FORMATE_STRING_B, "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃璐圭粓姝㈡椂闂翠笉鏄湁鏁堟椂闂存牸寮� 璇疯緭鍏ョ被浼�2037-01-01");
-            Assert.hasValue(os[9], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃绠楀叕寮忎负绌�");
-            if (!"1001".equals(os[9].toString()) && !"2002".equals(os[9].toString())) {
-                throw new IllegalArgumentException("璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃绠楀叕寮忛敊璇� 璇峰~鍐�1001 鎴栬��2002");
-            }
-            Assert.hasValue(os[10], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛岃璐瑰崟浠蜂负绌�");
-            Assert.hasValue(os[11], "璐圭敤璁剧疆閫夐」涓�" + (osIndex + 1) + "琛屽浐瀹氳垂鐢ㄤ负绌�");
-            importFee = new ImportFee();
-            importFee.setId(os[0].toString());
-            importFee.setFeeTypeCd("鐗╀笟璐�".equals(os[1]) ? "888800010001" : "888800010002");
-            importFee.setFeeName(os[2].toString());
-            importFee.setFeeFlag("鍛ㄦ湡鎬ц垂鐢�".equals(os[3]) ? "1003006" : "2006012");
-            importFee.setPaymentCd("棰勪粯璐�".equals(os[4]) ? "1200" : "2100");
-            String billType = "";
-            if ("姣忓勾1鏈�1鏃�".equals(os[6])) {
-                billType = "001";
-            } else if ("姣忔湀1鏃�".equals(os[6])) {
-                billType = "002";
-            } else if ("姣忔棩".equals(os[6])) {
-                billType = "003";
-            } else {
-                billType = "004";
-            }
-            importFee.setBillType(billType);
-            importFee.setPaymentCycle(os[5].toString());
-            importFee.setStartTime(os[7].toString());
-            importFee.setEndTime(os[8].toString());
-            importFee.setComputingFormula(os[9].toString());
-            importFee.setSquarePrice(os[10].toString());
-            importFee.setAdditionalAmount(os[11].toString());
-            importFees.add(importFee);
-        }
-    }
-
-    /**
-     * 浠庡鍏ョ殑涓氫富淇℃伅涓幏鍙栦笟涓伙紝濡傛灉娌℃湁杩斿洖 null
-     *
-     * @param owners
-     * @param ownerNum
-     * @return
-     */
-    private ImportOwner getImportOwner(List<ImportOwner> owners, String ownerNum) {
-        for (ImportOwner importOwner : owners) {
-            if (ownerNum.equals(importOwner.getOwnerNum())) {
-                return importOwner;
+                assetImportLogDetailPos = new ArrayList<>();
             }
         }
 
-        return null;
-
-    }
-
-    /**
-     * get 瀵煎叆妤兼爧淇℃伅
-     *
-     * @param floors
-     */
-    private ImportFloor getImportFloor(List<ImportFloor> floors, String floorNum, String unitNum) {
-        for (ImportFloor importFloor : floors) {
-            if (floorNum.equals(importFloor.getFloorNum())
-                    && unitNum.equals(importFloor.getUnitNum())) {
-                return importFloor;
+        if (assetImportLogDetailPos.size() > 0) {
+            flag = assetImportLogDetailInnerServiceSMOImpl.saveAssetImportLogDetails(assetImportLogDetailPos);
+            if (flag < 1) {
+                throw new IllegalArgumentException("淇濆瓨澶辫触");
             }
         }
 
-        throw new IllegalArgumentException("鍦ㄦゼ鏍嬪崟鍏僺heet涓湭鎵惧埌妤兼爧缂栧彿[" + floorNum + "],鍗曞厓缂栧彿[" + unitNum + "]鏁版嵁");
-    }
-
-    /**
-     * 鑾峰彇涓氫富淇℃伅
-     *
-     * @param workbook
-     * @param owners
-     */
-    private void getOwners(Workbook workbook, List<ImportOwner> owners) {
-        Sheet sheet = null;
-        sheet = ImportExcelUtils.getSheet(workbook, "涓氫富淇℃伅");
-        List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet);
-        ImportOwner importOwner = null;
-        for (int osIndex = 0; osIndex < oList.size(); osIndex++) {
-            try {
-                Object[] os = oList.get(osIndex);
-                if (osIndex == 0) { // 绗竴琛屾槸 澶撮儴淇℃伅 鐩存帴璺宠繃
-                    continue;
-                }
-                if (StringUtil.isNullOrNone(os[0])) {
-                    continue;
-                }
-                Assert.hasValue(os[0], "涓氫富淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屼笟涓荤紪鍙蜂负绌�");
-                Assert.hasValue(os[1], "涓氫富淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屼笟涓诲悕绉颁负绌�");
-                Assert.hasValue(os[2], "涓氫富淇℃伅閫夐」涓�" + (osIndex + 1) + "琛屼笟涓绘�у埆涓虹┖");
-                String tel = StringUtil.isNullOrNone(os[4]) ? "19999999999" : os[4].toString();
-                String idCard = StringUtil.isNullOrNone(os[5]) ? "10000000000000000001" : os[5].toString();
-                String ownerTypeCd = StringUtil.isNullOrNone(os[6]) ? "1001" : os[6].toString();
-                String parentOwnerId = StringUtil.isNullOrNone(os[7]) ? os[0].toString() : os[7].toString();
-
-                if (os[4].toString().length() > 11) {
-                    throw new IllegalArgumentException(os[1].toString() + " 鐨勬墜鏈哄彿瓒呰繃11浣�,璇锋牳瀹�");
-                }
-                if (os[5].toString().length() > 18) {
-                    throw new IllegalArgumentException(os[1].toString() + " 鐨勮韩浠借瘉瓒呰繃18浣�,璇锋牳瀹�");
-                }
-
-                String age = StringUtil.isNullOrNone(os[3]) ? CommonUtil.getAgeByCertId(idCard) : os[3].toString();
-                importOwner = new ImportOwner();
-                importOwner.setOwnerNum(os[0].toString());
-                importOwner.setOwnerName(os[1].toString());
-                importOwner.setSex("鐢�".equals(os[2].toString()) ? "0" : "1");
-                importOwner.setAge(Integer.parseInt(age));
-                importOwner.setTel(tel);
-                importOwner.setIdCard(idCard);
-                importOwner.setOwnerTypeCd(ownerTypeCd);
-                importOwner.setParentOwnerId(parentOwnerId);
-                owners.add(importOwner);
-            } catch (Exception e) {
-                logger.error("绗�" + (osIndex + 1) + "琛屾暟鎹嚭鐜伴棶棰�", e);
-                throw new IllegalArgumentException("绗�" + (osIndex + 1) + "琛屾暟鎹嚭鐜伴棶棰�" + e.getLocalizedMessage(), e);
-            }
+        // todo 璋冪敤 瀵煎叆闃熷垪寮�濮嬪鍏�
+        flag = userImportDataV1InnerServiceSMOImpl.importExcelData(assetImportLogPo);
+        if (flag > 0) {
+            return ResultVo.createResponseEntity(assetImportLogPo);
         }
-    }
-
-    /**
-     * 鑾峰彇灏忓尯
-     *
-     * @param workbook
-     * @param floors
-     */
-    private void getFloors(Workbook workbook, List<ImportFloor> floors) {
-        Sheet sheet = null;
-        sheet = ImportExcelUtils.getSheet(workbook, "妤兼爧鍗曞厓");
-        List<Object[]> oList = ImportExcelUtils.listFromSheet(sheet);
-        ImportFloor importFloor = null;
-        for (int osIndex = 0; osIndex < oList.size(); osIndex++) {
-            Object[] os = oList.get(osIndex);
-            if (osIndex == 0) { // 绗竴琛屾槸 澶撮儴淇℃伅 鐩存帴璺宠繃
-                continue;
-            }
-
-            if (StringUtil.isNullOrNone(os[0])) {
-                continue;
-            }
-
-            Assert.hasValue(os[0], "妤兼爧鍗曞厓閫夐」涓�" + (osIndex + 1) + "琛屾ゼ鏍嬪彿涓虹┖");
-            Assert.hasValue(os[1], "妤兼爧鍗曞厓閫夐」涓�" + (osIndex + 1) + "琛屽崟鍏冪紪鍙蜂负绌�");
-            Assert.hasValue(os[2], "妤兼爧鍗曞厓閫夐」涓�" + (osIndex + 1) + "琛屾�绘ゼ灞備负绌�");
-            Assert.hasValue(os[3], "妤兼爧鍗曞厓閫夐」涓�" + (osIndex + 1) + "琛屾槸鍚︽湁鐢垫涓虹┖");
-            importFloor = new ImportFloor();
-            importFloor.setFloorNum(os[0].toString());
-            importFloor.setUnitNum(os[1].toString());
-            importFloor.setLayerCount(os[2].toString());
-            importFloor.setLift("鏈�".equals(os[3].toString()) ? "1010" : "2020");
-            floors.add(importFloor);
-        }
+        return ResultVo.error("瀵煎叆澶辫触");
     }
 
 
-    public RestTemplate getRestTemplate() {
-        return restTemplate;
-    }
-
-    public void setRestTemplate(RestTemplate restTemplate) {
-        this.restTemplate = restTemplate;
-    }
 }

--
Gitblit v1.8.0