diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcCommunitySelfOrganizationController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcCommunitySelfOrganizationController.java index d9019b6c5b..5dc6a27d04 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcCommunitySelfOrganizationController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcCommunitySelfOrganizationController.java @@ -17,11 +17,16 @@ package com.epmet.controller; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.hutool.poi.excel.ExcelUtil; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -36,7 +41,9 @@ import com.epmet.dto.result.CommunitySelfOrganizationListResultDTO; import com.epmet.dto.result.demand.OptionDTO; import com.epmet.excel.ExportCommunitySelfOrganizationExcel; import com.epmet.excel.IcCommunitySelfOrganizationExcel; +import com.epmet.excel.ImportCommunitySelfOrganizationSon; import com.epmet.service.IcCommunitySelfOrganizationService; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.io.FilenameUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -113,7 +120,13 @@ public class IcCommunitySelfOrganizationController { @PostMapping("exportcommunityselforganization") public void exportCommunitySelfOrganization(HttpServletResponse response,@LoginUser TokenDto tokenDto,@RequestBody CommunitySelfOrganizationListFormDTO formDTO) throws Exception { CommunitySelfOrganizationListResultDTO resultDTO = icCommunitySelfOrganizationService.communitySelfOrganizationList(tokenDto, formDTO); - ExcelUtils.exportExcelToTarget(response, null, resultDTO.getList(), ExportCommunitySelfOrganizationExcel.class); + List r = ConvertUtils.sourceToTarget(resultDTO.getList(), ExportCommunitySelfOrganizationExcel.class); + r.forEach(c -> { + if (CollectionUtils.isNotEmpty(c.getOrganizationPersonnel())){ + c.setOrganizationPersonnel(ConvertUtils.sourceToTarget(c.getOrganizationPersonnel(), ImportCommunitySelfOrganizationSon.class)); + } + }); + ExcelUtils.exportExcelToTarget(response, null, r, ExportCommunitySelfOrganizationExcel.class); } /** diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ExportCommunitySelfOrganizationExcel.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ExportCommunitySelfOrganizationExcel.java index d8020a3345..1822610552 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ExportCommunitySelfOrganizationExcel.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ExportCommunitySelfOrganizationExcel.java @@ -1,31 +1,37 @@ package com.epmet.excel; -import cn.afterturn.easypoi.excel.annotation.CellStyler; import cn.afterturn.easypoi.excel.annotation.Excel; +import cn.afterturn.easypoi.excel.annotation.ExcelCollection; +import com.epmet.dto.IcCommunitySelfOrganizationPersonnelDTO; import lombok.Data; +import java.util.List; + @Data public class ExportCommunitySelfOrganizationExcel { - @Excel(name = "排序") - private Integer sort; +// @Excel(name = "排序") +// private Integer sort; - @Excel(name = "组织名称", width = 40) + @Excel(name = "组织名称", width = 40, needMerge = true) private String organizationName; - @Excel(name = "组织人数", width = 20) + @Excel(name = "组织人数", width = 20, needMerge = true) private Integer organizationPersonCount; - @Excel(name = "负责人姓名", width = 20) + @Excel(name = "负责人", width = 20, needMerge = true) private String principalName; - @Excel(name = "负责人电话", width = 20) + @Excel(name = "联系电话", width = 20, needMerge = true) private String principalPhone; - @Excel(name = "服务事项", width = 60) + @Excel(name = "服务事项", width = 60, needMerge = true) private String serviceItem; - @Excel(name = "社区自组织创建时间", width = 20) + @Excel(name = "创建时间", width = 20, needMerge = true) private String organizationCreatedTime; + @ExcelCollection(name = "组织成员") + private List organizationPersonnel; + } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ImportCommunitySelfOrganizationSon.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ImportCommunitySelfOrganizationSon.java index 7fb44af70e..89fb1fc458 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ImportCommunitySelfOrganizationSon.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/excel/ImportCommunitySelfOrganizationSon.java @@ -14,7 +14,7 @@ public class ImportCommunitySelfOrganizationSon { @Excel(name = "姓名") private String personName; - @Excel(name = "电话") + @Excel(name = "电话", width = 20) private String personPhone; }