admin
2020-12-17 d8d576c5220e9d24251b51a59a58271c6e0cb4a4
service-daylucky/src/main/java/com/ks/daylucky/controller/api/client/ActivityAwardsController.java
@@ -3,15 +3,20 @@
import com.ks.daylucky.pojo.DO.UserInfo;
import com.ks.daylucky.pojo.VO.AcceptData;
import com.ks.daylucky.pojo.VO.SimpleUser;
import com.ks.daylucky.pojo.VO.UserActivityUnRecievedAwardVO;
import com.ks.daylucky.service.UserInfoService;
import com.ks.daylucky.util.Constant;
import com.ks.daylucky.util.UserInfoUtil;
import com.ks.lucky.exception.LuckyActivityAwardException;
import com.ks.lucky.exception.LuckyActivityAwardResultException;
import com.ks.lucky.exception.LuckyActivityException;
import com.ks.lucky.pojo.DO.LuckyActivityAwardResult;
import com.ks.lucky.pojo.DO.LuckyActivityAwards;
import com.ks.lucky.remote.service.LuckyActivityAwardResultService;
import com.ks.lucky.remote.service.LuckyActivityAwardService;
import net.sf.json.JSONArray;
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;
@@ -28,10 +33,10 @@
@RequestMapping("api/client/activity/awards")
public class ActivityAwardsController {
    @Resource
    @Reference(version = "1.0")
    private LuckyActivityAwardResultService luckyActivityAwardResultService;
    @Resource
    @Reference(version = "1.0")
    private LuckyActivityAwardService luckyActivityAwardService;
    @Resource
@@ -86,13 +91,13 @@
     */
    @ResponseBody
    @RequestMapping("getDrawnList")
    public String getDrawnList(AcceptData acceptData, Long activityId, Long awardId, int page) {
    @RequestMapping("getDrawnJoinerList")
    public String getDrawnJoinerList(AcceptData acceptData, Long activityId, Long awardId, int page) {
        List<LuckyActivityAwardResult> awardResults = luckyActivityAwardResultService.getResultListWithAwardInfo(activityId, awardId, page, Constant.PAGE_SIZE);
        long count = luckyActivityAwardResultService.countResultWithAwardInfo(activityId, awardId);
        List<SimpleUser> userList = new ArrayList<>();
        Map<Long, UserInfo> userMap =userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(awardResults));
        Map<Long, UserInfo> userMap = userInfoService.listUserInfoAsMap(UserInfoUtil.getBaseUserList(awardResults));
        for (LuckyActivityAwardResult info : awardResults) {
            UserInfo user = userMap.get(info.getUid());
            if (user != null) {
@@ -107,5 +112,55 @@
        return JsonUtil.loadTrueResult(data);
    }
    /**
     * 获取未领奖的奖励信息
     *
     * @param acceptData
     * @return
     */
    @ResponseBody
    @RequestMapping("getUnRecieveAward")
    public String getUnRecieveAward(AcceptData acceptData) {
        List<LuckyActivityAwardResult> resultList = luckyActivityAwardResultService.getUnRecievedAward(acceptData.getApp().getId(), acceptData.getUid() + "", 1, 1);
        if (resultList != null && resultList.size() > 0) {
            LuckyActivityAwardResult result = resultList.get(0);
            UserActivityUnRecievedAwardVO vo = new UserActivityUnRecievedAwardVO();
            LuckyActivityAwards award = luckyActivityAwardService.getAwardDetail(result.getAwardId());
            vo.setAwardName(award.getAwardName());
            vo.setAwardId(award.getId());
            vo.setPicture(award.getAwardPoster());
            vo.setTitle("活动期号:NO." + award.getActivityId());
            return JsonUtil.loadTrueResult(vo);
        }
        return JsonUtil.loadFalseResult("");
    }
    /**
     * 领取奖品
     *
     * @param acceptData
     * @param activityId
     * @return
     */
    @ResponseBody
    @RequestMapping("recieveAward")
    public String recieveAward(AcceptData acceptData, Long activityId) {
        LuckyActivityAwardResult result = luckyActivityAwardResultService.getResult(acceptData.getApp().getId(), acceptData.getUid() + "", activityId);
        if (result == null) {
            return JsonUtil.loadFalseResult("未找到中奖记录");
        }
        try {
            luckyActivityAwardResultService.recieveAward(acceptData.getApp().getId(), acceptData.getUid() + "", activityId);
            return JsonUtil.loadTrueResult("领取成功");
        } catch (LuckyActivityException e) {
            e.printStackTrace();
        } catch (LuckyActivityAwardException e) {
            e.printStackTrace();
        } catch (LuckyActivityAwardResultException e) {
            e.printStackTrace();
        }
        return JsonUtil.loadFalseResult("领取失败");
    }
}