admin
2021-01-15 5405154d6979f1b50ce2d881bb164b1acca80b6d
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
package com.ks.lucky.util.mq;
 
import com.google.gson.Gson;
import com.ks.lucky.pojo.DO.LuckyActivity;
import com.ks.lucky.pojo.DO.LuckyActivityOpenInfo;
import com.ks.lucky.pojo.DO.LuckyMQ;
import com.ks.lucky.pojo.DTO.ActivityDrwanOutDateMsg;
import com.ks.lucky.pojo.DTO.ActivityMQMsg;
 
import java.util.Date;
 
public class LuckyMQFactory {
 
    public static LuckyMQ createStartUpActivity(LuckyActivity activity) {
        LuckyMQ mq = new LuckyMQ();
        mq.setState(LuckyMQ.STATE_NOT_SEND);
        mq.setCreateTime(new Date());
        mq.setPreSendTime(activity.getPreStartTime());
        mq.setQueueContent(new Gson().toJson(new ActivityMQMsg(activity.getId(), ActivityMQMsg.TYPE_EXEC_START, new Date())));
        mq.setQueueName(CMQManager.QUEUENAME_LUCKY_ACTIVITY);
        mq.setTaskId("start-activity-" + activity.getId());
        mq.setTaskName("启动活动");
        return mq;
    }
 
 
    public static LuckyMQ createFinishActivity(LuckyActivity activity) {
        LuckyMQ mq = new LuckyMQ();
        mq.setState(LuckyMQ.STATE_NOT_SEND);
        mq.setCreateTime(new Date());
        mq.setPreSendTime(activity.getPreFinishTime());
        mq.setQueueContent(new Gson().toJson(new ActivityMQMsg(activity.getId(), ActivityMQMsg.TYPE_EXEC_FINSIH, new Date())));
        mq.setQueueName(CMQManager.QUEUENAME_LUCKY_ACTIVITY);
        mq.setTaskId("finish-activity-" + activity.getId());
        mq.setTaskName("结束活动");
        return mq;
    }
 
 
    public static LuckyMQ createOpenActivity(Long activityId, Date preOpenTime) {
        LuckyMQ mq = new LuckyMQ();
        mq.setState(LuckyMQ.STATE_NOT_SEND);
        mq.setCreateTime(new Date());
        //设置开奖时间
        mq.setPreSendTime(preOpenTime);
        mq.setQueueContent(new Gson().toJson(new ActivityMQMsg(activityId, ActivityMQMsg.TYPE_EXEC_OPEN, new Date())));
        mq.setQueueName(CMQManager.QUEUENAME_LUCKY_ACTIVITY);
        mq.setTaskId("open-activity-" + activityId);
        mq.setTaskName("活动开奖");
        return mq;
    }
 
    /**
     * 活动奖品领取时间到期
     *
     * @param resultId
     * @param outDate
     * @return
     */
 
    public static LuckyMQ createActivityDrawnOutDate(Long resultId, Date outDate) {
        LuckyMQ mq = new LuckyMQ();
        mq.setState(LuckyMQ.STATE_NOT_SEND);
        mq.setCreateTime(new Date());
        //设置开奖时间
        mq.setPreSendTime(outDate);
        mq.setQueueContent(new Gson().toJson(new ActivityDrwanOutDateMsg(resultId)));
        mq.setQueueName(CMQManager.QUEUENAME_LUCKY_ACTIVITY_DRAWN_OUTDATE_EXEC);
        mq.setTaskId("activity-drawn-outdate-" + resultId);
        mq.setTaskName("活动中奖领取时间到期");
        return mq;
    }
}