admin
2020-12-05 8ac93bd9b45e3d25783798e1fe8cfc26bedd57d2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
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.ActivityFriendAssistInfoVO;
import com.ks.daylucky.pojo.VO.AssistFriendVO;
import com.ks.daylucky.pojo.VO.SimpleUser;
import com.ks.daylucky.service.UserInfoService;
import com.ks.daylucky.util.Constant;
import com.ks.daylucky.util.UserInfoUtil;
import com.ks.lucky.pojo.DO.LuckyActivityJoinAssist;
import com.ks.lucky.pojo.DTO.ActivityAssistFriend;
import com.ks.lucky.pojo.DTO.ActivityFriendAssistInfo;
import com.ks.lucky.remote.service.LuckyActivityJoinAssistService;
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;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.StringUtil;
 
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
@Controller
@RequestMapping("api/client/activity/assist")
public class ActivityAssistController {
 
    @Reference
    private LuckyActivityJoinAssistService luckyActivityJoinAssistService;
 
    @Resource
    private UserInfoService userInfoService;
 
 
    @ResponseBody
    @RequestMapping("getAssistFriendsList")
    public String getAssistFriendsList(AcceptData acceptData, int page) {
        List<AssistFriendVO> list = new ArrayList<>();
        List<ActivityAssistFriend> recordList = luckyActivityJoinAssistService.getAssistFriendsList(acceptData.getApp().getId(), acceptData.getUid() + "", page, Constant.PAGE_SIZE);
        long count = luckyActivityJoinAssistService.countAssistFriends(acceptData.getApp().getId(), acceptData.getUid() + "");
        List<Long> uidList = new ArrayList<>();
        if (recordList != null) {
            for (ActivityAssistFriend assist : recordList) {
                uidList.add(Long.parseLong(assist.getUid()));
            }
            //填充用户信息
            if (uidList.size() > 0) {
                Map<Long, UserInfo> userInfoMap = userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(recordList));
                for (ActivityAssistFriend assistFriend : recordList) {
                    list.add(new AssistFriendVO(userInfoMap.get(Long.parseLong(assistFriend.getUid())), assistFriend.getAssistCount()));
                }
            }
        }
        JSONObject data = new JSONObject();
        data.put("data", JsonUtil.getApiCommonGson().toJson(list));
        data.put("count", count);
        return JsonUtil.loadTrueResult(data);
    }
 
 
    /**
     * 活动助力列表
     *
     * @param acceptData
     * @param page
     * @return
     */
    @ResponseBody
    @RequestMapping("getActivityAssistCouponList")
    public String getActivityAssistCouponList(AcceptData acceptData, Long activityId, int page) {
        List<ActivityFriendAssistInfo> list = luckyActivityJoinAssistService.getActivityFriendAssistInfoList(activityId, acceptData.getApp().getId(), acceptData.getUid() + "", page, Constant.PAGE_SIZE);
        List<ActivityFriendAssistInfoVO> voList = new ArrayList<>();
        if (list != null) {
            Map<Long, UserInfo> userMap = userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(list));
            for (ActivityFriendAssistInfo info : list) {
                UserInfo user = userMap.get(Long.parseLong(info.getUid()));
                if (user != null) {
                    List<String> eventList = new ArrayList<>();
                    if (info.getEventList() != null) {
                        for (LuckyActivityJoinAssist.ActivityJoinAssistEvent event : info.getEventList()) {
                            eventList.add(event.getName());
                        }
                    }
                    voList.add(new ActivityFriendAssistInfoVO(new SimpleUser(user.getId(), user.getNickName(), user.getPortrait()), StringUtil.concat(eventList, "\n且"), info.getWeight()));
                }
            }
        }
 
 
        long count = luckyActivityJoinAssistService.countyActivityFriendAssistInfo(activityId, acceptData.getApp().getId(), acceptData.getUid() + "");
 
        JSONObject data = new JSONObject();
        data.put("data", voList);
        data.put("count", count);
        return JsonUtil.loadTrueResult(data);
    }
 
 
}