Browse Source

Merge branch 'dev' of http://git.elinkit.com.cn:7070/r/epmet-cloud into pingyin_master

master
wangxianzhang 3 years ago
parent
commit
9d084481f3
  1. 2
      epmet-commons/epmet-commons-extapp-auth/pom.xml
  2. 2
      epmet-commons/epmet-commons-tools/pom.xml
  3. 63
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ExcelUtils.java
  4. 93
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/EasyPoiExcelExportStylerImpl.java
  5. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/ExportMultiView.java
  6. 46
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/FreezeAndFilter.java
  7. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java
  8. 3
      epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/controller/BackDoorController.java
  9. 5
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java
  10. 3
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/BuildingService.java
  11. 35
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java
  12. 4
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java
  13. 4
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcVaccineListResultDTO.java
  14. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcFollowUpRecordController.java
  15. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcNatController.java
  16. 11
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java
  17. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java
  18. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccineController.java
  19. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java
  20. BIN
      epmet-user/epmet-user-server/src/main/resources/excel/attention_nat_template.xlsx
  21. BIN
      epmet-user/epmet-user-server/src/main/resources/excel/attention_vaccination_template.xlsx
  22. BIN
      epmet-user/epmet-user-server/src/main/resources/excel/ic_resi_info_cid_for_easy_excel.xlsx

2
epmet-commons/epmet-commons-extapp-auth/pom.xml

@ -18,7 +18,7 @@
<commons.fileupload.version>1.3.3</commons.fileupload.version> <commons.fileupload.version>1.3.3</commons.fileupload.version>
<commons.io.version>2.6</commons.io.version> <commons.io.version>2.6</commons.io.version>
<hutool.version>4.6.1</hutool.version> <hutool.version>4.6.1</hutool.version>
<easypoi.version>4.4.0</easypoi.version> <easypoi.version>4.3.0</easypoi.version>
<joda.time.version>2.9.9</joda.time.version> <joda.time.version>2.9.9</joda.time.version>
<fastjson.version>1.2.79</fastjson.version> <fastjson.version>1.2.79</fastjson.version>
<gson.version>2.8.6</gson.version> <gson.version>2.8.6</gson.version>

2
epmet-commons/epmet-commons-tools/pom.xml

@ -18,7 +18,7 @@
<commons.fileupload.version>1.3.3</commons.fileupload.version> <commons.fileupload.version>1.3.3</commons.fileupload.version>
<commons.io.version>2.6</commons.io.version> <commons.io.version>2.6</commons.io.version>
<hutool.version>4.6.1</hutool.version> <hutool.version>4.6.1</hutool.version>
<easypoi.version>4.4.0</easypoi.version> <easypoi.version>4.3.0</easypoi.version>
<joda.time.version>2.9.9</joda.time.version> <joda.time.version>2.9.9</joda.time.version>
<fastjson.version>1.2.79</fastjson.version> <fastjson.version>1.2.79</fastjson.version>
<gson.version>2.8.6</gson.version> <gson.version>2.8.6</gson.version>

63
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ExcelUtils.java

