From 78d1c9ee9b0c49f77c29d0535cb93c6d62c42f3a Mon Sep 17 00:00:00 2001 From: 101captain <237651143@qq.com> Date: 星期四, 11 十一月 2021 13:58:25 +0800 Subject: [PATCH] 1111修改提交 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java | 53 ++++++++++++++++++++++++++++------------------------- 1 files changed, 28 insertions(+), 25 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 dc65cff..e3eb9f9 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 @@ -4,6 +4,8 @@ import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.commons.lang3.StringUtils.isNotBlank; +import java.math.BigDecimal; +import java.math.RoundingMode; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Arrays; @@ -108,7 +110,7 @@ if (status.intValue() == 2) {// 点击‘保存并发布’ 按钮 // 报名结束时间大于当前时间则设置为“进行中” if (comActActivityVO.getSignUpEnd() != null && now.getTime() < comActActivityVO.getSignUpEnd().getTime()) { - comActActivityDO.setStatus(4); + comActActivityDO.setStatus(3); } } @@ -177,7 +179,7 @@ // 结束时间大于当前时间则设置为“进行中” Date now = new Date(); if (comActActivityVO.getSignUpEnd() != null && now.getTime() < comActActivityVO.getSignUpEnd().getTime()) { - comActActivityDO.setStatus(4); + comActActivityDO.setStatus(3); } boolean b = this.updateById(comActActivityDO); if (b) { @@ -228,21 +230,11 @@ */ @Override public R releaseActivity(ComActActivityVO comActActivityVO) { - ComActActivityDO comActActivityDO = new ComActActivityDO(); -// comActActivityDO.setId(comActActivityVO.getId()); -// comActActivityDO.setPublishAt(comActActivityVO.getPublishAt()); -// comActActivityDO.setStatus(comActActivityVO.getStatus()); - comActActivityDO = comActActivityDAO.selectById(comActActivityVO.getId()); + ComActActivityDO comActActivityDO = comActActivityDAO.selectById(comActActivityVO.getId()); comActActivityDO.setPublishAt(comActActivityVO.getPublishAt()); - comActActivityVO.setStatus(2); -// if (comActActivityVO.getPublishAt().before(comActActivityDO.getSignUpBegin())) { -// comActActivityVO.setStatus(2); -// } + comActActivityDO.setStatus(3); if (comActActivityVO.getPublishAt().after(comActActivityDO.getSignUpEnd())) { - comActActivityVO.setStatus(5); - } - if (comActActivityVO.getPublishAt().after(comActActivityDO.getSignUpBegin()) && comActActivityVO.getPublishAt().before(comActActivityDO.getSignUpEnd())) { - comActActivityVO.setStatus(3); + comActActivityVO.setStatus(4); } int update = comActActivityDAO.updateById(comActActivityDO); if (update > 0) { @@ -466,7 +458,9 @@ String attendPeople = actActivityDO.getAattendPeople(); if (isVolunteer.intValue() == 0 && isNotBlank(attendPeople)) { if (isBlank(currentUserTags)) { - return R.fail("您不是指定参与人群!"); + currentUserTags = "全部居民"; + } else { + currentUserTags = currentUserTags.concat(",全部居民"); } List<String> currentUserTagList = Arrays.asList(currentUserTags.split(",")); boolean checkResult = currentUserTagList.stream().anyMatch(currentUserTag -> attendPeople.contains(currentUserTag)); @@ -607,15 +601,15 @@ int num = comActActivityDAO.updateStatusToNotBegin(); log.info("定时任务--修改社区活动发布状态活动数量【{}】", num); // 修改报名状态 变为报名中 - int num1 = comActActivityDAO.updateStatusToBeginSign(); - log.info("定时任务--修改社区活动报名状态活动数量【{}】", num1); +// int num1 = comActActivityDAO.updateStatusToBeginSign(); +// log.info("定时任务--修改社区活动报名状态活动数量【{}】", num1); + int num3 = comActActivityDAO.updateStatusToBeginAfterSingEnd(); + log.info("定时任务--报名结束修改社区活动进行状态活动数量【{}】", num3); // 查询已经结束的活动,需要计算积分 List<Long> activityEndIds = comActActivityDAO.getActivityEndIds(); // 修改进行状态 变为进行中或者已结束 int num2 = comActActivityDAO.updateStatusToBeginActiveOrEnd(); log.info("定时任务--修改社区活动进行状态活动数量【{}】", num2); - int num3 = comActActivityDAO.updateStatusToBeginAfterSingEnd(); - log.info("定时任务--报名结束修改社区活动进行状态活动数量【{}】", num3); return R.ok(activityEndIds); } @@ -643,11 +637,20 @@ iPage.getRecords().forEach(vo ->{ List<ComActActEvaluateDO> comActActEvaluateDOList = comActActEvaluateDAO .selectList(new QueryWrapper<ComActActEvaluateDO>().lambda().eq(ComActActEvaluateDO::getActivityId, vo.getId())); - if (comActActEvaluateDOList != null && comActActEvaluateDOList.size() != 0) { + if (comActActEvaluateDOList != null && comActActEvaluateDOList.size() > 0) { + BigDecimal starNum = BigDecimal.ZERO; //总星级 - int starNum = comActActEvaluateDOList.stream().mapToInt(ComActActEvaluateDO::getStarLevel).sum(); - //评分星级=总星级/总评价人数 - vo.setEvaluateLevel(Double.valueOf(starNum/comActActEvaluateDOList.size())); + for (ComActActEvaluateDO evaluateDO:comActActEvaluateDOList) { + starNum = starNum.add(BigDecimal.valueOf(evaluateDO.getStarLevel()==null?0:evaluateDO.getStarLevel())); + } + //评分星级(如果无评分默认5分)=总星级/总评价人数 + if(starNum.compareTo(BigDecimal.ZERO) == 0){ + vo.setEvaluateLevel(BigDecimal.valueOf(5)); + }else{ + vo.setEvaluateLevel(starNum.divide(BigDecimal.valueOf(comActActEvaluateDOList.size()),2, RoundingMode.HALF_UP)); + } + }else{ + vo.setEvaluateLevel(BigDecimal.valueOf(5)); } }); return R.ok(iPage); @@ -728,7 +731,7 @@ // 查询所有即将开始的活动 List<ComActActivityDO> actActivityList = comActActivityDAO.selectList(new QueryWrapper<ComActActivityDO>() .lambda().le(ComActActivityDO::getBeginAt, DateUtils.addDays(new Date(), 1)) - .ge(ComActActivityDO::getBeginAt, new Date())); + .ge(ComActActivityDO::getBeginAt, new Date()).notIn(ComActActivityDO::getStatus,5,6)); if (!actActivityList.isEmpty()) { WxXCXTempSend util = new WxXCXTempSend(); try { -- Gitblit v1.7.1