From 8c1c003c60d2f27b3c55e248451caeec7f2b5631 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 28 一月 2021 19:06:28 +0800 Subject: [PATCH] 活动管理界面完善 --- service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityJoinController.java | 107 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 94 insertions(+), 13 deletions(-) diff --git a/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityJoinController.java b/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityJoinController.java index c99cc09..a628a92 100644 --- a/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityJoinController.java +++ b/service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityJoinController.java @@ -1,19 +1,24 @@ package com.ks.daylucky.controller.api.client; import com.ks.daylucky.pojo.DO.UserInfo; -import com.ks.daylucky.pojo.VO.AcceptData; -import com.ks.daylucky.pojo.VO.ActivityJoinerRankInfoVO; -import com.ks.daylucky.pojo.VO.DrawnProbabilityVO; -import com.ks.daylucky.pojo.VO.SimpleUser; +import com.ks.daylucky.pojo.DTO.ActivityDetailInfoDTO; +import com.ks.daylucky.pojo.VO.*; +import com.ks.daylucky.service.ActivityService; import com.ks.daylucky.service.UserInfoService; import com.ks.daylucky.util.Constant; import com.ks.daylucky.util.UserInfoUtil; -import com.ks.lucky.pojo.DTO.ActivityDrawnProbabilityStatistic; -import com.ks.lucky.pojo.DTO.ActivityJoinStatisticInfo; -import com.ks.lucky.pojo.DTO.ActivityJoinerRankInfo; -import com.ks.lucky.pojo.DTO.ActivitySimpleUser; +import com.ks.daylucky.util.activity.ActivityUtil; +import com.ks.daylucky.util.factory.vo.ActivityListItemInfoVOFactory; +import com.ks.lucky.exception.LuckyActivityException; +import com.ks.lucky.exception.LuckyActivityJoinException; +import com.ks.lucky.pojo.DO.LuckyActivity; +import com.ks.lucky.pojo.DO.LuckyActivityJoinRecord; +import com.ks.lucky.pojo.DTO.*; +import com.ks.lucky.remote.service.LuckyActivityAwardResultService; import com.ks.lucky.remote.service.LuckyActivityJoinService; +import com.ks.lucky.remote.service.LuckyActivityService; import net.sf.json.JSONObject; +import org.apache.dubbo.config.annotation.Reference; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @@ -29,11 +34,20 @@ @RequestMapping("api/client/activity/join") public class ActivityJoinController { - @Resource + @Reference(version = "1.0.0", check = false) private LuckyActivityJoinService luckyActivityJoinService; + + @Reference(version = "1.0.0", check = false) + private LuckyActivityAwardResultService luckyActivityAwardResultService; + + @Reference(version = "1.0.0", check = false) + private LuckyActivityService luckyActivityService; @Resource private UserInfoService userInfoService; + + @Resource + private ActivityService activityService; /** @@ -49,12 +63,16 @@ public String getRankList(AcceptData acceptData, Long activityId, int page) { List<ActivityJoinerRankInfoVO> voList = new ArrayList<>(); - List<ActivityJoinerRankInfo> list = luckyActivityJoinService.getWeightRankList(activityId, page, Constant.PAGE_SIZE); + List<ActivityJoinerRankInfo> list = luckyActivityJoinService.getWeightRankList(activityId, page,10); if (list != null && list.size() > 0) { Map<Long, UserInfo> userInfoMap = userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(list)); for (ActivityJoinerRankInfo info : list) { - UserInfo user = userInfoMap.get(info.getUid()); + UserInfo user = userInfoMap.get(Long.parseLong(info.getUid())); + if (user != null) { +// if (user.getId().longValue() == acceptData.getUid()) { +// continue; +// } voList.add(new ActivityJoinerRankInfoVO(new SimpleUser(user.getId(), user.getNickName(), user.getPortrait()), info.getRank(), info.getWeight())); } } @@ -136,11 +154,11 @@ public String getJoinerList(AcceptData acceptData, Long activityId, int page) { List<SimpleUser> voList = new ArrayList<>(); - List<ActivitySimpleUser> list = luckyActivityJoinService.getJoinerList(activityId, page, Constant.PAGE_SIZE); + List<ActivitySimpleUser> list = luckyActivityJoinService.getJoinerList(activityId, null, page, Constant.PAGE_SIZE); if (list != null && list.size() > 0) { Map<Long, UserInfo> userInfoMap = userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(list)); for (ActivitySimpleUser info : list) { - UserInfo user = userInfoMap.get(info.getUid()); + UserInfo user = userInfoMap.get(Long.parseLong(info.getUid())); if (user != null) { voList.add(new SimpleUser(user.getId(), user.getNickName(), user.getPortrait())); } @@ -165,5 +183,68 @@ return JsonUtil.loadTrueResult(data); } + /** + * 鑾峰彇鎶藉璁板綍 + * + * @param acceptData + * @param type 1-寰呭紑濂� 2-宸蹭腑濂� 3-鏈腑濂� + * @return + */ + @ResponseBody + @RequestMapping("getJoinRecord") + public String getJoinRecord(AcceptData acceptData, int type, int page) { + List<Long> activityIdList = new ArrayList<>(); + long count = 0; + Long appId = acceptData.getApp().getId(); + Long uid = acceptData.getUid(); + switch (type) { + case 1: + activityIdList = luckyActivityJoinService.getUnOpenActivityIdList(appId, uid + "", page, Constant.PAGE_SIZE); + count = luckyActivityJoinService.countUnOpenActivityIdList(appId, uid + ""); + break; + case 2: + activityIdList = luckyActivityAwardResultService.getDrawnActivityIdList(appId, uid + "", page, Constant.PAGE_SIZE); + count = luckyActivityAwardResultService.countDrawnActivityIdList(appId, uid + ""); + break; + case 3: + activityIdList = luckyActivityJoinService.getUnDrawnActivityIdList(appId, uid + "", page, Constant.PAGE_SIZE); + count = luckyActivityJoinService.countUnDrawnActivityIdList(appId, uid + ""); + break; + } + + List<ActivityDetailInfoDTO> voList = activityService.getActivityDetail(activityIdList, appId, uid, type == 2 ? true : false); + + JSONObject data = new JSONObject(); + data.put("data", JsonUtil.getSimpleGson().toJson(ActivityListItemInfoVOFactory.create(voList))); + data.put("count", count); + + return JsonUtil.loadTrueResult(data); + } + + @ResponseBody + @RequestMapping("join") + public String join(AcceptData acceptData, Long activityId) { + UserInfo userInfo = userInfoService.getUserDetail(acceptData.getUid()); + if (userInfo == null) { + return JsonUtil.loadFalseResult("鐢ㄦ埛涓嶅瓨鍦�"); + } + + JoinInfo joinInfo = new JoinInfo(); + joinInfo.setAlipayUid(userInfo.getAlipayUid()); + try { + int weight = 1; + luckyActivityJoinService.join(activityId, acceptData.getApp().getId(), acceptData.getUid() + "", 1, joinInfo, LuckyActivityJoinRecord.USER_TYPE_REAL); + + LuckyActivity activity = luckyActivityService.getActivity(activityId); + //TODO 鎶藉娲诲姩鐨勭被鍨嬮渶瑕佹浛鎹� + return JsonUtil.loadTrueResult(new JoinResultInfoVO(weight, String.format("娲诲姩鏈熷彿锛�%s\n鎶藉娲诲姩", ActivityUtil.getActivityDateNumber(activityId, activity.getCreateTime())))); + } catch (LuckyActivityException e) { + return JsonUtil.loadFalseResult(e.getMsg()); + } catch (LuckyActivityJoinException e) { + return JsonUtil.loadFalseResult(e.getMsg()); + } + + } + } -- Gitblit v1.8.0