luoxinwu
2024-03-05 c88d1658a2b6b51ed1a81c3be3e9102b661970f3
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java
@@ -1,36 +1,8 @@
package com.panzhihua.service_dangjian.service.impl;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdcardUtil;
import com.google.common.collect.Lists;
import com.panzhihua.common.enums.ComPbMemberRoleTypeEnum;
import com.panzhihua.common.model.dtos.partybuilding.ComDataStatisticsOrgDto;
import com.panzhihua.common.model.dtos.partybuilding.PageComDataStatisticsMemberDto;
import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO;
import com.panzhihua.common.model.vos.partybuilding.excel.ComDataStatisticsMemberExcelVo;
import com.panzhihua.common.model.vos.partybuilding.excel.ComPbCheckUnitErrorExcelVO;
import com.panzhihua.common.model.vos.partybuilding.excel.ComPbMemberRoleErrorExcelVo;
import com.panzhihua.common.model.vos.partybuilding.excel.ComPbMemberRoleExcelVo;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.service_dangjian.entity.ComPbCheckUnit;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.beans.BeanUtils;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -38,18 +10,42 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.constants.UserConstants;
import com.panzhihua.common.exceptions.PartyBuildingMemberException;
import com.panzhihua.common.model.dtos.community.PageMemberForInviteDTO;
import com.panzhihua.common.model.dtos.partybuilding.ComDataStatisticsOrgDto;
import com.panzhihua.common.model.dtos.partybuilding.NewFightResourceSharingDTO;
import com.panzhihua.common.model.dtos.partybuilding.PageComDataStatisticsMemberDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.partybuilding.*;
import com.panzhihua.common.model.vos.partybuilding.excel.ComDataStatisticsMemberExcelVo;
import com.panzhihua.common.model.vos.partybuilding.excel.ComPbMemberRoleExcelVo;
import com.panzhihua.common.model.vos.user.SysUserVO;
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.entity.ComActProject;
import com.panzhihua.service_dangjian.model.dos.ComPbDynDO;
import com.panzhihua.service_dangjian.model.dos.ComPbDynUserDO;
import com.panzhihua.service_dangjian.model.dos.ComPbMemberDO;
import com.panzhihua.service_dangjian.model.dos.ComPbOrgDO;
import com.panzhihua.service_dangjian.service.ComPbMemberService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import static java.util.Objects.nonNull;
@@ -76,9 +72,11 @@
    @Resource
    private ComPbDynUserDAO comPbDynUserDAO;
    @Resource
    private CommunityService communityService;
    @Resource
    private UserService userService;
    @Autowired
    private ComActProjectMapper comActProjectMapper;
    @Autowired
    private NewFightResourceSharingDAO newFightResourceSharingDAO;
    /**
     * 新增党员
@@ -90,17 +88,18 @@
    @Override
    public R addPartyBuildingMember(PartyBuildingMemberVO partyBuildingMemberVO) {
        List<ComPbMemberDO> comPbMemberDOs = comPbMemberDAO.selectList(new QueryWrapper<ComPbMemberDO>().lambda()
            .eq(ComPbMemberDO::getPhone, partyBuildingMemberVO.getPhone()).eq(ComPbMemberDO::getAuditResult, 1));
            .eq(ComPbMemberDO::getPhone, partyBuildingMemberVO.getPhone()).eq(ComPbMemberDO::getAuditResult, 1).eq(ComPbMemberDO::getType,partyBuildingMemberVO.getType()));
        if (!ObjectUtils.isEmpty(comPbMemberDOs) && comPbMemberDOs.size() > 0) {
            comPbMemberDOs.forEach(comPbMemberDO -> {
                comPbMemberDAO.deleteById(comPbMemberDO.getId());
            });
        }
        //添加党员同步用户小程序头像
        R r=userService.getSysUserVOByPhone(partyBuildingMemberVO.getPhone());
        R<SysUserVO> r=userService.getSysUserVOByPhone(partyBuildingMemberVO.getPhone());
        if(R.isOk(r)&&r.getData()!=null){
            SysUserVO sysUserVO= (SysUserVO) r.getData();
            partyBuildingMemberVO.setPhotoPath(sysUserVO.getImgUrl());
            SysUserVO sysUserVO =
                    JSONObject.parseObject(JSONObject.toJSONString(r.getData()), SysUserVO.class);
            partyBuildingMemberVO.setPhotoPath(sysUserVO.getImageUrl());
        }
        ComPbMemberDO comPbMemberDO1 = new ComPbMemberDO();
        BeanUtils.copyProperties(partyBuildingMemberVO, comPbMemberDO1);
@@ -110,11 +109,11 @@
        int insert = comPbMemberDAO.insert(comPbMemberDO1);
        if (insert > 0) {
            // 删除已驳回的记录
            int delete = comPbMemberDAO.delete(new QueryWrapper<ComPbMemberDO>().lambda()
                .eq(ComPbMemberDO::getIdCard, partyBuildingMemberVO.getIdCard())
                .eq(ComPbMemberDO::getUserId, partyBuildingMemberVO.getUserId())
                .eq(ComPbMemberDO::getCommunityId, partyBuildingMemberVO.getCommunityId())
                .eq(ComPbMemberDO::getAuditResult, 3));
//            int delete = comPbMemberDAO.delete(new QueryWrapper<ComPbMemberDO>().lambda()
//                .eq(ComPbMemberDO::getIdCard, partyBuildingMemberVO.getIdCard())
//                .eq(ComPbMemberDO::getUserId, partyBuildingMemberVO.getUserId())
//                .eq(ComPbMemberDO::getCommunityId, partyBuildingMemberVO.getCommunityId())
//                .eq(ComPbMemberDO::getAuditResult, 3));
            return R.ok();
        }
        return R.fail();
@@ -170,10 +169,12 @@
                            //添加党员同步用户小程序头像
                            R r=userService.getSysUserVOByPhone(comPbMember.getPhone());
                            if(R.isOk(r)&&r.getData()!=null){
                                SysUserVO sysUserVO= (SysUserVO) r.getData();
                                comPbMember.setPhotoPath(sysUserVO.getImgUrl());
                                SysUserVO sysUserVO =
                                        JSONObject.parseObject(JSONObject.toJSONString(r.getData()), SysUserVO.class);
                                comPbMember.setPhotoPath(sysUserVO.getImageUrl());
                            }
                            this.baseMapper.updateById(comPbMember);
                            userService.updateUserIsPartymemberByPhone(comPbMember.getPhone());
                        });
                        continue;
                        // throw new PartyBuildingMemberException("导入失败,您导入的数据中有已存在的党员信息,已存在的数据:"+
@@ -182,6 +183,13 @@
                    }
                    BeanUtils.copyProperties(partyBuildingMemberExcelVO,comPbMemberDO);
                    comPbMemberDOS.add(comPbMemberDO);
                    R r=userService.getSysUserVOByPhone(comPbMemberDO.getPhone());
                    if(R.isOk(r)&&r.getData()!=null){
                        SysUserVO sysUserVO =
                                JSONObject.parseObject(JSONObject.toJSONString(r.getData()), SysUserVO.class);
                        comPbMemberDO.setPhotoPath(sysUserVO.getImageUrl());
                    }
                    userService.updateUserIsPartymemberByPhone(comPbMemberDO.getPhone());
                }
                else {
                    throw new PartyBuildingMemberException("导入失败,你导入的内容有未填报项");
@@ -201,6 +209,18 @@
     */
    @Override
    public R pagePartyOrganization(PagePartyOrganizationVO pagePartyOrganizationVO) {
        Long communityId = pagePartyOrganizationVO.getCommunityId();
        if (null != communityId){
            List<Long> communityIds = comPbMemberDAO.selectIds(communityId);
            if (CollUtil.isEmpty(communityIds)) {
                communityIds = new ArrayList<>();
                communityIds.add(communityId);
            }
            pagePartyOrganizationVO.setCommunityIds(communityIds);
        }
        Page page = new Page<>();
        Long pageNum = pagePartyOrganizationVO.getPageNum();
        Long pageSize = pagePartyOrganizationVO.getPageSize();
@@ -272,148 +292,21 @@
        return R.ok(partyBuildingMemberVOS);
    }
    /**
     * 新增党委
     *
     * @param partyCommitteeVO
     *            新增信息
     * @return 新增结果
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R addPartyCommittee(PartyCommitteeVO partyCommitteeVO) {
        ComPbMemberRoleDO comPbMemberRoleDO = new ComPbMemberRoleDO();
        BeanUtils.copyProperties(partyCommitteeVO, comPbMemberRoleDO);
        comPbMemberRoleDO.setCreateAt(new Date());
        comPbMemberRoleDO.setUpdateAt(new Date());
        comPbMemberRoleDO.setIsReg(2);
        comPbMemberRoleDO.setSex(Integer.parseInt(partyCommitteeVO.getIdCard().substring(16,17))%2==0?2:1);
        Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(partyCommitteeVO.getIdCard());
        if (userCount > 0) {
            comPbMemberRoleDO.setIsReg(1);
        }
        Date nowDate = new Date();
        //判断党员信息是否存在党委信息
        ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
                .eq(ComPbMemberDO::getIdCard,partyCommitteeVO.getIdCard())
                .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
                .eq(ComPbMemberDO::getCommunityId,partyCommitteeVO.getCommunityId()));
        if(pbMemberDO == null){
            //不存在则创建党委党员信息
            pbMemberDO = new ComPbMemberDO();
            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
            pbMemberDO.setAuditResult(ComPbMemberDO.AuditResult.SHTG);
            pbMemberDO.setCreateAt(nowDate);
            pbMemberDO.setUpdateAt(nowDate);
            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
            comPbMemberDAO.insert(pbMemberDO);
            //金沙特殊需求
            if(pbMemberDO.getCommunityId()==2L){
                ComMngVolunteerMngVO comMngVolunteerMngVO=new ComMngVolunteerMngVO();
                comMngVolunteerMngVO.setOrgId(53L);
                comMngVolunteerMngVO.setName(pbMemberDO.getName());
                comMngVolunteerMngVO.setPhone(pbMemberDO.getPhone());
                comMngVolunteerMngVO.setIdCard(pbMemberDO.getIdCard());
                comMngVolunteerMngVO.setState(2);
                comMngVolunteerMngVO.setCommunityId(2L);
                R r = communityService.addVolunteer(comMngVolunteerMngVO);
                // 支援者添加成功,修改小程序用户的志愿者状态    ,通过手机号
                if (R.isOk(r)) {
                    String phone = comMngVolunteerMngVO.getPhone();
                    R r1 = userService.putUserIsVolunteer(phone, 1);
                    if (R.isOk(r1)) {
                        log.info("修改手机号【{}】的支援者状态为是", phone);
                    } else {
                        log.info("手机号【{}】没有小程序用户", phone);
                    }
                }
            }
        }else{
            //存在则更新党委党员信息
            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
            pbMemberDO.setUpdateAt(nowDate);
            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
            comPbMemberDAO.updateById(pbMemberDO);
        }
        int insert = comPbMemberRoleDAO.insert(comPbMemberRoleDO);
        if (insert > 0) {
            return R.ok();
        }
        return R.fail();
        return null;
    }
    /**
     * 编辑党委
     *
     * @param partyCommitteeVO
     *            编辑信息
     * @return 编辑结果
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R updatePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
        ComPbMemberRoleDO comPbMemberRoleDO = new ComPbMemberRoleDO();
        Date nowDate = new Date();
        BeanUtils.copyProperties(partyCommitteeVO, comPbMemberRoleDO);
        comPbMemberRoleDO.setUpdateAt(nowDate);
        comPbMemberRoleDO.setIsReg(2);
        Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(partyCommitteeVO.getIdCard());
        if (userCount > 0) {
            comPbMemberRoleDO.setIsReg(1);
        }
        //查询党员信息并更新
        ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
                .eq(ComPbMemberDO::getIdCard,partyCommitteeVO.getIdCard())
                .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
                .eq(ComPbMemberDO::getCommunityId,partyCommitteeVO.getCommunityId()));
        if(pbMemberDO != null){
            Long id = pbMemberDO.getId();
            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
            pbMemberDO.setId(id);
            pbMemberDO.setUpdateAt(nowDate);
            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
            comPbMemberDAO.updateById(pbMemberDO);
        }
        int update = comPbMemberRoleDAO.updateById(comPbMemberRoleDO);
        if (update > 0) {
            return R.ok();
        }
        return R.fail();
        return null;
    }
    /**
     * 删除党委
     *
     * @param partyCommitteeVO
     *            删除id
     * @return 删除结果
     */
    @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) {
            Long userId = comPbMemberRoleDAO.getUserIdByIdCard(comPbMemberRoleDO.getIdCard());
            // 删除用户信息缓存
            if (userId != null) {
                String userKey = UserConstants.LOGIN_USER_INFO + userId;
                stringRedisTemplate.delete(userKey);
            }
            return R.ok();
        }
        return R.fail();
        return null;
    }
    /**
     * 分页社区党委查询
     *
     * @param partyCommitteeVO
     *            查询参数
     * @return 分页集合
     */
    @Override
    public R pagePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
        Page page = new Page<>();
