Browse Source

更新

guide_order
huangjiajun 6 months ago
parent
commit
5d2f0fcb9b
5 changed files with 113 additions and 13 deletions
  1. +1
    -2
      app/svc/svc_order_track_parse_pid.go
  2. +1
    -1
      app/svc/svc_order_track_save.go
  3. +4
    -3
      consume/init.go
  4. +17
    -7
      consume/md/consume_key.go
  5. +90
    -0
      consume/zhios_order_track_create_for_tik_tok_team_consume.go

+ 1
- 2
app/svc/svc_order_track_parse_pid.go View File

@@ -347,8 +347,7 @@ func parsePids(eg *xorm.Engine, masterId, pvd string, pids []string) map[int]*md
orderTypes = append(orderTypes, v)
user[id] = &md.UserPid{Pids: orderTypes, Uid: id, OrderType: orderType, Lv: 0}
}
case "csjp", "csjp_live", md.PVD_TIKTOKLIFE, md.PVD_ELM, md.PVD_T3_CAR, md.PVD_WALLACE, md.PVD_TOURISM, md.PVD_NEAR, md.PVD_DELIVERY, md.PVD_FLOWERCAKE, md.PVD_KUAISHOULIVE, md.PVD_KUAISHOU, md.PVD_TIKTOKLIVE, md.PVD_TIKTOK, md.PVD_MEITUAN, md.PVD_MEITUANLM, md.PVD_KFC, md.PVD_CINEMA, md.PVD_OILSTATION, md.PVD_BRIGHTOILSTATION, md.PVD_DUOMAI, md.PVD_STATIONMEITUANLM, md.PVD_NAYUKI, md.PVD_MCDONALD, md.PVD_STARBUCKS, md.PVD_TO_KFC, md.PVD_PAGODA, md.PVD_LUCKIN, md.PVD_DIDI_ENERGY, md.PVD_DIDI_ONLINE_CAR, md.PVD_KING_FLOWER, md.PVD_DIDI_FREIGHT, md.PVD_BURGERKING, md.PVD_HEYTEA, md.PVD_PIZZA, md.PVD_DIDI_CHAUFFEUR:

