huanghongfa
2021-06-21 4105f520eaf7e1875a3d314dbaacf78064d07d35
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java
@@ -13,8 +13,11 @@
import com.panzhihua.common.model.vos.partybuilding.*;
import com.panzhihua.common.model.vos.user.SysUserVO;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.common.utlis.DateUtils;
import com.panzhihua.common.utlis.RichTextUtil;
import com.panzhihua.common.utlis.SensitiveUtil;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_dangjian.dao.*;
import com.panzhihua.service_dangjian.model.dos.*;
import com.panzhihua.service_dangjian.service.ComPbMemberService;
@@ -100,33 +103,46 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R listSavePartyBuildingMemberExcelVO(List<PartyBuildingMemberExcelVO> list) {
        Boolean aBoolean = stringRedisTemplate.hasKey(REDIS_ORG_ALL);
        ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue();
//        Boolean aBoolean = stringRedisTemplate.hasKey(REDIS_ORG_ALL);
//        ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue();
        List<PartyOrganizationVO> partyOrganizationVOS=new ArrayList<>();
        if (aBoolean) {
            String orgs = valueOperations.get(REDIS_ORG_ALL);
            if (!ObjectUtils.isEmpty(orgs)) {
               partyOrganizationVOS= JSONArray.parseArray(orgs,PartyOrganizationVO.class);
            }
        } else {
            List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(new LambdaQueryWrapper<>());
            if (!ObjectUtils.isEmpty(comPbOrgDOS)) {
                List<PartyOrganizationVO> partyOrganizationVOList=new ArrayList<>();
                comPbOrgDOS.forEach(comPbOrgDO -> {
                    PartyOrganizationVO partyOrganizationVO=new PartyOrganizationVO();
                    partyOrganizationVO.setId(comPbOrgDO.getId());
                    partyOrganizationVO.setName(comPbOrgDO.getName());
                    partyOrganizationVO.setCommunityId(comPbOrgDO.getCommunityId());
                    partyOrganizationVOList.add(partyOrganizationVO);
                });
                partyOrganizationVOS= partyOrganizationVOList;
            }
            valueOperations.set(REDIS_ORG_ALL,JSONArray.toJSONString(partyOrganizationVOS),24, TimeUnit.HOURS);
//        if (aBoolean) {
//            String orgs = valueOperations.get(REDIS_ORG_ALL);
//            if (!ObjectUtils.isEmpty(orgs)) {
//               partyOrganizationVOS= JSONArray.parseArray(orgs,PartyOrganizationVO.class);
//            }
//        } else {
//            List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(new LambdaQueryWrapper<>());
//            if (!ObjectUtils.isEmpty(comPbOrgDOS)) {
//                List<PartyOrganizationVO> partyOrganizationVOList=new ArrayList<>();
//                comPbOrgDOS.forEach(comPbOrgDO -> {
//                    PartyOrganizationVO partyOrganizationVO=new PartyOrganizationVO();
//                    partyOrganizationVO.setId(comPbOrgDO.getId());
//                    partyOrganizationVO.setName(comPbOrgDO.getName());
//                    partyOrganizationVO.setCommunityId(comPbOrgDO.getCommunityId());
//                    partyOrganizationVOList.add(partyOrganizationVO);
//                });
//                partyOrganizationVOS= partyOrganizationVOList;
//            }
//            valueOperations.set(REDIS_ORG_ALL,JSONArray.toJSONString(partyOrganizationVOS),24, TimeUnit.HOURS);
//        }
        List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(new LambdaQueryWrapper<>());
        if (!ObjectUtils.isEmpty(comPbOrgDOS)) {
            List<PartyOrganizationVO> partyOrganizationVOList=new ArrayList<>();
            comPbOrgDOS.forEach(comPbOrgDO -> {
                PartyOrganizationVO partyOrganizationVO=new PartyOrganizationVO();
                partyOrganizationVO.setId(comPbOrgDO.getId());
                partyOrganizationVO.setName(comPbOrgDO.getName());
                partyOrganizationVO.setCommunityId(comPbOrgDO.getCommunityId());
                partyOrganizationVOList.add(partyOrganizationVO);
            });
            partyOrganizationVOS= partyOrganizationVOList;
        }
        List<ComPbMemberDO> comPbMemberDOS=new ArrayList<>();
        if (!ObjectUtils.isEmpty(list)) {
            List<PartyOrganizationVO> partyOrganizationVOArrayList=partyOrganizationVOS;
            list.forEach(partyBuildingMemberExcelVO -> {
                ComPbMemberDO comPbMemberDO=new ComPbMemberDO();
                Date date=new Date();
                comPbMemberDO.setUpdateAt(date);
@@ -139,9 +155,38 @@
                    PartyOrganizationVO partyOrganizationVO = collect.get(0);
                    comPbMemberDO.setOrgId(partyOrganizationVO.getId());
                    comPbMemberDO.setCommunityId(partyOrganizationVO.getCommunityId());
                    List<ComPbMemberDO> comPbMemberDOList = this.baseMapper.selectList(new QueryWrapper<ComPbMemberDO>().lambda()
                            .eq(ComPbMemberDO::getIdCard,partyBuildingMemberExcelVO.getIdCard())
                            .eq(ComPbMemberDO::getCommunityId,partyOrganizationVO.getCommunityId())
                            .in(ComPbMemberDO::getAuditResult,0,1));
                    if(!comPbMemberDOList.isEmpty()){
                        throw new PartyBuildingMemberException("导入失败,您导入的数据中有已存在的党员信息,已存在的数据:"+ partyBuildingMemberExcelVO.getEmploymentTime() + ",已存在的人名:" + partyBuildingMemberExcelVO.getName());
                    }
                }
                comPbMemberDO.setEmploymentTime(partyBuildingMemberExcelVO.getEmploymentTime());
                comPbMemberDO.setJoinTime(partyBuildingMemberExcelVO.getJoinTime());
                if(StringUtils.isNotEmpty(partyBuildingMemberExcelVO.getEmploymentTime()) && !DateUtils.isValidDate(partyBuildingMemberExcelVO.getEmploymentTime())){
                    throw new PartyBuildingMemberException("导入失败,您导入的数据中有转正日期格式错误,错误数据:" + partyBuildingMemberExcelVO.getEmploymentTime() + ",错误人名:" + partyBuildingMemberExcelVO.getName());
                }
                if(StringUtils.isNotEmpty(partyBuildingMemberExcelVO.getJoinTime()) && !DateUtils.isValidDate(partyBuildingMemberExcelVO.getJoinTime())){
                    throw new PartyBuildingMemberException("导入失败,您导入的数据中有入党日期格式错误,错误数据:" + partyBuildingMemberExcelVO.getJoinTime() + ",错误人名:" + partyBuildingMemberExcelVO.getName());
                }
                if(StringUtils.isNotEmpty(partyBuildingMemberExcelVO.getEmploymentTime())){
                    Date employmentTime = DateUtils.toValidDate(partyBuildingMemberExcelVO.getEmploymentTime());
                    comPbMemberDO.setEmploymentTime(employmentTime);
                }else{
                    comPbMemberDO.setEmploymentTime(null);
                }
                if(StringUtils.isNotEmpty(partyBuildingMemberExcelVO.getJoinTime())){
                    Date joinTime = DateUtils.toValidDate(partyBuildingMemberExcelVO.getJoinTime());
                    comPbMemberDO.setJoinTime(joinTime);
                }else{
                    comPbMemberDO.setJoinTime(null);
                }
                comPbMemberDO.setName(partyBuildingMemberExcelVO.getName());
                comPbMemberDO.setIdCard(partyBuildingMemberExcelVO.getIdCard());
                comPbMemberDOS.add(comPbMemberDO);
@@ -289,9 +334,20 @@
     */
    @Override
    public R deletePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
        ComPbMemberRoleDO comPbMemberRoleDO = comPbMemberRoleDAO.selectById(partyCommitteeVO.getId());
        if(comPbMemberRoleDO==null){
            return R.fail("记录不存在");
        }
        int delete = comPbMemberRoleDAO.deleteById(partyCommitteeVO.getId());
        if (delete>0) {
            return R.ok();
            SysUserVO sysUserVO = comPbMemberRoleDAO.getSysUserByPhone(comPbMemberRoleDO.getPhone());
            //删除用户信息缓存
            if(sysUserVO!=null) {
                Long userId = sysUserVO.getUserId();
                String userKey = UserConstants.LOGIN_USER_INFO + userId;
                stringRedisTemplate.delete(userKey);
                return R.ok();
            }
        }
        return R.fail();
    }