自动刷单\

This commit is contained in:
邹宗楠
2023-03-08 13:41:28 +08:00
parent a18ffd275a
commit 3dc8f6bcf9

View File

@@ -5,7 +5,6 @@ import (
"encoding/json"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler/defsch"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
@@ -102,54 +101,55 @@ func AutoSettingFakeDelivery() {
}
for _, v := range orderList {
jxutils.CallMsgHandler(func() {
// 1.根据订单客户地址获取骑手列表
riderKey := ""
if strings.Contains(v.ConsigneeAddress, "重庆") || strings.Contains(v.ConsigneeAddress, "上海") || strings.Contains(v.ConsigneeAddress, "北京") {
riderKey = strings.Split(v.ConsigneeAddress, "市")[0]
} else {
riderKey = strings.Split(v.ConsigneeAddress, "省")[0]
}
if len(riderListInfo[riderKey]) == model.NO {
// 骑手列表
configRiderList, err := dao.QueryConfigs(db, "riderList", "Sys", "")
if err != nil {
globals.SugarLogger.Errorf("抖音自动刷单获取骑手列表错误:%v", err)
return
}
if err := json.Unmarshal([]byte(configRiderList[0].Value), &riderListInfo); err != nil {
globals.SugarLogger.Errorf("抖音自动刷单获取骑手列表错误:%v", err)
return
}
}
randNumber, _ := rand.Int(rand.Reader, big.NewInt(int64(len(riderListInfo[riderKey]))))
randTime := randNumber.Int64()
if randTime < 0 {
randTime = 1
}
if randTime >= int64(len(riderListInfo[riderKey])) {
randTime = int64(len(riderListInfo[riderKey])) - 1
}
// 自动拣货
handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID)
flag := model.IsOrderDeliveryByStore(v) || model.IsOrderDeliveryBySelf(v)
if err := handler.PickupGoods(v, flag, jxcontext.AdminCtx.GetUserName()); err != nil {
globals.SugarLogger.Errorf("自动拣货错误:[%v]", err)
//jxutils.CallMsgHandler(func() {
// 1.根据订单客户地址获取骑手列表
riderKey := ""
if strings.Contains(v.ConsigneeAddress, "重庆") || strings.Contains(v.ConsigneeAddress, "上海") || strings.Contains(v.ConsigneeAddress, "北京") {
riderKey = strings.Split(v.ConsigneeAddress, "市")[0]
} else {
riderKey = strings.Split(v.ConsigneeAddress, "省")[0]
}
if len(riderListInfo[riderKey]) == model.NO {
// 骑手列表
configRiderList, err := dao.QueryConfigs(db, "riderList", "Sys", "")
if err != nil {
globals.SugarLogger.Errorf("抖音自动刷单获取骑手列表错误:%v", err)
return
}
//自动发单
if len(riderListInfo[riderKey]) == 0 {
globals.SugarLogger.Errorf("riderListInfo[riderKey][randTime] :%s,%s,%d", riderListInfo[riderKey][randTime], riderKey, randTime)
if err := json.Unmarshal([]byte(configRiderList[0].Value), &riderListInfo); err != nil {
globals.SugarLogger.Errorf("抖音自动刷单获取骑手列表错误:%v", err)
return
}
for riderName, riderPhone := range riderListInfo[riderKey][randTime] {
globals.SugarLogger.Debugf("SelfDeliveringAndUpdateStatus : %s", v.VendorOrderID)
if err := defsch.FixedScheduler.SelfDeliveringAndUpdateStatus(jxcontext.AdminCtx, v.VendorOrderID, v.VendorID, jxcontext.AdminCtx.GetUserName(), riderName, riderPhone); err != nil {
globals.SugarLogger.Errorf("自动发货错误:[%v]", err)
return
}
}
randNumber, _ := rand.Int(rand.Reader, big.NewInt(int64(len(riderListInfo[riderKey]))))
randTime := randNumber.Int64()
if randTime < 0 {
randTime = 1
}
if randTime >= int64(len(riderListInfo[riderKey])) {
randTime = int64(len(riderListInfo[riderKey])) - 1
}
// 自动拣货
handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID)
flag := model.IsOrderDeliveryByStore(v) || model.IsOrderDeliveryBySelf(v)
if err := handler.PickupGoods(v, flag, jxcontext.AdminCtx.GetUserName()); err != nil {
globals.SugarLogger.Errorf("自动拣货错误:[%v]", err)
break
}
//自动发单
if len(riderListInfo[riderKey]) == 0 {
globals.SugarLogger.Errorf("riderListInfo[riderKey][randTime] :%s,%s,%d", riderListInfo[riderKey][randTime], riderKey, randTime)
break
}
for riderName, riderPhone := range riderListInfo[riderKey][randTime] {
globals.SugarLogger.Debugf("SelfDeliveringAndUpdateStatus : %s", v.VendorOrderID)
if err := defsch.FixedScheduler.SelfDeliveringAndUpdateStatus(jxcontext.AdminCtx, v.VendorOrderID, v.VendorID, jxcontext.AdminCtx.GetUserName(), riderName, riderPhone); err != nil {
globals.SugarLogger.Errorf("自动发货错误:[%v]", err)
break
}
}, jxutils.ComposeUniversalOrderID(v.VendorOrderID, model.VendorIDDD))
}
//}, jxutils.ComposeUniversalOrderID(v.VendorOrderID, model.VendorIDDD))
}
}