@@ -427,12 +320,174 @@
        }
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        IPage<PartyCommitteeVO> iPage = comPbMemberRoleDAO.pagePartyOrganization(page, partyCommitteeVO);
        IPage<PartyCommitteeVO> iPage = comPbMemberRoleDAO.pagePartyOrganizations(page, partyCommitteeVO);
        iPage.getRecords().forEach(record -> {
            record.setPhone(SensitiveUtil.desensitizedPhoneNumber(record.getPhone()));
        });
        return R.ok(iPage);
    }
//    /**
//     * 新增党委
//     *
//     * @param partyCommitteeVO
//     *            新增信息
//     * @return 新增结果
//     */
//    @Override
//    @Transactional(rollbackFor = Exception.class)
//    public R addPartyCommittee(PartyCommitteeVO partyCommitteeVO) {
//        ComPbMemberRoleDO comPbMemberRoleDO = new ComPbMemberRoleDO();
//        BeanUtils.copyProperties(partyCommitteeVO, comPbMemberRoleDO);
//        comPbMemberRoleDO.setCreateAt(new Date());
//        comPbMemberRoleDO.setUpdateAt(new Date());
//        comPbMemberRoleDO.setIsReg(2);
//        comPbMemberRoleDO.setSex(Integer.parseInt(partyCommitteeVO.getIdCard().substring(16,17))%2==0?2:1);
//        Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(partyCommitteeVO.getIdCard());
//        if (userCount > 0) {
//            comPbMemberRoleDO.setIsReg(1);
//        }
//        Date nowDate = new Date();
//        //判断党员信息是否存在党委信息
//        ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
//                .eq(ComPbMemberDO::getIdCard,partyCommitteeVO.getIdCard())
//                .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
//                .eq(ComPbMemberDO::getCommunityId,partyCommitteeVO.getCommunityId()));
//        if(pbMemberDO == null){
//            //不存在则创建党委党员信息
//            pbMemberDO = new ComPbMemberDO();
//            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
//            pbMemberDO.setAuditResult(ComPbMemberDO.AuditResult.SHTG);
//            pbMemberDO.setCreateAt(nowDate);
//            pbMemberDO.setUpdateAt(nowDate);
//            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
//            comPbMemberDAO.insert(pbMemberDO);
//            //金沙特殊需求
//            if(pbMemberDO.getCommunityId()==2L){
//                ComMngVolunteerMngVO comMngVolunteerMngVO=new ComMngVolunteerMngVO();
//                comMngVolunteerMngVO.setOrgId(53L);
//                comMngVolunteerMngVO.setName(pbMemberDO.getName());
//                comMngVolunteerMngVO.setPhone(pbMemberDO.getPhone());
//                comMngVolunteerMngVO.setIdCard(pbMemberDO.getIdCard());
//                comMngVolunteerMngVO.setState(2);
//                comMngVolunteerMngVO.setCommunityId(2L);
//                R r = communityService.addVolunteer(comMngVolunteerMngVO);
//                // 支援者添加成功,修改小程序用户的志愿者状态    ,通过手机号
//                if (R.isOk(r)) {
//                    String phone = comMngVolunteerMngVO.getPhone();
//                    R r1 = userService.putUserIsVolunteer(phone, 1);
//                    if (R.isOk(r1)) {
//                        log.info("修改手机号【{}】的支援者状态为是", phone);
//                    } else {
//                        log.info("手机号【{}】没有小程序用户", phone);
//                    }
//                }
//            }
//        }else{
//            //存在则更新党委党员信息
//            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
//            pbMemberDO.setUpdateAt(nowDate);
//            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
//            comPbMemberDAO.updateById(pbMemberDO);
//        }
//        int insert = comPbMemberRoleDAO.insert(comPbMemberRoleDO);
//        if (insert > 0) {
//            return R.ok();
//        }
//        return R.fail();
//    }
//    /**
//     * 编辑党委
//     *
//     * @param partyCommitteeVO
//     *            编辑信息
//     * @return 编辑结果
//     */
//    @Override
//    @Transactional(rollbackFor = Exception.class)
//    public R updatePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
//        ComPbMemberRoleDO comPbMemberRoleDO = new ComPbMemberRoleDO();
//        Date nowDate = new Date();
//        BeanUtils.copyProperties(partyCommitteeVO, comPbMemberRoleDO);
//        comPbMemberRoleDO.setUpdateAt(nowDate);
//        comPbMemberRoleDO.setIsReg(2);
//        Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(partyCommitteeVO.getIdCard());
//        if (userCount > 0) {
//            comPbMemberRoleDO.setIsReg(1);
//        }
//        //查询党员信息并更新
//        ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
//                .eq(ComPbMemberDO::getIdCard,partyCommitteeVO.getIdCard())
//                .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
//                .eq(ComPbMemberDO::getCommunityId,partyCommitteeVO.getCommunityId()));
//        if(pbMemberDO != null){
//            Long id = pbMemberDO.getId();
//            BeanUtils.copyProperties(partyCommitteeVO, pbMemberDO);
//            pbMemberDO.setId(id);
//            pbMemberDO.setUpdateAt(nowDate);
//            pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
//            comPbMemberDAO.updateById(pbMemberDO);
//        }
//        int update = comPbMemberRoleDAO.updateById(comPbMemberRoleDO);
//        if (update > 0) {
//            return R.ok();
//        }
//        return R.fail();
//    }
//
//    /**
//     * 删除党委
//     *
//     * @param partyCommitteeVO
//     *            删除id
//     * @return 删除结果
//     */
//    @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) {
//            Long userId = comPbMemberRoleDAO.getUserIdByIdCard(comPbMemberRoleDO.getIdCard());
//            // 删除用户信息缓存
//            if (userId != null) {
//                String userKey = UserConstants.LOGIN_USER_INFO + userId;
//                stringRedisTemplate.delete(userKey);
//            }
//            return R.ok();
//        }
//        return R.fail();
//    }
//
//    /**
//     * 分页社区党委查询
//     *
//     * @param partyCommitteeVO
//     *            查询参数
//     * @return 分页集合
//     */
//    @Override
//    public R pagePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
//        Page page = new Page<>();
//        Long pageNum = partyCommitteeVO.getPageNum();
//        Long pageSize = partyCommitteeVO.getPageSize();
//        if (null == pageNum || 0 == pageNum) {
//            pageNum = 1l;
//        }
//        if (null == pageSize || 0 == pageSize) {
//            pageSize = 10l;
//        }
//        page.setSize(pageSize);
//        page.setCurrent(pageNum);
//        IPage<PartyCommitteeVO> iPage = comPbMemberRoleDAO.pagePartyOrganization(page, partyCommitteeVO);
//        iPage.getRecords().forEach(record -> {
//            record.setPhone(SensitiveUtil.desensitizedPhoneNumber(record.getPhone()));
//        });
//        return R.ok(iPage);
//    }
    /**
     * 新建党建动态
@@ -471,43 +526,14 @@
        return R.fail();
    }
    /**
     * 动态详情
     *
     * @param id
     *            动态主键
     * @return 详情
     */
    @Override
    public R infoYnamic(Long id) {
        PartyBuildingComPbDynVO comPbDynVO = comPbDynDAO.selectVoById(id);
        if (ObjectUtils.isEmpty(comPbDynVO)) {
            return R.fail("动态不存在");
        }
        // ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectById(createBy);
        // String name = comPbMemberDAO.selectNameByUserId(createBy);
        if (ObjectUtils.isEmpty(comPbDynVO.getCreateByName())) {
            // return R.fail("发布人不存在");
            String name = comPbMemberDAO.selectNameByUserId(comPbDynVO.getCreateBy());
            name = "后台发布";
            comPbDynVO.setCreateByName(name);
        }
        // Integer integer = comPbDynUserDAO.selectCount(new
        // QueryWrapper<ComPbDynUserDO>().lambda().eq(ComPbDynUserDO::getDynId, id));
        comPbDynVO.setReadingVolume(null == comPbDynVO.getReadingVolume() ? 0 : comPbDynVO.getReadingVolume());
        return R.ok(comPbDynVO);
        return null;
    }
    /**
     * 分页查询党员动态
     *
     * @param partyBuildingComPbDynVO
     *            查询参数
     * @return 分页数据
     */
    @Override
    public R pageYnamic(PartyBuildingComPbDynVO partyBuildingComPbDynVO) {
    public R pageYnamic(PartyBuildingComPbDynVO partyBuildingComPbDynVO)
    {
        Page page = new Page<>();
        Long pageNum = partyBuildingComPbDynVO.getPageNum();
        Long pageSize = partyBuildingComPbDynVO.getPageSize();
@@ -519,7 +545,7 @@
        }
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        IPage<PartyBuildingComPbDynVO> iPage = comPbDynDAO.pageYnamic(page, partyBuildingComPbDynVO);
        IPage<PartyBuildingComPbDynVO> iPage = comPbDynDAO.pageYnamics(page, partyBuildingComPbDynVO);
        List<PartyBuildingComPbDynVO> records = iPage.getRecords();
        if (!(ObjectUtils.isEmpty(records))) {
            records.forEach(partyBuildingComPbDynVO1 -> {
@@ -533,21 +559,88 @@
        return R.ok(iPage);
    }
    /**
     * 删除动态
     *
     * @param id
     *            动态主键
     * @return 删除结果
     */
    @Override
    public R deleteYnamic(Integer id) {
        int delete = comPbDynDAO.deleteById(id);
        if (delete > 0) {
            return R.ok();
        }
        return R.fail();
        return null;
    }
//    /**
//     * 动态详情
//     *
//     * @param id
//     *            动态主键
//     * @return 详情
//     */
//    @Override
//    public R infoYnamic(Long id) {
//        PartyBuildingComPbDynVO comPbDynVO = comPbDynDAO.selectVoById(id);
//        if (ObjectUtils.isEmpty(comPbDynVO)) {
//            return R.fail("动态不存在");
//        }
//        // ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectById(createBy);
//        // String name = comPbMemberDAO.selectNameByUserId(createBy);
//
//        if (ObjectUtils.isEmpty(comPbDynVO.getCreateByName())) {
//            // return R.fail("发布人不存在");
//            String name = comPbMemberDAO.selectNameByUserId(comPbDynVO.getCreateBy());
//            name = "后台发布";
//            comPbDynVO.setCreateByName(name);
//        }
//        // Integer integer = comPbDynUserDAO.selectCount(new
//        // QueryWrapper<ComPbDynUserDO>().lambda().eq(ComPbDynUserDO::getDynId, id));
//        comPbDynVO.setReadingVolume(null == comPbDynVO.getReadingVolume() ? 0 : comPbDynVO.getReadingVolume());
//        return R.ok(comPbDynVO);
//    }
//
//    /**
//     * 分页查询党员动态
//     *
//     * @param partyBuildingComPbDynVO
//     *            查询参数
//     * @return 分页数据
//     */
//    @Override
//    public R pageYnamic(PartyBuildingComPbDynVO partyBuildingComPbDynVO) {
//        Page page = new Page<>();
//        Long pageNum = partyBuildingComPbDynVO.getPageNum();
//        Long pageSize = partyBuildingComPbDynVO.getPageSize();
//        if (null == pageNum) {
//            pageNum = 1l;
//        }
//        if (null == pageSize) {
//            pageSize = 10l;
//        }
//        page.setSize(pageSize);
//        page.setCurrent(pageNum);
//        IPage<PartyBuildingComPbDynVO> iPage = comPbDynDAO.pageYnamic(page, partyBuildingComPbDynVO);
//        List<PartyBuildingComPbDynVO> records = iPage.getRecords();
//        if (!(ObjectUtils.isEmpty(records))) {
//            records.forEach(partyBuildingComPbDynVO1 -> {
//                String content = partyBuildingComPbDynVO1.getContent();
//                if (!ObjectUtils.isEmpty(content)) {
//                    String text = RichTextUtil.getText(content);
//                    partyBuildingComPbDynVO1.setContentText(text);
//                }
//            });
//        }
//        return R.ok(iPage);
//    }
//
//    /**
//     * 删除动态
//     *
//     * @param id
//     *            动态主键
//     * @return 删除结果
//     */
//    @Override
//    public R deleteYnamic(Integer id) {
//        int delete = comPbDynDAO.deleteById(id);
//        if (delete > 0) {
//            return R.ok();
//        }
//        return R.fail();
//    }
    /**
     * 增加阅读记录
@@ -576,7 +669,7 @@
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R deleteDynUser(Integer id) {
    public R deleteDynUser(Long id) {
        ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectById(id);
        if (ObjectUtils.isEmpty(comPbMemberDO)) {
            return R.fail("党员不存在");
@@ -655,6 +748,9 @@
        if (partyBuildingMemberVO.getOrgId() != null) {
            comPbMemberDO.setOrgId(partyBuildingMemberVO.getOrgId());
        }
        if (partyBuildingMemberVO.getOrgName() != null) {
            comPbMemberDO.setOrgName(partyBuildingMemberVO.getOrgName());
        }
        if (partyBuildingMemberVO.getPhotoPath() != null) {
            comPbMemberDO.setPhotoPath(partyBuildingMemberVO.getPhotoPath());
        }
@@ -670,8 +766,7 @@
        if (StringUtils.isNotEmpty(partyBuildingMemberVO.getFunction())) {
            comPbMemberDO.setFunction(partyBuildingMemberVO.getFunction());
        }
        if (nonNull(partyBuildingMemberVO.getSpecialtyCategory())) {
            comPbMemberDO.setSpecialtyCategory(partyBuildingMemberVO.getSpecialtyCategory());
        if (nonNull(partyBuildingMemberVO.getSpecialtyName())) {
            comPbMemberDO.setSpecialtyName(partyBuildingMemberVO.getSpecialtyName());
        }
        if(nonNull(partyBuildingMemberVO.getPhone())){
@@ -682,7 +777,27 @@
        if (nonNull(type) && type.equals(1)) {
            comPbMemberDO.setEmploymentTime(null);
        }
        if(partyBuildingMemberVO.getVillageId()!=null){
            comPbMemberDO.setVillageId(partyBuildingMemberVO.getVillageId());
        }
        if(partyBuildingMemberVO.getHelpCommunityId()!=null){
            comPbMemberDO.setHelpCommunityId(partyBuildingMemberVO.getHelpCommunityId());
        }
        if(partyBuildingMemberVO.getCommunityId()!=null){
            comPbMemberDO.setCommunityId(partyBuildingMemberVO.getCommunityId());
        }
        if(partyBuildingMemberVO.getNatureId()!=null){
            comPbMemberDO.setNatureId(partyBuildingMemberVO.getNatureId());
        }
        if(nonNull(partyBuildingMemberVO.getNatureName())){
            comPbMemberDO.setNatureName(partyBuildingMemberVO.getNatureName());
        }
        if(nonNull(partyBuildingMemberVO.getOtherRemark())){
            comPbMemberDO.setOtherRemark(partyBuildingMemberVO.getOtherRemark());
        }
        if(nonNull(partyBuildingMemberVO.getHelpCommunityName())){
            comPbMemberDO.setHelpCommunityName(partyBuildingMemberVO.getHelpCommunityName());
        }
        if (comPbMemberDAO.updateById(comPbMemberDO) > 0) {
            PartyBuildingMemberVO rtVO = new PartyBuildingMemberVO();
@@ -779,7 +894,7 @@
        }
        //查询左下数据
        statisticsVo = comPbMemberDAO.getOrgDataStatisticsLeftDown(communityId,orgIds,startTime,endTime);
        statisticsVo = comPbMemberDAO.getOrgDataStatisticsLeftDown(communityId,orgIds,startTime,endTime,"");
        if(statisticsVo != null){
            statisticsOrgVo.setParticipateVolunteerActivityDuration(statisticsVo.getParticipateVolunteerActivityDuration());
            statisticsOrgVo.setParticipateVolunteerActivityNum(statisticsVo.getParticipateVolunteerActivityNum());
@@ -790,8 +905,9 @@
        }
        //查询党员数据
        IPage<PartyBuildingMemberVO> partyMemberPage = comPbMemberDAO.getOrgDataStatisticsMember(new Page(statisticsOrgDto.getPageNum()
                ,statisticsOrgDto.getPageSize()),communityId,orgIds);
        IPage<PartyBuildingMemberVO> partyMemberPage = comPbMemberDAO.getOrgDataStatisticsMember(
                new Page(statisticsOrgDto.getPageNum()
                ,statisticsOrgDto.getPageSize()),communityId,orgIds,"");
        if(partyMemberPage.getRecords() != null && !partyMemberPage.getRecords().isEmpty()){
            statisticsOrgVo.setPartyMemberList(partyMemberPage.getRecords());
        }
@@ -803,7 +919,8 @@
        List<String> completeEasyList = new ArrayList<>();
        List<String> cumulativeEasyList = new ArrayList<>();
        for (int i = 0; i < startDateList.size(); i++) {
            Map<String,Object> statisticsMap = comPbMemberDAO.getOrgDataStatisticsRightDown(communityId,orgIds, startDateList.get(i) + " 00:00:00", endDateList.get(i) + " 23:59:59");
            Map<String,Object> statisticsMap = comPbMemberDAO.getOrgDataStatisticsRightDown(communityId,orgIds,
                    startDateList.get(i) + " 00:00:00", endDateList.get(i) + " 23:59:59");
            if(statisticsMap != null){
                completeWishList.add(statisticsMap.get("completeWishNum").toString());
                cumulativeWishList.add(statisticsMap.get("cumulativeWishNum").toString());
@@ -937,125 +1054,130 @@
        return R.ok(memberList);
    }
    /**
     * 党委导入接口
     * @param list 数据列表
     * @param communityId   社区id
     * @param userId    用户id
     * @return  导入结果
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R importPbMemberRole(List<ComPbMemberRoleExcelVo> list, Long communityId, Long userId) {
        ArrayList<ComPbMemberRoleErrorExcelVo> mistakes = Lists.newArrayList();
        ArrayList<ComPbMemberRoleDO> saveList = Lists.newArrayList();
        Date nowDate = new Date();
        if(list != null && list.size() > 0){
            list.forEach(memberRole -> {
                ComPbMemberRoleDO memberRoleDO = comPbMemberRoleDAO.selectOne(new QueryWrapper<ComPbMemberRoleDO>().lambda()
                        .eq(ComPbMemberRoleDO::getCommunityId,communityId).eq(ComPbMemberRoleDO::getIdCard,memberRole.getIdCard()));
                if(memberRoleDO != null){
                    ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
                    BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
                    roleErrorExcelVo.setError("该党委已存在,不可重复导入");
                    mistakes.add(roleErrorExcelVo);
                }else{
                    memberRoleDO = new ComPbMemberRoleDO();
                    BeanUtils.copyProperties(memberRole,memberRoleDO);
                    Integer type = ComPbMemberRoleTypeEnum.getCodeByName(memberRole.getTypeName());
                    if(type.equals(0)){
                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
                        roleErrorExcelVo.setError("党委标签不存在,请核对后再重新导入");
                        mistakes.add(roleErrorExcelVo);
                        return;
                    }else{
                        memberRoleDO.setType(type);
                    }
                    try {
                        Date joinTime = DateUtils.stringToDate(memberRole.getJoinTime(),DateUtils.yyyyMMdd_format);
                        memberRoleDO.setJoinTime(joinTime);
                    } catch (Exception e) {
                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
                        roleErrorExcelVo.setError("入党时间格式错误,请按照正确格式填写,如:2022-01-01");
                        mistakes.add(roleErrorExcelVo);
                        return;
                    }
                    if(StringUtils.isNotEmpty(memberRole.getOrg())){
                        ComPbOrgDO comPbOrgDO=comPbOrgDAO.selectOne(new QueryWrapper<ComPbOrgDO>().lambda().eq(ComPbOrgDO::getName,memberRole.getOrg()).eq(ComPbOrgDO::getCommunityId,communityId));
                        if(comPbOrgDO!=null){
                            memberRoleDO.setOrgId(comPbOrgDO.getId());
                        }
                    }
                    try {
                        Date employmentTime = DateUtils.stringToDate(memberRole.getEmploymentTime(),DateUtils.yyyyMMdd_format);
                        memberRoleDO.setEmploymentTime(employmentTime);
                    } catch (Exception e) {
                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
                        roleErrorExcelVo.setError("转正时间格式错误,请按照正确格式填写,如:2022-01-01");
                        mistakes.add(roleErrorExcelVo);
                        return;
                    }
                    Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(memberRole.getIdCard());
                    memberRoleDO.setIsReg(userCount > 0 ? 1 : 2);
                    memberRoleDO.setCommunityId(communityId);
                    memberRoleDO.setSex(Integer.parseInt(memberRoleDO.getIdCard().substring(16,17))%2==0?2:1);
                    saveList.add(memberRoleDO);
                }
            });
        }
        if(saveList.size() > 0){
            saveList.forEach(save -> {
                int result = comPbMemberRoleDAO.insert(save);
                if(result>0){
                    //判断党员信息是否存在党委信息
                    ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
                            .eq(ComPbMemberDO::getIdCard,save.getIdCard())
                            .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
                            .eq(ComPbMemberDO::getCommunityId,save.getCommunityId()));
                    if(pbMemberDO == null){
                        //不存在则创建党委党员信息
                        pbMemberDO = new ComPbMemberDO();
                        BeanUtils.copyProperties(save, pbMemberDO);
                        pbMemberDO.setAuditResult(ComPbMemberDO.AuditResult.SHTG);
                        pbMemberDO.setCreateAt(nowDate);
                        pbMemberDO.setUpdateAt(nowDate);
                        pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
                        comPbMemberDAO.insert(pbMemberDO);
                        //金沙特殊需求
                        if(pbMemberDO.getCommunityId()==2L){
                            ComMngVolunteerMngVO comMngVolunteerMngVO=new ComMngVolunteerMngVO();
                            comMngVolunteerMngVO.setOrgId(53L);
                            comMngVolunteerMngVO.setName(pbMemberDO.getName());
                            comMngVolunteerMngVO.setPhone(pbMemberDO.getPhone());
                            comMngVolunteerMngVO.setIdCard(pbMemberDO.getIdCard());
                            comMngVolunteerMngVO.setState(2);
                            comMngVolunteerMngVO.setCommunityId(2L);
                            R r = communityService.addVolunteer(comMngVolunteerMngVO);
                            // 支援者添加成功,修改小程序用户的志愿者状态    ,通过手机号
                            if (R.isOk(r)) {
                                String phone = comMngVolunteerMngVO.getPhone();
                                R r1 = userService.putUserIsVolunteer(phone, 1);
                                if (R.isOk(r1)) {
                                    log.info("修改手机号【{}】的支援者状态为是", phone);
                                } else {
                                    log.info("手机号【{}】没有小程序用户", phone);
                                }
                            }
                        }
                    }
                }
                userService.updateUserIsPartymember(save.getIdCard());
            });
        }
        if(mistakes.size() > 0){
            return R.fail(mistakes);
        }
        return R.ok();
        return null;
    }
//    /**
//     * 党委导入接口
//     * @param list 数据列表
//     * @param communityId   社区id
//     * @param userId    用户id
//     * @return  导入结果
//     */
//    @Override
//    @Transactional(rollbackFor = Exception.class)
//    public R importPbMemberRole(List<ComPbMemberRoleExcelVo> list, Long communityId, Long userId) {
//        ArrayList<ComPbMemberRoleErrorExcelVo> mistakes = Lists.newArrayList();
//        ArrayList<ComPbMemberRoleDO> saveList = Lists.newArrayList();
//        Date nowDate = new Date();
//        if(list != null && list.size() > 0){
//            list.forEach(memberRole -> {
//                ComPbMemberRoleDO memberRoleDO = comPbMemberRoleDAO.selectOne(new QueryWrapper<ComPbMemberRoleDO>().lambda()
//                        .eq(ComPbMemberRoleDO::getCommunityId,communityId).eq(ComPbMemberRoleDO::getIdCard,memberRole.getIdCard()));
//                if(memberRoleDO != null){
//                    ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
//                    BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
//                    roleErrorExcelVo.setError("该党委已存在,不可重复导入");
//                    mistakes.add(roleErrorExcelVo);
//                }else{
//                    memberRoleDO = new ComPbMemberRoleDO();
//                    BeanUtils.copyProperties(memberRole,memberRoleDO);
//                    Integer type = ComPbMemberRoleTypeEnum.getCodeByName(memberRole.getTypeName());
//                    if(type.equals(0)){
//                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
//                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
//                        roleErrorExcelVo.setError("党委标签不存在,请核对后再重新导入");
//                        mistakes.add(roleErrorExcelVo);
//                        return;
//                    }else{
//                        memberRoleDO.setType(type);
//                    }
//                    try {
//                        Date joinTime = DateUtils.stringToDate(memberRole.getJoinTime(),DateUtils.yyyyMMdd_format);
//                        memberRoleDO.setJoinTime(joinTime);
//                    } catch (Exception e) {
//                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
//                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
//                        roleErrorExcelVo.setError("入党时间格式错误,请按照正确格式填写,如:2022-01-01");
//                        mistakes.add(roleErrorExcelVo);
//                        return;
//                    }
//                    if(StringUtils.isNotEmpty(memberRole.getOrg())){
//                        ComPbOrgDO comPbOrgDO=comPbOrgDAO.selectOne(new QueryWrapper<ComPbOrgDO>().lambda().eq(ComPbOrgDO::getName,memberRole.getOrg()).eq(ComPbOrgDO::getCommunityId,communityId));
//                        if(comPbOrgDO!=null){
//                            memberRoleDO.setOrgId(comPbOrgDO.getId());
//                        }
//                    }
//                    try {
//                        Date employmentTime = DateUtils.stringToDate(memberRole.getEmploymentTime(),DateUtils.yyyyMMdd_format);
//                        memberRoleDO.setEmploymentTime(employmentTime);
//                    } catch (Exception e) {
//                        ComPbMemberRoleErrorExcelVo roleErrorExcelVo = new ComPbMemberRoleErrorExcelVo();
//                        BeanUtils.copyProperties(memberRole,roleErrorExcelVo);
//                        roleErrorExcelVo.setError("转正时间格式错误,请按照正确格式填写,如:2022-01-01");
//                        mistakes.add(roleErrorExcelVo);
//                        return;
//                    }
//                    Integer userCount = comPbMemberRoleDAO.getSysUserByIdCardCount(memberRole.getIdCard());
//                    memberRoleDO.setIsReg(userCount > 0 ? 1 : 2);
//                    memberRoleDO.setCommunityId(communityId);
//                    memberRoleDO.setSex(Integer.parseInt(memberRoleDO.getIdCard().substring(16,17))%2==0?2:1);
//                    saveList.add(memberRoleDO);
//                }
//            });
//        }
//
//        if(saveList.size() > 0){
//            saveList.forEach(save -> {
//                int result = comPbMemberRoleDAO.insert(save);
//                if(result>0){
//                    //判断党员信息是否存在党委信息
//                    ComPbMemberDO pbMemberDO = comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda()
//                            .eq(ComPbMemberDO::getIdCard,save.getIdCard())
//                            .eq(ComPbMemberDO::getAuditResult,ComPbMemberDO.AuditResult.SHTG)
//                            .eq(ComPbMemberDO::getCommunityId,save.getCommunityId()));
//                    if(pbMemberDO == null){
//                        //不存在则创建党委党员信息
//                        pbMemberDO = new ComPbMemberDO();
//                        BeanUtils.copyProperties(save, pbMemberDO);
//                        pbMemberDO.setAuditResult(ComPbMemberDO.AuditResult.SHTG);
//                        pbMemberDO.setCreateAt(nowDate);
//                        pbMemberDO.setUpdateAt(nowDate);
//                        pbMemberDO.setType(ComPbMemberDO.Type.ZSDY);
//                        comPbMemberDAO.insert(pbMemberDO);
//                        //金沙特殊需求
//                        if(pbMemberDO.getCommunityId()==2L){
//                            ComMngVolunteerMngVO comMngVolunteerMngVO=new ComMngVolunteerMngVO();
//                            comMngVolunteerMngVO.setOrgId(53L);
//                            comMngVolunteerMngVO.setName(pbMemberDO.getName());
//                            comMngVolunteerMngVO.setPhone(pbMemberDO.getPhone());
//                            comMngVolunteerMngVO.setIdCard(pbMemberDO.getIdCard());
//                            comMngVolunteerMngVO.setState(2);
//                            comMngVolunteerMngVO.setCommunityId(2L);
//                            R r = communityService.addVolunteer(comMngVolunteerMngVO);
//                            // 支援者添加成功,修改小程序用户的志愿者状态    ,通过手机号
//                            if (R.isOk(r)) {
//                                String phone = comMngVolunteerMngVO.getPhone();
//                                R r1 = userService.putUserIsVolunteer(phone, 1);
//                                if (R.isOk(r1)) {
//                                    log.info("修改手机号【{}】的支援者状态为是", phone);
//                                } else {
//                                    log.info("手机号【{}】没有小程序用户", phone);
//                                }
//                            }
//                        }
//                    }
//                }
//                userService.updateUserIsPartymember(save.getIdCard());
//            });
//        }
//        if(mistakes.size() > 0){
//            return R.fail(mistakes);
//        }
//        return R.ok();
//    }
    @Override
    public R exportPartyMember(PagePartyOrganizationVO pagePartyOrganizationVO) {
@@ -1078,7 +1200,91 @@
            if(StringUtils.isEmpty(member.getCheckUnitName())){
                member.setCheckUnitName("待编辑报到单位");
            }
            //member.setName(SensitiveUtil.replaceName(member.getName()));
        });
        return R.ok(memberPage);
    }
    @Override
    public R getProject(ProjectVO projectVO) {
        LambdaQueryWrapper<ComActProject> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(ComActProject::getUnitId,projectVO.getUnitId());
        wrapper.eq(projectVO.getSpeciality()!=null,ComActProject::getSpeciality,projectVO.getSpeciality());
        wrapper.eq(projectVO.getProject()!=null,ComActProject::getProject,projectVO.getProject());
        wrapper.orderByDesc(ComActProject::getCreateTime);
        List<ComActProject> comActProjects = comActProjectMapper.selectList(wrapper);
        return R.ok(comActProjects);
    }
    @Transactional(rollbackFor = Exception.class)
    @Override
    public R addProject(ProjectVO projectVO) {
        Date date = new Date();
        ComActProject comActProject = new ComActProject();
        comActProject.setUnitId(projectVO.getUnitId());
        comActProject.setUnitName(projectVO.getUnitName());
        comActProject.setSpeciality(projectVO.getSpeciality());
        comActProject.setProject(projectVO.getProject());
        comActProject.setPhone(projectVO.getPhone());
        comActProject.setImage(projectVO.getImage());
        comActProject.setCreateTime(date);
        comActProjectMapper.insert(comActProject);
      //  new_fight_resource_sharing
        NewFightResourceSharingDTO dto = new NewFightResourceSharingDTO();
        dto.setTitle(projectVO.getProject());
        dto.setUnitId(String.valueOf(projectVO.getUnitId()));
        dto.setMeritId(projectVO.getSpeciality());
        dto.setImgUrl(projectVO.getImage());
        dto.setPhone(projectVO.getPhone());
        dto.setCommunityId(projectVO.getCommunityId());
        dto.setCreationTime(date);
        newFightResourceSharingDAO.addData(dto);
        return R.ok();
    }
    @Override
    public R updateProject(ProjectVO projectVO) {
        LambdaQueryWrapper<ComActProject> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(ComActProject::getUnitId,projectVO.getUnitId());
        wrapper.eq(ComActProject::getId,projectVO.getId());
        ComActProject actProject = comActProjectMapper.selectOne(wrapper);
        actProject.setSpeciality(projectVO.getSpeciality());
        actProject.setProject(projectVO.getProject());
        actProject.setPhone(projectVO.getPhone());
        if(projectVO.getImage() != null){
            actProject.setImage(projectVO.getImage());
        }
        comActProjectMapper.updateById(actProject);
        return R.ok();
    }
    @Override
    public R deleteProject(ProjectVO projectVO) {
        List<Long> ids = projectVO.getIds();
        LambdaQueryWrapper<ComActProject> wrapper = new LambdaQueryWrapper<>();
        wrapper.in(ComActProject::getId,ids);
        comActProjectMapper.delete(wrapper);
        return R.ok();
    }
    @Override
    public R getPartyMember(String phone,Integer type) {
        return R.ok(comPbMemberDAO.selectDetail(phone,type));
    }
    @Override
    public R memberDetail(Long id) {
        return R.ok(comPbMemberDAO.getDetailByApp(id));
    }
    /**
     * 分页查询注册党员列表
     * @param dto
     * @return
     */
    @Override
    public R pageRegisterMember(PageMemberForInviteDTO dto) {
        return R.ok(comPbMemberDAO.pageRegisterMember(new Page(dto.getPageNum(), dto.getPageSize()), dto));
    }
}