From 54ad966d0b142c97fc659263b51d1ea5d7b5c7c6 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期五, 28 五月 2021 16:17:08 +0800 Subject: [PATCH] 修改bug --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java | 94 ++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 89 insertions(+), 5 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java index d61ac21..00412a6 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java @@ -1,14 +1,17 @@ package com.panzhihua.service_community.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; 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.model.dtos.community.ExcelElderAuthDTO; +import com.panzhihua.common.model.vos.IndexDataVO; +import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; -import com.panzhihua.common.model.vos.community.ActivitySignVO; -import com.panzhihua.common.model.vos.community.ComActActivityVO; -import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO; -import com.panzhihua.common.model.vos.community.SignactivityVO; +import com.panzhihua.common.model.vos.community.*; +import com.panzhihua.common.service.user.UserService; import com.panzhihua.service_community.dao.ComActActSignDAO; import com.panzhihua.service_community.dao.ComActActivityDAO; import com.panzhihua.service_community.dao.ComActDiscussOptionUserDAO; @@ -16,12 +19,14 @@ import com.panzhihua.service_community.model.dos.ComActActivityDO; import com.panzhihua.service_community.service.ComActActivityService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.time.DateUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -40,6 +45,8 @@ private ComActActivityDAO comActActivityDAO; @Resource private ComActActSignDAO comActActSignDAO; + @Resource + private UserService userService; /** * 新增社区活动 @@ -51,9 +58,21 @@ ComActActivityDO comActActivityDO=new ComActActivityDO(); BeanUtils.copyProperties(comActActivityVO,comActActivityDO); Integer status = comActActivityVO.getStatus(); + Date now = new Date(); if (status.intValue()!=1) { - comActActivityDO.setPublishAt(new Date());//发布时间 + comActActivityDO.setPublishAt(now);//发布时间 } + //如果发布时间大于现在时间状态改为进行中 + /*if(now.getTime()<comActActivityVO.getBeginAt().getTime()){ + comActActivityDO.setStatus(3); + }*/ + if(status.intValue()==2) {//点击‘保存并发布’ 按钮 + //报名结束时间大于当前时间则设置为“进行中” + if (comActActivityVO.getSignUpEnd() != null && now.getTime() < comActActivityVO.getSignUpEnd().getTime()) { + comActActivityDO.setStatus(4); + } + } + boolean save = this.save(comActActivityDO); if(!save){ return R.fail(); @@ -73,6 +92,12 @@ public R putActivity(ComActActivityVO comActActivityVO) { ComActActivityDO comActActivityDO=new ComActActivityDO(); BeanUtils.copyProperties(comActActivityVO,comActActivityDO); + + //结束时间大于当前时间则设置为“进行中” + Date now = new Date(); + if(comActActivityVO.getSignUpEnd()!=null && now.getTime()<comActActivityVO.getSignUpEnd().getTime()){ + comActActivityDO.setStatus(4); + } boolean b = this.updateById(comActActivityDO); if (b) { return R.ok(); @@ -219,8 +244,16 @@ Integer type = signactivityVO.getType(); Long userId = signactivityVO.getUserId(); Integer isVolunteer = signactivityVO.getIsVolunteer(); + int num=0; if (1==type) { + R<LoginUserInfoVO> userInfoR = userService.getUserInfoByUserId(String.valueOf(userId)); + LoginUserInfoVO loginUserInfoVO = JSONObject.parseObject(JSONObject.toJSONString(userInfoR.getData()), LoginUserInfoVO.class); + boolean userNotVolunteer = !(loginUserInfoVO.getIsVolunteer()==1); + if(isVolunteer == 1 && userNotVolunteer){ + return R.fail("只有志愿者才能报名"); + } + ComActActSignDO comActActSignDO=new ComActActSignDO(); comActActSignDO.setActivityId(activityId); comActActSignDO.setUserId(userId); @@ -272,6 +305,7 @@ if (status.intValue()==3) { comActActivityVO.setStatus(4); } + comActActivityVO.setSingDate(comActActSignDOS.stream().filter(comActActSignDO1 -> comActActSignDO1.getActivityId().equals(comActActivityVO.getId())).collect(Collectors.toList()).get(0).getCreateAt()); comActActivityVOS.add(comActActivityVO); }); return R.ok(comActActivityVOS); @@ -368,5 +402,55 @@ return R.ok(iPage); } + /** + * 首页图表数据汇总 + * + * @param communityId 社区id + * @return 图表数据 IndexDataVO + */ + @Override + public R indexDataCommunityBackstageEchart(Long communityId) { + IndexDataVO indexDataVO=new IndexDataVO(); + CommunityGovernanceTrendsVO communityGovernanceTrendsVO=new CommunityGovernanceTrendsVO(); + List<CommunityActivitiesVO> communityActivitiesVOS=new ArrayList<>(); + List<Date>dates=this.getServenDays(); + String s=comActActivityDAO.selectCommunityGovernanceTrendsVO(communityId); + List<String>y= Arrays.asList(s.split(",")); + communityGovernanceTrendsVO.setY(y); + communityGovernanceTrendsVO.setX(Arrays.asList(new String[]{"一起议","微心愿","随手拍","社区活动"})); + dates.forEach(date -> { + CommunityActivitiesVO communityActivitiesVO=comActActivityDAO.selectCommunityActivitiesVO(communityId,date); + communityActivitiesVO.setDate(date); + communityActivitiesVOS.add(communityActivitiesVO); + }); + + indexDataVO.setCommunityGovernanceTrendsVO(communityGovernanceTrendsVO); + indexDataVO.setCommunityActivitiesVOS(communityActivitiesVOS); + return R.ok(indexDataVO); + } + + /** + * 获取最近七天的时间 + * @return + */ + private List<Date> getServenDays() { + List<Date> dates=new ArrayList<>(); + Date date=new Date(); + for(int i=6;i>=0;i--){ + Date date1= DateUtils.addDays(date,-i); + dates.add(date1); + } + return dates; + } + + public static void main(String[] args) { + List<Date> dates=new ArrayList<>(); + Date date=new Date(); + for(int i=6;i>=0;i--){ + Date date1= DateUtils.addDays(date,-i); + dates.add(date1); + } + System.out.println(dates); + } } -- Gitblit v1.7.1