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/ComBpActivityServiceImpl.java | 93 ++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 85 insertions(+), 8 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java
index 3aeb13f..80cd0a2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java
@@ -3,6 +3,7 @@
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.exceptions.PartyBuildingMemberException;
import com.panzhihua.common.model.dtos.partybuilding.ActivitySignUpDTO;
import com.panzhihua.common.model.dtos.partybuilding.ComPbActivityDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
@@ -11,6 +12,7 @@
import com.panzhihua.common.model.vos.partybuilding.PageActivityMembersVO;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingActivityVO;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingMemberVO;
+import com.panzhihua.common.utlis.SensitiveUtil;
import com.panzhihua.service_dangjian.dao.ComBpActivityDAO;
import com.panzhihua.service_dangjian.dao.ComPbActivityMemberDAO;
import com.panzhihua.service_dangjian.dao.ComPbMemberDAO;
@@ -22,6 +24,7 @@
import org.apache.http.client.utils.DateUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
@@ -45,6 +48,7 @@
private ComPbActivityMemberDAO comPbActivityMemberDAO;
@Resource
private ComPbMemberDAO comPbMemberDAO;
+
/**
* 查询某个党员加入的所有党员活动
@@ -79,6 +83,9 @@
page.setSize(pageSize);
page.setCurrent(pageNum);
IPage<PageActivityMembersVO> iPage = comPbActivityMemberDAO.pageActivityMembers(page, pageActivityMembersVO);
+ iPage.getRecords().forEach(record->{
+ record.setPhone(SensitiveUtil.desensitizedPhoneNumber(record.getPhone()));
+ });
Map<String,Object> map=new HashMap<>(3);
ComPbActivityDO comPbActivityDO = comBpActivityDAO.selectById(activityId);
map.put("page",iPage);
@@ -107,8 +114,26 @@
}
PartyBuildingActivityVO partyBuildingActivityVO = new PartyBuildingActivityVO();
BeanUtils.copyProperties(comPbActivityDO, partyBuildingActivityVO);
- List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getActivityId, id).orderByDesc(ComPbActivityMemberDO::getCreateAt));
+
List<PartyBuildingMemberVO> partyBuildingMemberVOS = new ArrayList<>();
+ List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getActivityId, id).orderByDesc(ComPbActivityMemberDO::getCreateAt));
+ if (!ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
+ int size = comPbActivityMemberDOS.size();
+ if (size>=6) {
+ comPbActivityMemberDOS = comPbActivityMemberDOS.subList(0,6);
+ }
+ comPbActivityMemberDOS.forEach(member->{
+ PartyBuildingMemberVO partyBuildingMemberVO = new PartyBuildingMemberVO();
+ BeanUtils.copyProperties(member, partyBuildingMemberVO);
+ partyBuildingMemberVO.setCreateAt(member.getCreateAt());
+ partyBuildingMemberVOS.add(partyBuildingMemberVO);
+ });
+ partyBuildingActivityVO.setParticipationActualNum(comPbActivityMemberDOS.size());
+ }else{
+ partyBuildingActivityVO.setParticipationActualNum(0);
+ }
+ //List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getActivityId, id).orderByDesc(ComPbActivityMemberDO::getCreateAt));
+ /* List<PartyBuildingMemberVO> partyBuildingMemberVOS = new ArrayList<>();
if (!ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
List<Long> collect = comPbActivityMemberDOS.stream().map(ComPbActivityMemberDO::getMemberId).collect(Collectors.toList());
int size = collect.size();
@@ -124,7 +149,7 @@
partyBuildingActivityVO.setParticipationActualNum(size);
} else {
partyBuildingActivityVO.setParticipationActualNum(0);
- }
+ }*/
ComPbActivityMemberDO comPbActivityMemberDO=comPbActivityMemberDAO.selectByUserIdActivityId(id,userId);
if (ObjectUtils.isEmpty(comPbActivityMemberDO)) {
partyBuildingActivityVO.setIsSign(0);
@@ -134,6 +159,12 @@
partyBuildingActivityVO.setPartyBuildingMemberVOS(partyBuildingMemberVOS);
partyBuildingActivityVO.setIsPerson(isPerson);
partyBuildingActivityVO.setCreateByName(loginUserInfoVO.getName());
+
+ //查询社区名称
+ if(partyBuildingActivityVO.getCommunityId() != null){
+ partyBuildingActivityVO.setCommunityName(comBpActivityDAO.selectCommunityNameByCommunityId(partyBuildingActivityVO.getCommunityId()));
+ }
+
return R.ok(partyBuildingActivityVO);
}
@@ -147,7 +178,13 @@
public R addactivity(PartyBuildingActivityVO partyBuildingActivityVO) {
ComPbActivityDO comPbActivityDO = new ComPbActivityDO();
BeanUtils.copyProperties(partyBuildingActivityVO, comPbActivityDO);
- comPbActivityDO.setCreateAt(new Date());
+ Date now = new Date();
+ comPbActivityDO.setEnrollTimeBegin(now);
+ comPbActivityDO.setCreateAt(now);
+
+ //默认设置为“进行中”
+ comPbActivityDO.setStatus(4);
+
int insert = comBpActivityDAO.insert(comPbActivityDO);
if (insert > 0) {
return R.ok();
@@ -278,11 +315,11 @@
@Override
public R listActivity(Long userId, Long communityId) {
List<ComActActivityVO> comActActivityVOS = new ArrayList<>();
- Long memberId=comPbActivityMemberDAO.selectMemberIdByUserId(userId,communityId);
+ /*Long memberId=comPbActivityMemberDAO.selectMemberIdByUserId(userId,communityId);
if (ObjectUtils.isEmpty(memberId)) {
return R.fail();
- }
- List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getMemberId, memberId));
+ }*/
+ List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getUserId, userId));
if (ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
return R.fail();
}
@@ -291,6 +328,14 @@
comPbActivityDOS.forEach(comPbActivityDO -> {
ComActActivityVO comActActivityVO = new ComActActivityVO();
+ Long createBy = comPbActivityDO.getCreateBy();
+ LoginUserInfoVO loginUserInfoVO=comPbActivityMemberDAO.selectUserInfo(createBy);
+ Integer type = loginUserInfoVO.getType();
+ if (type==1) {
+ comActActivityVO.setIsPerson(1);
+ }else{
+ comActActivityVO.setIsPerson(0);
+ }
Integer status = comPbActivityDO.getStatus();
if (status.intValue()==3) {
status=4;
@@ -301,6 +346,7 @@
comActActivityVO.setActivityName(comPbActivityDO.getName());
comActActivityVO.setCover(comPbActivityDO.getCover());
comActActivityVO.setBeginAt(comPbActivityDO.getActivityTimeBegin());
+ comActActivityVO.setSingDate(comPbActivityMemberDOS.stream().filter(comPbActivityMemberDO -> comPbActivityMemberDO.getActivityId().equals(comActActivityVO.getId())).collect(Collectors.toList()).get(0).getCreateAt());
comActActivityVOS.add(comActActivityVO);
});
return R.ok(comActActivityVOS);
@@ -317,16 +363,24 @@
List<PartyBuildingMemberVO> partyBuildingMemberVOS = new ArrayList<>();
List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList(new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getActivityId, id).orderByDesc(ComPbActivityMemberDO::getCreateAt));
if (!ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
+ comPbActivityMemberDOS.forEach(member->{
+ PartyBuildingMemberVO partyBuildingMemberVO = new PartyBuildingMemberVO();
+ BeanUtils.copyProperties(member, partyBuildingMemberVO);
+ partyBuildingMemberVO.setCreateAt(member.getCreateAt());
+ partyBuildingMemberVOS.add(partyBuildingMemberVO);
+ });
+ }
+ /*if (!ObjectUtils.isEmpty(comPbActivityMemberDOS)) {
List<Long> collect = comPbActivityMemberDOS.stream().map(ComPbActivityMemberDO::getMemberId).collect(Collectors.toList());
List<ComPbMemberDO> comPbMemberDOS = comPbMemberDAO.selectList(new QueryWrapper<ComPbMemberDO>().lambda().in(ComPbMemberDO::getId, collect));
comPbMemberDOS.forEach(comPbMemberDO -> {
PartyBuildingMemberVO partyBuildingMemberVO = new PartyBuildingMemberVO();
BeanUtils.copyProperties(comPbMemberDO, partyBuildingMemberVO);
ComPbActivityMemberDO comPbActivityMemberDO1 = comPbActivityMemberDOS.stream().filter(comPbActivityMemberDO -> comPbActivityMemberDO.getMemberId().equals(comPbMemberDO.getId())).collect(Collectors.toList()).get(0);
- partyBuildingMemberVO.setJoinTime(comPbActivityMemberDO1.getCreateAt());
+ partyBuildingMemberVO.setCreateAt(comPbActivityMemberDO1.getCreateAt());
partyBuildingMemberVOS.add(partyBuildingMemberVO);
});
- }
+ }*/
return R.ok(partyBuildingMemberVOS);
}
@@ -357,6 +411,10 @@
ComPbActivityMemberDO comPbActivityMemberDO1=new ComPbActivityMemberDO();
comPbActivityMemberDO1.setActivityId(id);
comPbActivityMemberDO1.setMemberId(comPbMemberDO.getId());
+ comPbActivityMemberDO1.setUserId(userId);
+ //添加参加活动的党员快照信息,防止党员信息删除后无法显示
+ comPbActivityMemberDO1.setName(comPbMemberDO.getName());
+ comPbActivityMemberDO1.setPhotoPath(comPbMemberDO.getPhotoPath());
comPbActivityMemberDO1.setCreateAt(new Date());
mum=comPbActivityMemberDAO.insert(comPbActivityMemberDO1);
} else {
@@ -366,6 +424,10 @@
if (empty) {
return R.ok(null,"已经取消");
}else{
+ Long createBy = comPbActivityDO.getCreateBy();
+ if (createBy.equals(userId)) {
+ return R.fail("发起者不能取消报名");
+ }
mum=comPbActivityMemberDAO.deleteById(comPbActivityMemberDO.getId());
}
}
@@ -437,11 +499,26 @@
* @return 创建结果
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public R addActivityApplets(ComPbActivityDTO comPbActivityDTO) {
ComPbActivityDO comPbActivityDO=new ComPbActivityDO();
+ Long createBy = comPbActivityDTO.getCreateBy();
BeanUtils.copyProperties(comPbActivityDTO,comPbActivityDO);
int insert = comBpActivityDAO.insert(comPbActivityDO);
if (insert>0) {
+ ComPbActivityDO comPbActivityDO1 = comBpActivityDAO.selectOne(new QueryWrapper<ComPbActivityDO>().lambda().eq(ComPbActivityDO::getName, comPbActivityDTO.getName()).eq(ComPbActivityDO::getCover, comPbActivityDTO.getCover()).last(" order by create_at desc limit 1 "));
+ Long comPbActivityDO1Id = comPbActivityDO1.getId();
+ ComPbMemberDO comPbMemberDO = comPbMemberDAO.selectByUserId(createBy);
+ if (ObjectUtils.isEmpty(comPbMemberDO)) {
+ log.error("【{}】不是党员",createBy);
+ throw new PartyBuildingMemberException("用户不是党员");
+ }
+ Long comPbMemberDOId = comPbMemberDO.getId();
+ ComPbActivityMemberDO comPbActivityMemberDO=new ComPbActivityMemberDO();
+ comPbActivityMemberDO.setMemberId(comPbMemberDOId);
+ comPbActivityMemberDO.setActivityId(comPbActivityDO1Id);
+ comPbActivityMemberDO.setCreateAt(new Date());
+ comPbActivityMemberDAO.insert(comPbActivityMemberDO);
return R.ok();
}
return R.fail();
--
Gitblit v1.7.1