From de91c84954157bb9f8b6d938cbe0b1b51fb6e65d Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期五, 07 五月 2021 15:23:57 +0800
Subject: [PATCH] bugfixed:新增便民服务商家 报错
---
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java | 526 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 526 insertions(+), 0 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java
new file mode 100644
index 0000000..4a94dd7
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComPbMemberServiceImpl.java
@@ -0,0 +1,526 @@
+package com.panzhihua.service_dangjian.service.impl;
+
+import com.alibaba.fastjson.JSONArray;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.panzhihua.common.exceptions.PartyBuildingMemberException;
+import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.community.ComActActivityVO;
+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.utlis.RichTextUtil;
+import com.panzhihua.common.utlis.SensitiveUtil;
+import com.panzhihua.service_dangjian.dao.*;
+import com.panzhihua.service_dangjian.model.dos.*;
+import com.panzhihua.service_dangjian.service.ComPbMemberService;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.data.redis.core.ValueOperations;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
+
+/**
+ * @program: springcloud_k8s_panzhihuazhihuishequ
+ * @description: 党员
+ * @author: huang.hongfa weixin hhf9596 qq 959656820
+ * @create: 2020-11-30 10:53
+ **/
+@Slf4j
+@Service
+public class ComPbMemberServiceImpl extends ServiceImpl<ComPbMemberDAO,ComPbMemberDO> implements ComPbMemberService {
+ @Resource
+ private ComPbMemberDAO comPbMemberDAO;
+ @Resource
+ private StringRedisTemplate stringRedisTemplate;
+ @Resource
+ private ComPbOrgDAO comPbOrgDAO;
+ @Resource
+ private ComPbMemberRoleDAO comPbMemberRoleDAO;
+ @Resource
+ private ComPbDynDAO comPbDynDAO;
+ @Resource
+ private ComPbDynUserDAO comPbDynUserDAO;
+
+ private final String REDIS_ORG_ALL="ogrlist";
+
+ /**
+ * 新增党员
+ *
+ * @param partyBuildingMemberVO 党员基本信息
+ * @return 新增结果
+ */
+ @Override
+ public R addPartyBuildingMember(PartyBuildingMemberVO partyBuildingMemberVO) {
+ String idCard = partyBuildingMemberVO.getIdCard();
+ List<ComPbMemberDO> comPbMemberDOs = comPbMemberDAO.selectList(new QueryWrapper<ComPbMemberDO>().lambda()
+ .eq(ComPbMemberDO::getIdCard, idCard).eq(ComPbMemberDO::getAuditResult, 1));
+ if (!ObjectUtils.isEmpty(comPbMemberDOs)&&comPbMemberDOs.size()>0) {
+ return R.fail("身份证已经存在");
+ }
+ ComPbMemberDO comPbMemberDO1=new ComPbMemberDO();
+ BeanUtils.copyProperties(partyBuildingMemberVO,comPbMemberDO1);
+ Date date=new Date();
+ comPbMemberDO1.setCreateAt(date);
+ comPbMemberDO1.setUpdateAt(date);
+ 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)
+ );
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 批量新增党员
+ *
+ * @param list 党员集合
+ * @return 新增结果
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R listSavePartyBuildingMemberExcelVO(List<PartyBuildingMemberExcelVO> list) {
+ 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);
+ }
+ 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);
+ comPbMemberDO.setCreateAt(date);
+ String orgName = partyBuildingMemberExcelVO.getOrgName();
+ List<PartyOrganizationVO> collect = partyOrganizationVOArrayList.stream().filter(partyOrganizationVO -> orgName.equals(partyOrganizationVO.getName())).collect(Collectors.toList());
+ if (ObjectUtils.isEmpty(collect)) {
+ throw new PartyBuildingMemberException("导入失败,组织不存在"+partyBuildingMemberExcelVO.getOrgName());
+ }else{
+ PartyOrganizationVO partyOrganizationVO = collect.get(0);
+ comPbMemberDO.setOrgId(partyOrganizationVO.getId());
+ comPbMemberDO.setCommunityId(partyOrganizationVO.getCommunityId());
+ }
+ comPbMemberDO.setEmploymentTime(partyBuildingMemberExcelVO.getEmploymentTime());
+ comPbMemberDO.setJoinTime(partyBuildingMemberExcelVO.getJoinTime());
+ comPbMemberDO.setName(partyBuildingMemberExcelVO.getName());
+ comPbMemberDO.setIdCard(partyBuildingMemberExcelVO.getIdCard());
+ comPbMemberDOS.add(comPbMemberDO);
+ });
+ }
+ this.saveBatch(comPbMemberDOS);
+ return R.ok();
+ }
+
+ /**
+ * 分页党员
+ *
+ * @param pagePartyOrganizationVO 查询信息
+ * @return 分页数据
+ */
+ @Override
+ public R pagePartyOrganization(PagePartyOrganizationVO pagePartyOrganizationVO) {
+ Page page=new Page<>();
+ Long pageNum = pagePartyOrganizationVO.getPageNum();
+ Long pageSize = pagePartyOrganizationVO.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.pagePartyOrganization(page, pagePartyOrganizationVO);
+ iPage.getRecords().forEach(record->{
+ record.setIdCard(SensitiveUtil.desensitizedIdNumber(record.getIdCard()));
+ });
+ return R.ok(iPage);
+ }
+
+ /**
+ * 编辑党员信息 新增字段均可编辑
+ *
+ * @param partyBuildingMemberVO 编辑字段
+ * @return 编辑结果
+ */
+ @Override
+ public R updatePartyBuildingMember(PartyBuildingMemberVO partyBuildingMemberVO) {
+ ComPbMemberDO comPbMemberDO=new ComPbMemberDO();
+ Long orgId = partyBuildingMemberVO.getOrgId();
+ if (null!=orgId&&0==orgId) {
+ partyBuildingMemberVO.setOrgId(null);
+ }
+ BeanUtils.copyProperties(partyBuildingMemberVO,comPbMemberDO);
+ comPbMemberDO.setAuditResult(partyBuildingMemberVO.getAuditResult());
+ int i = comPbMemberDAO.updateById(comPbMemberDO);
+ if (i>0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 查询指定社区的所有党员
+ *
+ * @param communityId 社区id
+ * @return 党员列表
+ */
+ @Override
+ public R listPartyMember(Long communityId) {
+ List<ComPbMemberDO> comPbMemberDOS = comPbMemberDAO.selectList(new QueryWrapper<ComPbMemberDO>().lambda()
+ .eq(ComPbMemberDO::getCommunityId,communityId).eq(ComPbMemberDO::getAuditResult, 1));
+// 查询社区所有已经注册的党员
+// 排除掉已经成为党委的党员
+// List<ComPbMemberDO> comPbMemberDOS = comPbMemberDAO.selectListRegister(communityId);
+// if (ObjectUtils.isEmpty(comPbMemberDOS)) {
+// return R.ok(new ArrayList<>());
+// }
+ List<PartyBuildingMemberVO> partyBuildingMemberVOS=new ArrayList<>();
+ comPbMemberDOS.forEach(comPbMemberDO -> {
+ PartyBuildingMemberVO partyBuildingMemberVO=new PartyBuildingMemberVO();
+ BeanUtils.copyProperties(comPbMemberDO,partyBuildingMemberVO);
+ partyBuildingMemberVOS.add(partyBuildingMemberVO);
+ });
+ return R.ok(partyBuildingMemberVOS);
+ }
+
+ /**
+ * 新增党委
+ *
+ * @param partyCommitteeVO 新增信息
+ * @return 新增结果
+ */
+ @Override
+ public R addPartyCommittee(PartyCommitteeVO partyCommitteeVO) {
+ ComPbMemberRoleDO comPbMemberRoleDO=new ComPbMemberRoleDO();
+ BeanUtils.copyProperties(partyCommitteeVO,comPbMemberRoleDO);
+ comPbMemberRoleDO.setCreateAt(new Date());
+ comPbMemberRoleDO.setUpdateAt(new Date());
+ comPbMemberRoleDO.setIsReg(2);
+ SysUserVO sysUser = comPbMemberRoleDAO.getSysUserByPhone(partyCommitteeVO.getPhone());
+ if(!ObjectUtils.isEmpty(sysUser)) {
+ comPbMemberRoleDO.setIsReg(1);
+ }
+ int insert = comPbMemberRoleDAO.insert(comPbMemberRoleDO);
+ if (insert>0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 编辑党委
+ *
+ * @param partyCommitteeVO 编辑信息
+ * @return 编辑结果
+ */
+ @Override
+ public R updatePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
+ ComPbMemberRoleDO comPbMemberRoleDO=new ComPbMemberRoleDO();
+ BeanUtils.copyProperties(partyCommitteeVO,comPbMemberRoleDO);
+ ComPbMemberRoleDO comPbMemberRoleDOOld = comPbMemberRoleDAO.selectById(partyCommitteeVO.getId());
+ comPbMemberRoleDO.setCreateAt(comPbMemberRoleDOOld.getCreateAt());
+ comPbMemberRoleDO.setUpdateAt(new Date());
+ comPbMemberRoleDO.setPositionTwo(partyCommitteeVO.getPositionTwo());
+ comPbMemberRoleDO.setIsReg(2);
+ PartyCommitteeVO oldPartyCommitteeVO = comPbMemberRoleDAO.selectPartyCommitteeById(partyCommitteeVO.getId());
+ String oldphone = oldPartyCommitteeVO.getPhone();
+ SysUserVO sysUserOld = comPbMemberRoleDAO.getSysUserByPhone(oldphone);
+ String newphone=partyCommitteeVO.getPhone();
+ SysUserVO sysUserNew = comPbMemberRoleDAO.getSysUserByPhone(newphone);
+ if(!ObjectUtils.isEmpty(sysUserOld)||!ObjectUtils.isEmpty(sysUserNew)) {
+ comPbMemberRoleDO.setIsReg(1);
+ }
+ if(!newphone.equals(oldphone)) {
+ comPbMemberRoleDAO.updateUserPhone(newphone, oldphone);
+ }
+ int update = comPbMemberRoleDAO.updateById(comPbMemberRoleDO);
+ if (update>0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 删除党委
+ *
+ * @param partyCommitteeVO 删除id
+ * @return 删除结果
+ */
+ @Override
+ public R deletePartyCommittee(PartyCommitteeVO partyCommitteeVO) {
+ int delete = comPbMemberRoleDAO.deleteById(partyCommitteeVO.getId());
+ if (delete>0) {
+ 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);
+ }
+
+ /**
+ * 新建党建动态
+ *
+ * @param partyCommitteeVO 动态内容
+ * @return 新增结果
+ */
+ @Override
+ public R adddYnamic(PartyBuildingComPbDynVO partyCommitteeVO) {
+ ComPbDynDO comPbDynDO=new ComPbDynDO();
+ BeanUtils.copyProperties(partyCommitteeVO,comPbDynDO);
+ comPbDynDO.setCreateAt(new Date());
+ int insert = comPbDynDAO.insert(comPbDynDO);
+ if (insert>0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 编辑动态
+ *
+ * @param partyCommitteeVO 编辑内容
+ * @return 编辑结果
+ */
+ @Override
+ public R updateYnamic(PartyBuildingComPbDynVO partyCommitteeVO) {
+ ComPbDynDO comPbDynDO=new ComPbDynDO();
+ BeanUtils.copyProperties(partyCommitteeVO,comPbDynDO);
+ int insert = comPbDynDAO.updateById(comPbDynDO);
+ if (insert>0) {
+ return R.ok();
+ }
+ 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);
+ }
+
+ /**
+ * 分页查询党员动态
+ *
+ * @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();
+ }
+
+ /**
+ * 增加阅读记录
+ *
+ * @param comPbDynUserVO 阅读记录
+ * @return 增加结果
+ */
+ @Override
+ public R addDynUser(ComPbDynUserVO comPbDynUserVO) {
+ ComPbDynUserDO comPbDynUserDO=new ComPbDynUserDO();
+ BeanUtils.copyProperties(comPbDynUserVO,comPbDynUserDO);
+ int insert = comPbDynUserDAO.insert(comPbDynUserDO);
+ if (insert>0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 删除党员
+ *
+ * @param id 党员主键
+ * @return 删除结果
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R deleteDynUser(Integer id) {
+ ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectById(id);
+ if (ObjectUtils.isEmpty(comPbMemberDO)) {
+ return R.fail("党员不存在");
+ }
+ int delete = comPbMemberDAO.deleteById(id);
+ if (delete>0) {
+// 维护用户表党员状态
+ comPbMemberDAO.updateUserIsPartymember(comPbMemberDO.getIdCard());
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 定时任务刷新党建动态发布状态
+ *
+ * @return 刷新数据数量
+ */
+ @Override
+ public R timedTaskPartyBuildingStatus() {
+ int num=comPbDynDAO.timedTaskPartyBuildingStatus();
+ log.info("定时任务更新党建动态发布状态数量【{}】",num);
+ 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.pagePartyBuildingMembersVO(page, pagePartyBuildingMemberVO);
+
+ return R.ok(iPage);
+ }
+
+ @Override
+ public R updatePartyBuildingMembers(PartyBuildingMemberVO partyBuildingMemberVO){
+ ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectById(partyBuildingMemberVO.getId());
+ if(comPbMemberDO == null){
+ return R.fail("未找到党员认证信息");
+ }
+ comPbMemberDO.setAuditResult(partyBuildingMemberVO.getAuditResult());
+ if(partyBuildingMemberVO.getAuditResult()!=null && partyBuildingMemberVO.getAuditResult().equals(1)){
+ comPbMemberDO.setUpdateAt(new Date());
+ }
+ if (comPbMemberDAO.updateById(comPbMemberDO) > 0) {
+ PartyBuildingMemberVO rtVO = new PartyBuildingMemberVO();
+ BeanUtils.copyProperties(comPbMemberDO, rtVO);
+ return R.ok(rtVO);
+ }
+ return R.fail();
+ }
+
+ @Override
+ public R exportPbMember(PagePartyOrganizationVO organizationVO){
+ return R.ok(comPbMemberDAO.exportPbMember(organizationVO));
+ }
+
+}
--
Gitblit v1.7.1