From 6ea2476bb8a69e171907e4f12d005ef07b640f95 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期一, 13 十一月 2023 18:33:40 +0800
Subject: [PATCH] 修改参数名称
---
springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/PartyOrganizationServiceImpl.java | 332 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 317 insertions(+), 15 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/PartyOrganizationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/PartyOrganizationServiceImpl.java
index 3dc51c8..01c4fa1 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/PartyOrganizationServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/PartyOrganizationServiceImpl.java
@@ -1,15 +1,29 @@
package com.panzhihua.service_dangjian.service.impl;
-import com.panzhihua.common.model.vos.partybuilding.PartyOrganizationVO;
-import com.panzhihua.service_dangjian.dao.ComPbOrgDAO;
-import com.panzhihua.service_dangjian.model.dos.ComPbOrgDO;
-import com.panzhihua.service_dangjian.service.PartyOrganizationService;
-import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
-
-import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
+
+import javax.annotation.Resource;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.ObjectUtils;
+import org.springframework.util.StringUtils;
+
+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.panzhihua.common.model.dtos.partybuilding.ComListPartyDTO;
+import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.partybuilding.west.PartyOrganizationVO;
+import com.panzhihua.service_dangjian.dao.ComPbMemberDAO;
+import com.panzhihua.service_dangjian.dao.ComPbOrgDAO;
+import com.panzhihua.service_dangjian.model.dos.ComPbMemberDO;
+import com.panzhihua.service_dangjian.model.dos.ComPbOrgDO;
+import com.panzhihua.service_dangjian.service.PartyOrganizationService;
/**
* @program: springcloud_k8s_panzhihuazhihuishequ
@@ -21,23 +35,311 @@
public class PartyOrganizationServiceImpl implements PartyOrganizationService {
@Resource
private ComPbOrgDAO comPbOrgDAO;
+ @Resource
+ private ComPbMemberDAO comPbMemberDAO;
+
/**
- * 平台所有党组织
+ * 社区所有启用的党组织列表
*
* @return 党组织集合
*/
@Override
- public List<PartyOrganizationVO> listPartyOrganization() {
- List<PartyOrganizationVO> partyOrganizationVOS=new ArrayList<>();
- List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(null);
+ public List<PartyOrganizationVO> listPartyOrganization(Long communityId) {
+ List<PartyOrganizationVO> partyOrganizationVOS = new ArrayList<>();
+ List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(new QueryWrapper<ComPbOrgDO>().lambda()
+ .eq(ComPbOrgDO::getCommunityId, communityId).eq(ComPbOrgDO::getStatus, 1));
if (!ObjectUtils.isEmpty(comPbOrgDOS)) {
comPbOrgDOS.forEach(comPbOrgDO -> {
- PartyOrganizationVO partyOrganizationVO=new PartyOrganizationVO();
- partyOrganizationVO.setId(comPbOrgDO.getId());
- partyOrganizationVO.setName(comPbOrgDO.getName());
+ PartyOrganizationVO partyOrganizationVO = new PartyOrganizationVO();
+ BeanUtils.copyProperties(comPbOrgDO,partyOrganizationVO);
partyOrganizationVOS.add(partyOrganizationVO);
});
}
return partyOrganizationVOS;
}
+
+ /**
+ * 社区所有党组织列表
+ *
+ * @return 党组织集合
+ */
+ @Override
+ public R listPartyOrganizationAll(PartyOrganizationVO partyOrganizationVO) {
+ IPage<PartyOrganizationVO> orgPage = this.comPbOrgDAO.listPartyOrganizationAll(
+ new Page(partyOrganizationVO.getPageNum(), partyOrganizationVO.getPageSize()), partyOrganizationVO);
+ if (!ObjectUtils.isEmpty(orgPage.getRecords()) && StringUtils.isEmpty(partyOrganizationVO.getKeyWord())) {
+ //遍历第一级党组织列表
+ orgPage.getRecords().forEach(org -> {
+ partyOrganizationVO.setParentId(org.getId());
+ List<PartyOrganizationVO> twoChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(twoChildList)){
+ //遍历第二级党组织列表
+ twoChildList.forEach(twoChild -> {
+ partyOrganizationVO.setParentId(twoChild.getId());
+ List<PartyOrganizationVO> thirdChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(thirdChildList)){
+ //遍历第三级党组织列表
+ thirdChildList.forEach(thirdChild -> {
+ partyOrganizationVO.setParentId(thirdChild.getId());
+ List<PartyOrganizationVO> fourChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(fourChildList)){
+ fourChildList.forEach(fourChild -> {
+ partyOrganizationVO.setParentId(fourChild.getId());
+ List<PartyOrganizationVO> fiveChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ fourChild.setCountPerson(fourChild.getCountPerson() + fiveChildList.stream().mapToInt(five -> five.getCountPerson()).sum());
+ fourChild.setChildList(fiveChildList);
+ });
+ }
+ thirdChild.setCountPerson(thirdChild.getCountPerson() + fourChildList.stream().mapToInt(four -> four.getCountPerson()).sum());
+ thirdChild.setChildList(fourChildList);
+ });
+ }
+ twoChild.setCountPerson(twoChild.getCountPerson() + thirdChildList.stream().mapToInt(third -> third.getCountPerson()).sum());
+ twoChild.setChildList(thirdChildList);
+ });
+ }
+ org.setCountPerson(org.getCountPerson() + twoChildList.stream().mapToInt(two -> two.getCountPerson()).sum());
+ org.setChildList(twoChildList);
+ });
+ }
+ return R.ok(orgPage);
+ }
+
+ /**
+ * 新增党支部
+ *
+ * @param partyOrganizationVO
+ * 党支部基本信息
+ * @return 新增结果
+ */
+ @Override
+ public R addPartyOrganization(PartyOrganizationVO partyOrganizationVO) {
+ ComPbOrgDO comPbOrgDO = new ComPbOrgDO();
+ BeanUtils.copyProperties(partyOrganizationVO, comPbOrgDO);
+ comPbOrgDO.setLevel(partyOrganizationVO.getType());
+ if(partyOrganizationVO.getType().equals(ComPbOrgDO.Type.JCDW)){
+ comPbOrgDO.setParentId(0L);
+ }
+ ComPbOrgDO oldComPbOrgDO = null;
+ int insert = comPbOrgDAO.insert(comPbOrgDO);
+ if (insert > 0) {
+ switch (partyOrganizationVO.getType()){
+ case ComPbOrgDO.Type.JCDW:
+ comPbOrgDO.setParentId(0L);
+ comPbOrgDO.setOneId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.EJJCDW:
+ comPbOrgDO.setOneId(partyOrganizationVO.getParentId());
+ comPbOrgDO.setTwoId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DZZ:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ }
+ comPbOrgDO.setThirdId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DZB:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ comPbOrgDO.setThirdId(oldComPbOrgDO.getThirdId());
+ }
+ comPbOrgDO.setFourId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DXZ:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ comPbOrgDO.setThirdId(oldComPbOrgDO.getThirdId());
+ comPbOrgDO.setFourId(oldComPbOrgDO.getFourId());
+ }
+ comPbOrgDO.setFiveId(comPbOrgDO.getId());
+ break;
+ default:
+ break;
+ }
+ this.comPbOrgDAO.updateById(comPbOrgDO);
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 编辑党支部
+ *
+ * @param partyOrganizationVO
+ * 党支部基本信息
+ * @return 编辑结果
+ */
+ @Override
+ public R updatePartyOrganization(PartyOrganizationVO partyOrganizationVO) {
+ ComPbOrgDO comPbOrgDO = new ComPbOrgDO();
+ BeanUtils.copyProperties(partyOrganizationVO, comPbOrgDO);
+ comPbOrgDO.setLevel(partyOrganizationVO.getType());
+ ComPbOrgDO oldComPbOrgDO = null;
+ int insert = comPbOrgDAO.updateById(comPbOrgDO);
+ if (insert > 0) {
+ switch (partyOrganizationVO.getType()){
+ case ComPbOrgDO.Type.JCDW:
+ comPbOrgDO.setParentId(0L);
+ comPbOrgDO.setOneId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.EJJCDW:
+ comPbOrgDO.setOneId(partyOrganizationVO.getParentId());
+ comPbOrgDO.setTwoId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DZZ:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ }
+ comPbOrgDO.setThirdId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DZB:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ comPbOrgDO.setThirdId(oldComPbOrgDO.getThirdId());
+ }
+ comPbOrgDO.setFourId(comPbOrgDO.getId());
+ break;
+ case ComPbOrgDO.Type.DXZ:
+ oldComPbOrgDO = this.comPbOrgDAO.selectById(partyOrganizationVO.getParentId());
+ if(oldComPbOrgDO != null){
+ comPbOrgDO.setOneId(oldComPbOrgDO.getOneId());
+ comPbOrgDO.setTwoId(oldComPbOrgDO.getTwoId());
+ comPbOrgDO.setThirdId(oldComPbOrgDO.getThirdId());
+ comPbOrgDO.setFourId(oldComPbOrgDO.getFourId());
+ }
+ comPbOrgDO.setFiveId(comPbOrgDO.getId());
+ break;
+ default:
+ break;
+ }
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 启用,禁用党支部
+ *
+ * @param partyOrganizationVO
+ * 党支部基本信息
+ * @return 编辑结果
+ */
+ @Override
+ public R resetPartyOrganization(PartyOrganizationVO partyOrganizationVO) {
+ ComPbOrgDO comPbOrgDO = comPbOrgDAO.selectById(partyOrganizationVO.getId());
+ if (ObjectUtils.isEmpty(comPbOrgDO)) {
+ return R.fail("没有此党支部");
+ }
+ comPbOrgDO.setStatus(partyOrganizationVO.getStatus());
+ int insert = comPbOrgDAO.updateById(comPbOrgDO);
+ if (insert > 0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ /**
+ * 删除党支部
+ *
+ * @param partyOrganizationVO
+ * 党支部基本信息
+ * @return 编辑结果
+ */
+ @Override
+ public R deletePartyOrganization(PartyOrganizationVO partyOrganizationVO) {
+ Integer count = comPbOrgDAO.selectCount(new QueryWrapper<ComPbOrgDO>().lambda().eq(ComPbOrgDO::getParentId,partyOrganizationVO.getId()));
+ if(count > 0){
+ return R.fail("该组织下已有子组织,不能删除!");
+ }
+ List<ComPbMemberDO> comPbMemberList = comPbMemberDAO.selectList(
+ new QueryWrapper<ComPbMemberDO>().lambda().eq(ComPbMemberDO::getOrgId, partyOrganizationVO.getId()));
+ if (!CollectionUtils.isEmpty(comPbMemberList) && comPbMemberList.size() > 0) {
+ return R.fail("该党组织下已有党员,不能删除!");
+ }
+ int insert = comPbOrgDAO.deleteById(partyOrganizationVO.getId());
+ if (insert > 0) {
+ return R.ok();
+ }
+ return R.fail();
+ }
+
+ @Override
+ public List<PartyOrganizationVO> listPartyOrganizationByApp(ComListPartyDTO comListPartyDTO) {
+ List<PartyOrganizationVO> partyOrganizationVOS = new ArrayList<>();
+ QueryWrapper<ComPbOrgDO> queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda().eq(ComPbOrgDO::getStatus, 1);
+ if (comListPartyDTO.getCommunityId() != null) {
+ queryWrapper.lambda().eq(ComPbOrgDO::getCommunityId, comListPartyDTO.getCommunityId());
+ }
+ if (!StringUtils.isEmpty(comListPartyDTO.getName())) {
+ queryWrapper.lambda().like(ComPbOrgDO::getName, comListPartyDTO.getName());
+ }
+ List<ComPbOrgDO> comPbOrgDOS = comPbOrgDAO.selectList(queryWrapper);
+ if (!ObjectUtils.isEmpty(comPbOrgDOS)) {
+ comPbOrgDOS.forEach(comPbOrgDO -> {
+ PartyOrganizationVO partyOrganizationVO = new PartyOrganizationVO();
+ partyOrganizationVO.setId(comPbOrgDO.getId());
+ partyOrganizationVO.setName(comPbOrgDO.getName());
+ partyOrganizationVO.setStatus(comPbOrgDO.getStatus());
+ partyOrganizationVOS.add(partyOrganizationVO);
+ });
+ }
+ return partyOrganizationVOS;
+ }
+
+ /**
+ * 查询所有党组织列表
+ * @param partyOrganizationVO 请求参数
+ * @return 党组织列表
+ */
+ @Override
+ public R getPbOrgAllList(PartyOrganizationVO partyOrganizationVO){
+ List<PartyOrganizationVO> orgList = this.comPbOrgDAO.getPbOrgAllList(partyOrganizationVO);
+ if (!ObjectUtils.isEmpty(orgList) && StringUtils.isEmpty(partyOrganizationVO.getKeyWord())) {
+ //遍历第一级党组织列表
+ orgList.forEach(org -> {
+ partyOrganizationVO.setParentId(org.getId());
+ List<PartyOrganizationVO> twoChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(twoChildList)){
+ //遍历第二级党组织列表
+ twoChildList.forEach(twoChild -> {
+ partyOrganizationVO.setParentId(twoChild.getId());
+ List<PartyOrganizationVO> thirdChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(thirdChildList)){
+ //遍历第三级党组织列表
+ thirdChildList.forEach(thirdChild -> {
+ partyOrganizationVO.setParentId(thirdChild.getId());
+ List<PartyOrganizationVO> fourChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ if(!ObjectUtils.isEmpty(fourChildList)){
+ fourChildList.forEach(fourChild -> {
+ partyOrganizationVO.setParentId(fourChild.getId());
+ List<PartyOrganizationVO> fiveChildList = comPbOrgDAO.getChildOrgList(partyOrganizationVO);
+ fourChild.setCountPerson(fourChild.getCountPerson() + fiveChildList.stream().mapToInt(five -> five.getCountPerson()).sum());
+ fourChild.setChildList(fiveChildList);
+ });
+ }
+ thirdChild.setCountPerson(thirdChild.getCountPerson() + fourChildList.stream().mapToInt(four -> four.getCountPerson()).sum());
+ thirdChild.setChildList(fourChildList);
+ });
+ }
+ twoChild.setCountPerson(twoChild.getCountPerson() + thirdChildList.stream().mapToInt(third -> third.getCountPerson()).sum());
+ twoChild.setChildList(thirdChildList);
+ });
+ }
+ org.setCountPerson(org.getCountPerson() + twoChildList.stream().mapToInt(two -> two.getCountPerson()).sum());
+ org.setChildList(twoChildList);
+ });
+ }
+ return R.ok(orgList);
+ }
}
--
Gitblit v1.7.1