From 5bdf555469ad4cae4059f23dbb1692b9b0336350 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 15 May 2024 10:47:45 +0800
Subject: [PATCH] 住户导入调整

---
 src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java |   17 ++++++++++++++---
 1 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
index 51e959c..905645a 100644
--- a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
+++ b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
@@ -313,9 +313,12 @@
 	 * @param isCovered
 	 */
 	@Override
-//	@Transactional(rollbackFor = Exception.class)
-	public void importUserHouseHold(List<ImportHouseholdExcel> data, Boolean isCovered) {
+	@Transactional(rollbackFor = Exception.class)
+	public String importUserHouseHold(List<ImportHouseholdExcel> data, Boolean isCovered) {
 		IHouseService houseService = SpringUtils.getBean(IHouseService.class);
+		int totalNum = data.size();
+		int importNum = 0;
+		int updateNum = 0;
 		int errorNum = 0;
 		for (ImportHouseholdExcel houseHoldExcel : data) {
 			HouseholdEntity householdEntity = Objects.requireNonNull(BeanUtil.copy(houseHoldExcel, HouseholdEntity.class));
@@ -395,22 +398,30 @@
 			if (one==null){
 				// 新增
 				this.save(householdEntity);
+				importNum++;
 				// 处理标签
 				handleLabel(householdEntity,houseHoldExcel);
 			}else {
+				updateNum++;
 				if (isCovered){
 					// 覆盖更新
 					householdEntity.setId(one.getId());
 					// 更新
 					updateById(householdEntity);
+					importNum++;
 					// 处理标签
 					handleLabel(householdEntity,houseHoldExcel);
 				}
 			}
 		}
+		StringBuilder builder = new StringBuilder("导入完成!");
+		builder.append("其中本次表格共有 ").append(totalNum).append(" 条数据,")
+			.append("成功导入 ").append(importNum).append(" 条数据,")
+			.append("其中有 ").append(updateNum).append(" 条数据已存在。");
 		if (errorNum>0){
-			throw new ServiceException("导入完成,其中共有 " + errorNum + " 条数据由于无姓名或手机号信息未导入!");
+			builder.append("共有 ").append(errorNum).append(" 条数据由于无姓名或手机号信息未导入!");
 		}
+		return builder.toString();
 	}
 
 	/**

--
Gitblit v1.9.3