admin
2020-12-17 452714cdffb21300ed64d5818efaa9cc38c3ee83
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
@@ -1,6 +1,5 @@
package com.ks.lucky.service.impl.remote;
import com.ks.app.exception.AppException;
import com.ks.lib.common.exception.ParamsException;
import com.ks.lucky.exception.LuckyActivityException;
import com.ks.lucky.exception.LuckyMQException;
@@ -16,10 +15,12 @@
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Service(version = "1.0")
@Service(version = "1.0.0")
public class LuckyActivityServiceImpl implements LuckyActivityService {
    @Resource
@@ -43,9 +44,6 @@
    @Resource
    private LuckyMQService luckyMQService;
    private Long getAppId(String appKey) throws AppException {
        return appManager.getAppId(appKey);
    }
    private void notNull(LuckyActivity activity) throws LuckyActivityException {
        if (activity == null) {
@@ -54,17 +52,12 @@
    }
    @Override
    public List<LuckyActivity> getActivityList(String appKey, Long sponsorId, List<Integer> stateList, String key, int page, int pageSize) {
    public List<LuckyActivity> getActivityList(Long appId, Long sponsorId, List<Integer> stateList, String key, int page, int pageSize) {
        ActivityDaoQuery query = new ActivityDaoQuery();
        query.stateList = stateList;
        query.key = key;
        query.sponsorId = sponsorId;
        try {
            query.appId = getAppId(appKey);
        } catch (AppException e) {
            return null;
        }
        query.appId = appId;
        query.start = (page - 1) * pageSize;
        query.count = pageSize;
        query.sort = "start_time desc";
@@ -72,16 +65,13 @@
    }
    @Override
    public long countActivity(String appKey, Long sponsorId, List<Integer> stateList, String key) {
    public long countActivity(Long appId, Long sponsorId, List<Integer> stateList, String key) {
        ActivityDaoQuery query = new ActivityDaoQuery();
        query.stateList = stateList;
        query.key = key;
        query.sponsorId = sponsorId;
        try {
            query.appId = getAppId(appKey);
        } catch (AppException e) {
            return 0L;
        }
        query.appId = appId;
        return luckyActivityMapper.count(query);
    }
@@ -282,6 +272,16 @@
    }
    @Override
    public List<LuckyActivity> getActivityDetail(List<Long> ids) {
        List<LuckyActivity> activityList = new ArrayList<>();
        for (Long id : ids) {
            LuckyActivity luckyActivity = getActivityDetail(id);
            activityList.add(luckyActivity);
        }
        return activityList;
    }
    @Override
    public void updateActivity(LuckyActivity activity) throws LuckyActivityException {
        if (activity.getState() != null) {
            throw new LuckyActivityException(1, "不能更改活动状态");
@@ -294,5 +294,40 @@
        luckyActivityMapper.updateByPrimaryKeySelective(activity);
    }
    @Override
    public List<LuckyActivity> getRecommendActivity(Long appId, String uid, int page, int pageSize) {
        ActivityDaoQuery query = new ActivityDaoQuery();
        query.appId = appId;
        query.start = (page - 1) * pageSize;
        query.count = pageSize;
        query.sort = "actual_start_time desc";
        query.stateList = Arrays.asList(new Integer[]{
                LuckyActivity.STATE_STARTED,
                LuckyActivity.STATE_FINISH,
                LuckyActivity.STATE_PRE_OPENED,
                LuckyActivity.STATE_OPENED,
        });
        return luckyActivityMapper.list(query);
    }
    @Override
    public Long getRecommendActivityCount(Long appId, String uid) {
        ActivityDaoQuery query = new ActivityDaoQuery();
        query.appId = appId;
        query.stateList = Arrays.asList(new Integer[]{
                LuckyActivity.STATE_STARTED,
                LuckyActivity.STATE_FINISH,
                LuckyActivity.STATE_PRE_OPENED,
                LuckyActivity.STATE_OPENED,
        });
        return luckyActivityMapper.count(query);
    }
}