default:
for _, v := range pids {

s := strings.Split(v, "_")


+ 1
- 1
app/svc/svc_order_track_save.go View File

@@ -64,7 +64,7 @@ func commCheckUser(eg *xorm.Engine, existOrd model.OrdList, ords map[string]md.O
return
}
existOrd.BenefitAll = utils.FloatFormat(existOrd.BenefitAll, 2)
pvdList := []string{md.PVD_JDOwn, md.PVD_JD, "csjp", "csjp_live", md.PVD_TIKTOKLIFE, md.PVD_ELM, md.PVD_STATIONMEITUANLM, md.PVD_MEITUANLMSTART, md.PVD_MEITUANLM, md.PVD_MEITUAN, md.PVD_T3_CAR, md.PVD_WALLACE, md.PVD_TOURISM, md.PVD_DELIVERY, md.PVD_NEAR, md.PVD_FLOWERCAKE, md.PVD_TIKTOK, md.PVD_PIZZA, md.PVD_TIKTOKLIVE, md.PVD_KUAISHOU, md.PVD_KUAISHOULIVE, md.PVD_MEITUAN, md.PVD_MEITUANLM, md.PVD_CINEMA, md.PVD_KFC, md.PVD_HEYTEA, md.PVD_BURGERKING, md.PVD_STARBUCKS, md.PVD_MCDONALD, md.PVD_NAYUKI, md.PVD_LUCKIN, md.PVD_TO_KFC, md.PVD_PAGODA, md.PVD_KING_FLOWER, md.PVD_DIDI_ONLINE_CAR, md.PVD_DIDI_FREIGHT, md.PVD_DIDI_ENERGY, md.PVD_OILSTATION, md.PVD_DIDI_CHAUFFEUR}
pvdList := []string{"tik_tok_team_order", md.PVD_JDOwn, md.PVD_JD, "csjp", "csjp_live", md.PVD_TIKTOKLIFE, md.PVD_ELM, md.PVD_STATIONMEITUANLM, md.PVD_MEITUANLMSTART, md.PVD_MEITUANLM, md.PVD_MEITUAN, md.PVD_T3_CAR, md.PVD_WALLACE, md.PVD_TOURISM, md.PVD_DELIVERY, md.PVD_NEAR, md.PVD_FLOWERCAKE, md.PVD_TIKTOK, md.PVD_PIZZA, md.PVD_TIKTOKLIVE, md.PVD_KUAISHOU, md.PVD_KUAISHOULIVE, md.PVD_MEITUAN, md.PVD_MEITUANLM, md.PVD_CINEMA, md.PVD_KFC, md.PVD_HEYTEA, md.PVD_BURGERKING, md.PVD_STARBUCKS, md.PVD_MCDONALD, md.PVD_NAYUKI, md.PVD_LUCKIN, md.PVD_TO_KFC, md.PVD_PAGODA, md.PVD_KING_FLOWER, md.PVD_DIDI_ONLINE_CAR, md.PVD_DIDI_FREIGHT, md.PVD_DIDI_ENERGY, md.PVD_OILSTATION, md.PVD_DIDI_CHAUFFEUR}
fmt.Println("===============================111111111111111111111111111111")
fmt.Println((existOrd.Uid == 0 && pid != "" && pidToUser[pid] != nil && (pvd == md.PVD_TB || pvd == "ele")))
fmt.Println((existOrd.BenefitAll != ords[existOrd.PvdOid].Commission || (ords[existOrd.PvdOid].Commission == 0 && existOrd.UserCommission > 0)))


+ 4
- 3
consume/init.go View File

@@ -22,9 +22,10 @@ func initConsumes() {
//jobs[consumeMd.ZhiosOrderTrackRefundForTbAllConsumeFunName] = ZhiosOrderTrackRefundForTbAllConsume //淘宝-全部退款
//jobs[consumeMd.ZhiosOrderTrackRefundForTbPartConsumeFunName] = ZhiosOrderTrackRefundForTbPartConsume //淘宝-部分退款

jobs[consumeMd.ZhiosOrderTrackCreateForJdConsumeFunName] = ZhiosOrderTrackCreateForJdConsume //京东-创建订单
jobs[consumeMd.ZhiosOrderTrackUpdateForJdConsumeFunName] = ZhiosOrderTrackUpdateForJdConsume //京东-更新订单
jobs[consumeMd.ZhiosOrderTrackCreateForPddConsumeFunName] = ZhiosOrderTrackCreateForPddConsume //拼多多-全部订单
jobs[consumeMd.ZhiosOrderTrackCreateForJdConsumeFunName] = ZhiosOrderTrackCreateForJdConsume //京东-创建订单
jobs[consumeMd.ZhiosOrderTrackUpdateForJdConsumeFunName] = ZhiosOrderTrackUpdateForJdConsume //京东-更新订单
jobs[consumeMd.ZhiosOrderTrackCreateForPddConsumeFunName] = ZhiosOrderTrackCreateForPddConsume //拼多多-全部订单
jobs[consumeMd.ZhiosOrderTrackCreateForTikTokTeamConsumeFunName] = ZhiosOrderTrackCreateForTikTokTeamConsume //抖音团长服务费-全部订单

}



+ 17
- 7
consume/md/consume_key.go View File

@@ -56,6 +56,15 @@ var RabbitMqQueueKeyList = []*MqQueue{
BindKey: "",
ConsumeFunName: "ZhiosOrderTrackCreateForPddConsume",
},
{
ExchangeName: "zhios.order_track_create.exchange",
Name: "order_track_create_for_tik_tok_team",
Type: DirectQueueType,
IsPersistent: false,
RoutKey: "tik_tok_team",
BindKey: "",
ConsumeFunName: "ZhiosOrderTrackCreateForTikTokTeamConsume",
},
{
ExchangeName: "zhios.order_track_refund.exchange",
Name: "order_track_refund_for_tb_all",
@@ -77,11 +86,12 @@ var RabbitMqQueueKeyList = []*MqQueue{
}

const (
ZhiosOrderTrackUpdateForTbConsumeFunName = "ZhiosOrderTrackUpdateForTbConsume"
ZhiosOrderTrackCreateForTbConsumeFunName = "ZhiosOrderTrackCreateForTbConsume"
ZhiosOrderTrackCreateForJdConsumeFunName = "ZhiosOrderTrackCreateForJdConsume"
ZhiosOrderTrackCreateForPddConsumeFunName = "ZhiosOrderTrackCreateForPddConsume"
ZhiosOrderTrackUpdateForJdConsumeFunName = "ZhiosOrderTrackUpdateForJdConsume"
ZhiosOrderTrackRefundForTbAllConsumeFunName = "ZhiosOrderTrackRefundForTbAllConsume"
ZhiosOrderTrackRefundForTbPartConsumeFunName = "ZhiosOrderTrackRefundForTbPartConsume"
ZhiosOrderTrackUpdateForTbConsumeFunName = "ZhiosOrderTrackUpdateForTbConsume"
ZhiosOrderTrackCreateForTbConsumeFunName = "ZhiosOrderTrackCreateForTbConsume"
ZhiosOrderTrackCreateForJdConsumeFunName = "ZhiosOrderTrackCreateForJdConsume"
ZhiosOrderTrackCreateForPddConsumeFunName = "ZhiosOrderTrackCreateForPddConsume"
ZhiosOrderTrackCreateForTikTokTeamConsumeFunName = "ZhiosOrderTrackCreateForTikTokTeamConsume"
ZhiosOrderTrackUpdateForJdConsumeFunName = "ZhiosOrderTrackUpdateForJdConsume"
ZhiosOrderTrackRefundForTbAllConsumeFunName = "ZhiosOrderTrackRefundForTbAllConsume"
ZhiosOrderTrackRefundForTbPartConsumeFunName = "ZhiosOrderTrackRefundForTbPartConsume"
)

+ 90
- 0
consume/zhios_order_track_create_for_tik_tok_team_consume.go View File

@@ -0,0 +1,90 @@
package consume

import (
"applet/app/cfg"
"applet/app/db"
md2 "applet/app/md"
svc2 "applet/app/svc"
"applet/app/utils"
"applet/app/utils/logx"
"applet/consume/md"
"code.fnuoos.com/go_rely_warehouse/zyos_go_mq.git/rabbit"
"code.fnuoos.com/go_rely_warehouse/zyos_go_order_relate_rule.git/rule/one_circles"
"encoding/json"
"errors"
"fmt"
"github.com/streadway/amqp"
"time"
)

func ZhiosOrderTrackCreateForTikTokTeamConsume(queue md.MqQueue) {
fmt.Println(">>>>>>>>>>>>ZhiosOrderTrackCreateForPddConsume>>>>>>>>>>>>")
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)

one_circles.Init(cfg.RedisAddr)

var res amqp.Delivery
var ok bool
for {
res, ok = <-delivery
if ok == true {
err = handleZhiosOrderTrackCreateForTikTokTeamConsume(res.Body)
fmt.Println("err ::: ", err)
if err != nil {
fmt.Println("ZhiosOrderTrackCreateForTikTokTeamConsume_ERR:::::", err.Error())
_ = res.Reject(true) //TODO::拒绝 Ack
//_ = res.Reject(false)
var msg interface{}
json.Unmarshal(res.Body, &msg)
if err.Error() == "Connection timed out" {
//TODO::重新推回队列末尾,避免造成队列堵塞
ch.Publish(queue.ExchangeName, msg, queue.RoutKey)
} else {
//TODO::推入新的队列中备份
utils.FilePutContents("ZhiosOrderTrackCreateForTikTokTeamConsume_ERR", utils.SerializeStr(err.Error()))
ch.Publish("zhios.order_track_create_exception.exchange", map[string]interface{}{
"msg": msg,
"err": err.Error(),
}, "tik_tok_team")
}
} else {
err = res.Ack(true)
}
} else {
panic(errors.New("error getting message"))
}
}
fmt.Println("get msg done")
}

func handleZhiosOrderTrackCreateForTikTokTeamConsume(msgData []byte) error {
//1、解析mq中queue的数据结构体
var msg md2.ZhiosOrderTrackCreateRoutKeyForTb
err := json.Unmarshal(msgData, &msg)
if err != nil {
return err
}
time.Sleep(time.Microsecond * 100) // 等待100毫秒
fmt.Println("order_track_create_for_TikTokTeam_message:::::::::::>>>>>>>>>")
fmt.Println(msg)
if db.DBs[msg.DbName] == nil {
return nil
}
engine := db.DBs[msg.DbName]
err = svc2.OrderSaveCreateUpdate(engine, msg.Pvd, msg.OrderData, msg.Opts, msg.DbName)
if err != nil {
fmt.Println("order_track_create_for_TikTokTeam_ERR:::::::::::>>>>>>>>>", err.Error())
return err
}
return nil
}

Loading…
Cancel
Save