From 6ac7026c1676eacc676e31f9fba122e44b95c5d3 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期四, 04 八月 2022 17:44:27 +0800
Subject: [PATCH] 活动积分修改
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 144 ++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 121 insertions(+), 23 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java
index 9e82f88..191f273 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java
@@ -10,6 +10,8 @@
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.PageVO;
import com.panzhihua.common.service.user.UserService;
+import com.panzhihua.common.utlis.SensitiveUtil;
+import com.panzhihua.service_community.entity.ComPbCheckUnit;
import com.panzhihua.service_community.service.ComActNeighborCircleTopicService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.BeanUtils;
@@ -34,6 +36,8 @@
import com.panzhihua.service_community.service.ComActNeighborCircleService;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.RequestParam;
/**
* @auther lyq
@@ -77,6 +81,8 @@
private ComActNeighborCircleDAO comActNeighborCircleDAO;
@Resource
private ComActActivityDAO comActActivityDAO;
+ @Resource
+ private ComPbCheckUnitDao comPbCheckUnitDao;
/**
* 分页查询邻里圈列表
*
@@ -235,6 +241,18 @@
circleDetailAppVO.setName(actDO.getName());
}
}
+ if(circleDetailAppVO.getOrderType()!=null){
+ if(circleDetailAppVO.getOrderType()==2){
+ AdministratorsUserVO user1 = this.baseMapper.selectUserByUserId(circleDetailAppVO.getSolveId());
+ circleDetailAppVO.setSolveName(SensitiveUtil.replaceName(user1.getName()));
+ }
+ if(circleDetailAppVO.getOrderType()==1){
+ ComPbCheckUnit comPbCheckUnit=comPbCheckUnitDao.selectById(circleDetailAppVO.getSolveUnitId());
+ if(comPbCheckUnit!=null){
+ circleDetailAppVO.setSolveName(comPbCheckUnit.getName());
+ }
+ }
+ }
if (neighborCircleAppDTO.getUserId() != null) {
// 查询邻里圈点赞信息
@@ -251,7 +269,12 @@
circleDetailAppVO.setHaveSign(2);
}
}
-
+ ComActActivityDO comActActivityDO=comActActivityDAO.selectOne(new QueryWrapper<ComActActivityDO>().lambda().eq(ComActActivityDO::getRelationId,neighborCircleAppDTO.getCircleId()));
+ if(comActActivityDO!=null){
+ circleDetailAppVO.setActivityDate(comActActivityDO.getCreateAt());
+ circleDetailAppVO.setActivityId(comActActivityDO.getId());
+ circleDetailAppVO.setActivityName(comActActivityDO.getActivityName());
+ }
// 查询邻里圈下评论列表
IPage<ComActNeighborCircleCommentAppVO> circleCommentAppPage =
comActNeighborCircleCommentDAO.pageNeighborCommentByApp(
@@ -462,6 +485,7 @@
ComActNeighborCircleCommentDO circleCommentDO =
comActNeighborCircleCommentDAO.selectById(fabulousAppDTO.getServiceId());
if (circleCommentDO != null) {
+
circleCommentDO.setFabulousNum(circleCommentDO.getFabulousNum() + 1);
comActNeighborCircleCommentDAO.updateById(circleCommentDO);
//计算需要增加的热度值
@@ -708,8 +732,22 @@
AdministratorsUserVO user = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getReleaseId());
DetailNeighborCircleAdminVO vo = new DetailNeighborCircleAdminVO();
BeanUtils.copyProperties(comActNeighborCircleDO, vo);
- vo.setReleaseName(user.getName());
- vo.setImageUrl(user.getImageUrl());
+ if(user!=null){
+ vo.setReleaseName(user.getName());
+ vo.setImageUrl(user.getImageUrl());
+ }
+ if(comActNeighborCircleDO.getOrderType()!=null){
+ if(comActNeighborCircleDO.getOrderType()==2){
+ AdministratorsUserVO user1 = this.baseMapper.selectUserByUserId(comActNeighborCircleDO.getSolveId());
+ vo.setSolveName(user1.getName());
+ }
+ if(comActNeighborCircleDO.getOrderType()==1){
+ ComPbCheckUnit comPbCheckUnit=comPbCheckUnitDao.selectById(comActNeighborCircleDO.getSolveUnitId());
+ if(comPbCheckUnit!=null){
+ vo.setSolveName(comPbCheckUnit.getName());
+ }
+ }
+ }
// 查询话题名称
if (comActNeighborCircleDO.getTopicId() != null) {
@@ -1002,7 +1040,7 @@
ComPbMemberDO comPbMemberDO=comPbMemberDAO.selectOne(new QueryWrapper<ComPbMemberDO>().lambda().eq(ComPbMemberDO::getPhone,serviceStaticDTO.getPhone()).last("limit 1"));
if(comPbMemberDO!=null){
serviceStaticsVO.setWorkActivityList(comActActivityDAO.selectListByRelationId(comPbMemberDO.getCheckUnitId(),serviceStaticDTO.getYear()));
- serviceStaticsVO.setServiceActivityList(comActActivityDAO.selectListByCommunityId(comPbMemberDO.getCommunityId(),serviceStaticDTO.getYear()));
+ serviceStaticsVO.setServiceActivityList(comActActivityDAO.selectListByCommunityId(comPbMemberDO.getCommunityId(),serviceStaticDTO.getYear(),serviceStaticDTO.getPhone()));
}
}
@@ -1010,7 +1048,7 @@
}
@Override
- public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId,Integer page,Integer size,String belongTo) {
+ public R institutionalUnitServiceAnalysis(Integer year, Integer type, Integer range, Long communityId,Integer page,Integer size,String belongTo,Long unitId) {
ActivityAnalysisVO activityVO=new ActivityAnalysisVO();
String beginTime=null;
String endTime=null;
@@ -1023,9 +1061,9 @@
activityVO.setPartyMemberCount(comActDAO.selectUnitCount());
activityVO.setUnitCount(comActDAO.selectMemberCount());
//获取单位活动统计数据(邻里圈)
- List<UnitActivityAnalysisVO> unitActivityAnalysisVOS = comActNeighborCircleDAO.institutionalUnitServiceAnalysis(beginTime, endTime, belongTo);
+ List<UnitActivityAnalysisVO> unitActivityAnalysisVOS = comActNeighborCircleDAO.institutionalUnitServiceAnalysis(beginTime, endTime, belongTo,communityId);
//获取单位活动统计数据(活动)
- List<UnitActivityAnalysisVO> unitActivityAnalysisVOS1 = comActNeighborCircleDAO.institutionalUnitActivityAnalysis(beginTime, endTime, belongTo);
+ List<UnitActivityAnalysisVO> unitActivityAnalysisVOS1 = comActNeighborCircleDAO.institutionalUnitActivityAnalysis(beginTime, endTime, belongTo,communityId);
if (unitActivityAnalysisVOS.size()>0){
for (UnitActivityAnalysisVO unitActivityAnalysisVO : unitActivityAnalysisVOS){
if (ObjectUtils.isNotEmpty(unitActivityAnalysisVO)){
@@ -1066,36 +1104,68 @@
}
}
//获取党员活动统计数据
- List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo);
+ List<PartyMemberAnalysisVO> partyMemberAnalysisVOS = comActNeighborCircleDAO.institutionalPartyMemberServiceAnalysis(beginTime, endTime, belongTo,communityId,unitId);
+ List<PartyMemberAnalysisVO> partyMemberAnalysisVOS1 = comActNeighborCircleDAO.institutionalPartyMemberActAnalysis(beginTime, endTime, belongTo,communityId,unitId);
+ if (partyMemberAnalysisVOS1.size()>0){
+ for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS1) {
+ if (ObjectUtils.isNotEmpty(vo)){
+ if (ObjectUtils.isNotEmpty(vo.getMemberId())){
+ Map<String, Integer> param = memberAlreadyAnalysis(vo.getMemberId(), partyMemberAnalysisVOS);
+ if (param.get("flag")==1){
+ Integer serviceTime = vo.getServiceTime();
+ Integer serviceTimes = vo.getServiceTimes();
+ partyMemberAnalysisVOS.get(param.get("index")).setServiceTime(partyMemberAnalysisVOS.get(param.get("index")).getServiceTime()+serviceTime);
+ partyMemberAnalysisVOS.get(param.get("index")).setServiceTimes(partyMemberAnalysisVOS.get(param.get("index")).getServiceTimes()+serviceTimes);
+ }else{
+ partyMemberAnalysisVOS.add(vo);
+ }
+ }
+ }
+ }
+ }
//统计总时长和总次数
Integer unitServiceCount=0;
Integer unitServiceTotalTime=0;
Integer memberServiceCount=0;
Integer memberServiceTotalTome=0;
for (UnitActivityAnalysisVO vo : unitActivityAnalysisVOS) {
- unitServiceCount+=vo.getServiceTime();
- unitServiceTotalTime+=vo.getServiceTimes();
+ //避免空指针
+ if (ObjectUtils.isNotEmpty(vo)){
+ if (ObjectUtils.isNotEmpty(vo.getServiceTime())){
+ unitServiceCount+=vo.getServiceTime();
+ }
+ if (ObjectUtils.isNotEmpty(vo.getServiceTimes())){
+ unitServiceTotalTime+=vo.getServiceTimes();
+ }
+ }
}
for (PartyMemberAnalysisVO vo : partyMemberAnalysisVOS) {
- memberServiceCount+=vo.getServiceTime();
- memberServiceTotalTome+=vo.getServiceTimes();
+ //避免空指针
+ if (ObjectUtils.isNotEmpty(vo)){
+ if (ObjectUtils.isNotEmpty(vo.getServiceTime())){
+ memberServiceCount+=vo.getServiceTime();
+ }
+ if (ObjectUtils.isNotEmpty(vo.getServiceTimes())){
+ memberServiceTotalTome+=vo.getServiceTimes();
+ }
+ }
}
activityVO.setUnitServiceTotalCount(unitServiceCount);
activityVO.setUnitServiceTotalTime(unitServiceTotalTime);
activityVO.setPartyMemberServiceTotalCount(memberServiceCount);
activityVO.setPartyMemberServiceTotalTime(memberServiceTotalTome);
//处理排序
- if (null != type){
- if (type.equals(1)){
- //按时长排序
- ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime");
- ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime");
- }else if (type.equals(2)){
- //按次数排序
- ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTimes");
- ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTimes");
- }
- }
+// if (null != type){
+// if (type.equals(1)){
+// //按时长排序
+// ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTime");
+// ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTime");
+// }else if (type.equals(2)){
+// //按次数排序
+// ListUtil.sortByProperty(unitActivityAnalysisVOS, "serviceTimes");
+// ListUtil.sortByProperty(partyMemberAnalysisVOS, "serviceTimes");
+// }
+// }
//处理分页
PageVO<List<UnitActivityAnalysisVO>> unitPage=new PageVO<>();
PageVO<List<PartyMemberAnalysisVO>> memberPage=new PageVO<>();
@@ -1125,6 +1195,11 @@
@Override
public R serviceStaticBackstage(ServiceStaticBackstageDTO serviceStaticDTO) {
return null;
+ }
+
+ @Override
+ public R selectCount(Integer type, String phone,Long communityId) {
+ return R.ok(this.baseMapper.selectCount(type,phone,communityId));
}
/**
@@ -1183,6 +1258,29 @@
}
}
+ /**
+ * 判断党员的统计是是否已存在
+ * */
+ public Map<String,Integer> memberAlreadyAnalysis(Long memberId,List<PartyMemberAnalysisVO> list){
+ Map<String,Integer> map=new HashMap<>();
+ if (memberId != null && list.size() > 0){
+ for (int i=0;i<list.size();i++) {
+ PartyMemberAnalysisVO vo = list.get(i);
+ if (ObjectUtils.isNotEmpty(vo)){
+ if (ObjectUtils.isNotEmpty(vo.getMemberId())){
+ if (memberId.equals(vo.getMemberId())){
+ map.put("index",i );
+ map.put("flag",1 );
+ return map;
+ }
+ }
+ }
+ }
+ }
+ map.put("flag",0 );
+ return map;
+ }
+
--
Gitblit v1.7.1