Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop
This commit is contained in:
@@ -269,6 +269,10 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
|
||||
partner.CurOrderManager.OnOrderMsg(order, fmt.Sprintf("订单[%s]被取消了,运单[%s]取消成功", order.VendorOrderID, v.VendorWaybillID), "")
|
||||
}
|
||||
}
|
||||
// 刷新订单结束时间
|
||||
order.OrderFinishedAt = time.Now()
|
||||
dao.UpdateEntity(db, order, "OrderFinishedAt")
|
||||
|
||||
//如果取消订单则要把库存加回去
|
||||
if err2 == nil {
|
||||
// 判断是否需要打印取消订单
|
||||
@@ -476,7 +480,7 @@ func FinisOrderWaybillFee(db *dao.DaoDB, order *model.GoodsOrder, bill *model.Wa
|
||||
return nil
|
||||
}
|
||||
// 查询所有运单
|
||||
bills, err := dao.GetWaybills(db, order.VendorOrderID, nil)
|
||||
bills, err := dao.GetWaybills(db, order.VendorOrderID, []int64{model.VendorIDDada, model.VendorIDFengNiao, model.VendorIDMTPS, model.VendorIDUUPT, model.VendorIDSFPS})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -531,8 +535,8 @@ func ResetCreateWaybillFee(db *dao.DaoDB, order *model.GoodsOrder, bill *model.W
|
||||
if err := countWaybillSettleInfo(db, order, bill, store); err != nil {
|
||||
return err
|
||||
}
|
||||
// 所有运单停止调度之后才开始退还余额
|
||||
bills, err := dao.GetWaybills(db, order.VendorOrderID, nil)
|
||||
// 所有运单停止调度之后才开始退还余额(三方运单)
|
||||
bills, err := dao.GetWaybills(db, order.VendorOrderID, []int64{model.VendorIDDada, model.VendorIDFengNiao, model.VendorIDMTPS, model.VendorIDUUPT, model.VendorIDSFPS})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -2030,27 +2030,27 @@ func RrefreshMtwmVendorAct(ctx *jxcontext.Context) (err error) {
|
||||
if len(actList) > 0 {
|
||||
for _, act := range actList {
|
||||
if act.Status > 0 {
|
||||
//if checkActStoreSkuExist(db, storeMap.StoreID, utils.Str2Int(act.AppFoodCode), model.VendorIDMTWM, utils.Timestamp2Time(act.StartTime), utils.Timestamp2Time(act.EndTime)) {
|
||||
actVendor := &model.ActMtwmVendor{
|
||||
StoreID: storeMap.StoreID,
|
||||
SkuID: utils.Str2Int(act.AppFoodCode),
|
||||
VendorStoreID: storeMap.VendorStoreID,
|
||||
ActType: v,
|
||||
BeginAt: utils.Timestamp2Time(act.StartTime),
|
||||
EndAt: utils.Timestamp2Time(act.EndTime),
|
||||
SkuName: act.Name,
|
||||
OriginPrice: act.OriginalPrice,
|
||||
ActPrice: act.ActPrice,
|
||||
DiscountCoefficient: act.DiscountCoefficient,
|
||||
Status: act.Status,
|
||||
ItemID: utils.Int64ToStr(act.ItemID),
|
||||
OrderLimit: act.OrderLimit,
|
||||
Period: act.Period,
|
||||
WeeksTime: act.WeeksTime,
|
||||
SettingType: act.SettingType,
|
||||
if checkActStoreSkuExist(db, storeMap.StoreID, utils.Str2Int(act.AppFoodCode), model.VendorIDMTWM, utils.Timestamp2Time(act.StartTime), utils.Timestamp2Time(act.EndTime)) {
|
||||
actVendor := &model.ActMtwmVendor{
|
||||
StoreID: storeMap.StoreID,
|
||||
SkuID: utils.Str2Int(act.AppFoodCode),
|
||||
VendorStoreID: storeMap.VendorStoreID,
|
||||
ActType: v,
|
||||
BeginAt: utils.Timestamp2Time(act.StartTime),
|
||||
EndAt: utils.Timestamp2Time(act.EndTime),
|
||||
SkuName: act.Name,
|
||||
OriginPrice: act.OriginalPrice,
|
||||
ActPrice: act.ActPrice,
|
||||
DiscountCoefficient: act.DiscountCoefficient,
|
||||
Status: act.Status,
|
||||
ItemID: utils.Int64ToStr(act.ItemID),
|
||||
OrderLimit: act.OrderLimit,
|
||||
Period: act.Period,
|
||||
WeeksTime: act.WeeksTime,
|
||||
SettingType: act.SettingType,
|
||||
}
|
||||
dao.CreateEntity(db, actVendor)
|
||||
}
|
||||
dao.CreateEntity(db, actVendor)
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2194,6 +2194,7 @@ func GetActMtwmVendorSku(ctx *jxcontext.Context, storeID int, keyword string, ac
|
||||
}
|
||||
|
||||
func DeleteActStoreSkuVendor(ctx *jxcontext.Context, db *dao.DaoDB, actStoreSkuParam []*ActStoreSkuParam) (err error) {
|
||||
|
||||
return fmt.Errorf("暂不支持直接取消平台活动,开发中……")
|
||||
}
|
||||
|
||||
|
||||
@@ -1173,8 +1173,6 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, upcs []str
|
||||
sql += " , t4.unit_price DESC LIMIT 99"
|
||||
}
|
||||
var tmpList []*tGetStoresSkusInfo
|
||||
globals.SugarLogger.Debugf("GetStoresSkusNew sql=%s,sqlParams=%s", sql, sqlParams)
|
||||
|
||||
if err = dao.GetRowsTx(txDB, &tmpList, sql, sqlParams...); err != nil {
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
@@ -1184,7 +1182,6 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, upcs []str
|
||||
}
|
||||
dao.Commit(db, txDB)
|
||||
storeNameMap := make(map[int64]*dao.StoreSkuNameExt)
|
||||
globals.SugarLogger.Debugf("GetStoresSkusNew tmpList=%s", utils.Format4Output(tmpList, false))
|
||||
for _, v := range tmpList {
|
||||
var storeName *dao.StoreSkuNameExt
|
||||
index := jxutils.Combine2Int(v.StoreID, v.ID)
|
||||
|
||||
@@ -279,11 +279,153 @@ func Init() {
|
||||
// syncStoreSkuTiktok()
|
||||
// }, []string{"13:00:00"})
|
||||
//}
|
||||
// 抖音更新门店商品 ,接口收费暂不使用
|
||||
// 淘鲜达更新门店商品 ,接口收费暂不使用
|
||||
if beego.BConfig.RunMode != "jxgy" {
|
||||
ScheduleTimerFunc("RefreshSyncSkuList_tao", func() {
|
||||
syncStoreSkuTao()
|
||||
}, []string{"13:00:00"})
|
||||
var beijin = []int{
|
||||
//102683,
|
||||
//102542,
|
||||
//102514,
|
||||
//102382,
|
||||
//102182,
|
||||
//102178,
|
||||
//102173,
|
||||
//102098,
|
||||
//102094,
|
||||
//102080,
|
||||
//102072,
|
||||
//102069,
|
||||
//101870,
|
||||
//101869,
|
||||
//101868,
|
||||
//101867,
|
||||
//101866,
|
||||
//101865,
|
||||
//100956,
|
||||
//100930,
|
||||
//100871,
|
||||
//100786,
|
||||
//100746,
|
||||
//100744,
|
||||
//100726,
|
||||
//100705,
|
||||
//100400,
|
||||
//100111,
|
||||
//100108,
|
||||
//100106,
|
||||
//100104,
|
||||
//100103,
|
||||
//100102,
|
||||
//100100,
|
||||
//100097,
|
||||
//100096,
|
||||
//100095,
|
||||
//100093,
|
||||
//100092,
|
||||
//100089,
|
||||
//100087,
|
||||
//100086,
|
||||
//100085,
|
||||
//100082,
|
||||
//100079,
|
||||
//100078,
|
||||
//669158,
|
||||
//668691,
|
||||
//668673,
|
||||
//668282,
|
||||
//667447,
|
||||
//667354,
|
||||
//667321,
|
||||
//667319,
|
||||
//667316,
|
||||
//667269,
|
||||
//667268,
|
||||
//667267,
|
||||
//667260,
|
||||
//667132,
|
||||
//667094,
|
||||
//667030,
|
||||
//666965,
|
||||
//666714,
|
||||
//666708,
|
||||
//666705,
|
||||
//103437,
|
||||
//103349,
|
||||
//103123,
|
||||
//103121,
|
||||
//103106,
|
||||
//103038,
|
||||
//103028,
|
||||
//103019,
|
||||
//102831,
|
||||
//102751,
|
||||
//上海
|
||||
668462,
|
||||
668276,
|
||||
668180,
|
||||
667320,
|
||||
667237,
|
||||
667231,
|
||||
667068,
|
||||
667036,
|
||||
666678,
|
||||
103191,
|
||||
103074,
|
||||
103065,
|
||||
103051,
|
||||
103050,
|
||||
103037,
|
||||
103029,
|
||||
103018,
|
||||
103002,
|
||||
102999,
|
||||
102969,
|
||||
102966,
|
||||
102951,
|
||||
102946,
|
||||
102939,
|
||||
102938,
|
||||
102934,
|
||||
102933,
|
||||
102930,
|
||||
102924,
|
||||
102920,
|
||||
102908,
|
||||
102903,
|
||||
102561,
|
||||
102293,
|
||||
100946,
|
||||
100945,
|
||||
100943,
|
||||
100935,
|
||||
100905,
|
||||
100720,
|
||||
100325,
|
||||
100324,
|
||||
100309,
|
||||
100299,
|
||||
100296,
|
||||
100292,
|
||||
100290,
|
||||
}
|
||||
syncStoreSkuTao(beijin)
|
||||
}, []string{
|
||||
"00:30:00",
|
||||
"02:30:00",
|
||||
"04:30:00",
|
||||
"07:30:00",
|
||||
"09:00:00",
|
||||
"10:40:00",
|
||||
"12:55:00",
|
||||
"13:30:00",
|
||||
"14:30:00",
|
||||
"15:30:00",
|
||||
"16:30:00",
|
||||
"17:30:00",
|
||||
"18:40:00",
|
||||
"20:30:00",
|
||||
"22:30:00",
|
||||
})
|
||||
}
|
||||
|
||||
// 刷新抖音门店token
|
||||
@@ -640,8 +782,10 @@ func syncStoreSkuTiktok() {
|
||||
tasksch.HandleTask(task, nil, true).Run()
|
||||
}
|
||||
|
||||
var syncLen = 0
|
||||
|
||||
// syncStoreSkuTao 同步商品到淘鲜达
|
||||
func syncStoreSkuTao() {
|
||||
func syncStoreSkuTao(beijin []int) {
|
||||
syncFlag := 0
|
||||
task := tasksch.NewParallelTask("同步京西商品到淘鲜达平台,方案二使用", nil, jxcontext.AdminCtx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
@@ -651,18 +795,19 @@ func syncStoreSkuTao() {
|
||||
switch step {
|
||||
case 0:
|
||||
if beego.BConfig.RunMode != "jxgy" {
|
||||
_, err = cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, nil, 0, db, []int{model.VendorIDTaoVegetable}, nil, false, nil, nil, syncFlag, true, true)
|
||||
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, "2452A93EEB9111EC9B06525400E86DC0", "淘鲜达消息:", utils.Format4Output(beijin[syncLen:syncLen+5], false))
|
||||
_, err = cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, nil, 0, db, []int{model.VendorIDTaoVegetable}, beijin[syncLen:syncLen+5], false, nil, nil, syncFlag, true, true)
|
||||
errList.AddErr(err)
|
||||
}
|
||||
case 1:
|
||||
errList.AddErr(err)
|
||||
SaveImportantTaskID(TaskNameSyncStoreSku, SpecialTaskID)
|
||||
}
|
||||
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, "2452A93EEB9111EC9B06525400E86DC0", "淘宝同步商品", utils.Format4Output(errList, false))
|
||||
err = errList.GetErrListAsOne()
|
||||
return retVal, err
|
||||
}, []int{0, 1})
|
||||
tasksch.HandleTask(task, nil, true).Run()
|
||||
syncLen += 5
|
||||
}
|
||||
|
||||
func doDailyWork2() {
|
||||
|
||||
@@ -86,7 +86,7 @@ func (c *DeliveryHandler) CancelWaybill(bill *model.Waybill, cancelReasonID int,
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) ComplaintRider(bill *model.Waybill, resonID int, resonContent string) (err error) {
|
||||
err = api.FnAPI.ComplaintRider(bill.VendorOrderID, complaintReson2FnResonMap[resonID])
|
||||
err = api.FnAPI.ComplaintRider(bill.VendorOrderID, bill.VendorWaybillID, complaintReson2FnResonMap[resonID], resonContent)
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
@@ -523,14 +523,14 @@ func (c *DeliveryHandler) GetDeliverLiquidatedDamages(orderId string, deliverId
|
||||
return 0, err
|
||||
}
|
||||
|
||||
isMerchantCancel := false
|
||||
// 获取发起取消的人员
|
||||
for _, v := range statusList {
|
||||
if v.VendorStatus == utils.Int64ToStr(model.WaybillStatusCancel) {
|
||||
isMerchantCancel = true // 商户取消
|
||||
break
|
||||
}
|
||||
}
|
||||
//isMerchantCancel := false
|
||||
//// 获取发起取消的人员
|
||||
//for _, v := range statusList {
|
||||
// if v.VendorStatus == utils.Int64ToStr(model.WaybillStatusCancel) {
|
||||
// isMerchantCancel = true // 商户取消
|
||||
// break
|
||||
// }
|
||||
//}
|
||||
|
||||
bill, err := partner.CurOrderManager.LoadWaybill(deliverId, model.VendorIDMTPS)
|
||||
if err != nil {
|
||||
@@ -549,17 +549,17 @@ func (c *DeliveryHandler) GetDeliverLiquidatedDamages(orderId string, deliverId
|
||||
}
|
||||
// 到店
|
||||
if statusList[i].VendorStatus == utils.Int2Str(mtpsapi.OrderStatusPickedUp) {
|
||||
if isMerchantCancel {
|
||||
return bill.DesiredFee, nil
|
||||
}
|
||||
return 0, nil
|
||||
//if isMerchantCancel {
|
||||
return bill.DesiredFee, nil
|
||||
//}
|
||||
//return 0, nil
|
||||
}
|
||||
// 接单
|
||||
if statusList[i].VendorStatus == utils.Int2Str(mtpsapi.OrderStatusAccepted) {
|
||||
if isMerchantCancel {
|
||||
return 200, nil
|
||||
}
|
||||
return 0, nil
|
||||
//if isMerchantCancel {
|
||||
return 200, nil
|
||||
//}
|
||||
//return 0, nil
|
||||
}
|
||||
// 待调度
|
||||
if statusList[i].VendorStatus == utils.Int2Str(mtpsapi.OrderStatusWaitingForSchedule) {
|
||||
|
||||
@@ -96,14 +96,14 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (v.WaybillVendorID == model.YES || v.WaybillVendorID == -1) && v.VendorID == model.VendorIDMTWM {
|
||||
continue
|
||||
}
|
||||
//if (v.WaybillVendorID == model.YES || v.WaybillVendorID == -1) && v.VendorID == model.VendorIDMTWM {
|
||||
// continue
|
||||
//}
|
||||
|
||||
if orderId == "" { // 订单id为空是,是定时轮询操作,不做此状态
|
||||
waybillList, _ := dao.GetWaybills(dao.GetDB(), v.VendorOrderID, nil)
|
||||
if len(waybillList) > 0 && waybillList[0].Status > model.WaybillStatusEndBegin {
|
||||
globals.SugarLogger.Debugf("订单物流状态结束,不在推送订单状态:orderID[%s],wayBillId[%s]", v.VendorOrderID, waybillList[0].VendorWaybillID)
|
||||
globals.SugarLogger.Debug("订单物流状态结束,不在推送订单状态:orderID[%s],wayBillId[%s]", v.VendorOrderID, waybillList[0].VendorWaybillID)
|
||||
continue
|
||||
}
|
||||
}
|
||||
@@ -409,7 +409,14 @@ func UpdateFakeWayBillToTiktok() {
|
||||
|
||||
// 设置骑手和下一状态时间
|
||||
makeRiderInfo(fakeWayBill[i], riderInfo)
|
||||
|
||||
if riderInfo.CourierName == "" && fakeWayBill[i].CourierName != "" {
|
||||
riderInfo.CourierName = fakeWayBill[i].CourierName
|
||||
riderInfo.CourierPhone = fakeWayBill[i].CourierMobile
|
||||
}
|
||||
if riderInfo.CourierName == "" && fakeWayBill[i].CourierName == "" {
|
||||
riderInfo.CourierName = "石锋"
|
||||
riderInfo.CourierPhone = "18048531223"
|
||||
}
|
||||
if riderInfo.LogisticsContext != model.RiderGetOrderDeliverFailed && riderInfo.LogisticsContext != model.RiderGetOrderDeliverOther && riderInfo.LogisticsContext != model.RiderWaitRider {
|
||||
riderInfo.LogisticsContext = fmt.Sprintf(riderInfo.LogisticsContext, riderInfo.CourierName, riderInfo.CourierPhone)
|
||||
}
|
||||
@@ -452,7 +459,7 @@ func UpdateFakeWayBillToTiktok() {
|
||||
globals.SugarLogger.Debugf("UPDATA goods_order Err :%s", err.Error())
|
||||
}
|
||||
// 饿百订单推送订单送达
|
||||
if fakeWayBill[i].OrderVendorID == model.VendorIDEBAI || fakeWayBill[i].OrderVendorID == model.VendorIDMTWM {
|
||||
if fakeWayBill[i].OrderVendorID == model.VendorIDEBAI || fakeWayBill[i].OrderVendorID == model.VendorIDTaoVegetable || fakeWayBill[i].OrderVendorID == model.VendorIDMTWM {
|
||||
if err := handler.Swtich2SelfDelivered(order, "JingXiAdmin"); err != nil {
|
||||
globals.SugarLogger.Errorf("Swtich2SelfDelivered err := %v", err)
|
||||
}
|
||||
|
||||
@@ -399,7 +399,7 @@ func (p *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName s
|
||||
err = nil
|
||||
case ebaiapi.WaybillStatusDeliveryCancled:
|
||||
p.trySyncCancelStatus(order.VendorOrderID)
|
||||
case ebaiapi.WaybillStatusNew, ebaiapi.WaybillStatusRequestDelivery, ebaiapi.WaybillStatusWait4Courier:
|
||||
case ebaiapi.WaybillStatusNew, ebaiapi.WaybillStatusEvent, ebaiapi.WaybillStatusRequestDelivery, ebaiapi.WaybillStatusWait4Courier:
|
||||
err = api.EbaiAPI.OrderCancelDelivery(order.VendorOrderID) // 取消呼叫众包骑手
|
||||
case ebaiapi.WaybillStatusCourierAccepted:
|
||||
err = errors.New("骑手已接单,无法转自送")
|
||||
|
||||
@@ -132,17 +132,20 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
|
||||
// 渠道活动
|
||||
if v.ChannelActivityId != nil {
|
||||
activityId = append(activityId, utils.Str2Int64WithDefault(*v.ChannelActivityId, 999))
|
||||
activityName = append(activityName, *v.ChannelActivityId+":"+*v.ActivityName)
|
||||
//activityName = append(activityName, *v.ChannelActivityId+":"+*v.ActivityName)
|
||||
activityName = append(activityName, *v.ChannelActivityId)
|
||||
}
|
||||
// 业务活动
|
||||
if v.BizActivityId != nil {
|
||||
activityId = append(activityId, utils.Str2Int64WithDefault(*v.BizActivityId, 999))
|
||||
activityName = append(activityName, *v.BizActivityId+":"+*v.ActivityName)
|
||||
//activityName = append(activityName, *v.BizActivityId+":"+*v.ActivityName)
|
||||
activityName = append(activityName, *v.BizActivityId)
|
||||
}
|
||||
// 商家erp活动
|
||||
if v.MerchantActivityId != nil {
|
||||
activityId = append(activityId, utils.Str2Int64WithDefault(*v.MerchantActivityId, 999))
|
||||
activityName = append(activityName, *v.MerchantActivityId+":"+*v.ActivityName)
|
||||
//activityName = append(activityName, *v.MerchantActivityId+":"+*v.ActivityName)
|
||||
activityName = append(activityName, *v.MerchantActivityId)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -189,17 +192,6 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
|
||||
}
|
||||
// 抖音订单手机号和收货地址是否同城(虚拟号,无法获取到正确地址)
|
||||
order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + "归属信息不匹配:" + "虚拟电话号码"
|
||||
//ascription, err := ascription_place.Find(order.ConsigneeMobile)
|
||||
//if err != nil {
|
||||
// order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + err.Error()
|
||||
// err = nil
|
||||
//} else {
|
||||
// if strings.Contains(order.ConsigneeAddress, ascription.Province) && strings.Contains(order.ConsigneeAddress, ascription.City) {
|
||||
// order.PhoneAscription = model.PhoneAscriptionAddressYes + "-" + ascription.Province + ascription.City
|
||||
// } else {
|
||||
// order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + "归属信息不匹配:" + ascription.Province + ascription.City
|
||||
// }
|
||||
//}
|
||||
|
||||
// 本地获取订单记录
|
||||
orderSeq, _ := dao.GetVendorOrderNumber(dao.GetDB(), model.VendorIDTaoVegetable, order.VendorStoreID)
|
||||
@@ -215,7 +207,6 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
|
||||
order.StoreName = "未获取到" // 真实门店名称
|
||||
}
|
||||
|
||||
globals.SugarLogger.Debugf("=====order : %s", utils.Format4Output(order, false))
|
||||
return order, orderMap, err
|
||||
}
|
||||
|
||||
|
||||
@@ -71,10 +71,10 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
||||
var err error
|
||||
var db = dao.GetDB()
|
||||
orderStatus, scarceGoods := c.callbackAfsMsg2Status(status, msg)
|
||||
// 用户取消售后
|
||||
switch status {
|
||||
case tao_vegetable.OrderStatusApplyAfs:
|
||||
refundData := msg.(*tao_vegetable.UserApplyRefundCallBack)
|
||||
globals.SugarLogger.Debugf("================OrderStatusApplyAfs : %s", utils.Format4Output(msg, false))
|
||||
var afsOrder *model.AfsOrder
|
||||
var api = getAPI("", 0, refundData.StoreId)
|
||||
|
||||
@@ -287,60 +287,96 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
||||
case tao_vegetable.OrderStatusRefundSuccess:
|
||||
// 用户退款成功回调,缺货拣货时,送达回触发.此时并没有售后单
|
||||
if scarceGoods != nil {
|
||||
var afsOrder *model.AfsOrder
|
||||
refundSuccess := msg.(*tao_vegetable.RefundOrderFinish)
|
||||
var afsOrder *model.AfsOrder
|
||||
var api = getAPI("", 0, refundSuccess.StoreId)
|
||||
|
||||
afsOrder = &model.AfsOrder{
|
||||
VendorID: model.VendorIDTaoVegetable,
|
||||
AfsOrderID: refundSuccess.OutMainRefundId,
|
||||
VendorOrderID: orderStatus.RefVendorOrderID,
|
||||
VendorStoreID: refundSuccess.StoreId,
|
||||
StoreID: 0,
|
||||
AfsCreatedAt: orderStatus.StatusTime,
|
||||
VendorAppealType: status, // 原始售后方式
|
||||
AppealType: model.AfsAppealTypeUserCancel, // 淘宝这个接口下发的只有用户取消
|
||||
VendorReasonType: tao_vegetable.OrderStatusOnSaleCancel,
|
||||
ReasonType: 0,
|
||||
ReasonDesc: "缺货调整,退款成功通知",
|
||||
VendorOrgCode: api.GetVendorOrgCode(),
|
||||
var isCreate = true
|
||||
var outMainRefundIds = make(map[string]int64, 0)
|
||||
detail, err := api.QueryAfsOrderDetail(&request591.AlibabaWdkOrderRefundGetRequest{
|
||||
OrderFrom: utils.Int64ToPointer(tao_vegetable.ChannelCome),
|
||||
ShopId: nil,
|
||||
StoreId: utils.String2Pointer(refundSuccess.StoreId),
|
||||
RefundIds: &[]int64{utils.Str2Int64(refundSuccess.BizSubRefundId)},
|
||||
})
|
||||
if err != nil {
|
||||
return tao_vegetable.CallBackResultInfo(err)
|
||||
}
|
||||
finalList, _ := dao.GetOrderRefundSkuList(db, []string{refundSuccess.OutMainRefundId})
|
||||
if len(finalList) != model.NO {
|
||||
for _, f := range finalList {
|
||||
for _, a := range *detail.Orders {
|
||||
if f.SkuID == utils.Str2Int(*a.ItemCode) {
|
||||
isCreate = false // 本地已经存在了记录
|
||||
outMainRefundIds[*a.OutMainRefundId] = *a.RefundAmount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
afsOrder.FreightUserMoney = 0 // 订单运费
|
||||
afsOrder.AfsFreightMoney = 0 // 暂时未发现退货取件费用
|
||||
afsOrder.BoxMoney = 0 // 餐盒费
|
||||
afsOrder.TongchengFreightMoney = 0 // 同城配送费
|
||||
afsOrder.SkuBoxMoney = 0 // 商品包装费
|
||||
afsOrder.VendorStatus = orderStatus.VendorStatus // 退货状态
|
||||
|
||||
for _, v := range *scarceGoods {
|
||||
var refundFee int64 = 0
|
||||
skuDetail := tao_vegetable.GoodsScarceRefund{}
|
||||
if err := json.Unmarshal([]byte(*v.Attributes), &skuDetail); err != nil {
|
||||
return tao_vegetable.CallBackResultInfo(err)
|
||||
// 本地已经存在了售后记录,直接修改售后状态,否则创建售后记录
|
||||
if !isCreate {
|
||||
for afsOrderId, afsMoney := range outMainRefundIds {
|
||||
afs, _ := partner.CurOrderManager.LoadAfsOrder(afsOrderId, model.VendorIDTaoVegetable)
|
||||
afs.VendorOrderID2 = refundSuccess.BizSubRefundId
|
||||
afs.AfsFinishedAt = time.Now()
|
||||
afs.Status = model.AfsOrderStatusFinished
|
||||
afs.AfsTotalShopMoney = afsMoney
|
||||
dao.UpdateEntity(db, afs, "VendorOrderID2", "AfsFinishedAt", "Status", "AfsTotalShopMoney")
|
||||
}
|
||||
} else {
|
||||
afsOrder = &model.AfsOrder{
|
||||
VendorID: model.VendorIDTaoVegetable,
|
||||
AfsOrderID: refundSuccess.OutMainRefundId,
|
||||
VendorOrderID: orderStatus.RefVendorOrderID,
|
||||
VendorOrderID2: refundSuccess.BizSubRefundId,
|
||||
VendorStoreID: refundSuccess.StoreId,
|
||||
StoreID: 0,
|
||||
AfsCreatedAt: orderStatus.StatusTime,
|
||||
VendorAppealType: status, // 原始售后方式
|
||||
AppealType: model.AfsAppealTypeUserCancel, // 淘宝这个接口下发的只有用户取消
|
||||
VendorReasonType: tao_vegetable.OrderStatusOnSaleCancel,
|
||||
ReasonType: 0,
|
||||
ReasonDesc: "缺货调整,退款成功通知",
|
||||
VendorOrgCode: api.GetVendorOrgCode(),
|
||||
}
|
||||
afsOrder.FreightUserMoney = 0 // 订单运费
|
||||
afsOrder.AfsFreightMoney = 0 // 暂时未发现退货取件费用
|
||||
afsOrder.BoxMoney = 0 // 餐盒费
|
||||
afsOrder.TongchengFreightMoney = 0 // 同城配送费
|
||||
afsOrder.SkuBoxMoney = 0 // 商品包装费
|
||||
afsOrder.VendorStatus = orderStatus.VendorStatus // 退货状态
|
||||
|
||||
for _, v := range *scarceGoods {
|
||||
var refundFee int64 = 0
|
||||
skuDetail := tao_vegetable.GoodsScarceRefund{}
|
||||
if err := json.Unmarshal([]byte(*v.Attributes), &skuDetail); err != nil {
|
||||
return tao_vegetable.CallBackResultInfo(err)
|
||||
}
|
||||
|
||||
orderSku := &model.OrderSkuFinancial{
|
||||
Count: utils.Float64TwoInt(utils.Str2Float64(*v.RefundQuantity)),
|
||||
VendorSkuID: *v.SkuCode,
|
||||
SkuID: utils.Str2Int(*v.SkuCode),
|
||||
Name: skuDetail.SkuName,
|
||||
UserMoney: *v.RefundAmount,
|
||||
PmSkuSubsidyMoney: 0, // 平台补贴商品
|
||||
VendorOrderID: orderStatus.VendorOrderID,
|
||||
VendorSubOrderID: *v.OutOrderId,
|
||||
}
|
||||
afsOrder.PmSkuSubsidyMoney += orderSku.PmSkuSubsidyMoney
|
||||
afsOrder.Skus = append(afsOrder.Skus, orderSku)
|
||||
refundFee += *v.RefundAmount
|
||||
|
||||
afsOrder.SkuUserMoney += refundFee
|
||||
afsOrder.RefundType = model.AfsTypePartRefund
|
||||
if afsOrder != nil {
|
||||
//直接就来一个新的售后单,并且还是售后完成的
|
||||
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
||||
afsOrder.Flag = model.AfsOrderFlagAgreeUserRefund
|
||||
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
|
||||
}
|
||||
}
|
||||
|
||||
orderSku := &model.OrderSkuFinancial{
|
||||
Count: utils.Float64TwoInt(utils.Str2Float64(*v.RefundQuantity)),
|
||||
VendorSkuID: *v.SkuCode,
|
||||
SkuID: utils.Str2Int(*v.SkuCode),
|
||||
Name: skuDetail.SkuName,
|
||||
UserMoney: *v.RefundAmount,
|
||||
PmSkuSubsidyMoney: 0, // 平台补贴商品
|
||||
VendorOrderID: orderStatus.VendorOrderID,
|
||||
VendorSubOrderID: *v.OutOrderId,
|
||||
}
|
||||
afsOrder.PmSkuSubsidyMoney += orderSku.PmSkuSubsidyMoney
|
||||
afsOrder.Skus = append(afsOrder.Skus, orderSku)
|
||||
refundFee += *v.RefundAmount
|
||||
|
||||
afsOrder.SkuUserMoney += refundFee
|
||||
afsOrder.RefundType = model.AfsTypePartRefund
|
||||
if afsOrder != nil {
|
||||
//直接就来一个新的售后单,并且还是售后完成的
|
||||
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
||||
afsOrder.Flag = model.AfsOrderFlagAgreeUserRefund
|
||||
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -209,7 +209,6 @@ func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, v
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||
globals.SugarLogger.Debugf("len CreateStoreSkus := %d", len(storeSkuList))
|
||||
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, true)
|
||||
return failedList, err
|
||||
}
|
||||
@@ -236,39 +235,26 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
||||
func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSyncInfo, vendorStoreID string, storeID int, syncType string) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||
param := &request585.AlibabaWdkSkuUpdateRequest{}
|
||||
updateSkuList := make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//totalCount := len(storeSkuList)
|
||||
for _, v := range storeSkuList {
|
||||
price := utils.String2Pointer(utils.Float64ToStr(float64(v.VendorPrice) / float64(100)))
|
||||
updateSku := domain585.AlibabaWdkSkuUpdateSkuDo{
|
||||
OuCode: utils.String2Pointer(vendorStoreID),
|
||||
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
|
||||
SkuName: utils.String2Pointer(checkNameLength(v.SkuName)),
|
||||
MemberPrice: price,
|
||||
SkuPrice: price, // 优先使用skuPrice 靠后SalePrice
|
||||
SuggestedPrice: price, // 优先使用skuPrice 靠后SalePrice
|
||||
CategoryCode: utils.String2Pointer(utils.Int2Str(v.CategoryID)),
|
||||
MerchantCatCode: utils.String2Pointer(v.VendorCatID), // 优先使用 靠后 category_code
|
||||
OuCode: utils.String2Pointer(vendorStoreID),
|
||||
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
|
||||
SkuName: utils.String2Pointer(checkNameLength(v.SkuName, v.Weight, v.Unit)),
|
||||
SkuPrice: price, // 优先使用skuPrice 靠后SalePrice
|
||||
CategoryCode: utils.String2Pointer(utils.Int2Str(v.CategoryID)),
|
||||
MerchantCatCode: utils.String2Pointer(v.VendorCatID), // 优先使用 靠后 category_code
|
||||
CleanSkuMemberPrice: utils.Int64ToPointer(model.YES),
|
||||
SubTitle: utils.String2Pointer("小时达"),
|
||||
}
|
||||
if v.MinOrderCount <= model.YES {
|
||||
updateSku.PurchaseQuantity = utils.Int64ToPointer(model.YES) // 起购单位
|
||||
} else {
|
||||
updateSku.PurchaseQuantity = utils.Int64ToPointer(int64(v.MinOrderCount)) // 起购单位
|
||||
}
|
||||
updateSku.SkuPicUrls = uploadImg(api, []string{v.Img, v.Img2, v.Img3, v.Img4, v.Img5, v.DescImg})
|
||||
// 修改暂时不修改图片,保持效率
|
||||
//updateSku.SkuPicUrls = uploadImg(api, []string{v.Img, v.Img2, v.Img3, v.Img4, v.Img5, v.DescImg})
|
||||
updateSkuList = append(updateSkuList, updateSku)
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
|
||||
// param.ParamList = &updateSkuList
|
||||
// result, err := api.UpdateStoreSku(param)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType)
|
||||
// failedList = append(failedList, createFailedList...)
|
||||
// // 记录同步成功的数据
|
||||
// param.ParamList = nil
|
||||
// updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
|
||||
param.ParamList = &updateSkuList
|
||||
@@ -286,10 +272,8 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync
|
||||
func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSyncInfo, vendorStoreID string, storeID int, syncType string) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||
createPram := &request585.AlibabaWdkSkuAddRequest{}
|
||||
param := make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0)
|
||||
//totalCount := len(storeSkuList)
|
||||
vendorSkuIdMap := make(map[string]string, 0)
|
||||
|
||||
globals.SugarLogger.Debugf("storeSkuList := %d", len(storeSkuList))
|
||||
for _, storeSku := range storeSkuList {
|
||||
price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100)))
|
||||
sku := domain585.AlibabaWdkSkuAddSkuDo{
|
||||
@@ -308,14 +292,13 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
||||
SaleUnit: utils.String2Pointer("份"),
|
||||
LifeStatus: utils.String2Pointer(tao_vegetable.CreateSkuLeafStatus),
|
||||
SaleSpec: utils.String2Pointer(fmt.Sprintf("%d %s*1%s", storeSku.Weight, "g", storeSku.Unit)),
|
||||
StepQuantity: utils.Int64ToPointer(model.YES), // 每次购买至少增加一个购买单位
|
||||
SubTitle: utils.String2Pointer("同城包邮"),
|
||||
SubTitle1: utils.String2Pointer("一小时速达"),
|
||||
StepQuantity: utils.Int64ToPointer(model.YES), // 每次购买至少增加一个购买单位
|
||||
OnlineSaleFlag: utils.Int64ToPointer(tao_vegetable.CreateOnlineSaleFlag), // 门店控制是否可见
|
||||
SubTitle: utils.String2Pointer("小时达"),
|
||||
SubTitle1: utils.String2Pointer("一小时速达"),
|
||||
//DeliveryUnit: utils.String2Pointer(storeSku.Unit),
|
||||
DeliveryUnit: utils.String2Pointer("份"),
|
||||
DeliverySpec: utils.String2Pointer(utils.Int2Str(model.YES)),
|
||||
MemberPrice: price,
|
||||
Storage: utils.String2Pointer(tao_vegetable.CreateStorage),
|
||||
PickFloatRate: utils.String2Pointer(utils.Int2Str(model.NO)), // ? 0
|
||||
ForbidReceiveDays: utils.Int64ToPointer(tao_vegetable.CreateShelfLife), // ? 7
|
||||
@@ -341,7 +324,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
||||
if sku.SkuPicUrls == nil {
|
||||
continue
|
||||
}
|
||||
sku.SkuName = utils.String2Pointer(checkNameLength(storeSku.Name))
|
||||
sku.SkuName = utils.String2Pointer(checkNameLength(storeSku.Name, storeSku.Weight, storeSku.Unit))
|
||||
|
||||
if storeSku.MinOrderCount <= model.YES {
|
||||
sku.PurchaseQuantity = utils.Int64ToPointer(model.YES) // 起购单位
|
||||
@@ -370,28 +353,14 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
||||
},
|
||||
}
|
||||
param = append(param, sku)
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
|
||||
// createPram.ParamList = ¶m
|
||||
// result, err := api.AddStoreSku(createPram)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType)
|
||||
// failedList = append(failedList, failedList2...)
|
||||
// for k, v := range vendorSkuIdMap2 {
|
||||
// vendorSkuIdMap[k] = v
|
||||
// }
|
||||
//
|
||||
// createPram.ParamList = nil
|
||||
// param = make([]domain585.AlibabaWdkSkuAddSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
createPram.ParamList = ¶m
|
||||
result, err := api.AddStoreSku(createPram)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
|
||||
}
|
||||
//ddmsg.SendUserMessage(dingdingapi.MsgTyeText, "2452A93EEB9111EC9B06525400E86DC0", fmt.Sprintf("定时创建商品[门店id:%d],出入商品个数[%d]", storeID, len(storeSkuList)), utils.Format4Output(result, false))
|
||||
|
||||
// 记录失败的同步数据
|
||||
failedList2, vendorSkuIdMap2 := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], syncType)
|
||||
failedList = append(failedList, failedList2...)
|
||||
@@ -411,13 +380,14 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
||||
}
|
||||
failedListStock := updateStoreSkusStockByCreate(ctx, api, storeID, vendorStoreID, successSku)
|
||||
failedList = append(failedList, failedListStock...)
|
||||
globals.SugarLogger.Debugf("failedList := %s", utils.Format4Output(failedList, false))
|
||||
globals.SugarLogger.Debugf("storeSkuList := %s", utils.Format4Output(storeSkuList, false))
|
||||
return failedList, nil
|
||||
}
|
||||
|
||||
func checkNameLength(name string) string {
|
||||
func checkNameLength(name string, weight int, uint string) string {
|
||||
lastName := ""
|
||||
if !strings.Contains(name, uint) {
|
||||
name = fmt.Sprintf("%s %d/%s", name, weight, uint)
|
||||
}
|
||||
if strings.Contains(name, "其它") {
|
||||
name = strings.ReplaceAll(name, "其它", "")
|
||||
}
|
||||
@@ -465,7 +435,7 @@ func checkNameLength(name string) string {
|
||||
return lastName
|
||||
}
|
||||
}
|
||||
return name[0:60]
|
||||
return lastName[0:60]
|
||||
}
|
||||
|
||||
func uploadImg(api *tao_vegetable.API, imgs []string) *string {
|
||||
@@ -510,19 +480,6 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v
|
||||
OnlineSaleFlag: utils.Int64ToPointer(tao_vegetable.CreateOfflineSaleFlag),
|
||||
}
|
||||
updateSkuList = append(updateSkuList, updateSku)
|
||||
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
|
||||
// param.ParamList = &updateSkuList
|
||||
// result, err := api.UpdateStoreSku(param)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)")
|
||||
// failedList = append(failedList, createFailedList...)
|
||||
// param.ParamList = nil
|
||||
// updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
|
||||
param.ParamList = &updateSkuList
|
||||
@@ -534,28 +491,6 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v
|
||||
createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "删除商品(暂无接口,下架处理)")
|
||||
failedList = append(failedList, createFailedList...)
|
||||
return failedList, err
|
||||
//param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
||||
// StoreId: utils.String2Pointer(vendorStoreID),
|
||||
// ChannelCode: utils.String2Pointer(tao_vegetable.TaoVegetableChannelCode),
|
||||
// OnlineSaleFlag: utils.Int64ToPointer(tao_vegetable.CreateIsOnline),
|
||||
//}}
|
||||
//var updateOffShelf = make([]tao_vegetable.VegetableResultList, 0, len(storeSkuList))
|
||||
//for _, v := range storeSkuList {
|
||||
// param.ChannelSkuUpdateStatusReq.SkuCode = utils.String2Pointer(utils.Int2Str(v.SkuID))
|
||||
// // StoreSkuUpdateOffShelf 这个接口暂时有问题使用更新接口上下架
|
||||
// if err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).StoreSkuUpdateOffShelf(param); err != nil {
|
||||
// updateOffShelf = append(updateOffShelf, tao_vegetable.VegetableResultList{
|
||||
// ProductID: v.VendorSkuID,
|
||||
// SkuID: utils.Int2Str(v.SkuID),
|
||||
// ErrMsg: err.Error(),
|
||||
// })
|
||||
// }
|
||||
//}
|
||||
//failedList, _ = SelectStoreSkuListByFoodList(storeSkuList, updateOffShelf, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量删除商品(暂时下架,无删除接口)")
|
||||
//if len(failedList) > 0 {
|
||||
// err = nil
|
||||
//}
|
||||
//return failedList, err
|
||||
}
|
||||
|
||||
// UpdateStoreSkusStatus 批量更新商品上下架状态
|
||||
@@ -569,21 +504,10 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
||||
OuCode: utils.String2Pointer(vendorStoreID),
|
||||
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
|
||||
OnlineSaleFlag: utils.Int64ToPointer(onlineStatus),
|
||||
SubTitle: utils.String2Pointer("小时达"),
|
||||
//CleanSkuMemberPrice: utils.Int64ToPointer(model.YES),
|
||||
}
|
||||
updateSkuList = append(updateSkuList, updateSku)
|
||||
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
|
||||
// param.ParamList = &updateSkuList
|
||||
// result, err := api.UpdateStoreSku(param)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "批量更新商品上下架")
|
||||
// failedList = append(failedList, createFailedList...)
|
||||
// param.ParamList = nil
|
||||
// updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
|
||||
param.ParamList = &updateSkuList
|
||||
@@ -608,23 +532,9 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
|
||||
SkuCode: utils.String2Pointer(utils.Int2Str(v.SkuID)),
|
||||
SkuPrice: price,
|
||||
CleanSkuMemberPrice: utils.Int64ToPointer(model.YES),
|
||||
SuggestedPrice: price,
|
||||
MemberPrice: price,
|
||||
SubTitle: utils.String2Pointer("小时达"),
|
||||
}
|
||||
updateSkuList = append(updateSkuList, updateSku)
|
||||
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
|
||||
// param.ParamList = &updateSkuList
|
||||
// result, err := api.UpdateStoreSku(param)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// createFailedList, _ := SelectStoreSkuListByFoodList(storeSkuList, *result, storeID, model.VendorChineseNames[model.VendorIDTaoVegetable], "修改商品价格")
|
||||
// failedList = append(failedList, createFailedList...)
|
||||
// param.ParamList = nil
|
||||
// updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
param.ParamList = &updateSkuList
|
||||
result, err := api.UpdateStoreSku(param)
|
||||
@@ -926,21 +836,6 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO
|
||||
}
|
||||
updateSkuList = append(updateSkuList, updateSku)
|
||||
|
||||
//if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || (index+1) == len(storeSkuList) {
|
||||
// param.ParamList = &updateSkuList
|
||||
// result, err := api.UpdateStoreSku(param)
|
||||
// if err != nil {
|
||||
// globals.SugarLogger.Debugf("UpdateStoreSku Tao Vegetable err : %s", err.Error())
|
||||
// }
|
||||
// // 记录失败的同步数据
|
||||
// for _, v := range *result {
|
||||
// if v.ErrMsg != "" {
|
||||
// errList = append(errList, v.ErrMsg)
|
||||
// }
|
||||
// }
|
||||
// param.ParamList = nil
|
||||
// updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||
//}
|
||||
}
|
||||
param.ParamList = &updateSkuList
|
||||
result, err := api.UpdateStoreSku(param)
|
||||
|
||||
@@ -119,7 +119,7 @@ func (c *OrderController) QueryOrderWaybillFeeInfo() {
|
||||
// @Param token header string true "认证token"
|
||||
// @Param vendorOrderID formData string true "订单ID"
|
||||
// @Param vendorID formData int true "订单所属的厂商ID"
|
||||
// @Param courierVendorIDs formData string false "运单厂商ID(缺省全部)"
|
||||
// @Param courierVendorIDs formData string false "运单厂商ID(缺省全部)"
|
||||
// @Param maxDeliveryFee formData int false "最高限价(为0时为缺省最大值)"
|
||||
// @Param forceCreate formData bool false "是否强制创建(忽略订单状态检查及其它参数)"
|
||||
// @Success 200 {object} controllers.CallResult
|
||||
|
||||
Reference in New Issue
Block a user