From 5a0f0eabd7b580319fe7112f0c45f28bbb3121f0 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Wed, 18 May 2022 19:06:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=9A=E5=91=98=E7=AE=A1=E7=90=86=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/IcPartyMemberFromDTO.java | 84 +++++++++++++++++ .../result/IcPartyMemberResultDTO.java | 82 +++++++++++++++++ .../controller/IcPartyMemberController.java | 12 ++- .../partymember/dao/IcPartyMemberDao.java | 14 ++- .../service/IcPartyMemberService.java | 9 +- .../impl/IcPartyMemberServiceImpl.java | 72 ++++++++++++--- .../mapper/partymember/IcPartyMemberDao.xml | 89 +++++++++++++++++++ .../service/impl/IcResiUserServiceImpl.java | 1 + 8 files changed, 345 insertions(+), 18 deletions(-) create mode 100644 epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/IcPartyMemberFromDTO.java create mode 100644 epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/IcPartyMemberResultDTO.java diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/IcPartyMemberFromDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/IcPartyMemberFromDTO.java new file mode 100644 index 0000000000..42da9bdf94 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/form/IcPartyMemberFromDTO.java @@ -0,0 +1,84 @@ +package com.epmet.resi.partymember.dto.partymember.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/18 16:03 + */ +@NoArgsConstructor +@Data +public class IcPartyMemberFromDTO extends PageFormDTO implements Serializable { + private static final long serialVersionUID = -5751720367897462952L; + private String customerId; + /** + * 所属党组织 + */ + private String partyOrgId; + /** + * 姓名 + */ + private String name; + /** + * 手机 + */ + private String mobile; + /** + * 身份证号 + */ + private String idCard; + /** + * 地址 + */ + private String address; + /** + * 流动党员 + */ + private String isLd; + /** + * 流动党员证号 + */ + private String ldzh; + /** + * 职务 + */ + private String partyZw; + /** + * 是否党员中心户 + */ + private String isDyzxh; + /** + * 是否免学习 + */ + private String isMxx; + /** + * 文化程度 + */ + private String culture; + /** + * 是否缴费 + */ + private String isPay; + /** + * 入党时间开始 + */ + private String rdsjStartDate; + /** + * 入党时间结束 + */ + private String rdsjEndDate; + /** + * 最后一次缴费时间开始 + */ + private String payStatrDate; + /** + * 最后一次缴费时间结束 + */ + private String payEndDate; + private String year; +} diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/IcPartyMemberResultDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/IcPartyMemberResultDTO.java new file mode 100644 index 0000000000..bf4408f5a6 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/result/IcPartyMemberResultDTO.java @@ -0,0 +1,82 @@ +package com.epmet.resi.partymember.dto.partymember.result; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/18 16:33 + */ +@NoArgsConstructor +@Data +public class IcPartyMemberResultDTO implements Serializable { + + private static final long serialVersionUID = -4964061462850271428L; + /** + * 主键 + */ + private String id; + /** + * 姓名 + */ + private String name; + /** + * 身份证号 + */ + private String idCard; + /** + * 手机号 + */ + private String mobile; + /** + * 入党时间 + */ + private String rdsj; + /** + * 所属党组织 + */ + private String sszb; + /** + * 流动党员 + */ + private String isLd; + /** + * 流动党员证号 + */ + private String ldzh; + /** + * 职务 + */ + private String partyZw; + /** + * 地址 + */ + private String address; + /** + * 是否缴费 + */ + private String isPay; + /** + * 最近一次缴纳党费时间 + */ + private String payDate; + /** + * 文化程度 + */ + private String culture; + /** + * 量化积分 + */ + private String point; + /** + * 志愿者类别 + */ + private String volunteerCategory; + /** + * 备注 + */ + private String remark; +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java index d3ad0f31e8..cb246fcf2b 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java @@ -1,7 +1,9 @@ package com.epmet.modules.partymember.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -9,9 +11,11 @@ import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; -import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import com.epmet.modules.partymember.excel.IcPartyMemberExcel; 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 org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -34,9 +38,9 @@ public class IcPartyMemberController { private IcPartyMemberService icPartyMemberService; @RequestMapping("page") - public Result> page(@RequestParam Map params){ - PageData page = icPartyMemberService.page(params); - return new Result>().ok(page); + public Result> page(@LoginUser TokenDto tokenDto, @RequestBody IcPartyMemberFromDTO formDTO){ + PageData page = icPartyMemberService.page(tokenDto, formDTO); + return new Result>().ok(page); } @RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/IcPartyMemberDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/IcPartyMemberDao.java index 7860b8a4d9..dd8dede3af 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/IcPartyMemberDao.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/IcPartyMemberDao.java @@ -2,8 +2,12 @@ package com.epmet.modules.partymember.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.partymember.entity.IcPartyMemberEntity; +import com.epmet.resi.partymember.dto.partymember.form.IcPartyMemberFromDTO; +import com.epmet.resi.partymember.dto.partymember.result.IcPartyMemberResultDTO; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** * 数字平台党员信息表 * @@ -12,5 +16,13 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface IcPartyMemberDao extends BaseDao { - + /** + * 党员列表 + * + * @Param formDTO + * @Return {@link List< IcPartyMemberResultDTO>} + * @Author zhaoqifeng + * @Date 2022/5/18 17:01 + */ + List selectList(IcPartyMemberFromDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java index d3d8cfc352..8e9f3d7e4e 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java @@ -2,8 +2,11 @@ package com.epmet.modules.partymember.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; -import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.modules.partymember.entity.IcPartyMemberEntity; +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 java.util.List; import java.util.Map; @@ -19,12 +22,12 @@ public interface IcPartyMemberService extends BaseService { /** * 默认分页 * - * @param params + * @param formDTO * @return PageData * @author generator * @date 2022-05-17 */ - PageData page(Map params); + PageData page(TokenDto tokenDto, IcPartyMemberFromDTO formDTO); /** * 默认查询 diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java index 43fd68686e..88a3e86fa5 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java @@ -2,36 +2,44 @@ package com.epmet.modules.partymember.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; +import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.enums.DictTypeEnum; import com.epmet.commons.tools.enums.IcFormCodeEnum; import com.epmet.commons.tools.enums.PartyPostEnum; 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.redis.common.CustomerStaffRedis; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.IcFormOptionsQueryFormDTO; import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.OperCustomizeOpenFeignClient; +import com.epmet.modules.partyOrg.dao.IcPartyOrgDao; import com.epmet.modules.partyOrg.entity.IcPartyOrgEntity; import com.epmet.modules.partyOrg.service.IcPartyOrgService; import com.epmet.modules.partymember.dao.IcPartyMemberDao; import com.epmet.modules.partymember.entity.IcPartyMemberEntity; 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 com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -46,6 +54,8 @@ public class IcPartyMemberServiceImpl extends BaseServiceImpl page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, IcPartyMemberDTO.class); + public PageData page(TokenDto tokenDto, IcPartyMemberFromDTO formDTO) { + CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); + if (null == staffInfo) { + throw new EpmetException("获取工作人员信息失败"); + } + if (StringUtils.isBlank(formDTO.getPartyOrgId())) { + //获取工作人员所属组织同级的党组织 + LambdaQueryWrapper orgWrapper = new LambdaQueryWrapper<>(); + orgWrapper.eq(IcPartyOrgEntity::getCustomerId, formDTO.getCustomerId()); + orgWrapper.eq(IcPartyOrgEntity::getAgencyId, staffInfo.getAgencyId()); + IcPartyOrgEntity org = icPartyOrgDao.selectOne(orgWrapper); + if (null == org) { + return new PageData<>(Collections.emptyList(), 0); + } + formDTO.setPartyOrgId(org.getId()); + } + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setYear(DateUtils.format(new Date(), DateUtils.DATE_PATTERN_YYYY)); + PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize(), formDTO.getIsPage()); + List list = baseDao.selectList(formDTO); + + PageInfo pageInfo = new PageInfo<>(list); + //获取文化程度字典 + Result> education = epmetAdminOpenFeignClient.dictMap(DictTypeEnum.EDUCATION.getCode()); + if (!education.success()) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取文化程度信息失败", "获取文化程度信息失败"); + } + if (CollectionUtils.isNotEmpty(list)) { + //获取志愿者类别 + IcFormOptionsQueryFormDTO optionsForm = new IcFormOptionsQueryFormDTO(); + optionsForm.setCustomerId(tokenDto.getCustomerId()); + optionsForm.setFormCode(IcFormCodeEnum.RESI_BASE_INFO.getCode()); + optionsForm.setColumnName("VOLUNTEER_CATEGORY"); + Result> volunteerMap = operCustomizeOpenFeignClient.getOptionsMap(optionsForm); + //构造数据 + list.forEach(item -> { + item.setIsLd(NumConstant.ONE_STR.equals(item.getIsLd()) ? "是" : "否"); + item.setIsLd(NumConstant.ONE_STR.equals(item.getIsPay()) ? "是" : "否"); + item.setPartyZw(PartyPostEnum.getName(item.getPartyZw())); + item.setCulture(education.getData().get(item.getCulture())); + item.setPoint(("0.00").equals(item.getPoint()) ? StrConstant.HYPHEN : item.getPoint()); + List category = Arrays.asList(item.getVolunteerCategory().split(StrConstant.COMMA)); + List categoryNames = category.stream().map(volunteerMap.getData()::get).collect(Collectors.toList()); + item.setVolunteerCategory(String.join(String.valueOf((char) 10), categoryNames)); + }); + } + return new PageData<>(list, pageInfo.getTotal()); } @Override @@ -200,6 +251,7 @@ public class IcPartyMemberServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/IcPartyMemberDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/IcPartyMemberDao.xml index 80b5742174..d9c392f174 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/IcPartyMemberDao.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/IcPartyMemberDao.xml @@ -36,6 +36,95 @@ + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 9f89b5ad1f..a20d6a304a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -2038,6 +2038,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl