Browse Source

Merge branch 'develop' of http://121.42.41.42:7070/r/epmet-cloud into develop

dev
zhangyuan 3 years ago
parent
commit
9fc8849252
  1. 14
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java
  2. 17
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserExportServiceImpl.java
  3. BIN
      epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid_for_easy_excel.xlsx

14
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java

@ -21,6 +21,7 @@ import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.fill.FillWrapper;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.rocketmq.messages.IcResiUserAddMQMsg;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.annotation.MaskResponse;
@ -346,9 +347,9 @@ public class IcResiUserController implements ResultDataResolver {
*/
@NoRepeatSubmit
@RequestMapping(value = "/exportExcel")
public void exportExcelByEasyExcel(@RequestHeader String customerId, @LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
//tokenDto.setUserId("9e37adcce6472152e6508a19d3683e02");
public void exportExcelByEasyExcel(@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
long startM = System.currentTimeMillis();
String customerId = tokenDto.getCustomerId();
CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, tokenDto.getUserId());
String staffOrgPath = null;
if (StringUtils.isNotBlank(staffInfoCacheResult.getAgencyPIds()) && !NumConstant.ZERO_STR.equals(staffInfoCacheResult.getAgencyPIds())) {
@ -449,10 +450,15 @@ public class IcResiUserController implements ResultDataResolver {
*/
@NoRepeatSubmit
@RequestMapping(value = "/exportExcelCustom")
public void exportExcelCustom(@LoginUser TokenDto tokenDto, @RequestBody ExportResiUserFormDTO pageFormDTO, HttpServletResponse response) {
public void exportExcelCustom(@LoginUser TokenDto tokenDto, @RequestBody ExportResiUserFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
//获取导出配置
String aDefault = tokenDto.getCustomerId().concat(StrConstant.UNDER_LINE).concat("default");
if (pageFormDTO.getTemplateId().equals(aDefault)){
log.info("通过原来的模板下载,tokenDto:{}", JSON.toJSONString(tokenDto));
this.exportExcelByEasyExcel(tokenDto,pageFormDTO.getSearchForm(),response);
}else{
icResiUserExportService.exportIcResiUser(tokenDto,pageFormDTO,response);
}
}
/**
* desc:根据客户id 先从oss下载模版,如果有没有则使用系统默认模板 如果不存在则返回null

17
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserExportServiceImpl.java

@ -129,8 +129,9 @@ public class IcResiUserExportServiceImpl implements IcResiUserExportService {
WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
contentWriteCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
//todo 表头固定不正确
FreezeAndFilter writeHandler = new FreezeAndFilter();
//从第几行开始冻结
writeHandler.rowSplit = exportConfigData.getHeaderRow();
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel("居民基本信息.xlsx", response))
.registerWriteHandler(new ExcelFillCellMergeStrategy(mergeRowIndex, mergeColumnIndex))
.registerWriteHandler(horizontalCellStyleStrategy)
@ -194,7 +195,6 @@ public class IcResiUserExportServiceImpl implements IcResiUserExportService {
resultData.add(singleResult);
});
excelWriter.write(resultData, writeSheet);
//todo
break;
} while (mapListPage.getResult().size() == searchForm.getPageSize());
} catch (IOException e) {
@ -305,17 +305,18 @@ public class IcResiUserExportServiceImpl implements IcResiUserExportService {
}
}
private String putOptionValue(FormItemResult e, String vauleStr) {
private String putOptionValue(FormItemResult e, String valueStr) {
if (e == null) {
return vauleStr;
return valueStr;
}
FormItemTypeEnum itemTypeEnum = FormItemTypeEnum.getEnum(e.getItemType());
switch (itemTypeEnum) {
case CHECKBOX:
//如果是多选 则返回顿号隔开
if (e.getMultiSelect()) {
List<String> valueList = new ArrayList<>();
e.getOptions().forEach(option -> {
if (vauleStr.contains(option.getValue())) {
if (valueStr.contains(option.getValue())) {
valueList.add(option.getLabel());
}
});
@ -323,20 +324,20 @@ public class IcResiUserExportServiceImpl implements IcResiUserExportService {
}
for (OptionDTO dto : e.getOptions()) {
return vauleStr.contains(dto.getValue()) ? StrConstant.YES : StrConstant.NO;
return valueStr.contains(dto.getValue()) ? StrConstant.YES : StrConstant.NO;
}
break;
case SELECT:
case RADIO:
for (OptionDTO optionDTO : e.getOptions()) {
if (optionDTO.getValue().equals(vauleStr)) {
if (optionDTO.getValue().equals(valueStr)) {
return optionDTO.getLabel();
}
}
break;
default:
}
return vauleStr;
return valueStr;
}
/**

BIN
epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid_for_easy_excel.xlsx

Binary file not shown.
Loading…
Cancel
Save