Browse Source

党员风采导入导出添加所属分类名称

dev
yinzuomei 4 years ago
parent
commit
5d54b5effd
  1. 1
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartymemberStyleController.java
  2. 8
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/IcPartymemberStyleImportExcel.java
  3. 3
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartymemberStyleCategoryDictService.java
  4. 18
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartymemberStyleCategoryDictServiceImpl.java
  5. 18
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartymemberStyleServiceImpl.java

1
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartymemberStyleController.java

@ -100,6 +100,7 @@ public class IcPartymemberStyleController {
excel.setGridName(item.getGridName()); excel.setGridName(item.getGridName());
excel.setName(item.getName()); excel.setName(item.getName());
excel.setMainDeed(item.getMainDeed()); excel.setMainDeed(item.getMainDeed());
//导出时新增分类名称
excel.setCategoryName(item.getCategoryName()); excel.setCategoryName(item.getCategoryName());
return excel; return excel;
}).collect(Collectors.toList()); }).collect(Collectors.toList());

8
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/IcPartymemberStyleImportExcel.java

@ -21,8 +21,10 @@ import cn.afterturn.easypoi.excel.annotation.Excel;
import com.epmet.commons.tools.utils.ExcelVerifyInfo; import com.epmet.commons.tools.utils.ExcelVerifyInfo;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
/** /**
* 党员风采 * 党员风采导入
* *
* @author generator generator@elink-cn.com * @author generator generator@elink-cn.com
* @since v1.0.0 2021-11-18 * @since v1.0.0 2021-11-18
@ -31,17 +33,21 @@ import lombok.Data;
public class IcPartymemberStyleImportExcel extends ExcelVerifyInfo { public class IcPartymemberStyleImportExcel extends ExcelVerifyInfo {
@Excel(name = "所属网格") @Excel(name = "所属网格")
@NotBlank(message = "此列不能为空")
private String gridName; private String gridName;
@Excel(name = "党员姓名") @Excel(name = "党员姓名")
@NotBlank(message = "此列不能为空")
private String name; private String name;
@Excel(name = "主要事迹") @Excel(name = "主要事迹")
@NotBlank(message = "此列不能为空")
private String mainDeed; private String mainDeed;
@Excel(name = "照片") @Excel(name = "照片")
private String imageUrl; private String imageUrl;
@Excel(name="所属分类") @Excel(name="所属分类")
@NotBlank(message = "此列不能为空")
private String categoryName; private String categoryName;
} }

3
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartymemberStyleCategoryDictService.java

@ -8,6 +8,7 @@ import com.epmet.resi.partymember.dto.partymember.form.UpdateStyleCategoryFormDT
import com.epmet.resi.partymember.dto.partymember.result.StyleCategoryDictResDTO; import com.epmet.resi.partymember.dto.partymember.result.StyleCategoryDictResDTO;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 党员风采分类字典表 * 党员风采分类字典表
@ -51,4 +52,6 @@ public interface IcPartymemberStyleCategoryDictService extends BaseService<IcPar
List<StyleCategoryDictResDTO> selectList(StyleSelectListFormDTO formDTO); List<StyleCategoryDictResDTO> selectList(StyleSelectListFormDTO formDTO);
IcPartymemberStyleCategoryDictEntity get(String categoryId); IcPartymemberStyleCategoryDictEntity get(String categoryId);
Map<String, IcPartymemberStyleCategoryDictEntity> getCategoryDictMap(String customerId);
} }

18
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartymemberStyleCategoryDictServiceImpl.java

@ -18,10 +18,10 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.*;
import java.util.Date; import java.util.stream.Collectors;
import java.util.List;
/** /**
* 党员风采分类字典表 * 党员风采分类字典表
@ -168,4 +168,16 @@ public class IcPartymemberStyleCategoryDictServiceImpl extends BaseServiceImpl<I
return baseDao.selectById(categoryId); return baseDao.selectById(categoryId);
} }
@Override
public Map<String, IcPartymemberStyleCategoryDictEntity> getCategoryDictMap(String customerId) {
LambdaQueryWrapper<IcPartymemberStyleCategoryDictEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(IcPartymemberStyleCategoryDictEntity::getCustomerId, customerId);
List<IcPartymemberStyleCategoryDictEntity> list=baseDao.selectList(queryWrapper);
Map<String, IcPartymemberStyleCategoryDictEntity> map=new HashMap<>();
if(!CollectionUtils.isEmpty(list)){
map=list.stream().collect(Collectors.toMap(IcPartymemberStyleCategoryDictEntity::getCategoryName, m -> m, (k1, k2) -> k1));
}
return map;
}
} }

18
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartymemberStyleServiceImpl.java

@ -18,6 +18,7 @@
package com.epmet.modules.partymember.service.impl; package com.epmet.modules.partymember.service.impl;
import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -109,6 +110,7 @@ public class IcPartymemberStyleServiceImpl extends BaseServiceImpl<IcPartymember
return; return;
} }
item.setGridName(gridInfo.getGridName()); item.setGridName(gridInfo.getGridName());
//导出时新增分类名称
IcPartymemberStyleCategoryDictEntity dict = icPartymemberStyleCategoryDictService.get(item.getCategoryId()); IcPartymemberStyleCategoryDictEntity dict = icPartymemberStyleCategoryDictService.get(item.getCategoryId());
item.setCategoryName(null == dict ? StrConstant.EPMETY_STR : dict.getCategoryName()); item.setCategoryName(null == dict ? StrConstant.EPMETY_STR : dict.getCategoryName());
} }
@ -228,7 +230,9 @@ public class IcPartymemberStyleServiceImpl extends BaseServiceImpl<IcPartymember
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Result importData(TokenDto tokenDto, HttpServletResponse response, MultipartFile file) throws IOException { public Result importData(TokenDto tokenDto, HttpServletResponse response, MultipartFile file) throws IOException {
ExcelImportResult<IcPartymemberStyleImportExcel> importResult = ExcelPoiUtils.importExcelMore(file, 0, 1, IcPartymemberStyleImportExcel.class); ExcelImportResult<IcPartymemberStyleImportExcel> importResult = ExcelPoiUtils.importExcelMore(file, 0, 1, IcPartymemberStyleImportExcel.class);
List<IcPartymemberStyleImportExcel> failList = importResult.getFailList(); List<IcPartymemberStyleImportExcel> failList = importResult.getFailList();
log.info("excel中的数据校验失败:"+JSON.toJSONString(failList,true));
//存放错误数据行号 //存放错误数据行号
List<Integer> numList = new ArrayList<>(); List<Integer> numList = new ArrayList<>();
if (!org.springframework.util.CollectionUtils.isEmpty(failList)) { if (!org.springframework.util.CollectionUtils.isEmpty(failList)) {
@ -249,8 +253,10 @@ public class IcPartymemberStyleServiceImpl extends BaseServiceImpl<IcPartymember
throw new EpmetException(gridOptionResult.getCode(), gridOptionResult.getMsg()); throw new EpmetException(gridOptionResult.getCode(), gridOptionResult.getMsg());
} }
Map<String, String> gridMap = gridOptionResult.getData().stream().collect(Collectors.toMap(CustomerGridDTO::getGridName, CustomerGridDTO::getId)); Map<String, String> gridMap = gridOptionResult.getData().stream().collect(Collectors.toMap(CustomerGridDTO::getGridName, CustomerGridDTO::getId));
//获取党员风采所有分类:key:分类名称;
Map<String,IcPartymemberStyleCategoryDictEntity> categoryDictMap=icPartymemberStyleCategoryDictService.getCategoryDictMap(tokenDto.getCustomerId());
//1.数据校验 只允许导入当前组织下的网格的数据 //1.数据校验 只允许导入当前组织下的网格的数据
//网格名称不一样的数据舍弃 //网格名称不一样的数据舍弃或者分类名称不存在也舍弃
Iterator<IcPartymemberStyleImportExcel> iterator = result.iterator(); Iterator<IcPartymemberStyleImportExcel> iterator = result.iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
IcPartymemberStyleImportExcel obj = iterator.next(); IcPartymemberStyleImportExcel obj = iterator.next();
@ -258,6 +264,12 @@ public class IcPartymemberStyleServiceImpl extends BaseServiceImpl<IcPartymember
numList.add(obj.getRowNum()); numList.add(obj.getRowNum());
log.warn(String.format("不是当前组织下可导入的数据,网格名称->%s,行号->%s", obj.getGridName(), obj.getRowNum())); log.warn(String.format("不是当前组织下可导入的数据,网格名称->%s,行号->%s", obj.getGridName(), obj.getRowNum()));
iterator.remove(); iterator.remove();
continue;
}
if (null == categoryDictMap.get(obj.getCategoryName().trim())) {
numList.add(obj.getRowNum());
log.warn(String.format("分类名称【%s】不存在,不可导入,行号->%s", obj.getCategoryName(), obj.getRowNum()));
iterator.remove();
} }
} }
if (CollectionUtils.isEmpty(result)) { if (CollectionUtils.isEmpty(result)) {
@ -274,7 +286,9 @@ public class IcPartymemberStyleServiceImpl extends BaseServiceImpl<IcPartymember
entity.setGridId(gridMap.get(item.getGridName())); entity.setGridId(gridMap.get(item.getGridName()));
entity.setName(item.getName()); entity.setName(item.getName());
entity.setMainDeed(item.getMainDeed()); entity.setMainDeed(item.getMainDeed());
IcPartymemberStyleCategoryDictEntity dictEntity=categoryDictMap.get(item.getCategoryName());
entity.setCategoryId(null == dictEntity ? StrConstant.EPMETY_STR : dictEntity.getId());
entity.setCategoryCode(null == dictEntity ? StrConstant.EPMETY_STR : dictEntity.getCategoryCode());
AtomicInteger i = new AtomicInteger(); AtomicInteger i = new AtomicInteger();
if (StringUtils.isNotBlank(item.getImageUrl())) { if (StringUtils.isNotBlank(item.getImageUrl())) {
Arrays.asList(item.getImageUrl().split(StrConstant.COMMA)).forEach(url -> { Arrays.asList(item.getImageUrl().split(StrConstant.COMMA)).forEach(url -> {

Loading…
Cancel
Save