From e50d20a68f9221f9c263929d8262c04b4bec164a Mon Sep 17 00:00:00 2001 From: "583641232@qq.com" <583641232@qq.com> Date: Tue, 30 Jul 2024 10:54:32 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=204=E6=A8=A1=E5=9D=97=E5=90=88?= =?UTF-8?q?=E5=B9=B6=E5=8D=95=E5=85=83=E6=A0=BC=EF=BC=8C=E5=A4=9A=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E8=A1=A8=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datacenter/CarInfoController.java | 9 ++++--- .../datacenter/PublicFamilyController.java | 10 ++++--- .../datacenter/RealEstateController.java | 27 +++---------------- .../TransactionPartnerController.java | 9 ++++--- .../service/ImportService.java | 3 +++ .../service/impl/ImportServiceImpl.java | 15 ++++++----- 6 files changed, 34 insertions(+), 39 deletions(-) diff --git a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/CarInfoController.java b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/CarInfoController.java index 317535b..3ea6e06 100644 --- a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/CarInfoController.java +++ b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/CarInfoController.java @@ -2,6 +2,7 @@ package com.inscloudtech.web.controller.datacenter; import cn.hutool.core.collection.CollectionUtil; import com.inscloudtech.analysiscenter.domain.AnalysisDto; +import com.inscloudtech.bankStatementAnalysis.service.ImportService; import com.inscloudtech.common.annotation.Log; import com.inscloudtech.common.annotation.UpdateLog; import com.inscloudtech.common.core.controller.BaseController; @@ -13,6 +14,7 @@ import com.inscloudtech.common.excel.ExcelResult; import com.inscloudtech.common.utils.BeanCopyUtils; import com.inscloudtech.common.utils.poi.ExcelUtil; import com.inscloudtech.datacenter.domain.CarInfo; +import com.inscloudtech.datacenter.domain.PublicFamily; import com.inscloudtech.datacenter.mapper.CarInfoMapper; import com.inscloudtech.datacenter.service.ICarInfoService; import com.inscloudtech.system.service.ISysOssService; @@ -38,8 +40,8 @@ import java.util.*; public class CarInfoController extends BaseController { private final ICarInfoService iCarInfoService; - private final ISysOssService iSysOssService; + private final ImportService importService; //"保存至分析成果") @PostMapping("/save2AnalysisResult") @@ -134,8 +136,9 @@ public class CarInfoController extends BaseController { String importResultStr = ""; int importCount = 0; try { - ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), CarInfo.class, true); - List list = excelResult.getList(); + List list = importService.importMergeExcel(file, CarInfo.class,"车牌号"); +// ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), CarInfo.class, true); +// List list = excelResult.getList(); if(CollectionUtil.isNotEmpty(list)){ list = iCarInfoService.dataTrimAndDeduplication(list,caseId,getUsername()); result = iCarInfoService.importData(list,caseId,null); diff --git a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/PublicFamilyController.java b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/PublicFamilyController.java index 633341c..d4cb482 100644 --- a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/PublicFamilyController.java +++ b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/PublicFamilyController.java @@ -2,6 +2,7 @@ package com.inscloudtech.web.controller.datacenter; import cn.hutool.core.collection.CollectionUtil; import com.inscloudtech.analysiscenter.domain.AnalysisDto; +import com.inscloudtech.bankStatementAnalysis.service.ImportService; import com.inscloudtech.common.annotation.Log; import com.inscloudtech.common.annotation.UpdateLog; import com.inscloudtech.common.core.controller.BaseController; @@ -13,6 +14,7 @@ import com.inscloudtech.common.excel.ExcelResult; import com.inscloudtech.common.utils.BeanCopyUtils; import com.inscloudtech.common.utils.poi.ExcelUtil; import com.inscloudtech.datacenter.domain.PublicFamily; +import com.inscloudtech.datacenter.domain.TransactionPartner; import com.inscloudtech.datacenter.mapper.PublicFamilyMapper; import com.inscloudtech.datacenter.service.IPublicFamilyService; import com.inscloudtech.system.service.ISysOssService; @@ -40,8 +42,8 @@ import java.util.*; public class PublicFamilyController extends BaseController { private final IPublicFamilyService iPublicFamilyService; - private final ISysOssService iSysOssService; + private final ImportService importService; //"保存至分析成果") @PostMapping("/save2AnalysisResult") @@ -144,8 +146,10 @@ public class PublicFamilyController extends BaseController { String importResultStr = ""; int importCount = 0; try { - ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), PublicFamily.class, true); - List list = excelResult.getList(); + List list = importService.importMergeExcel(file, PublicFamily.class,"企业名字"); + +// ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), PublicFamily.class, true); +// List list = excelResult.getList(); if(CollectionUtil.isNotEmpty(list)){ list = iPublicFamilyService.dataTrimAndDeduplication(list,caseId,getUsername()); result = iPublicFamilyService.importData(list,caseId,null); diff --git a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/RealEstateController.java b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/RealEstateController.java index 6da2c1d..3b8949f 100644 --- a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/RealEstateController.java +++ b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/RealEstateController.java @@ -10,6 +10,7 @@ import com.aspose.cells.Workbook; import com.aspose.cells.Worksheet; import com.inscloudtech.analysiscenter.domain.AnalysisDto; import com.inscloudtech.bankStatementAnalysis.helper.HelperUtil; +import com.inscloudtech.bankStatementAnalysis.service.ImportService; import com.inscloudtech.bankStatementAnalysis.util.AsposeUtil; import com.inscloudtech.common.annotation.Log; import com.inscloudtech.common.annotation.UpdateLog; @@ -56,8 +57,9 @@ import java.util.*; public class RealEstateController extends BaseController { private final IRealEstateService iRealEstateService; - private final ISysOssService iSysOssService; + private final ImportService importService; + //"保存至分析成果") @PostMapping("/save2AnalysisResult") @@ -82,28 +84,7 @@ public class RealEstateController extends BaseController { String importResultStr = ""; int importCount = 0; try { - - // 获取文件名和扩展名 - String suffix = FileUtil.getSuffix(file.getOriginalFilename()); - // 创建临时文件 - Path tempFilePath = Files.createTempFile("temp", "." + suffix); - File tempFile = tempFilePath.toFile(); - // 写入文件内容 - try (InputStream inputStream = file.getInputStream()) { - Files.copy(inputStream, tempFilePath, StandardCopyOption.REPLACE_EXISTING); - } - Workbook wb = new Workbook(tempFile.getAbsolutePath()); - List list = new ArrayList<>(); - int count = wb.getWorksheets().getCount(); - for (int sheetNo = 0; sheetNo < count; sheetNo++) { - Worksheet worksheet = wb.getWorksheets().get(sheetNo); - Cells cells = worksheet.getCells(); - Cell flagCell = AsposeUtil.getCell(cells, "房产地址"); - Integer headRowNumber = flagCell.getRow() + 1; - ImportExcelHelper helper = new ImportExcelHelper<>(); - List tempList = helper.getListWithInputStream(file.getInputStream(), RealEstate.class, sheetNo, headRowNumber); - list.addAll(tempList); - } + List list = importService.importMergeExcel(file, RealEstate.class,"房产地址"); // ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), RealEstate.class, true); // List list = excelResult.getList(); if(CollectionUtil.isNotEmpty(list)){ diff --git a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/TransactionPartnerController.java b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/TransactionPartnerController.java index 3346c49..29ba5d3 100644 --- a/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/TransactionPartnerController.java +++ b/cas-admin/src/main/java/com/inscloudtech/web/controller/datacenter/TransactionPartnerController.java @@ -2,6 +2,7 @@ package com.inscloudtech.web.controller.datacenter; import cn.hutool.core.collection.CollectionUtil; import com.inscloudtech.analysiscenter.domain.AnalysisDto; +import com.inscloudtech.bankStatementAnalysis.service.ImportService; import com.inscloudtech.common.annotation.UpdateLog; import com.inscloudtech.common.core.controller.BaseController; import com.inscloudtech.common.core.domain.PageQuery; @@ -10,6 +11,7 @@ import com.inscloudtech.common.core.page.TableDataInfo; import com.inscloudtech.common.excel.ExcelResult; import com.inscloudtech.common.utils.BeanCopyUtils; import com.inscloudtech.common.utils.poi.ExcelUtil; +import com.inscloudtech.datacenter.domain.RealEstate; import com.inscloudtech.datacenter.domain.TransactionPartner; import com.inscloudtech.datacenter.mapper.TransactionPartnerMapper; import com.inscloudtech.datacenter.service.ITransactionPartnerService; @@ -40,8 +42,8 @@ import java.util.*; public class TransactionPartnerController extends BaseController { private final ITransactionPartnerService iTransactionPartnerService; - private final ISysOssService iSysOssService; + private final ImportService importService; //"保存至分析成果") @PostMapping("/save2AnalysisResult") @@ -99,8 +101,9 @@ public class TransactionPartnerController extends BaseController { String importResultStr = ""; int importCount = 0; try { - ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), TransactionPartner.class, true); - List list = excelResult.getList(); + List list = importService.importMergeExcel(file, TransactionPartner.class,"客商名称"); +// ExcelResult excelResult = ExcelUtil.importExcel(file.getInputStream(), TransactionPartner.class, true); +// List list = excelResult.getList(); if(CollectionUtil.isNotEmpty(list)){ result = iTransactionPartnerService.importAnalysisResult(list,analysisResultId,getUsername()); importCount = list.size(); diff --git a/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/ImportService.java b/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/ImportService.java index ae3e1d9..ddacd20 100644 --- a/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/ImportService.java +++ b/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/ImportService.java @@ -5,6 +5,7 @@ import com.inscloudtech.bankStatementAnalysis.domain.ReadDto; import com.inscloudtech.datacenter.domain.BankStatement; import com.inscloudtech.datacenter.domain.OpeningAccountInfo; import org.dromara.easyes.core.core.BaseEsMapper; +import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.util.List; @@ -34,4 +35,6 @@ public interface ImportService{ void setIdCardAndCardNumberByCardHolderName(Map> oaiMap, String cardHolderName, BankStatement bs); void setIdCardAndPhoneByCardNumber(Map> oaiMap, String cardNumber, BankStatement bs); + + List importMergeExcel(MultipartFile file, Class clazz, String headFieldValue); } diff --git a/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/impl/ImportServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/impl/ImportServiceImpl.java index 507bf3f..37ddbf9 100644 --- a/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/impl/ImportServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/bankStatementAnalysis/service/impl/ImportServiceImpl.java @@ -380,10 +380,10 @@ public class ImportServiceImpl implements ImportService { String CarNumberVerify = "^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$"; @SneakyThrows - void aaa(MultipartFile file){ - // 获取文件名和扩展名 + @Override + public List importMergeExcel(MultipartFile file, Class clazz,String headFieldValue){ + // // 创建临时文件 获取文件名和扩展名 String suffix = FileUtil.getSuffix(file.getOriginalFilename()); - // 创建临时文件 Path tempFilePath = Files.createTempFile("temp", "." + suffix); File tempFile = tempFilePath.toFile(); // 写入文件内容 @@ -391,17 +391,18 @@ public class ImportServiceImpl implements ImportService { Files.copy(inputStream, tempFilePath, StandardCopyOption.REPLACE_EXISTING); } Workbook wb = new Workbook(tempFile.getAbsolutePath()); - List list = new ArrayList<>(); + List list = new ArrayList<>(); int count = wb.getWorksheets().getCount(); for (int sheetNo = 0; sheetNo < count; sheetNo++) { Worksheet worksheet = wb.getWorksheets().get(sheetNo); Cells cells = worksheet.getCells(); - Cell flagCell = AsposeUtil.getCell(cells, "房产地址"); + Cell flagCell = AsposeUtil.getCell(cells, headFieldValue); Integer headRowNumber = flagCell.getRow() + 1; - ImportExcelHelper helper = new ImportExcelHelper<>(); - List tempList = helper.getListWithInputStream(file.getInputStream(), RealEstate.class, sheetNo, headRowNumber); + ImportExcelHelper helper = new ImportExcelHelper<>(); + List tempList = helper.getListWithInputStream(file.getInputStream(), clazz, sheetNo, headRowNumber); list.addAll(tempList); } + return list; }