From dde162ffb34f2cc0ece4ca9cfcd09e2cb42ace6d Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 17 May 2024 18:13:11 +0800
Subject: [PATCH] 租户导入导出
---
src/main/java/org/springblade/modules/house/service/impl/HouseTenantServiceImpl.java | 74 +++++++++++++++++++++++++++++++++---
1 files changed, 67 insertions(+), 7 deletions(-)
diff --git a/src/main/java/org/springblade/modules/house/service/impl/HouseTenantServiceImpl.java b/src/main/java/org/springblade/modules/house/service/impl/HouseTenantServiceImpl.java
index 7215c76..b370382 100644
--- a/src/main/java/org/springblade/modules/house/service/impl/HouseTenantServiceImpl.java
+++ b/src/main/java/org/springblade/modules/house/service/impl/HouseTenantServiceImpl.java
@@ -16,14 +16,25 @@
*/
package org.springblade.modules.house.service.impl;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springblade.modules.house.entity.HouseTenantEntity;
-import org.springblade.modules.house.vo.HouseTenantVO;
-import org.springblade.modules.house.mapper.HouseTenantMapper;
-import org.springblade.modules.house.service.IHouseTenantService;
-import org.springblade.core.mp.base.BaseServiceImpl;
-import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.logging.log4j.util.Strings;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.house.entity.HouseRentalEntity;
+import org.springblade.modules.house.entity.HouseTenantEntity;
+import org.springblade.modules.house.excel.ExportHouseTenantExcel;
+import org.springblade.modules.house.excel.HouseTenantExcel;
+import org.springblade.modules.house.mapper.HouseTenantMapper;
+import org.springblade.modules.house.service.IHouseRentalService;
+import org.springblade.modules.house.service.IHouseTenantService;
+import org.springblade.modules.house.vo.HouseTenantVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
/**
* 租户管理 服务实现类
@@ -34,6 +45,9 @@
@Service
public class HouseTenantServiceImpl extends ServiceImpl<HouseTenantMapper, HouseTenantEntity> implements IHouseTenantService {
+ @Autowired
+ private IHouseRentalService iHouseRentalService;
+
@Override
public IPage<HouseTenantVO> selectHouseTenantPage(IPage<HouseTenantVO> page, HouseTenantVO houseTenant) {
return page.setRecords(baseMapper.selectHouseTenantPage(page, houseTenant));
@@ -41,6 +55,7 @@
/**
* 根据租房id删除租户信息
+ *
* @param id
* @return
*/
@@ -48,4 +63,49 @@
public int removeByHousingRentalId(Long id) {
return baseMapper.removeByHousingRentalId(id);
}
+
+ /**
+ * 导出租客
+ *
+ * @return
+ */
+ @Override
+ public List<ExportHouseTenantExcel> export() {
+ return baseMapper.export();
+ }
+
+ @Override
+ public String importUserTenant(List<HouseTenantExcel> data, boolean b) {
+ List<HouseTenantEntity> HouseTenantList = new ArrayList<>();
+ int totalNum = data.size();
+ int importNum = 0;
+ int updateNum = 0;
+ int errorNum = 0;
+ for (HouseTenantExcel houseHoldExcel : data) {
+ HouseTenantVO houseTenantVO = Objects.requireNonNull(BeanUtil.copy(houseHoldExcel, HouseTenantVO.class));
+ HouseRentalEntity houseRentalEntity = iHouseRentalService.getOne(Wrappers.<HouseRentalEntity>lambdaQuery()
+ .eq(HouseRentalEntity::getHouseCode, houseTenantVO.getHouseCode()));
+ if (houseRentalEntity != null) {
+ // 性别
+ if (!Strings.isBlank(houseHoldExcel.getGender())) {
+ houseTenantVO.setGender(Integer.valueOf(houseHoldExcel.getGender()));
+ }
+ houseTenantVO.setHousingRentalId(houseRentalEntity.getId());
+ HouseTenantList.add(houseTenantVO);
+ } else {
+ errorNum++;
+ }
+ }
+ importNum = saveBatch(HouseTenantList) ? HouseTenantList.size() : 0;
+ StringBuilder builder = new StringBuilder("导入完成!");
+ builder.append("其中本次表格共有 ").append(totalNum).append(" 条数据,")
+ .append("成功导入 ").append(importNum).append(" 条数据。");
+ // if (updateNum > 0) {
+ // builder.append("其中有 ").append(updateNum).append(" 条数据已存在。");
+ // }
+ if (errorNum > 0) {
+ builder.append("共有 ").append(errorNum).append(" 条数据由于查询不到出租屋信息未导入!");
+ }
+ return builder.toString();
+ }
}
--
Gitblit v1.9.3