Browse Source

党员导出

dev
zhaoqifeng 3 years ago
parent
commit
22569f3bab
  1. 57
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java
  2. 117
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/IcPartyMemberExcel.java
  3. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVolunteerPolyServiceImpl.java

57
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java

@ -1,11 +1,20 @@
package com.epmet.modules.partymember.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
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.utils.poi.excel.handler.FreezeAndFilter;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
@ -16,12 +25,15 @@ import com.epmet.modules.partymember.service.IcPartyMemberService;
import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO;
import com.epmet.resi.partymember.dto.partymember.form.IcPartyMemberFromDTO;
import com.epmet.resi.partymember.dto.partymember.result.IcPartyMemberResultDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
/**
@ -30,6 +42,7 @@ import java.util.Map;
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-17
*/
@Slf4j
@RestController
@RequestMapping("icPartyMember")
public class IcPartyMemberController {
@ -74,10 +87,44 @@ public class IcPartyMemberController {
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<IcPartyMemberDTO> list = icPartyMemberService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, IcPartyMemberExcel.class);
@NoRepeatSubmit
@PostMapping("export")
public void export(@LoginUser TokenDto tokenDto, @RequestBody IcPartyMemberFromDTO formDTO, HttpServletResponse response) throws Exception {
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setIsPage(false);
formDTO.setPageSize(NumConstant.TEN_THOUSAND);
ExcelWriter excelWriter = null;
AtomicInteger i = new AtomicInteger(1);
try {
String fileName = "党员管理.xlsx";
excelWriter = EasyExcel.write(ExcelUtils.getOutputStreamForExcel(fileName, response), IcPartyMemberExcel.class).build();
PageData<IcPartyMemberResultDTO> page = null;
WriteSheet writeSheet = EasyExcel.writerSheet("Sheet1").registerWriteHandler(new FreezeAndFilter()).build();
do {
page = icPartyMemberService.page(tokenDto, formDTO);
List<IcPartyMemberExcel> list = ConvertUtils.sourceToTarget(page.getList(), IcPartyMemberExcel.class);
list.forEach(item -> {
item.setIndex(i.getAndIncrement());
});
excelWriter.write(list, writeSheet);
formDTO.setPageNo(formDTO.getPageNo() + NumConstant.ONE);
} while (CollectionUtils.isNotEmpty(page.getList()) && page.getList().size() == formDTO.getPageSize());
} catch (EpmetException e) {
response.reset();
response.setCharacterEncoding("UTF-8");
response.setHeader("content-type", "application/json; charset=UTF-8");
PrintWriter printWriter = response.getWriter();
Result<Object> result = new Result<>().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),e.getMsg());
printWriter.write(JSON.toJSONString(result));
printWriter.close();
} catch (Exception e) {
log.error("export exception", e);
} finally {
if (excelWriter != null) {
excelWriter.finish();
}
}
}
@PostMapping("icPartyMemberSync")

117
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/IcPartyMemberExcel.java

@ -1,111 +1,84 @@
package com.epmet.modules.partymember.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import lombok.Data;
import java.util.Date;
/**
* 数字平台党员信息表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2022-05-17
*/
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 44)
@Data
public class IcPartyMemberExcel {
@Excel(name = "唯一标识")
private String id;
@Excel(name = "客户Id customer.id")
private String customerId;
@Excel(name = "党组织的所有上级ID,没有上级时为0")
private String orgPids;
@Excel(name = "行政组织 机关ID")
private String agencyId;
@Excel(name = "行政组织 机关ID")
private String agencyPids;
@Excel(name = "对应的ic_resi_user主表Id")
private String icResiUser;
@ColumnWidth(10)
@ExcelProperty(value = "序号",order = 1)
private Integer index;
@Excel(name = "姓名")
@ColumnWidth(20)
@ExcelProperty(value = "姓名",order = 2)
private String name;
@Excel(name = "手机号")
private String mobile;
@Excel(name = "身份证号")
@ColumnWidth(20)
@ExcelProperty(value = "身份证号",order = 3)
private String idCard;
@Excel(name = "地址")
private String address;
@ColumnWidth(20)
@ExcelProperty(value = "手机号",order = 4)
private String mobile;
@Excel(name = "入党时间")
@ColumnWidth(20)
@ExcelProperty(value = "入党时间",order = 5)
private String rdsj;
@Excel(name = "所属支部")
@ColumnWidth(20)
@ExcelProperty(value = "所属党组织",order = 6)
private String sszb;
@Excel(name = "是否流动党员")
@ColumnWidth(20)
@ExcelProperty(value = "流动党员",order = 7)
private String isLd;
@Excel(name = "流动党员活动证号")
@ColumnWidth(20)
@ExcelProperty(value = "流动党员证号",order = 8)
private String ldzh;
@Excel(name = "职务")
@ColumnWidth(20)
@ExcelProperty(value = "职务",order = 9)
private String partyZw;
@Excel(name = "是否退休")
private String isTx;
@ColumnWidth(20)
@ExcelProperty(value = "地址",order = 10)
private String address;
@Excel(name = "是否党员中心户")
private String isDyzxh;
@ColumnWidth(20)
@ExcelProperty(value = "是否缴费",order = 11)
private String isPay;
@Excel(name = "是否免学习0否,1是")
private String isMxx;
@ColumnWidth(20)
@ExcelProperty(value = "最近一次缴纳党费时间",order = 12)
private String payDate;
@Excel(name = "文化程度【字典表】")
@ColumnWidth(20)
@ExcelProperty(value = "文化程度",order = 13)
private String culture;
@Excel(name = "备注")
private String remark;
@Excel(name = "预留字段1")
private String field1;
@Excel(name = "预留字段2")
private String field2;
@Excel(name = "预留字段3")
private String field3;
@Excel(name = "预留字段4")
private String field4;
@Excel(name = "预留字段5")
private String field5;
@ColumnWidth(20)
@ExcelProperty(value = "量化积分",order = 14)
private String point;
@Excel(name = "删除标识 0.未删除 1.已删除")
private Integer delFlag;
@ColumnWidth(20)
@ExcelProperty(value = "志愿者类别",order = 15)
private String volunteerCategory;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
@ColumnWidth(20)
@ExcelProperty(value = "备注",order = 16)
private String remark;
}

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVolunteerPolyServiceImpl.java

@ -304,7 +304,7 @@ public class IcVolunteerPolyServiceImpl extends BaseServiceImpl<IcVolunteerPolyD
IcResiUserEntity icUser = icResiUserDao.selectById(userId);
if (null != icUser) {
//设置wrapper条件
List<IcVolunteerPolyDTO> volunteerList = icResiUserDao.getVolunteerList(customerId, null);
List<IcVolunteerPolyDTO> volunteerList = icResiUserDao.getVolunteerList(customerId, userId);
LambdaQueryWrapper<IcVolunteerPolyEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(IcVolunteerPolyEntity::getCustomerId, customerId);
wrapper.eq(IcVolunteerPolyEntity::getIcResiUser, userId);

Loading…
Cancel
Save