@ -11,12 +11,13 @@ package com.epmet.commons.tools.utils;
import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import com.epmet.commons.tools.utils.excel.ExportMultiView; import com.epmet.commons.tools.utils.poi.excel.EasyPoiExcelExportStylerImpl;
import com.epmet.commons.tools.utils.poi.excel.ExportMultiView;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@ -30,6 +31,7 @@ import java.util.*;
* @author Mark sunlightcs@gmail.com * @author Mark sunlightcs@gmail.com
* @since 1.0.0 * @since 1.0.0
*/ */
@Slf4j
public class ExcelUtils { public class ExcelUtils {
/** /**
@ -47,15 +49,16 @@ public class ExcelUtils {
fileName = DateUtils.format(new Date()); fileName = DateUtils.format(new Date());
} }
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), pojoClass, list); ExportParams exportParams = new ExportParams();
//设置导出的样式
exportParams.setStyle(EasyPoiExcelExportStylerImpl.class);
//设置sheet名称
exportParams.setSheetName("Sheet1");
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
Sheet sheet1 = workbook.getSheetAt(0); Sheet sheet1 = workbook.getSheetAt(0);
sheet1.setDefaultColumnWidth(50*256); sheet1.setDefaultColumnWidth(50*256);
sheet1.setDefaultRowHeight((short)(2*256)); //sheet1.setDefaultRowHeight((short)(2*256));
response.setCharacterEncoding("UTF-8"); ServletOutputStream out = ExcelUtils.getOutputStreamForExcel(fileName,response);
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, "UTF-8") + ".xls");
ServletOutputStream out = response.getOutputStream();
workbook.write(out); workbook.write(out);
out.flush(); out.flush();
out.close(); out.close();
@ -81,47 +84,9 @@ public class ExcelUtils {
exportExcel(response, fileName, targetList, targetClass); exportExcel(response, fileName, targetList, targetClass);
} }
public static void exportExcelToTargetDisposeAll(HttpServletResponse response, String fileName, Collection<?> sourceList, public static ServletOutputStream getOutputStreamForExcel(String fileName, HttpServletResponse response) throws IOException {
Class<?> targetClass) throws Exception {
if (!CollectionUtils.isEmpty(sourceList)){
List<Object> targetList = new ArrayList<>(sourceList.size());
for(Object source : sourceList){
Object target = targetClass.newInstance();
BeanUtils.copyProperties(source, target);
targetList.add(target);
}
exportExcelDispose(response, fileName, targetList, targetClass);
}else {
exportExcelDispose(response, fileName, new ArrayList<>(), targetClass);
}
}
public static void exportExcelDispose(HttpServletResponse response, String fileName, Collection<?> list,
Class<?> pojoClass) throws IOException {
if(StringUtils.isBlank(fileName)){
//当前日期
fileName = DateUtils.format(new Date());
}
ExportParams params = new ExportParams(fileName,fileName);
Workbook workbook = ExcelExportUtil.exportExcel(params, pojoClass, list);
Sheet sheet1 = workbook.getSheetAt(0);
sheet1.setDefaultColumnWidth(50*256);
sheet1.setDefaultRowHeight((short)(2*256));
response.setCharacterEncoding("UTF-8");
response.setHeader("content-Type", "application/vnd.ms-excel");
fileName = fileName + ".xls";
response.setHeader("Content-Disposition",
"attachment;filename=" +fileName);
ServletOutputStream out = response.getOutputStream();
workbook.write(out);
out.flush();
out.close();
}
public static ServletOutputStream getOutputStreamForExcel(String fileName, HttpServletResponse response) throws Exception {
fileName = URLEncoder.encode(fileName, "UTF-8"); fileName = URLEncoder.encode(fileName, "UTF-8");
if (!fileName.endsWith(".xls") ||!fileName.endsWith(".xlsx")){ if (!fileName.endsWith(".xls") && !fileName.endsWith(".xlsx")){
fileName = fileName + ".xlsx"; fileName = fileName + ".xlsx";
} }
response.setContentType("application/vnd.ms-excel"); response.setContentType("application/vnd.ms-excel");

93
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/EasyPoiExcelExportStylerImpl.java

@ -0,0 +1,93 @@
package com.epmet.commons.tools.utils.poi.excel;
import cn.afterturn.easypoi.excel.export.styler.AbstractExcelExportStyler;
import cn.afterturn.easypoi.excel.export.styler.IExcelExportStyler;
import org.apache.poi.ss.usermodel.*;
/**
* desc:easypoi自定义表头颜色
*
* @author: LiuJanJun
* @date: 2022/4/8 4:39 下午
* @version: 1.0
*/
public class EasyPoiExcelExportStylerImpl extends AbstractExcelExportStyler
implements IExcelExportStyler {
public EasyPoiExcelExportStylerImpl(Workbook workbook) {
super.createStyles(workbook);
}
@Override
public CellStyle getTitleStyle(short color) {
CellStyle titleStyle = workbook.createCellStyle();
Font font = this.workbook.createFont();
// 字体加粗
font.setBold(true);
font.setFontHeightInPoints((short) 12);
titleStyle.setFont(font);
//居中
titleStyle.setAlignment(HorizontalAlignment.CENTER);
//垂直居中
titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);
//设置颜色
titleStyle.setFillForegroundColor(IndexedColors.PALE_BLUE.getIndex());
titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
titleStyle.setBorderRight(BorderStyle.THIN);
titleStyle.setBorderLeft(BorderStyle.THIN);
titleStyle.setBorderBottom(BorderStyle.THIN);
titleStyle.setBorderTop(BorderStyle.THIN);
titleStyle.setWrapText(true);
return titleStyle;
}
@Override
public CellStyle getHeaderStyle(short color) {
CellStyle titleStyle = workbook.createCellStyle();
Font font = workbook.createFont();
font.setFontHeightInPoints((short) 12);
titleStyle.setFont(font);
titleStyle.setAlignment(HorizontalAlignment.CENTER);
titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);
return null;
}
/**
* desc:隔行样式
* @param workbook
* @param isWarp
* @return
*/
@Override
public CellStyle stringNoneStyle(Workbook workbook, boolean isWarp) {
CellStyle style = workbook.createCellStyle();
//style.setAlignment(HorizontalAlignment.CENTER);
style.setVerticalAlignment(VerticalAlignment.CENTER);
style.setDataFormat(STRING_FORMAT);
if (isWarp) {
style.setWrapText(true);
}
return style;
}
/**
* desc:隔行样式
* @param workbook
* @param isWarp
* @return
*/
@Override
public CellStyle stringSeptailStyle(Workbook workbook, boolean isWarp) {
CellStyle style = workbook.createCellStyle();
//style.setAlignment(HorizontalAlignment.CENTER);
style.setVerticalAlignment(VerticalAlignment.CENTER);
style.setDataFormat(STRING_FORMAT);
if (isWarp) {
style.setWrapText(true);
}
return style;
}
}

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/excel/ExportMultiView.java → epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/ExportMultiView.java

