admin
2021-02-06 6c09cbd70388ae53ec593de253f69cfa1a3eeda7
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityAwardResultServiceImpl.java
@@ -8,6 +8,7 @@
import com.ks.lucky.pojo.DO.LuckyActivity;
import com.ks.lucky.pojo.DO.LuckyActivityAwardResult;
import com.ks.lucky.pojo.DO.LuckyActivityAwardResultExtra;
import com.ks.lucky.pojo.DTO.ActivityDrawnReceiveParams;
import com.ks.lucky.query.ActivityAwardResultQuery;
import com.ks.lucky.remote.service.LuckyActivityAwardResultService;
import com.ks.lucky.service.impl.AppManager;
@@ -22,7 +23,7 @@
import java.util.Date;
import java.util.List;
@Service(version = "1.0")
@Service(version = "1.0.0")
public class LuckyActivityAwardResultServiceImpl implements LuckyActivityAwardResultService {
    @Resource
@@ -39,7 +40,7 @@
    @Override
    public LuckyActivityAwardResult getResult(Long appId, String uid, Long activityId, Long awardId) {
    public LuckyActivityAwardResult getResult(Long appId, String uid, Long activityId) {
        if (appId == null) {
            return null;
        }
@@ -48,7 +49,6 @@
        query.appId = appId;
        query.activityId = activityId;
        query.uid = uid;
        query.awardId = awardId;
        query.start = 0;
        query.count = 1;
@@ -63,7 +63,7 @@
    @Transactional(rollbackFor = Exception.class)
    @Override
    public void recieveAward(Long appId, String uid, Long activityId) throws LuckyActivityException, LuckyActivityAwardException, LuckyActivityAwardResultException {
    public void recieveAward(Long appId, String uid, Long activityId, ActivityDrawnReceiveParams params) throws LuckyActivityException, LuckyActivityAwardException, LuckyActivityAwardResultException {
        //----------验证开始-----------
        LuckyActivity activity = luckyActivityManager.selectByPrimaryKey(activityId);
        if (activity == null) {
@@ -90,7 +90,17 @@
        if (result.getState() != LuckyActivityAwardResult.STATE_NOT_RECIEVE) {
            throw new LuckyActivityAwardException(1, "尚未处于可领取状态");
        }
        LuckyActivityAwardResultExtra extra = luckyActivityAwardResultExtraMapper.selectByAwardResultId(result.getId());
        LuckyActivityAwardResultExtra extraUpdate = new LuckyActivityAwardResultExtra();
        extraUpdate.setId(extra.getId());
        if (params.getAlipayUid() != null) {
            extraUpdate.setAlipyUid(params.getAlipayUid());
            extra.setAlipyUid(params.getAlipayUid());
        }
        luckyActivityAwardResultExtraMapper.updateByPrimaryKeySelective(extraUpdate);
        //----------验证结束-----------
        //发奖
@@ -98,7 +108,7 @@
    }
    @Override
    public List<Long> getDrawnActivityIdList(Long appId, Long uid, int page, int pageSize) {
    public List<Long> getDrawnActivityIdList(Long appId, String uid, int page, int pageSize) {
        List<LuckyActivityAwardResult> list = luckyActivityAwardResultMapper.listUserAwardResult(appId, uid, Arrays.asList(new Integer[]{LuckyActivityAwardResult.STATE_NOT_RECIEVE, LuckyActivityAwardResult.STATE_RECIEVED, LuckyActivityAwardResult.STATE_OUT_OF_DATE, LuckyActivityAwardResult.STATE_RECIEVE_FAILED}), Arrays.asList(new Integer[]{LuckyActivity.STATE_OPENED}), (page - 1) * pageSize, pageSize);
        List<Long> activityIdList = new ArrayList<>();
        if (list != null) {
@@ -110,7 +120,7 @@
    }
    @Override
    public long countDrawnActivityIdList(Long appId, Long uid) {
    public long countDrawnActivityIdList(Long appId, String uid) {
        return luckyActivityAwardResultMapper.countUserAwardResult(appId, uid, Arrays.asList(new Integer[]{LuckyActivityAwardResult.STATE_NOT_RECIEVE, LuckyActivityAwardResult.STATE_RECIEVED, LuckyActivityAwardResult.STATE_OUT_OF_DATE, LuckyActivityAwardResult.STATE_RECIEVE_FAILED}), Arrays.asList(new Integer[]{LuckyActivity.STATE_OPENED}));
    }
@@ -147,5 +157,46 @@
        return list.get(0).getUpdateTime() == null ? list.get(0).getCreateTime() : list.get(0).getUpdateTime();
    }
    @Override
    public List<LuckyActivityAwardResult> getUnRecievedAward(Long appId, String uid, int page, int pageSize) {
        ActivityAwardResultQuery query = new ActivityAwardResultQuery();
        query.state = LuckyActivityAwardResult.STATE_NOT_RECIEVE;
        query.appId = appId;
        query.uid = uid;
        query.start = (page - 1) * pageSize;
        query.count = pageSize;
        return luckyActivityAwardResultMapper.list(query);
    }
    @Override
    public LuckyActivityAwardResult getUnRecievedAward(Long appId, String uid, Long activityId) {
        ActivityAwardResultQuery query = new ActivityAwardResultQuery();
        query.state = LuckyActivityAwardResult.STATE_NOT_RECIEVE;
        query.appId = appId;
        query.uid = uid;
        query.activityId = activityId;
        query.count = 1;
        List<LuckyActivityAwardResult> list = luckyActivityAwardResultMapper.list(query);
        if (list != null && list.size() > 0) {
            return list.get(0);
        }
        return null;
    }
    @Override
    public long countUnRecievedAward(Long appId, String uid) {
        ActivityAwardResultQuery query = new ActivityAwardResultQuery();
        query.state = LuckyActivityAwardResult.STATE_NOT_RECIEVE;
        query.appId = appId;
        query.uid = uid;
        return luckyActivityAwardResultMapper.count(query);
    }
    @Override
    public LuckyActivityAwardResult getDetail(Long id) {
        return luckyActivityAwardResultMapper.selectByPrimaryKey(id);
    }
}