From 9c2e0c9cad7d48014df7fdbe0a7292f86d95f3ae Mon Sep 17 00:00:00 2001 From: luofl <1442745593@qq.com> Date: 星期六, 15 三月 2025 19:03:32 +0800 Subject: [PATCH] 1. --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/PartyMemberApplicationRequest.java | 57 +++++++++++++++++++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java | 58 ++++++++++++++++++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/PartyMemberMapper.java | 11 +++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/PartyMemberMapper.xml | 30 ++++++++++ 4 files changed, 154 insertions(+), 2 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/PartyMemberMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/PartyMemberMapper.java index f45cdaf..4417e21 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/PartyMemberMapper.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/PartyMemberMapper.java @@ -5,6 +5,7 @@ import com.panzhihua.sangeshenbian.model.entity.PartyMember; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.panzhihua.sangeshenbian.warpper.PartyMemberQuery; +import com.panzhihua.sangeshenbian.warpper.PendingPartyMemberApplicationVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -34,4 +35,14 @@ * @return */ List<PartyMember> queryList( @Param("query") PartyMemberQuery query, @Param("loginUserInfo") SystemUserVo loginUserInfo); + + /** + * 党员待审核申请列表 + */ + Page<PendingPartyMemberApplicationVO> queryPreAuditPage(@Param("page") Page<PendingPartyMemberApplicationVO> page, + @Param("userId") Long userId, + @Param("accountLevel") Integer accountLevel, + @Param("districtsCode") String districtsCode, + @Param("streetId") String streetId, + @Param("communityId") Long communityId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java index 760517c..5e71a8a 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java @@ -2,19 +2,29 @@ import cn.hutool.core.bean.BeanUtil; import cn.idev.excel.FastExcel; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; -import com.panzhihua.sangeshenbian.model.entity.PartyMember; import com.panzhihua.sangeshenbian.dao.PartyMemberMapper; +import com.panzhihua.sangeshenbian.enums.AuditStatusEnum; +import com.panzhihua.sangeshenbian.enums.ReportTypeEnum; +import com.panzhihua.sangeshenbian.model.entity.PartyMember; +import com.panzhihua.sangeshenbian.model.entity.SystemUser; import com.panzhihua.sangeshenbian.model.excel.PartyMemberExcel; import com.panzhihua.sangeshenbian.model.excel.PartyMemberTemplate; import com.panzhihua.sangeshenbian.service.IPartyMemberService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import com.panzhihua.sangeshenbian.warpper.PartyMemberApplicationRequest; import com.panzhihua.sangeshenbian.warpper.PartyMemberDTO; import com.panzhihua.sangeshenbian.warpper.PartyMemberQuery; +import com.panzhihua.sangeshenbian.warpper.PendingPartyMemberApplicationVO; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @@ -35,6 +45,7 @@ @RequiredArgsConstructor(onConstructor_ = {@Lazy}) public class PartyMemberServiceImpl extends ServiceImpl<PartyMemberMapper, PartyMember> implements IPartyMemberService { private final HttpServletResponse response; + private final ISystemUserService systemUserService; /** * 党员分页查询列表 * @@ -116,6 +127,19 @@ } + @Override + @Transactional(rollbackFor = Exception.class) + public void applyForMembership(PartyMemberApplicationRequest dto, LoginUserInfoVO loginUserInfo) { + PartyMember partyMember = BeanUtil.copyProperties(dto, PartyMember.class); + String idNumber = dto.getIdNumber(); + partyMember.setPhone(loginUserInfo.getPhone()); + partyMember.setGender(getGender(idNumber)); + partyMember.setCreateBy(loginUserInfo.getUserId()); + partyMember.setAuditStatus(AuditStatusEnum.PENDING.getCode()); + saveOrUpdate(partyMember); + } + + /** * 审核 * @@ -129,6 +153,36 @@ updateById(partyMember); } + @Override + public Page<PendingPartyMemberApplicationVO> preAuditList(Page<PendingPartyMemberApplicationVO> page, + LoginUserInfoVO loginUserInfo) { + SystemUser adminUser = systemUserService.getOne(new LambdaQueryWrapper<SystemUser>() + .eq(SystemUser::getPhone, loginUserInfo.getPhone()) + .eq(SystemUser::getIsAdmin, 1) + .ne(SystemUser::getStatus, 3) + .last("LIMIT 1")); + + if (adminUser == null){ + throw new ServiceException("无权审核"); + } + + int accountLevel = adminUser.getAccountLevel(); + Long communityId = null; + String streetId = null; + String districtsCode = null; + if (accountLevel == ReportTypeEnum.COMMUNITY.getCode()) { + communityId = adminUser.getCommunityId(); + } else if (accountLevel == ReportTypeEnum.STREET.getCode()) { + streetId = adminUser.getStreetId(); + } else if (accountLevel == ReportTypeEnum.DISTRICT.getCode()) { + districtsCode = adminUser.getDistrictsCode(); + } else if(accountLevel != ReportTypeEnum.PARTY.getCode()){ + throw new ServiceException("无权审核:未知等级"); + } + Long userId = loginUserInfo.getUserId(); + return this.baseMapper.queryPreAuditPage(page, userId, accountLevel, districtsCode, streetId, communityId); + } + /** * 根据身份证号获取性别 * @param idNumber diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/PartyMemberApplicationRequest.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/PartyMemberApplicationRequest.java index e69de29..da3e105 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/PartyMemberApplicationRequest.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/PartyMemberApplicationRequest.java @@ -0,0 +1,57 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +@ApiModel("党员申请传输对象") +public class PartyMemberApplicationRequest { + + @ApiModelProperty(value = "主键id", notes = "编辑时必填") + private Long id; + + @ApiModelProperty(value = "姓名") + @NotBlank(message = "姓名不能空") + private String name; + + @ApiModelProperty(value = "身份证号") + @NotBlank(message = "身份证号不能空") + private String idNumber; + + @ApiModelProperty(value = "所属区县") + @NotBlank(message = "区县不能空") + private String districts; + + @ApiModelProperty(value = "区县编号") + @NotBlank(message = "区县编号不能空") + private String districtsCode; + + @ApiModelProperty(value = "街道") + @NotBlank(message = "街道不能空") + private String street; + + @ApiModelProperty(value = "街道ID") + @NotBlank(message = "街道ID不能空") + private String streetId; + + @ApiModelProperty(value = "社区") + @NotBlank(message = "社区不能空") + private String community; + + @ApiModelProperty(value = "社区ID") + @NotBlank(message = "社区ID不能空") + private Long communityId; + + @ApiModelProperty(value = "服务对象") + private String serviceTarget; + + @ApiModelProperty(value = "所在党组织") + private String partyOrganization; + + @ApiModelProperty(value = "头像") + @NotBlank(message = "头像不能空") + private String avatar; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/PartyMemberMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/PartyMemberMapper.xml index d85a840..e49f0f4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/PartyMemberMapper.xml +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/PartyMemberMapper.xml @@ -109,4 +109,34 @@ </where> ORDER BY create_time DESC </select> + <select id="queryPreAuditPage" + resultType="com.panzhihua.sangeshenbian.warpper.PendingPartyMemberApplicationVO"> + SELECT + id, + audit_status, + `name`, + gender, + id_number, + phone, + districts, + street, + community, + service_target, + party_organization, + avatar, + create_time + FROM + sgsb_party_member + WHERE + audit_status = 0 and create_by != ${userId} + <if test="accountLevel==2"> + and districts_code = #{districtsCode} + </if> + <if test="accountLevel==3"> + and street_id = #{streetId} + </if> + <if test="accountLevel==4"> + and community_id = #{communityId} + </if> + </select> </mapper> -- Gitblit v1.7.1