|
- package consume
-
- import (
- "applet/app/utils/logx"
- consumeMd "applet/consume/md"
- "time"
- )
-
- var (
- jobs = map[string]func(consumeMd.MqQueue){}
- )
-
- func Init() {
- // 初始化任务列表
- initConsumes()
- }
-
- // 增加消费任务队列
- func initConsumes() {
- jobs[consumeMd.EggEnergyStartLevelDividendFunName] = EggEnergyStartLevelDividendConsume
- jobs[consumeMd.EggEnergyDealPlatformRevenueDataFunName] = EggEnergyDealPlatformRevenueDataConsume // 平台营收
- jobs[consumeMd.EggEnergyDealFundDataFunName] = EggEnergyDealFundDataConsume // 资金数据
- jobs[consumeMd.AliyunSmsRecordFunName] = AliyunSmsRecordConsume //阿里云短信
- jobs[consumeMd.JpushRecordFunName] = JpushRecordConsume //极光推送
- jobs[consumeMd.AdvertisingSmashConsume] = AdvertisingSmashConsume //砸蛋
- jobs[consumeMd.AdvertisingSignConsume] = AdvertisingSignConsume //签到
- jobs[consumeMd.EggEnergyDealUserVirtualCoinDataFunName] = EggEnergyDealUserVirtualCoinDataConsume // 视频奖励给相应团队发放积分
- jobs[consumeMd.IMEggEnergyBatchSendMessageDataFunName] = IMEggEnergyBatchSendMessageDataConsume // 批量发送信息
- jobs[consumeMd.IMEggEnergyDelFriendCircleDataFunName] = IMEggEnergyDelFriendCircleDataConsume // 删除朋友圈
- jobs[consumeMd.EggFinWithdrawApplyDataConsumeFunName] = EggFinWithdrawApplyDataConsume // 支付宝打款
- jobs[consumeMd.EggEnergySettlementPublicGiveActivityCoinFunName] = EggEnergySettlementPublicGiveActivityCoinConsume
- jobs[consumeMd.EggEnergyStartExchangeGreenEnergyFunName] = EggEnergyStartExchangeGreenEnergyConsume
- jobs[consumeMd.EggEnergyAutoExchangeGreenEnergyFunName] = EggEnergyAutoExchangeGreenEnergyConsume
- jobs[consumeMd.EggEnergyNewUserRegisterDataFunName] = EggEnergyNewUserRegisterDataConsume // 新用户注册
- }
-
- func Run() {
- for _, v := range consumeMd.RabbitMqQueueKeyList {
- if _, ok := jobs[v.ConsumeFunName]; ok {
- go doConsume(v.ConsumeFunName, *v)()
- }
- }
- }
-
- func doConsume(fnName string, queue consumeMd.MqQueue) func() {
- return func() {
- begin := time.Now().Local()
- jobs[fnName](queue)
- end := time.Now().Local()
- logx.Infof(
- "[%s] AutoConsume started at <%s>, ended at <%s> duration <%s>",
- fnName,
- begin.Format("2006-01-02 15:04:05.000"),
- end.Format("2006-01-02 15:04:05.000"),
- time.Duration(end.UnixNano()-begin.UnixNano()).String(),
- )
- }
- }
|