CeDo
2021-04-08 a7dd9cf5f2a39f07445efdcdcb2eecb0b4e4a37e
ADD:党员认证
9个文件已修改
3个文件已添加
282 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/model/dtos/ComPbMemberCertificationDTO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PagePartyBuildingMemberVO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingMemberVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/dto/PartyBuildingMemberDTO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbMemberDAO.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbMemberDO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComPbMemberService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java
@@ -3,8 +3,10 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.applets.weixin.CheckService;
import com.panzhihua.applets.model.dtos.ComPbMemberCertificationDTO;
import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO;
import com.panzhihua.common.model.vos.community.*;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingMemberVO;
import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO;
import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
import com.panzhihua.common.model.vos.user.UserPhoneVO;
@@ -12,7 +14,6 @@
import com.panzhihua.common.service.partybuilding.PartyBuildingService;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.exceptions.UnAuthenticationException;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.validated.AddGroup;
@@ -20,6 +21,7 @@
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -300,5 +302,56 @@
        return userService.addFeedback(sysUserFeedbackDTO);
    }
    @ApiOperation(value = "党员认证" )
    @PostMapping("partybuildingembercertification")
    public R partybuildingembercertification(@RequestBody @Validated(AddGroup.class) ComPbMemberCertificationDTO comPbMemberCertificationDTO) {
        //totest 党员认证
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        Long userId = loginUserInfo.getUserId();
        Long communityId = loginUserInfo.getCommunityId();
        if (null==communityId||0==communityId) {
            return R.fail("未绑定社区");
        }
        //判断用户是否已认证成功
        R certUser = partyBuildingService.userCertification(userId);
        Object certUserInfo = certUser.getData();
        boolean userCertified = false;
        if(certUserInfo!=null){
            PartyBuildingMemberVO certUserVo = (PartyBuildingMemberVO) certUserInfo;
            //已认证党员身份,直接返回
            userCertified = certUserVo.getAuditResult()==1;
        }
        //匹配手机,验证是否进行自动确认
        if(userCertified){
            return R.fail("用户已完成党员认证");
        }
        PartyBuildingMemberVO partyBuildingMemberVO = new PartyBuildingMemberVO();
        BeanUtils.copyProperties(comPbMemberCertificationDTO, partyBuildingMemberVO);
        //用户实名认证信息判断
        String idCard = loginUserInfo.getIdCard();
        partyBuildingMemberVO.setUserId(userId);
        if(idCard==null) {
            return R.fail("用户未完成实名认证");
        }else{
            partyBuildingMemberVO.setIdCard(loginUserInfo.getIdCard());
            partyBuildingMemberVO.setName(loginUserInfo.getName());
        }
        R r = partyBuildingService.addPartyBuildingMember(partyBuildingMemberVO);
        return r;
    }
    @ApiOperation(value = "党员认证查询" )
    @GetMapping("partybuildingembercertification")
    public R partybuildingembercertification() {
        //totest 党员认证查询
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        Long userId = loginUserInfo.getUserId();
        return partyBuildingService.userCertification(userId);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/model/dtos/ComPbMemberCertificationDTO.java
New file
@@ -0,0 +1,26 @@
package com.panzhihua.applets.model.dtos;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * 党员认证
 */
@Data
@ApiModel("我的》党员认证")
public class ComPbMemberCertificationDTO {
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "入党时间")
    private Date joinTime;
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    @ApiModelProperty(value = "转正时间")
    private Date employmentTime;
    @ApiModelProperty(value = "所属党组织id")
    private Long orgId;
    @ApiModelProperty(value = "头像图片路径")
    private String photoPath;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PagePartyBuildingMemberVO.java
New file
@@ -0,0 +1,28 @@
package com.panzhihua.common.model.vos.partybuilding;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 分页党员认证
 * @author: cedoo
 * @create: 2021-4-7
 **/
@Data
@ApiModel(value = "分页党员认证")
public class PagePartyBuildingMemberVO {
    @ApiModelProperty(value ="手机号")
    private String phone;
    @ApiModelProperty(value ="姓名")
    private String name;
    @ApiModelProperty(value ="状态")
    private Integer auditStatus;
    @ApiModelProperty(value ="当前页数")
    private Long pageNum;
    @ApiModelProperty(value ="每页记录数")
    private Long pageSize;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingMemberVO.java
@@ -47,4 +47,8 @@
    @ApiModelProperty(value = "报名时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createAt;
    @ApiModelProperty(value = "用户ID",hidden=true)
    private Long userId;
    @ApiModelProperty(value = "党员审查结果: 0 待审核 1 已审核 2 自动认证 3 已驳回")
    private Integer auditResult;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java
@@ -364,7 +364,19 @@
    @PostMapping("/partybuildIng/addactivityinfo")
    R addActivityApplets(@RequestBody ComPbActivityDTO comPbActivityDTO);
    /**
     * 查询用户党员认证信息
     * @param id 用户ID
     * @return 查询结果
     */
    @GetMapping("/partybuildIng/usercertification")
    R userCertification(@RequestParam Long id);
    /**
     * 查询待认证党员信息
     * @param pagePartyBuildingMemberVO 查询参数
     * @return 查询结果
     */
    @GetMapping("/partybuildIng/pageusercertification")
    R pagePrePartybuildingmember(PagePartyBuildingMemberVO pagePartyBuildingMemberVO);
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java
@@ -21,6 +21,7 @@
import com.panzhihua.common.utlis.SFTPUtil;
import com.panzhihua.common.validated.AddGroup;
import com.panzhihua.community_backstage.listen.PartyBuildingMemberExcelListen;
import com.panzhihua.community_backstage.model.dto.PartyBuildingMemberDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import javassist.expr.NewArray;
@@ -517,4 +518,41 @@
        comActMessageVO.setUserId(loginUserInfo.getUserId());
        return communityService.pageMyCommunityMessage(comActMessageVO);
    }
    @ApiOperation(value = "待认证党员分页查询")
    @DeleteMapping("pageprepartybuildingmember")
    public R pagePrePartybuildingmember(@RequestBody PagePartyBuildingMemberVO pagePartyBuildingMemberVO) {
        //totest 待认证党员分页查询
        return partyBuildingService.pagePrePartybuildingmember(pagePartyBuildingMemberVO);
    }
    @ApiOperation(value = "待认证党员审核")
    @DeleteMapping("reviewprepartybuildingmember")
    public R reviewPrePartybuildingmember(@RequestBody PartyBuildingMemberDTO partyBuildingMemberDTO) {
        //totest 待认证党员审核
        PartyBuildingMemberVO partyBuildingMemberVO = new PartyBuildingMemberVO();
        partyBuildingMemberVO.setId(partyBuildingMemberDTO.getId());
        /**
         * 0 待审核 1 已审核 2 自动认证 3 已驳回
         */
        switch (partyBuildingMemberDTO.getType()){
            case 1:
                partyBuildingMemberVO.setAuditResult(1);
                break;
            case 0:
                partyBuildingMemberVO.setAuditResult(3);
                break;
            default:
                return R.fail("参数错误");
        }
        R updated = partyBuildingService.updatePartyBuildingMember(partyBuildingMemberVO);
        //审核通过: 修改用户的党员状态
        if(R.isOk(updated)) {
            userService.updateUserIsPartymember(partyBuildingMemberVO.getIdCard());
        }
        return updated;
    }
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/dto/PartyBuildingMemberDTO.java
New file
@@ -0,0 +1,20 @@
package com.panzhihua.community_backstage.model.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
@ApiModel("党员审核")
public class PartyBuildingMemberDTO {
    @ApiModelProperty(value = "id", required = true)
    private Long id;
    @ApiModelProperty(value = "操作类型 1通过 0 驳回", required = true, allowableValues = "0 或者 1")
    @NotBlank(message = "操作类型不能为空")
    private Integer type;
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java
@@ -1,5 +1,6 @@
package com.panzhihua.service_dangjian.api;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.panzhihua.common.exceptions.PartyBuildingMemberException;
import com.panzhihua.common.model.dtos.partybuilding.ActivitySignUpDTO;
import com.panzhihua.common.model.dtos.partybuilding.ComPbActivityDTO;
@@ -7,6 +8,7 @@
import com.panzhihua.common.model.dtos.partybuilding.PageComPbServiceTeamDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.partybuilding.*;
import com.panzhihua.service_dangjian.model.dos.ComPbMemberDO;
import com.panzhihua.service_dangjian.service.ComBpActivityService;
import com.panzhihua.service_dangjian.service.ComPbMemberService;
import com.panzhihua.service_dangjian.service.ComPbServiceTeamService;
@@ -507,4 +509,25 @@
        return comBpActivityService.addActivityApplets(comPbActivityDTO);
    }
    /**
     * 查询用户认证信息
     * @param id 用户id
     * @return 查询结果
     */
    @GetMapping("usercertification")
    R userCertification(@RequestParam("id")Long id){
        ComPbMemberDO comPbMemberDO = comPbMemberService.getOne(new QueryWrapper<ComPbMemberDO>().lambda().eq(ComPbMemberDO::getUserId, id));
        return R.ok(comPbMemberDO);
    }
    /**
     * 查询用户认证信息
     * @param pagePartyBuildingMemberVO 查询参数
     * @return 查询结果
     */
    @GetMapping("pageusercertification")
    R pageUserCertification(@RequestBody PagePartyBuildingMemberVO pagePartyBuildingMemberVO){
        return comPbMemberService.pagePrePartyBuilingMember(pagePartyBuildingMemberVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbMemberDAO.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.partybuilding.PagePartyBuildingMemberVO;
import com.panzhihua.common.model.vos.partybuilding.PagePartyOrganizationVO;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingMemberVO;
import com.panzhihua.service_dangjian.model.dos.ComPbMemberDO;
@@ -78,4 +79,43 @@
    String selectNameByUserId(Long createBy);
    @Update("update sys_user u set u.is_partymember=0 where u.id_card=#{idCard}")
    void updateUserIsPartymember(String idCard);
    @Select("<script> " +
            "SELECT\n" +
            "o.`name` orgName,\n" +
            "m.org_id,\n"+
            "m.id_card,\n"+
            "m.`id`,\n" +
            "u.phone,\n" +
            "m.`name`,\n" +
            "m.photo_path,\n" +
            "TIMESTAMPDIFF(\n" +
            "YEAR,\n" +
            "m.employment_time,\n" +
            "DATE_FORMAT( NOW(), '%Y-%m-%d' )) partyAge,\n" +
            "m.join_time,\n" +
            "m.audit_result, \n" +
            "m.employment_time,\n" +
            "CASE\n" +
            "WHEN u.id_card IS NULL THEN\n" +
            "'未注册' ELSE '已注册' \n" +
            "END STATUS \n" +
            "FROM\n" +
            "com_pb_member m\n" +
            "LEFT JOIN sys_user u ON m.id_card = u.id_card\n" +
            "LEFT JOIN com_pb_org o ON m.org_id = o.id"+
            " where m.user_id is not null  " +
            "<if test='pagePartyBuildingMemberVO.phone != null and pagePartyBuildingMemberVO.phone.trim() != &quot;&quot;'>" +
            "and u.phone = #{pagePartyBuildingMemberVO.phone} "+
            " </if> " +
            "<if test='pagePartyBuildingMemberVO.name != null and pagePartyBuildingMemberVO.name.trim() != &quot;&quot;'>" +
            "and u.name like concat (#{pagePartyBuildingMemberVO.name},'%')"+
            " </if> " +
            "<if test='pagePartyBuildingMemberVO.auditStatus != null and pagePartyBuildingMemberVO.auditStatus.trim() != &quot;&quot;'>" +
            "and m.audit_status = #{pagePartyBuildingMemberVO.auditStatus}"+
            " </if> " +
            "order by m.join_time desc "+
            "</script>")
    IPage<PartyBuildingMemberVO> pagePartyBuildingMemberVO(Page page, @Param("pagePartyBuildingMemberVO") PagePartyBuildingMemberVO pagePartyBuildingMemberVO);
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbMemberDO.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@@ -76,4 +77,9 @@
     */
    private Long communityId;
    /**
     * 用户id
     */
    private Long userId;
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComPbMemberService.java
@@ -119,4 +119,11 @@
     * @return 刷新数据数量
     */
    R timedTaskPartyBuildingStatus();
    /**
     * 分页查询认证党员
     * @param pagePartyBuildingMemberVO 查询参数
     * @return 分页数据
     */
    R pagePrePartyBuilingMember(PagePartyBuildingMemberVO pagePartyBuildingMemberVO);
}
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java
@@ -474,4 +474,23 @@
        return R.ok(num);
    }
    @Override
    public R pagePrePartyBuilingMember(PagePartyBuildingMemberVO pagePartyBuildingMemberVO) {
        Page page=new Page<>();
        Long pageNum = pagePartyBuildingMemberVO.getPageNum();
        Long pageSize = pagePartyBuildingMemberVO.getPageSize();
        if (null==pageNum||0==pageNum) {
            pageNum=1l;
        }
        if (null==pageSize||0==pageSize) {
            pageSize=10l;
        }
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        IPage<PartyBuildingMemberVO> iPage=comPbMemberDAO.pagePartyBuildingMemberVO(page, pagePartyBuildingMemberVO);
        return R.ok(iPage);
    }
}