golang 的 rabbitmq 消费项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

init.go 4.7 KiB

10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package consume
  2. import (
  3. "applet/app/utils/logx"
  4. consumeMd "applet/consume/md"
  5. "time"
  6. )
  7. var (
  8. jobs = map[string]func(consumeMd.MqQueue){}
  9. )
  10. func Init() {
  11. // 初始化任务列表
  12. initConsumes()
  13. }
  14. // 增加消费任务队列
  15. func initConsumes() {
  16. //jobs[consumeMd.ZhiosMallGreenCoinConsumeFunName] = ZhiosMallGreenCoinConsume
  17. //jobs[consumeMd.ZhiosIntegralProxyRechargeFunName] = ZhiosIntegralProxyRecharge
  18. //jobs[consumeMd.ZhiosUserUpLvFunName] = ZhiosUserUpLv
  19. //jobs[consumeMd.CanalGuideOrderByUserUpLvConsume] = CanalGuideOrderByUserUpLvConsume
  20. //jobs[consumeMd.ZhiosOrderFreeFunName] = ZhiosOrderFree
  21. //jobs[consumeMd.ZhiosOrderTotalFunName] = ZhiosOrderTotal
  22. //jobs[consumeMd.ZhiosOrderTotalSecondFunName] = ZhiosOrderTotalSecond
  23. ////
  24. //jobs[consumeMd.ZhiosOrderSettleTotalFunName] = ZhiosSettleTotal
  25. //jobs[consumeMd.ZhiosOrderHjyFunName] = ZhiosOrderHjy
  26. //jobs[consumeMd.ZhiosOrderBuckleFunName] = ZhiosOrderBuckle
  27. ////
  28. //jobs[consumeMd.ZhiosSupplierAfterOrderFunName] = ZhiosSupplierAfterOrder
  29. //jobs[consumeMd.ZhiosGuideStoreOrderFunName] = ZhiosGuideStoreOrder
  30. //
  31. //jobs[consumeMd.ZhiosAppreciationFunName] = ZhiosAppreciation
  32. //jobs[consumeMd.ZhiosValidUserFunName] = ZhiosValidUser
  33. //
  34. //jobs[consumeMd.ZhiosAcquisitionConditionFunName] = ZhiosAcquisitionCondition
  35. //
  36. //jobs[consumeMd.DouShenUserRegisterConsumeForOfficialFunName] = DouShenUserRegisterConsumeForOfficial
  37. //jobs[consumeMd.DouShenUserRegisterConsumeForOperationCenterFunName] = DouShenUserRegisterConsumeForOperationCenter
  38. //jobs[consumeMd.DouShenUserRegisterConsumeForMyRecommenderFunName] = DouShenUserRegisterConsumeForMyRecommender
  39. //jobs[consumeMd.DouShenUserRegisterConsumeForMyFansFunName] = DouShenUserRegisterConsumeForMyFans
  40. //jobs[consumeMd.DouShenUserRegisterConsumeForUserRegisterUpLvFunName] = DouShenUserRegisterConsumeForUserRegisterUpLv
  41. //
  42. //jobs[consumeMd.ZhiosFastReturnOrderPayFunName] = ZhiosFastReturnOrderPay
  43. //jobs[consumeMd.ZhiosFastReturnOrderSuccessFunName] = ZhiosFastReturnOrderSuccess
  44. //jobs[consumeMd.ZhiosFastReturnOrderRefundFunName] = ZhiosFastReturnOrderRefund
  45. //jobs[consumeMd.ZhiosFastReturnOrderRefundSecondFunName] = ZhiosFastReturnOrderRefundSecond
  46. //
  47. //jobs[consumeMd.YoumishangExchangeStoreFunName] = YoumishangExchangeStore
  48. //
  49. //jobs[consumeMd.ZhiosRechargeOrderFailFunName] = ZhiosRechargeOrderFail
  50. //
  51. //jobs[consumeMd.CloudIssuanceAsyncMLoginFunName] = CloudIssuanceAsyncMLoginConsume
  52. //jobs[consumeMd.ZhiosTikTokUpdateFunName] = ZhiosTikTokUpdate
  53. //jobs[consumeMd.ZhiosTikTokAllUpdateFunName] = ZhiosTikTokAllUpdate
  54. //
  55. //jobs[consumeMd.ZhiosCapitalPoolOrderTotalFunName] = ZhiosCapitalPoolOrderTotal
  56. //jobs[consumeMd.ZhiosExpressOrderFail] = ZhiosExpressOrderFail
  57. //jobs[consumeMd.ZhiosWithdrawReward] = ZhiosWithdrawReward
  58. //
  59. ////////////////////////////////////// V1 /////////////////////////////////////////////////////
  60. //jobs[consumeMd.CloudIssuanceMsgCallBackFunName] = CloudIssuanceMsgCallBackConsume
  61. //////////////////////////////////////// V2 /////////////////////////////////////////////////////
  62. //jobs[consumeMd.SupplyCloudChainFenxiaoNewChangeFunName] = SupplyCloudChainFenxiaoNewChangeConsume
  63. //////////////////////////////////////// V3 /////////////////////////////////////////////////////
  64. //jobs[consumeMd.MallAddSupplyGoodsFunName] = MallAddSupplyGoodsConsume
  65. //////////////////////////////////////// bigData /////////////////////////////////////////////////////
  66. //jobs[consumeMd.CanalOrderConsumeFunName] = CanalOrderConsume
  67. //jobs[consumeMd.CanalGuideOrderConsumeFunName] = CanalGuideOrderConsume
  68. //jobs[consumeMd.ZhiOsUserVisitIpAddressConsumeFunName] = ZhiOsUserVisitIpAddressConsume
  69. //jobs[consumeMd.CanalUserVirtualCcoinFlowFunName] = CanalUserVirtualCoinFlowConsume
  70. //////////////////////////////////////// oneCircles /////////////////////////////////////////////////////
  71. //jobs[consumeMd.OneCirclesSignInGreenEnergyFunName] = OneCirclesSignInGreenEnergyConsume
  72. //jobs[consumeMd.OneCirclesSignInCopyGreenEnergyFunName] = OneCirclesSignInCopyGreenEnergyConsume
  73. //////////////////////////////////////// withdraw /////////////////////////////////////////////////////
  74. jobs[consumeMd.WithdrawConsumeFunName] = WithdrawConsume
  75. }
  76. func Run() {
  77. for _, v := range consumeMd.RabbitMqQueueKeyList {
  78. if _, ok := jobs[v.ConsumeFunName]; ok {
  79. go doConsume(v.ConsumeFunName, *v)()
  80. }
  81. }
  82. }
  83. func doConsume(fnName string, queue consumeMd.MqQueue) func() {
  84. return func() {
  85. begin := time.Now().Local()
  86. jobs[fnName](queue)
  87. end := time.Now().Local()
  88. logx.Infof(
  89. "[%s] AutoConsume started at <%s>, ended at <%s> duration <%s>",
  90. fnName,
  91. begin.Format("2006-01-02 15:04:05.000"),
  92. end.Format("2006-01-02 15:04:05.000"),
  93. time.Duration(end.UnixNano()-begin.UnixNano()).String(),
  94. )
  95. }
  96. }