mitao
3 天以前 dbece172a57c74eff448f7feb4ebe1fd4131a536
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/PartyMemberServiceImpl.java
@@ -14,6 +14,7 @@
import com.panzhihua.common.redis.RedisUtils;
import com.panzhihua.sangeshenbian.dao.PartyMemberMapper;
import com.panzhihua.sangeshenbian.enums.AuditStatusEnum;
import com.panzhihua.sangeshenbian.enums.FreezeStatusEnum;
import com.panzhihua.sangeshenbian.enums.ReportTypeEnum;
import com.panzhihua.sangeshenbian.model.entity.*;
import com.panzhihua.sangeshenbian.model.excel.PartyMemberExcel;
@@ -48,6 +49,7 @@
    private final IComStreetService comStreetService;
    private final IComActService comActService;
    private final RedisUtils redisUtils;
    private final ISystemUserLevelService systemUserLevelService;
    /**
     * 党员分页查询列表
     *
@@ -57,7 +59,33 @@
     */
    @Override
    public Page<PartyMember> pageList(PartyMemberQuery query, SystemUserVo loginUserInfo) {
        SystemUser user = systemUserService.getById(loginUserInfo.getId());
        if (Objects.isNull(user)){
            throw new ServiceException("用户不存在");
        }
        loginUserInfo.setAccountLevel(user.getAccountLevel());
        loginUserInfo.setDistrictsCode(user.getDistrictsCode());
        loginUserInfo.setStreetId(user.getStreetId());
        loginUserInfo.setCommunityId(user.getCommunityId());
        return  baseMapper.pageList(new Page<>(query.getPageNum(), query.getPageSize()),query,loginUserInfo);
        // 判断当前登录用户是否有权限查看这个社区的党员
//        if(loginUserInfo.getAccountLevel()==1){
//            // 是市级权限 全查
//            return  baseMapper.pageList(new Page<>(query.getPageNum(), query.getPageSize()),query,loginUserInfo);
//        }
//        if(loginUserInfo.getAccountLevel()==2){
//            // 是区县权限
//            // 判断当前登录用户是否有权限查看这个社区的党员
//            LambdaQueryWrapper<PartyMember> queryWrapper = new LambdaQueryWrapper<>();
//            queryWrapper.eq(PartyMember::getDistrictsCode,loginUserInfo.getDistrictsCode());
//            if(StrUtil.isNotBlank(query.getName())){
//                queryWrapper.like(PartyMember::getName,query.getName());
//            }
//            if(StrUtil.isNotBlank(query.getIdNumber())){}
//        }
//        return null;
    }
    /**
     * 添加党员
@@ -69,13 +97,27 @@
        PartyMember partyMember = BeanUtil.copyProperties(dto, PartyMember.class);
        String idNumber = dto.getIdNumber();
        partyMember.setGender(getGender(idNumber));
        BcRegion districtByCode = bcRegionService.getDistrictByCode(dto.getDistrictsCode());
        if (Objects.nonNull(districtByCode)){
            partyMember.setDistricts(districtByCode.getRegionName());
        }
        ComStreet street = comStreetService.getById(dto.getStreetId());
        if (Objects.nonNull(street)){
            partyMember.setStreet(street.getName());
        }
        ComAct act = comActService.getById(dto.getCommunityId());
        if (Objects.nonNull(act)){
            partyMember.setCommunity(act.getName());
        }
        if (Objects.isNull(dto.getId())) {
            //添加
            partyMember.setCreateBy(Long.parseLong(loginUserInfo.getId().toString()));
            partyMember.setAuditStatus(AuditStatusEnum.APPROVED.getCode());
            partyMember.setFreezeStatus(FreezeStatusEnum.NORMAL.getCode());
            partyMember.setSource(1);
            save(partyMember);
        } else {
            partyMember.setIsConfirm(0);
            partyMember.setUpdateBy(Long.parseLong(loginUserInfo.getId().toString()));
            updateById(partyMember);
        }
@@ -86,11 +128,12 @@
     * @param loginUserInfo
     */
    @Override
    public void freeze(Long id, SystemUserVo loginUserInfo) {
    public PartyMember freeze(Long id, SystemUserVo loginUserInfo) {
        PartyMember partyMember = getById(id);
        partyMember.setFreezeStatus(partyMember.getFreezeStatus() == 1 ? 0 : 1);
        partyMember.setUpdateBy(Long.parseLong(loginUserInfo.getId().toString()));
        updateById(partyMember);
        return partyMember;
    }
    @Override
@@ -111,7 +154,15 @@
     */
    @Override
    public void export(PartyMemberQuery query, SystemUserVo loginUserInfo) throws IOException {
     List<PartyMember> list = baseMapper.queryList(query,loginUserInfo);
        SystemUser user = systemUserService.getById(loginUserInfo.getId());
        if (Objects.isNull(user)){
            throw new ServiceException("用户不存在");
        }
        loginUserInfo.setAccountLevel(user.getAccountLevel());
        loginUserInfo.setDistrictsCode(user.getDistrictsCode());
        loginUserInfo.setStreetId(user.getStreetId());
        loginUserInfo.setCommunityId(user.getCommunityId());
        List<PartyMember> list = baseMapper.queryList(query,loginUserInfo);
        List<PartyMemberExcel> partyMemberExcels = BeanUtil.copyToList(list, PartyMemberExcel.class);
        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
        response.setCharacterEncoding("utf-8");
@@ -214,11 +265,12 @@
                            // 验证社区是否存在且属于该街道
                            // 实际代码应该是调用相应的Service查询社区信息
                            ComAct comAct = comActService.getCommunityByNameAndStreet(communityName, comStreet.getStreetId());
                            streetId = comStreet.getStreetId();
                            communityId = comAct.getCommunityId();
                            if (Objects.isNull(comAct)) {
                                isValid = false;
                                errorMsg.append("社区不存在或不属于所选街道; ");
                            } else {
                                streetId = comStreet.getStreetId();
                                communityId = comAct.getCommunityId();
                            }
                        }
                    }
