@@ -0,0 +1,65 @@ | |||||
package consume | |||||
import ( | |||||
"applet/app/db" | |||||
utils2 "applet/app/utils" | |||||
"applet/app/utils/logx" | |||||
"applet/consume/md" | |||||
"code.fnuoos.com/go_rely_warehouse/zyos_go_mq.git/rabbit" | |||||
"encoding/json" | |||||
"errors" | |||||
"fmt" | |||||
"github.com/streadway/amqp" | |||||
"strconv" | |||||
"time" | |||||
) | |||||
func DouShenUserRegisterConsumeForUserRegisterUpLv(queue md.MqQueue) { | |||||
fmt.Println(">>>>>>>>>>>>DouShenUserRegisterConsumeForUserRegisterUpLv>>>>>>>>>>>>") | |||||
ch, err := rabbit.Cfg.Pool.GetChannel() | |||||
if err != nil { | |||||
logx.Error(err) | |||||
return | |||||
} | |||||
defer ch.Release() | |||||
//1、将自己绑定到交换机上 | |||||
ch.Bind(queue.Name, queue.ExchangeName, queue.RoutKey) | |||||
//2、取出数据进行消费 | |||||
ch.Qos(1) | |||||
delivery := ch.Consume(queue.Name, false) | |||||
var res amqp.Delivery | |||||
var ok bool | |||||
for { | |||||
res, ok = <-delivery | |||||
if ok == true { | |||||
fmt.Println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>") | |||||
err = handleDouShenUserRegisterConsumeForUserRegisterUpLv(res.Body) | |||||
if err != nil { | |||||
fmt.Println("!!!!!!!err!!!!!!!", err) | |||||
utils2.FilePutContents("douShenUserRegisterConsumeForUserRegisterUpLv_err", "[err]:"+err.Error()) | |||||
_ = res.Reject(false) | |||||
} else { | |||||
_ = res.Ack(true) | |||||
} | |||||
} else { | |||||
panic(errors.New("error getting message")) | |||||
} | |||||
} | |||||
fmt.Println("get msg done") | |||||
} | |||||
func handleDouShenUserRegisterConsumeForUserRegisterUpLv(msgData []byte) error { | |||||
time.Sleep(time.Duration(10) * time.Second) | |||||
//1、解析mq中queue的数据结构体 | |||||
var msg *md.DouShenUserRegisterMessageStructForUserRegisterUpLv | |||||
err := json.Unmarshal(msgData, &msg) | |||||
if err != nil { | |||||
return err | |||||
} | |||||
eg := db.DBs[msg.MasterId] | |||||
levelList, _ := db.UserLevlEgAll(eg) | |||||
FindUser(eg, strconv.FormatInt(msg.Uid, 10), msg.MasterId, levelList) | |||||
return nil | |||||
} |
@@ -22,6 +22,7 @@ func initConsumes() { | |||||
jobs[consumeMd.ZhiOsUserVisitIpAddressConsumeFunName] = ZhiOsUserVisitIpAddressConsume | jobs[consumeMd.ZhiOsUserVisitIpAddressConsumeFunName] = ZhiOsUserVisitIpAddressConsume | ||||
jobs[consumeMd.DouShenUserRegisterConsumeForOfficialFunName] = DouShenUserRegisterConsumeForOfficial | jobs[consumeMd.DouShenUserRegisterConsumeForOfficialFunName] = DouShenUserRegisterConsumeForOfficial | ||||
jobs[consumeMd.DouShenUserRegisterConsumeForOperationCenterFunName] = DouShenUserRegisterConsumeForOperationCenter | jobs[consumeMd.DouShenUserRegisterConsumeForOperationCenterFunName] = DouShenUserRegisterConsumeForOperationCenter | ||||
jobs[consumeMd.DouShenUserRegisterConsumeForUserRegisterUpLvFunName] = DouShenUserRegisterConsumeForUserRegisterUpLv | |||||
jobs[consumeMd.DouShenUserRegisterConsumeForMyRecommenderFunName] = DouShenUserRegisterConsumeForMyRecommender | jobs[consumeMd.DouShenUserRegisterConsumeForMyRecommenderFunName] = DouShenUserRegisterConsumeForMyRecommender | ||||
jobs[consumeMd.DouShenUserRegisterConsumeForMyFansFunName] = DouShenUserRegisterConsumeForMyFans | jobs[consumeMd.DouShenUserRegisterConsumeForMyFansFunName] = DouShenUserRegisterConsumeForMyFans | ||||
jobs[consumeMd.ZhiosFastReturnOrderPayFunName] = ZhiosFastReturnOrderPay | jobs[consumeMd.ZhiosFastReturnOrderPayFunName] = ZhiosFastReturnOrderPay | ||||
@@ -123,16 +123,17 @@ var RabbitMqQueueKeyList = []*MqQueue{ | |||||
} | } | ||||
const ( | const ( | ||||
CanalOrderConsumeFunName = "CanalOrderConsume" | |||||
CanalGuideOrderConsumeFunName = "CanalGuideOrderConsume" | |||||
ZhiOsUserVisitIpAddressConsumeFunName = "ZhiOsUserVisitIpAddressConsume" | |||||
DouShenUserRegisterConsumeForOfficialFunName = "DouShenUserRegisterConsumeForOfficial" | |||||
DouShenUserRegisterConsumeForOperationCenterFunName = "DouShenUserRegisterConsumeForOperationCenter" | |||||
DouShenUserRegisterConsumeForMyRecommenderFunName = "DouShenUserRegisterConsumeForMyRecommender" | |||||
DouShenUserRegisterConsumeForMyFansFunName = "DouShenUserRegisterConsumeForMyFans" | |||||
ZhiosFastReturnOrderPayFunName = "ZhiosFastReturnOrderPay" | |||||
ZhiosFastReturnOrderSuccessFunName = "ZhiosFastReturnOrderSuccess" | |||||
ZhiosFastReturnOrderRefundFunName = "ZhiosFastReturnOrderRefund" | |||||
CanalMallOrdForYouMiShangFunName = "CanalMallOrdForYouMiShang" | |||||
YoumishangExchangeStoreFunName = "YoumishangExchangeStore" | |||||
CanalOrderConsumeFunName = "CanalOrderConsume" | |||||
CanalGuideOrderConsumeFunName = "CanalGuideOrderConsume" | |||||
ZhiOsUserVisitIpAddressConsumeFunName = "ZhiOsUserVisitIpAddressConsume" | |||||
DouShenUserRegisterConsumeForOfficialFunName = "DouShenUserRegisterConsumeForOfficial" | |||||
DouShenUserRegisterConsumeForOperationCenterFunName = "DouShenUserRegisterConsumeForOperationCenter" | |||||
DouShenUserRegisterConsumeForMyRecommenderFunName = "DouShenUserRegisterConsumeForMyRecommender" | |||||
DouShenUserRegisterConsumeForMyFansFunName = "DouShenUserRegisterConsumeForMyFans" | |||||
DouShenUserRegisterConsumeForUserRegisterUpLvFunName = "DouShenUserRegisterConsumeForUserRegisterUpLv" | |||||
ZhiosFastReturnOrderPayFunName = "ZhiosFastReturnOrderPay" | |||||
ZhiosFastReturnOrderSuccessFunName = "ZhiosFastReturnOrderSuccess" | |||||
ZhiosFastReturnOrderRefundFunName = "ZhiosFastReturnOrderRefund" | |||||
CanalMallOrdForYouMiShangFunName = "CanalMallOrdForYouMiShang" | |||||
YoumishangExchangeStoreFunName = "YoumishangExchangeStore" | |||||
) | ) |
@@ -22,3 +22,8 @@ type DouShenUserRegisterMessageStructForOperationCenter struct { | |||||
Uid int64 `json:"uid"` | Uid int64 `json:"uid"` | ||||
OperationCenterUid int64 `json:"operation_center_uid"` | OperationCenterUid int64 `json:"operation_center_uid"` | ||||
} | } | ||||
type DouShenUserRegisterMessageStructForUserRegisterUpLv struct { | |||||
MasterId string `json:"master_id"` | |||||
Uid int64 `json:"uid"` | |||||
} |