@ -1,4 +1,4 @@
package com.epmet.commons.tools.utils.excel; package com.epmet.commons.tools.utils.poi.excel;
import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ExportParams;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

46
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/poi/excel/FreezeAndFilter.java

@ -0,0 +1,46 @@
package com.epmet.commons.tools.utils.poi.excel;
/**
* desc:easyExcel 冻结标题
*
* @author: LiuJanJun
* @date: 2022/4/11 10:27 上午
* @version: 1.0
*/
import com.alibaba.excel.write.handler.SheetWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.util.CellRangeAddress;
public class FreezeAndFilter implements SheetWriteHandler {
public int colSplit = 0, rowSplit = 1, leftmostColumn = 0, topRow = 1;
public String autoFilterRange = "1:1";
private boolean isFilter;
public FreezeAndFilter() {
}
public FreezeAndFilter(boolean isFilter) {
this.isFilter = isFilter;
}
@Override
public void beforeSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
}
@Override
public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
Sheet sheet = writeSheetHolder.getSheet();
sheet.createFreezePane(colSplit, rowSplit, leftmostColumn, topRow);
//不让他筛选
if (isFilter){
sheet.setAutoFilter(CellRangeAddress.valueOf(autoFilterRange));
}
}
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

@ -11,7 +11,7 @@ import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.excel.ExportMultiView; import com.epmet.commons.tools.utils.poi.excel.ExportMultiView;
import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.constant.DataSourceConstant;
import com.epmet.dataaggre.constant.OrgConstant; import com.epmet.dataaggre.constant.OrgConstant;
import com.epmet.dataaggre.dao.datastats.DataStatsDao; import com.epmet.dataaggre.dao.datastats.DataStatsDao;

3
epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/controller/BackDoorController.java