@@ -242,8 +294,8 @@
                //导入党员默认审核通过
                partyMember.setAuditStatus(AuditStatusEnum.APPROVED.getCode());
                partyMember.setSource(1);//管理后台录入
                //默认头像 TODO 默认头像
                partyMember.setAvatar("");
                //默认头像
                partyMember.setAvatar("https://www.psciio.com//idcard/f15c91f940624ed59537ecced1059f18.jpg");
                // 根据身份证号设置性别
                if (StrUtil.isNotBlank(template.getIdNumber())) {
                    partyMember.setGender(getGender(template.getIdNumber()));
@@ -295,10 +347,11 @@
     * @param loginUserInfo
     */
    @Override
    public void audit(PartyMemberDTO dto, SystemUserVo loginUserInfo) {
    public PartyMember audit(PartyMemberDTO dto, SystemUserVo loginUserInfo) {
        PartyMember partyMember = BeanUtil.copyProperties(dto, PartyMember.class);
        partyMember.setUpdateBy(Long.parseLong(loginUserInfo.getId().toString()));
        updateById(partyMember);
        return this.getById(dto.getId());
    }
    @Override
@@ -311,11 +364,6 @@
                .ne(SystemUser::getAccountLevel, 5)
                .last("LIMIT 1"));
        // 获取党员信息
        PartyMember partyMember = getOne(new LambdaQueryWrapper<PartyMember>()
                .eq(PartyMember::getPhone, loginUserInfo.getPhone())
                .eq(PartyMember::getDelFlag, 0));
        if (adminUser == null){
@@ -323,7 +371,7 @@
        }
        Integer identity = (Integer) redisUtils.get("identity:" + loginUserInfo.getPhone());
        if(identity == null || identity == 2){
        if(identity != null && identity != 2){
            throw new ServiceException("请切换至管理员身份");
        }