From 4fbc92586403dcce89e2012c767434c4367ff958 Mon Sep 17 00:00:00 2001 From: xhxu Date: Sat, 30 Jan 2021 16:12:15 +0800 Subject: [PATCH] activity --- .../controller/WxActivityController.java | 6 +- .../enums/EnumActivityEnrollStatus.java | 10 +++- .../iformall/service/WxActivityService.java | 4 ++ .../service/impl/WxActivityServiceImpl.java | 58 +++++++++++++++++++ 4 files changed, 74 insertions(+), 4 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxActivityController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxActivityController.java index 2b60c297a..cb859ff60 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxActivityController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxActivityController.java @@ -94,10 +94,12 @@ public class WxActivityController extends BaseController { } catch (Exception e) { return new ResultData(Result.ERROR,e.getMessage()); } - Integer status = wxActivityService.queryStatus(id, memberId); + Integer activityStatus = wxActivityService.queryActivityStatus(id); + Integer joinStatus = wxActivityService.queryJoinStatus(id, memberId); Map data = new HashMap<>(); data.put("activity", wxActivity); - data.put("status", status); + data.put("activityStatus", activityStatus); + data.put("joinStatus", joinStatus); return new ResultData(Result.SUCCESS, "查询成功", data); } diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumActivityEnrollStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumActivityEnrollStatus.java index 73ae50328..423b0ef81 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumActivityEnrollStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumActivityEnrollStatus.java @@ -6,11 +6,17 @@ package com.iformall.enums; */ public enum EnumActivityEnrollStatus { + JOINED(3, "已报名"), + NOJOINED(4, "未报名"), + NOT_START(0, "报名未开始"), NORMAL(1, "正常报名"), END(2, "报名结束"), - JOINED(3, "已报名"), - NOT_JOIN(4, "不需要报名"),; + ACTIVITY_NOT_LINE(5, "活动未上线"), + ACTIVITY_NOT(6, "活动下线"), + ACTIVITY_END(7, "活动结束"), + + NOT_JOIN(8, "不需要报名"),; public static EnumActivityEnrollStatus getEnum(Integer code) { for (EnumActivityEnrollStatus value : values()) { diff --git a/mallinkService/src/main/java/com/iformall/service/WxActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxActivityService.java index 74bf4a6f2..8a2ad98c4 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxActivityService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxActivityService.java @@ -49,4 +49,8 @@ public interface WxActivityService { ResultData offLineCampaign(WxActivity wxActivity); ResultData getListStatus(WxActivity wxActivity); + + Integer queryActivityStatus(Long id); + + Integer queryJoinStatus(Long id, Long memberId); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java index 91a41744b..9a69567a4 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxActivityServiceImpl.java @@ -362,5 +362,63 @@ public class WxActivityServiceImpl implements WxActivityService { return new ResultData(list); } + @Override + public Integer queryActivityStatus(Long id) { + + WxActivity wxActivity = wxActivityMapper.selectById(id); + + if(wxActivity.getActivityType().equals(EnumDelFlag.YES.getCode())){ + //查询是否已参加报名 + + //未投放 就是 未开始 + if (wxActivity.getStatus().equals(EnumActivityStatus.STATUS_THROW_IN.getCode())) { + return EnumActivityEnrollStatus.ACTIVITY_NOT_LINE.getCode(); + } + //下线 就是 结束 + if (wxActivity.getStatus().equals(EnumActivityStatus.STATUS_TAKE_OFFF.getCode())) { + return EnumActivityEnrollStatus.ACTIVITY_NOT.getCode(); + } + Date date = new Date(); + + if (wxActivity.getStatus().equals(EnumActivityStatus.INJECT_CAMPAIGN.getCode()) + || wxActivity.getStatus().equals(EnumActivityStatus.INJECT_ONLINE.getCode())) { + //报名未开始 + if (wxActivity.getStartTime().after(date)) { + return EnumActivityEnrollStatus.NOT_START.getCode(); + } + if (wxActivity.getEndTime().before(date)) { + //报名结束 + return EnumActivityEnrollStatus.END.getCode(); + } + } + if(wxActivity.getActivityEndTime().before(date)){ + return EnumActivityEnrollStatus.ACTIVITY_END.getCode(); + } + }else{ + return EnumActivityEnrollStatus.NOT_JOIN.getCode(); + } + return EnumActivityEnrollStatus.NORMAL.getCode(); + } + + @Override + public Integer queryJoinStatus(Long id, Long memberId) { + WxActivity wxActivity = wxActivityMapper.selectById(id); + if(wxActivity.getActivityType().equals(EnumDelFlag.YES.getCode())){ + WxActivityJoin activityJoin = new WxActivityJoin(); + activityJoin.setUserId(memberId); + activityJoin.setActivityId(id); + activityJoin.updateTenantInfo(wxActivity); + int count = wxActivityJoinMapper.selectCount(new QueryWrapper(activityJoin)); + if (count > 0) { + return EnumActivityEnrollStatus.JOINED.getCode(); + }else{ + return EnumActivityEnrollStatus.NOJOINED.getCode(); + } + }else{ + return EnumActivityEnrollStatus.NOT_JOIN.getCode(); + } + + } + }