@ -44,7 +44,8 @@ public class BackDoorController {
* @param customerId * @param customerId
* @return * @return
*/ */
@GetMapping(value = "initpointrule") //@GetMapping(value = "initpointrule")
@RequestMapping(value = "initpointrule", method = {RequestMethod.POST, RequestMethod.GET})
public Result<InitPointRuleResultDTO> initPointRule(@RequestParam(required = false) String customerId) { public Result<InitPointRuleResultDTO> initPointRule(@RequestParam(required = false) String customerId) {
InitPointRuleResultDTO resultDTO = pointRuleService.initPointRule(customerId); InitPointRuleResultDTO resultDTO = pointRuleService.initPointRule(customerId);
return new Result<InitPointRuleResultDTO>().ok(resultDTO); return new Result<InitPointRuleResultDTO>().ok(resultDTO);

5
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/BuildingController.java

@ -29,7 +29,6 @@ import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constant.ImportErrorMsgConstants;
import com.epmet.constants.ImportTaskConstants; import com.epmet.constants.ImportTaskConstants;
import com.epmet.dao.IcBuildingUnitDao; import com.epmet.dao.IcBuildingUnitDao;
import com.epmet.dto.BuildingTreeLevelDTO; import com.epmet.dto.BuildingTreeLevelDTO;
@ -42,8 +41,6 @@ import com.epmet.entity.IcBuildingUnitEntity;
import com.epmet.excel.IcBuildingExcel; import com.epmet.excel.IcBuildingExcel;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.service.BuildingService; import com.epmet.service.BuildingService;
import com.epmet.service.IcBuildingService;
import com.epmet.service.NeighborHoodService;
import com.epmet.util.ExcelPoiUtils; import com.epmet.util.ExcelPoiUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -118,7 +115,7 @@ public class BuildingController {
@PostMapping("treelist") @PostMapping("treelist")
public Result treeList(@LoginUser TokenDto tokenDTO){ public Result treeList(@LoginUser TokenDto tokenDTO){
List<BuildingTreeLevelDTO> buildingTreeLevelDTOS =buildingService.treeList(tokenDTO.getUserId()); List<BuildingTreeLevelDTO> buildingTreeLevelDTOS =buildingService.treeList(tokenDTO.getCustomerId(), tokenDTO.getUserId());
return new Result().ok(buildingTreeLevelDTOS); return new Result().ok(buildingTreeLevelDTOS);
} }
/** /**

3
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/BuildingService.java

@ -27,7 +27,6 @@ import com.epmet.dto.result.BuildingResultPagedDTO;
import com.epmet.dto.result.IcNeighborHoodResultDTO; import com.epmet.dto.result.IcNeighborHoodResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO; import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.excel.IcBuildingExcel; import com.epmet.excel.IcBuildingExcel;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
@ -57,7 +56,7 @@ public interface BuildingService {
void addBuilding(String customerId, IcBulidingFormDTO formDTO); void addBuilding(String customerId, IcBulidingFormDTO formDTO);
List<BuildingTreeLevelDTO> treeList(String customerId); List<BuildingTreeLevelDTO> treeList(String customerId, String staffId);
List<Integer> importExcel(String customerId, List<IcBuildingExcel> list, String staffId, List<Integer> numList); List<Integer> importExcel(String customerId, List<IcBuildingExcel> list, String staffId, List<Integer> numList);

35
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java

@ -13,45 +13,37 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.ImportErrorMsgConstants;
import com.epmet.constants.ImportTaskConstants; import com.epmet.constants.ImportTaskConstants;
import com.epmet.dao.*; import com.epmet.dao.*;
import com.epmet.dto.BuildingTreeLevelDTO; import com.epmet.dto.BuildingTreeLevelDTO;
import com.epmet.dto.CustomerStaffAgencyDTO;
import com.epmet.dto.IcBuildingDTO; import com.epmet.dto.IcBuildingDTO;
import com.epmet.dto.form.IcBulidingFormDTO; import com.epmet.dto.form.IcBulidingFormDTO;
import com.epmet.dto.form.ImportInfoFormDTO; import com.epmet.dto.form.ImportInfoFormDTO;
import com.epmet.dto.form.ImportTaskCommonFormDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO;
import com.epmet.dto.form.ListIcNeighborHoodFormDTO; import com.epmet.dto.form.ListIcNeighborHoodFormDTO;
import com.epmet.dto.result.*; import com.epmet.dto.result.BuildingResultDTO;
import com.epmet.dto.result.BuildingResultPagedDTO;
import com.epmet.dto.result.IcNeighborHoodResultDTO;
import com.epmet.dto.result.ImportTaskCommonResultDTO;
import com.epmet.entity.*; import com.epmet.entity.*;
import com.epmet.enums.BuildingTypeEnums; import com.epmet.enums.BuildingTypeEnums;
import com.epmet.excel.IcBuildingExcel; import com.epmet.excel.IcBuildingExcel;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.model.BuildingInfoModel; import com.epmet.model.BuildingInfoModel;
import com.epmet.model.HouseInfoModel;
import com.epmet.model.ImportBuildingInfoListener; import com.epmet.model.ImportBuildingInfoListener;
import com.epmet.redis.IcHouseRedis; import com.epmet.redis.IcHouseRedis;
import com.epmet.service.*; import com.epmet.service.*;
import com.epmet.service.BuildingService;
import com.epmet.service.IcBuildingService;
import com.epmet.service.IcBuildingUnitService;
import com.epmet.service.IcHouseService;
import com.epmet.util.ExcelPoiUtils; import com.epmet.util.ExcelPoiUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableAsync;
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 org.springframework.util.CollectionUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@ -128,8 +120,8 @@ public class BuildingServiceImpl implements BuildingService {
} }
@Override @Override
public List<BuildingTreeLevelDTO> treeList(String staffId) { public List<BuildingTreeLevelDTO> treeList(String customerId, String staffId) {
CustomerStaffAgencyDTO agency = customerStaffAgencyDao.selectLatestCustomerByStaff(staffId); CustomerStaffInfoCacheResult agency = CustomerStaffRedis.getStaffInfo(customerId, staffId);
if(null == agency || StringUtils.isBlank(agency.getAgencyId())){ if(null == agency || StringUtils.isBlank(agency.getAgencyId())){
log.error("com.epmet.service.impl.BuildingServiceImpl.treeList,没有找到工作人员所属的机关信息,用户Id:{}",staffId); log.error("com.epmet.service.impl.BuildingServiceImpl.treeList,没有找到工作人员所属的机关信息,用户Id:{}",staffId);
return new ArrayList<>(); return new ArrayList<>();
@ -163,7 +155,7 @@ public class BuildingServiceImpl implements BuildingService {
//2.获取组织所在网格 //2.获取组织所在网格
List<String> agencyIdList = customerAgencyList.stream().map(a->a.getId()).collect(Collectors.toList()); List<String> agencyIdList = customerAgencyList.stream().map(BaseEpmetEntity::getId).collect(Collectors.toList());
// agencyIdList.add(customerAgency.getId()); // agencyIdList.add(customerAgency.getId());
List<CustomerGridEntity> customerGridList = customerGridDao.selectList(new QueryWrapper<CustomerGridEntity>().lambda().in(CustomerGridEntity::getPid, agencyIdList)); List<CustomerGridEntity> customerGridList = customerGridDao.selectList(new QueryWrapper<CustomerGridEntity>().lambda().in(CustomerGridEntity::getPid, agencyIdList));
@ -222,8 +214,12 @@ public class BuildingServiceImpl implements BuildingService {
agencyList.addAll(neighbourHoodList); agencyList.addAll(neighbourHoodList);
return covertToTree(customerAgency,agencyList); return covertToTree(customerAgency,agencyList);
} }
//获取楼里已经有多少个房屋
LambdaQueryWrapper<IcHouseEntity> icHouseEntityWrapper = new QueryWrapper<IcHouseEntity>().lambda()
.in(IcHouseEntity::getNeighborHoodId, neighborHoodIdList);
List<IcHouseEntity> buildingHouseCount = icHouseDao.selectList(icHouseEntityWrapper);
Map<String, Long> buildingHouseCountMap = buildingHouseCount.stream().collect(Collectors.groupingBy(IcHouseEntity::getBuildingId, Collectors.counting()));
//组合封装 //组合封装
List<BuildingTreeLevelDTO> buildingList = icBuildingList.stream().map(item -> { List<BuildingTreeLevelDTO> buildingList = icBuildingList.stream().map(item -> {
BuildingTreeLevelDTO buildingTreeLevelDTO = new BuildingTreeLevelDTO(); BuildingTreeLevelDTO buildingTreeLevelDTO = new BuildingTreeLevelDTO();
buildingTreeLevelDTO.setId(item.getId()); buildingTreeLevelDTO.setId(item.getId());
@ -246,9 +242,10 @@ public class BuildingServiceImpl implements BuildingService {
//02.11 之前录入的户数概念改为总户数,无需计算直接用就可以了 //02.11 之前录入的户数概念改为总户数,无需计算直接用就可以了
Integer total = null == item.getTotalHouseNum() ? NumConstant.ZERO : item.getTotalHouseNum(); Integer total = null == item.getTotalHouseNum() ? NumConstant.ZERO : item.getTotalHouseNum();
//已经添加了多少户 //已经添加了多少户
LambdaQueryWrapper<IcHouseEntity> icHouseEntityWrapper = new QueryWrapper<IcHouseEntity>().lambda() // LambdaQueryWrapper<IcHouseEntity> icHouseEntityWrapper = new QueryWrapper<IcHouseEntity>().lambda()
.in(IcHouseEntity::getBuildingId, item.getId()); // .in(IcHouseEntity::getBuildingId, item.getId());
int count= icHouseDao.selectCount(icHouseEntityWrapper); // int count= icHouseDao.selectCount(icHouseEntityWrapper);
int count = buildingHouseCountMap.getOrDefault(item.getId(), NumConstant.ZERO_L).intValue();
if(NumConstant.ZERO==total){ if(NumConstant.ZERO==total){
buildingTreeLevelDTO.setShowNum(String.format("%s/%s",count,count)); buildingTreeLevelDTO.setShowNum(String.format("%s/%s",count,count));
}else{ }else{

4
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcTripReportRecordDTO.java

@ -212,7 +212,7 @@ public class IcTripReportRecordDTO implements Serializable {
@ExcelIgnore @ExcelIgnore
private Boolean heSuanCheck; private Boolean heSuanCheck;
@ColumnWidth(20) @ColumnWidth(25)
@ExcelProperty("核算检测关注名单") @ExcelProperty("核算检测关注名单")
private String heSuanCheckDesc; private String heSuanCheckDesc;
} }

4
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IcVaccineListResultDTO.java

@ -25,9 +25,9 @@ public class IcVaccineListResultDTO implements Serializable {
*/ */
@ExcelIgnore @ExcelIgnore
private String agencyId; private String agencyId;
@ExcelIgnore
private String vaccineId; private String vaccineId;
@ExcelIgnore
private String userId; private String userId;
/** /**

3
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcFollowUpRecordController.java

@ -12,6 +12,7 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.poi.excel.FreezeAndFilter;
import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.DefaultGroup;
@ -115,7 +116,7 @@ public class IcFollowUpRecordController {
String today= DateUtils.format(new Date(),DateUtils.DATE_PATTERN_MMDD); String today= DateUtils.format(new Date(),DateUtils.DATE_PATTERN_MMDD);
String fileName = formDTO.getName().concat("随访记录").concat(today).concat(".xlsx"); String fileName = formDTO.getName().concat("随访记录").concat(today).concat(".xlsx");
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcFollowUpRecordDTO.class).build(); excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcFollowUpRecordDTO.class).build();
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").build(); WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
PageData<IcFollowUpRecordDTO> data = null; PageData<IcFollowUpRecordDTO> data = null;
do { do {
data = icFollowUpRecordService.page(formDTO); data = icFollowUpRecordService.page(formDTO);

3
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcNatController.java

@ -15,6 +15,7 @@ import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.*; import com.epmet.commons.tools.utils.*;
import com.epmet.commons.tools.utils.poi.excel.FreezeAndFilter;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constants.ImportTaskConstants; import com.epmet.constants.ImportTaskConstants;
import com.epmet.dto.IcNatDTO; import com.epmet.dto.IcNatDTO;
@ -288,7 +289,7 @@ public class IcNatController implements ResultDataResolver {
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), NatListCommonExcelResultDTO.class).build(); excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), NatListCommonExcelResultDTO.class).build();
} }
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").build(); WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
PageData<NatListResultDTO> data = null; PageData<NatListResultDTO> data = null;
do { do {
data = icNucleinService.natList(formDTO); data = icNucleinService.natList(formDTO);

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

@ -63,6 +63,7 @@ import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils; import org.apache.commons.io.FilenameUtils;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.poi.poifs.filesystem.OfficeXmlFileException;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
@ -82,7 +83,6 @@ import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.util.*; import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -477,8 +477,15 @@ public class IcResiUserController implements ResultDataResolver {
String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e); String errorMsg = ExceptionUtils.getThrowableErrorStackTrace(e);
log.error("【导入居民信息失败】导入失败:{}", errorMsg); log.error("【导入居民信息失败】导入失败:{}", errorMsg);
String resultDesc;
if (e instanceof OfficeXmlFileException) {
resultDesc = "文件格式异常,请确保使用下载的模板文件";
} else {
resultDesc = "系统异常,请查看系统日志";
}
// 要将导入任务状态设置为结束但不成功。不报错即成功,没有返回值 // 要将导入任务状态设置为结束但不成功。不报错即成功,没有返回值
icResiUserImportService.finishImportTask(importTaskId, operatorId, ImportTaskConstants.PROCESS_STATUS_FINISHED_FAIL, "系统异常,请查看系统日志", null); icResiUserImportService.finishImportTask(importTaskId, operatorId, ImportTaskConstants.PROCESS_STATUS_FINISHED_FAIL, resultDesc, null);
} finally { } finally {
try { try {
if (importTempFileSavePath != null){ if (importTempFileSavePath != null){

3
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcTripReportRecordController.java

@ -16,6 +16,7 @@ import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.*; import com.epmet.commons.tools.utils.*;
import com.epmet.commons.tools.utils.poi.excel.FreezeAndFilter;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constant.IcResiUserConstant; import com.epmet.constant.IcResiUserConstant;
import com.epmet.constants.ImportTaskConstants; import com.epmet.constants.ImportTaskConstants;
@ -203,7 +204,7 @@ public class IcTripReportRecordController implements ResultDataResolver {
String today= DateUtils.format(new Date(),DateUtils.DATE_PATTERN_MMDD); String today= DateUtils.format(new Date(),DateUtils.DATE_PATTERN_MMDD);
String fileName = "行程上报信息".concat(today); String fileName = "行程上报信息".concat(today);
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcTripReportRecordDTO.class).build(); excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcTripReportRecordDTO.class).build();
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").build(); WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
PageData<IcTripReportRecordDTO> data = null; PageData<IcTripReportRecordDTO> data = null;
do { do {
data = icTripReportRecordService.page(formDTO); data = icTripReportRecordService.page(formDTO);

3
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcVaccineController.java

@ -15,6 +15,7 @@ import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.*; import com.epmet.commons.tools.utils.*;
import com.epmet.commons.tools.utils.poi.excel.FreezeAndFilter;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constants.ImportTaskConstants; import com.epmet.constants.ImportTaskConstants;
import com.epmet.dto.form.ImportTaskCommonFormDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO;
@ -199,7 +200,7 @@ public class IcVaccineController implements ResultDataResolver {
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcVaccineListCommonExcelResultDTO.class).build(); excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcVaccineListCommonExcelResultDTO.class).build();
} }
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").build(); WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
PageData<IcVaccineListResultDTO> data = null; PageData<IcVaccineListResultDTO> data = null;
do { do {
data = icVaccineService.icVaccineList(formDTO); data = icVaccineService.icVaccineList(formDTO);

3
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java

@ -42,6 +42,7 @@ import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.YuShanSysApiService; import com.epmet.commons.tools.utils.YuShanSysApiService;
import com.epmet.commons.tools.utils.poi.excel.FreezeAndFilter;
import com.epmet.constant.SystemMessageType; import com.epmet.constant.SystemMessageType;
import com.epmet.dao.PatrolRoutineWorkDao; import com.epmet.dao.PatrolRoutineWorkDao;
import com.epmet.dao.StatsStaffPatrolRecordDailyDao; import com.epmet.dao.StatsStaffPatrolRecordDailyDao;
@ -224,7 +225,7 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl<PatrolRoutineW
response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(name, "UTF-8")); response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(name, "UTF-8"));
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(name,response),PcWorkListExport.class).build(); excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(name,response),PcWorkListExport.class).build();
// 如果同一个sheet只要创建一次 // 如果同一个sheet只要创建一次
WriteSheet writeSheet = EasyExcel.writerSheet(name).build(); WriteSheet writeSheet = EasyExcel.writerSheet(name).registerWriteHandler(new FreezeAndFilter()).build();
Integer pageNo = NumConstant.ONE; Integer pageNo = NumConstant.ONE;
Integer pageSize = 1000; Integer pageSize = 1000;
Integer num = NumConstant.ZERO; Integer num = NumConstant.ZERO;

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

Binary file not shown.

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

Binary file not shown.

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