Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop
This commit is contained in:
@@ -172,8 +172,6 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
|
|||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
globals.SugarLogger.Debugf("========OnOrderStatusChanged : %s", vendorOrgCode)
|
|
||||||
globals.SugarLogger.Debugf("========OnOrderStatusChanged : %s", utils.Format4Output(orderStatus, false))
|
|
||||||
// 有些平台(比如美团外卖),在新订单事件没有成功返回,但在重发订单消息前,订单状态转换,则不会再重发新订单事件,特殊处理一下
|
// 有些平台(比如美团外卖),在新订单事件没有成功返回,但在重发订单消息前,订单状态转换,则不会再重发新订单事件,特殊处理一下
|
||||||
if orderStatus != nil {
|
if orderStatus != nil {
|
||||||
if orderStatus.Status == model.OrderStatusAccepted {
|
if orderStatus.Status == model.OrderStatusAccepted {
|
||||||
@@ -184,11 +182,9 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Debugf("========loadOrder : %s", utils.Format4Output(loadOrder, false))
|
|
||||||
loadOrder.Status = model.OrderStatusAccepted
|
loadOrder.Status = model.OrderStatusAccepted
|
||||||
loadOrder.VendorStatus = tao_vegetable.OrderStatusNew
|
loadOrder.VendorStatus = tao_vegetable.OrderStatusNew
|
||||||
c.UpdateOrderFields(loadOrder, []string{"Status", "VendorStatus"})
|
c.UpdateOrderFields(loadOrder, []string{"Status", "VendorStatus"})
|
||||||
globals.SugarLogger.Debugf("========loadOrder : %s", utils.Format4Output(loadOrder, false))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2447,14 +2443,7 @@ func DelOrderSkuInfo(ctx *jxcontext.Context, vendorOrderID string, vendorID, id
|
|||||||
return 0, fmt.Errorf("商品数小于3,不允许删除!")
|
return 0, fmt.Errorf("商品数小于3,不允许删除!")
|
||||||
}
|
}
|
||||||
if orderSkus[0].ID == int64(id) {
|
if orderSkus[0].ID == int64(id) {
|
||||||
//if orderSkus[0].JxSkuID == skuID {
|
|
||||||
return 0, fmt.Errorf("不允许删第一个商品!")
|
return 0, fmt.Errorf("不允许删第一个商品!")
|
||||||
//}
|
|
||||||
//} else {
|
|
||||||
// if orderSkus[0].SkuID == skuID {
|
|
||||||
// return 0, fmt.Errorf("不允许删第一个商品!")
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
for _, v := range order.Skus {
|
for _, v := range order.Skus {
|
||||||
if v.ID == int64(id) {
|
if v.ID == int64(id) {
|
||||||
@@ -2466,21 +2455,6 @@ func DelOrderSkuInfo(ctx *jxcontext.Context, vendorOrderID string, vendorID, id
|
|||||||
shopPrice = v.ShopPrice * int64(v.Count)
|
shopPrice = v.ShopPrice * int64(v.Count)
|
||||||
earningPrice = v.EarningPrice * int64(v.Count)
|
earningPrice = v.EarningPrice * int64(v.Count)
|
||||||
}
|
}
|
||||||
//if v.SkuID == 0 {
|
|
||||||
// if v.JxSkuID == skuID {
|
|
||||||
|
|
||||||
// }
|
|
||||||
//} else {
|
|
||||||
// if v.SkuID == skuID {
|
|
||||||
// sql := `
|
|
||||||
// DELETE FROM order_sku WHERE id = ?
|
|
||||||
// `
|
|
||||||
// sqlParams := []interface{}{v.ID}
|
|
||||||
// dao.ExecuteSQL(db, sql, sqlParams)
|
|
||||||
// shopPrice = v.ShopPrice * int64(v.Count)
|
|
||||||
// earningPrice = v.EarningPrice * int64(v.Count)
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
order.ShopPrice -= shopPrice
|
order.ShopPrice -= shopPrice
|
||||||
order.EarningPrice -= earningPrice
|
order.EarningPrice -= earningPrice
|
||||||
|
|||||||
@@ -396,8 +396,6 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b
|
|||||||
txDB, _ := dao.Begin(db)
|
txDB, _ := dao.Begin(db)
|
||||||
defer dao.Commit(db, txDB)
|
defer dao.Commit(db, txDB)
|
||||||
|
|
||||||
//globals.SugarLogger.Debugf("store_sku 检查:sql:%s sqlParams:%s", sql, sqlParams)
|
|
||||||
|
|
||||||
if err = dao.GetRowsTx(txDB, &SkuNames, sql, sqlParams...); err == nil {
|
if err = dao.GetRowsTx(txDB, &SkuNames, sql, sqlParams...); err == nil {
|
||||||
//globals.SugarLogger.Debugf(" 检查参数:SkuNames:%s", utils.Format4Output(SkuNames, false))
|
//globals.SugarLogger.Debugf(" 检查参数:SkuNames:%s", utils.Format4Output(SkuNames, false))
|
||||||
skuNamesInfo = &dao.StoreSkuNamesInfo2{
|
skuNamesInfo = &dao.StoreSkuNamesInfo2{
|
||||||
@@ -441,9 +439,7 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b
|
|||||||
sql2 += " AND b.status = ?"
|
sql2 += " AND b.status = ?"
|
||||||
sqlParams2 = append(sqlParams2, status)
|
sqlParams2 = append(sqlParams2, status)
|
||||||
}
|
}
|
||||||
//globals.SugarLogger.Debugf("store_sku 检查:sql2:%s sqlParams2:%s", sql2, sqlParams2)
|
|
||||||
if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil {
|
if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil {
|
||||||
//globals.SugarLogger.Debugf(" 检查参数:skus:%s", utils.Format4Output(skus, false))
|
|
||||||
v.Skus = skus
|
v.Skus = skus
|
||||||
}
|
}
|
||||||
return retVal, err
|
return retVal, err
|
||||||
|
|||||||
@@ -133,7 +133,6 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
|
|||||||
}
|
}
|
||||||
} else if model.IsSyncStatusNew(catInfo.CatSyncStatus) { // 新增 2
|
} else if model.IsSyncStatusNew(catInfo.CatSyncStatus) { // 新增 2
|
||||||
err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
|
err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
|
||||||
globals.SugarLogger.Debugf("CreateStoreCategory err ========= %v", err)
|
|
||||||
if err != nil && handler.IsErrCategoryExist(err) {
|
if err != nil && handler.IsErrCategoryExist(err) {
|
||||||
if cat, err2 := handler.GetStoreCategory(ctx, storeID, vendorStoreID, catInfo.Name); err2 == nil {
|
if cat, err2 := handler.GetStoreCategory(ctx, storeID, vendorStoreID, catInfo.Name); err2 == nil {
|
||||||
catInfo.VendorCatID = cat.VendorCatID
|
catInfo.VendorCatID = cat.VendorCatID
|
||||||
@@ -710,17 +709,8 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
|
|||||||
updateList = updateList[:]
|
updateList = updateList[:]
|
||||||
updateList = rList2
|
updateList = rList2
|
||||||
}
|
}
|
||||||
// if configs, err := dao.QueryConfigs(dao.GetDB(), "jdsCookie2", model.ConfigTypeCookie, ""); err == nil {
|
|
||||||
// api.JdShop2API.SetCookieWithStr(configs[0].Value)
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("createList ==== := %s", utils.Format4Output(createList, false))
|
|
||||||
globals.SugarLogger.Debugf("updateList ==== := %s", utils.Format4Output(updateList, false))
|
|
||||||
globals.SugarLogger.Debugf("deleteList ==== := %s", utils.Format4Output(deleteList, false))
|
|
||||||
globals.SugarLogger.Debugf("stockList ==== := %s", utils.Format4Output(stockList, false))
|
|
||||||
globals.SugarLogger.Debugf("onlineList ==== := %s", utils.Format4Output(onlineList, false))
|
|
||||||
globals.SugarLogger.Debugf("offlineList ==== := %s", utils.Format4Output(offlineList, false))
|
|
||||||
globals.SugarLogger.Debugf("priceList ==== := %s", utils.Format4Output(priceList, false))
|
|
||||||
task := tasksch.NewParallelTask("syncStoreSkuNew", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError2), ctx,
|
task := tasksch.NewParallelTask("syncStoreSkuNew", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError2), ctx,
|
||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
step := batchItemList[0].(int)
|
step := batchItemList[0].(int)
|
||||||
@@ -780,8 +770,6 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
|
|||||||
dao.InsertSensitiveWord(sensitiveWord, vendorID, ctx.GetUserName())
|
dao.InsertSensitiveWord(sensitiveWord, vendorID, ctx.GetUserName())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("batchedStoreSkuList := %s", utils.Format4Output(batchedStoreSkuList, false))
|
|
||||||
globals.SugarLogger.Debugf("failedList := %s", utils.Format4Output(failedList, false))
|
|
||||||
successList := putils.UnselectStoreSkuSyncListByVendorSkuIDs(batchedStoreSkuList, GetVendorSkuIDList(failedList))
|
successList := putils.UnselectStoreSkuSyncListByVendorSkuIDs(batchedStoreSkuList, GetVendorSkuIDList(failedList))
|
||||||
if len(successList) > 0 {
|
if len(successList) > 0 {
|
||||||
_, err := updateStoreSku(dao.GetDB(), vendorID, successList, model.SyncFlagNewMask)
|
_, err := updateStoreSku(dao.GetDB(), vendorID, successList, model.SyncFlagNewMask)
|
||||||
@@ -790,7 +778,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return nil, len(successList), err
|
return nil, len(successList), err
|
||||||
}, ctx, task, createList, 1, isContinueWhenError2)
|
}, ctx, task, createList, singleStoreHandler.GetStoreSkusBatchSize(partner.FuncUpdateStoreSkus), isContinueWhenError2)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debug("create sku wrong on :", err)
|
globals.SugarLogger.Debug("create sku wrong on :", err)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ type ParallelConfig struct {
|
|||||||
// ParentTask ITask
|
// ParentTask ITask
|
||||||
// IsAsync bool
|
// IsAsync bool
|
||||||
ParallelCount int
|
ParallelCount int
|
||||||
BatchSize int
|
BatchSize int // 最大传入数据量
|
||||||
IsContinueWhenError bool
|
IsContinueWhenError bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,9 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
||||||
|
tao "git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tao_vegetable"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/dadaapi"
|
"git.rosy.net.cn/baseapi/platformapi/dadaapi"
|
||||||
@@ -118,6 +120,9 @@ func (c *DeliveryHandler) onWaybillMsg(msg *dadaapi.CallbackMsg) (retVal *dadaap
|
|||||||
tiktokStatusPush(order, msg.OrderStatus)
|
tiktokStatusPush(order, msg.OrderStatus)
|
||||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
||||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||||
|
if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.OrderStatus == dadaapi.OrderStatusAccepted {
|
||||||
|
tao_vegetable.PushDelivererChangeInfo(goodsOrder, order, tao.TaoDeliveryTypeDD)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -3,9 +3,11 @@ package fn
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
||||||
|
tao "git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tao_vegetable"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -311,6 +313,9 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta
|
|||||||
tiktokStatusPush(order, orderStatus)
|
tiktokStatusPush(order, orderStatus)
|
||||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
||||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||||
|
if good.VendorID == model.VendorIDTaoVegetable && cc.OrderStatus == fnpsapi.OrderStatusAssigned {
|
||||||
|
tao_vegetable.PushDelivererChangeInfo(good, order, tao.TaoDeliveryTypeFN)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return fnpsapi.Err2CallbackResponse(nil, "")
|
return fnpsapi.Err2CallbackResponse(nil, "")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
|
||||||
|
tao "git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
@@ -18,6 +19,7 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner/delivery"
|
"git.rosy.net.cn/jx-callback/business/partner/delivery"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tao_vegetable"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
"github.com/astaxie/beego/client/orm"
|
"github.com/astaxie/beego/client/orm"
|
||||||
@@ -139,12 +141,14 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m
|
|||||||
|
|
||||||
// 加入调度器
|
// 加入调度器
|
||||||
err := mtpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), order.VendorStatus)
|
err := mtpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), order.VendorStatus)
|
||||||
|
|
||||||
switch order.OrderVendorID {
|
switch order.OrderVendorID {
|
||||||
case model.VendorIDDD:
|
case model.VendorIDDD:
|
||||||
pushMTPSToTiktok(msg.Status, order)
|
pushMTPSToTiktok(msg.Status, order)
|
||||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
||||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||||
|
if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.Status == mtpsapi.OrderStatusAccepted {
|
||||||
|
tao_vegetable.PushDelivererChangeInfo(goodsOrder, order, tao.TaoDeliveryTypeMT)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package sfps
|
|||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
tao "git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tao_vegetable"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
@@ -400,6 +402,9 @@ func OnWaybillMsg(urlIndex string, msg interface{}) (resp *sfps2.CallbackRespons
|
|||||||
tiktokStatusPush(order, orderStatus)
|
tiktokStatusPush(order, orderStatus)
|
||||||
case model.VendorIDTaoVegetable, model.VendorIDMTWM:
|
case model.VendorIDTaoVegetable, model.VendorIDMTWM:
|
||||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||||
|
if good.VendorID == model.VendorIDTaoVegetable && orderStatus == sfps2.OrderStatusTakeOrder {
|
||||||
|
tao_vegetable.PushDelivererChangeInfo(good, order, tao.TaoDeliveryTypeSF)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return sfps2.Err2CallbackResponse(nil)
|
return sfps2.Err2CallbackResponse(nil)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package uupt
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
tao "git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tao_vegetable"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -386,6 +388,9 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp
|
|||||||
tiktokStatusPush(param, req.State)
|
tiktokStatusPush(param, req.State)
|
||||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
case model.VendorIDMTWM, model.VendorIDTaoVegetable:
|
||||||
delivery.GetOrderRiderInfoToPlatform(param.VendorOrderID, param.Status) // 骑手位置更新
|
delivery.GetOrderRiderInfoToPlatform(param.VendorOrderID, param.Status) // 骑手位置更新
|
||||||
|
if good.VendorID == model.VendorIDTaoVegetable && req.State == uuptapi.StateRMGrabsOrder {
|
||||||
|
tao_vegetable.PushDelivererChangeInfo(good, param, tao.TaoDeliveryTypeOther)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return uuptapi.Err2CallbackResponse(nil)
|
return uuptapi.Err2CallbackResponse(nil)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ func (c *PrinterHandler) GetVendorID() int {
|
|||||||
func (c *PrinterHandler) PrintMsg(ctx *jxcontext.Context, sn, copies, voiceType, msgContent string) (printerStatus *partner.PrinterStatus, err error) {
|
func (c *PrinterHandler) PrintMsg(ctx *jxcontext.Context, sn, copies, voiceType, msgContent string) (printerStatus *partner.PrinterStatus, err error) {
|
||||||
if sn != "" {
|
if sn != "" {
|
||||||
//if globals.EnableStoreWrite {
|
//if globals.EnableStoreWrite {
|
||||||
globals.SugarLogger.Debugf("printMsg voiceType====%s", voiceType)
|
|
||||||
printOrderID, err1 := api.XpyunAPI.Print(&xpyunapi.PrintRequest{
|
printOrderID, err1 := api.XpyunAPI.Print(&xpyunapi.PrintRequest{
|
||||||
Sn: sn,
|
Sn: sn,
|
||||||
Content: msgContent,
|
Content: msgContent,
|
||||||
@@ -101,9 +100,7 @@ func (c *PrinterHandler) RebindPrinter(ctx *jxcontext.Context, lastBindResult *p
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
|
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder, printType string, asfOrder *model.AfsOrder) (printerStatus *partner.PrinterStatus, err error) {
|
||||||
globals.SugarLogger.Debugf("打印order参数:%s", utils.Format4Output(order, false))
|
|
||||||
if len(order.Skus) == 0 {
|
if len(order.Skus) == 0 {
|
||||||
globals.SugarLogger.Debugf("order.sku为空")
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
content := ""
|
content := ""
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package tao_vegetable
|
|||||||
import (
|
import (
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||||
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
@@ -16,7 +15,6 @@ func OnCallbackMsg(orderStatus, orderId string, msg interface{}) (response *tao_
|
|||||||
if CurPurchaseHandler != nil {
|
if CurPurchaseHandler != nil {
|
||||||
jxutils.CallMsgHandler(func() {
|
jxutils.CallMsgHandler(func() {
|
||||||
response = CurPurchaseHandler.onOrderMsg(orderStatus, orderId, msg)
|
response = CurPurchaseHandler.onOrderMsg(orderStatus, orderId, msg)
|
||||||
globals.SugarLogger.Debugf("OnCallbackMsg response : %s", utils.Format4Output(response, false))
|
|
||||||
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDTaoVegetable))
|
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDTaoVegetable))
|
||||||
}
|
}
|
||||||
return response
|
return response
|
||||||
|
|||||||
@@ -214,6 +214,5 @@ func (p *PurchaseHandler) OrderDetail2Financial(result *domain591.AlibabaAelophy
|
|||||||
orderFinancial.SelfDeliveryDiscountMoney = *result.SkuDiscountPlatformFee // 平台承担运费补贴(商家自送)+
|
orderFinancial.SelfDeliveryDiscountMoney = *result.SkuDiscountPlatformFee // 平台承担运费补贴(商家自送)+
|
||||||
orderFinancial.DistanceFreightMoney = 0
|
orderFinancial.DistanceFreightMoney = 0
|
||||||
|
|
||||||
globals.SugarLogger.Debugf("orderFinancial===============: %s", utils.Format4Output(orderFinancial, false))
|
|
||||||
return orderFinancial
|
return orderFinancial
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -156,14 +156,8 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
|
|||||||
}
|
}
|
||||||
multiSkuMap[sku.SkuID]++
|
multiSkuMap[sku.SkuID]++
|
||||||
order.Skus = append(order.Skus, sku)
|
order.Skus = append(order.Skus, sku)
|
||||||
//salePrice += sku.SalePrice
|
|
||||||
//weight += sku.Weight
|
|
||||||
globals.SugarLogger.Debugf("=====skuPrice := %d", sku.SalePrice)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//order.SalePrice = salePrice
|
|
||||||
//order.Weight = weight
|
|
||||||
//globals.SugarLogger.Debugf("=====skuPrice := %d", salePrice)
|
|
||||||
|
|
||||||
// 淘宝默认自配送
|
// 淘宝默认自配送
|
||||||
if *orderDetail.DeliveryType == tao_vegetable.OrderDeliveryTypeTime {
|
if *orderDetail.DeliveryType == tao_vegetable.OrderDeliveryTypeTime {
|
||||||
@@ -251,6 +245,20 @@ func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, par
|
|||||||
return getAPI(vendorOrgCode, 0, vendorStoreID).DeliveryTrajectory(req)
|
return getAPI(vendorOrgCode, 0, vendorStoreID).DeliveryTrajectory(req)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func PushDelivererChangeInfo(order *model.GoodsOrder, bill *model.Waybill, deliveryType string) error {
|
||||||
|
param := &request591.AlibabaAelophyOrderDelivererChangeRequest{
|
||||||
|
DelivererChangeRequest: &domain591.AlibabaAelophyOrderDelivererChangeDelivererChangeRequest{
|
||||||
|
StoreId: utils.String2Pointer(order.VendorStoreID),
|
||||||
|
BizOrderId: utils.Int64ToPointer(utils.Str2Int64(order.VendorOrderID)),
|
||||||
|
DelivererName: utils.String2Pointer(bill.CourierName),
|
||||||
|
DelivererPhone: utils.String2Pointer(bill.CourierMobile),
|
||||||
|
DelivererCompany: nil,
|
||||||
|
LogisticsNo: utils.String2Pointer(bill.VendorWaybillID),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
return getAPI(order.VendorOrgCode, 0, "").DelivererChange(param)
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
order, _, err = p.getOrder(vendorOrgCode, utils.Str2Int64(vendorOrderID), vendorStoreID)
|
order, _, err = p.getOrder(vendorOrgCode, utils.Str2Int64(vendorOrderID), vendorStoreID)
|
||||||
return order, err
|
return order, err
|
||||||
@@ -500,7 +508,6 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").DeliveryFinish(param); err != nil {
|
if err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").DeliveryFinish(param); err != nil {
|
||||||
globals.SugarLogger.Debugf("PickupGoods 拣货失败可能是BizSubOrderId 没填写 : %s", err.Error())
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp)
|
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp)
|
||||||
@@ -553,10 +560,7 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if err = api.DeliveryFinish(param); err == nil {
|
if err = api.DeliveryFinish(param); err == nil {
|
||||||
paramDelivery, err := orderStatusChangeNotice(order, tao_vegetable.OrderStatusDelivery)
|
paramDelivery := OrderStatusChangeDelivery(order, tao_vegetable.OrderStatusDelivery)
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
// 开始配送
|
// 开始配送
|
||||||
return api.DeliveryFinish(paramDelivery)
|
return api.DeliveryFinish(paramDelivery)
|
||||||
}
|
}
|
||||||
@@ -641,33 +645,8 @@ func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *mod
|
|||||||
// CancelOrder 商户取消订单(取消订单全部商品)
|
// CancelOrder 商户取消订单(取消订单全部商品)
|
||||||
func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
|
func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
|
||||||
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
||||||
orderSkuList, err := getOrderCancelList(api, order)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
outSubOrderIds := make([]string, 0, len(*orderSkuList.OutSubOrders))
|
|
||||||
for _, v := range *orderSkuList.OutSubOrders {
|
|
||||||
if *v.CanReverse {
|
|
||||||
outSubOrderIds = append(outSubOrderIds, *v.OutSubOrderId)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
reasonId := *orderSkuList.ReasonList
|
|
||||||
param := &request3156.AlibabaTclsAelophyRefundCsapplyRequest{
|
|
||||||
RefundCsApplyDTO: &domain3156.AlibabaTclsAelophyRefundCsapplyRefundCsApplyDto{
|
|
||||||
ReasonId: reasonId[0].ReasonId,
|
|
||||||
OutOrderId: utils.String2Pointer(order.VendorOrderID2),
|
|
||||||
StoreId: utils.String2Pointer(order.VendorStoreID),
|
|
||||||
RequestId: utils.String2Pointer(fmt.Sprintf("%s%d", order.VendorStoreID, time.Now().UnixNano())),
|
|
||||||
OutSubOrderIds: &outSubOrderIds,
|
|
||||||
Memo: utils.String2Pointer(reason),
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
if err = api.PartialRefund(param); err == nil {
|
|
||||||
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusMerchantCancel, tao_vegetable.OrderStatusMerchantCancel)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if order.Status < model.OrderStatusEndBegin {
|
||||||
// 发送取消状态,商户取消
|
// 发送取消状态,商户取消
|
||||||
err = api.DeliveryFinish(&request591.AlibabaAelophyOrderWorkCallbackRequest{
|
err = api.DeliveryFinish(&request591.AlibabaAelophyOrderWorkCallbackRequest{
|
||||||
WorkCallbackRequest: &domain591.AlibabaAelophyOrderWorkCallbackWorkCallbackRequest{
|
WorkCallbackRequest: &domain591.AlibabaAelophyOrderWorkCallbackWorkCallbackRequest{
|
||||||
@@ -676,7 +655,51 @@ func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.Goods
|
|||||||
Status: utils.String2Pointer(tao_vegetable.OrderStatusMerchantCancel),
|
Status: utils.String2Pointer(tao_vegetable.OrderStatusMerchantCancel),
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
localSkuList, _ := dao.GetSimpleOrderSkus(dao.GetDB(), order.VendorOrderID, nil)
|
||||||
|
skuMap := make(map[string]*model.OrderSku, 0)
|
||||||
|
for _, v := range localSkuList {
|
||||||
|
skuMap[v.VendorSubOrderID] = v
|
||||||
|
}
|
||||||
|
orderSkuList, err := getOrderCancelList(api, order)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
outSubOrderIds := make([]domain3156.AlibabaTclsAelophyRefundCsapplyNewCsApplySubOrderDTO, 0, len(*orderSkuList.OutSubOrders))
|
||||||
|
for _, v := range *orderSkuList.OutSubOrders {
|
||||||
|
if *v.CanReverse {
|
||||||
|
subOrder := domain3156.AlibabaTclsAelophyRefundCsapplyNewCsApplySubOrderDTO{
|
||||||
|
RefundFee: utils.String2Pointer(utils.Int64ToStr(*v.MaxRefundFee)),
|
||||||
|
RefundAmount: nil,
|
||||||
|
OutSubOrderId: v.OutSubOrderId,
|
||||||
|
}
|
||||||
|
if skuMap[*v.OutSubOrderId] != nil {
|
||||||
|
subOrder.RefundAmount = utils.String2Pointer(utils.Int2Str(skuMap[*v.OutSubOrderId].Count))
|
||||||
|
} else {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
outSubOrderIds = append(outSubOrderIds, subOrder)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
reasonId := *orderSkuList.ReasonList
|
||||||
|
param := &request3156.AlibabaTclsAelophyRefundCsapplyNewRequest{
|
||||||
|
RefundCsApplyDTO: &domain3156.AlibabaTclsAelophyRefundCsapplyNewRefundCsApplyNewDTO{
|
||||||
|
ReasonId: reasonId[0].ReasonId,
|
||||||
|
OutOrderId: utils.String2Pointer(order.VendorOrderID2),
|
||||||
|
StoreId: utils.String2Pointer(order.VendorStoreID),
|
||||||
|
RequestId: utils.String2Pointer(fmt.Sprintf("%s%d", order.VendorStoreID, time.Now().UnixNano())),
|
||||||
|
Memo: utils.String2Pointer(reason),
|
||||||
|
SubRefundOrders: &outSubOrderIds,
|
||||||
|
RefundReason: utils.String2Pointer(reason),
|
||||||
|
OrderFrom: utils.Int64ToPointer(tao_vegetable.ChannelCome),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
if err = api.PartialRefund(param); err == nil {
|
||||||
|
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusMerchantCancel, tao_vegetable.OrderStatusMerchantCancel)
|
||||||
|
}
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -687,7 +710,6 @@ func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.Goods
|
|||||||
func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList []*model.OrderSku, reason string) (err error) {
|
func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList []*model.OrderSku, reason string) (err error) {
|
||||||
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
||||||
|
|
||||||
globals.SugarLogger.Debugf("removedSkuList := %s", utils.Format4Output(removedSkuList, false))
|
|
||||||
// 获取需要退货商品的子订单id
|
// 获取需要退货商品的子订单id
|
||||||
refundSkuOrderID := make(map[int]*model.OrderSku, 0)
|
refundSkuOrderID := make(map[int]*model.OrderSku, 0)
|
||||||
for _, v := range removedSkuList {
|
for _, v := range removedSkuList {
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
"strconv"
|
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -47,7 +46,6 @@ func (c *PurchaseHandler) isAfsMsg(orderStatus string, orderId string, orderCall
|
|||||||
// RefundIds: &[]int64{utils.Str2Int64(success.BizSubRefundId)},
|
// RefundIds: &[]int64{utils.Str2Int64(success.BizSubRefundId)},
|
||||||
//}
|
//}
|
||||||
//refundAfs, _ := getAPI("", 0, success.StoreId).QueryAfsOrderDetail(param)
|
//refundAfs, _ := getAPI("", 0, success.StoreId).QueryAfsOrderDetail(param)
|
||||||
//globals.SugarLogger.Debugf("==============refundAfs.Orders : %s", utils.Format4Output(refundAfs.Orders != nil, false))
|
|
||||||
//if refundAfs.Orders != nil {
|
//if refundAfs.Orders != nil {
|
||||||
// return true
|
// return true
|
||||||
//}
|
//}
|
||||||
@@ -73,9 +71,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
|||||||
var err error
|
var err error
|
||||||
var db = dao.GetDB()
|
var db = dao.GetDB()
|
||||||
orderStatus, scarceGoods := c.callbackAfsMsg2Status(status, msg)
|
orderStatus, scarceGoods := c.callbackAfsMsg2Status(status, msg)
|
||||||
globals.SugarLogger.Debugf("status := %s", status)
|
|
||||||
globals.SugarLogger.Debugf("orderStatus := %s", utils.Format4Output(orderStatus, false))
|
|
||||||
globals.SugarLogger.Debugf("scarceGoods := %s", utils.Format4Output(scarceGoods, false))
|
|
||||||
// 用户取消售后
|
// 用户取消售后
|
||||||
switch status {
|
switch status {
|
||||||
case tao_vegetable.OrderStatusApplyAfs:
|
case tao_vegetable.OrderStatusApplyAfs:
|
||||||
@@ -287,8 +282,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
|||||||
//直接就来一个新的售后单,并且还是售后完成的
|
//直接就来一个新的售后单,并且还是售后完成的
|
||||||
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
||||||
afsOrder.Flag = model.AfsOrderFlagAgreeUserRefund
|
afsOrder.Flag = model.AfsOrderFlagAgreeUserRefund
|
||||||
globals.SugarLogger.Debugf("==============onsaleRefund afsOrd: = %s", utils.Format4Output(afsOrder, false))
|
|
||||||
globals.SugarLogger.Debugf("==============onsaleRefund orderStatus: = %s", utils.Format4Output(orderStatus, false))
|
|
||||||
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
|
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
|
||||||
}
|
}
|
||||||
case tao_vegetable.OrderStatusRefundSuccess:
|
case tao_vegetable.OrderStatusRefundSuccess:
|
||||||
@@ -321,13 +314,8 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
|||||||
|
|
||||||
for _, v := range *scarceGoods {
|
for _, v := range *scarceGoods {
|
||||||
var refundFee int64 = 0
|
var refundFee int64 = 0
|
||||||
skuStr := *v.Attributes
|
|
||||||
str2, err := strconv.Unquote("\"" + skuStr + "\"")
|
|
||||||
if err != nil {
|
|
||||||
return tao_vegetable.CallBackResultInfo(err)
|
|
||||||
}
|
|
||||||
skuDetail := tao_vegetable.GoodsScarceRefund{}
|
skuDetail := tao_vegetable.GoodsScarceRefund{}
|
||||||
if err := json.Unmarshal([]byte(str2), &skuDetail); err != nil {
|
if err := json.Unmarshal([]byte(*v.Attributes), &skuDetail); err != nil {
|
||||||
return tao_vegetable.CallBackResultInfo(err)
|
return tao_vegetable.CallBackResultInfo(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -347,8 +335,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
|
|||||||
|
|
||||||
afsOrder.SkuUserMoney += refundFee
|
afsOrder.SkuUserMoney += refundFee
|
||||||
afsOrder.RefundType = model.AfsTypePartRefund
|
afsOrder.RefundType = model.AfsTypePartRefund
|
||||||
globals.SugarLogger.Debugf("============OrderStatusRefundSuccess afsOrder: %s", utils.Format4Output(afsOrder, false))
|
|
||||||
globals.SugarLogger.Debugf("============OrderStatusRefundSuccess orderStatus: %s", utils.Format4Output(orderStatus, false))
|
|
||||||
if afsOrder != nil {
|
if afsOrder != nil {
|
||||||
//直接就来一个新的售后单,并且还是售后完成的
|
//直接就来一个新的售后单,并且还是售后完成的
|
||||||
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
|
||||||
@@ -435,27 +421,29 @@ func (c *PurchaseHandler) callbackAfsMsg2Status(status string, msg interface{})
|
|||||||
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
|
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
|
||||||
orderStatus.VendorOrderID = refundData.OutMainRefundId
|
orderStatus.VendorOrderID = refundData.OutMainRefundId
|
||||||
} else {
|
} else {
|
||||||
|
var refundAfs *domain591.AlibabaWdkOrderRefundGetOrderSyncRefundListResult
|
||||||
|
for i := 0; i < 4; i++ {
|
||||||
param := &request591.AlibabaWdkOrderRefundGetRequest{
|
param := &request591.AlibabaWdkOrderRefundGetRequest{
|
||||||
OrderFrom: utils.Int64ToPointer(utils.Str2Int64(tao_vegetable.TaoVegetableChannelCode)),
|
OrderFrom: utils.Int64ToPointer(utils.Str2Int64(tao_vegetable.TaoVegetableChannelCode)),
|
||||||
ShopId: nil,
|
ShopId: nil,
|
||||||
StoreId: utils.String2Pointer(refundData.StoreId),
|
StoreId: utils.String2Pointer(refundData.StoreId),
|
||||||
RefundIds: &[]int64{utils.Str2Int64(refundData.BizSubRefundId)},
|
RefundIds: &[]int64{utils.Str2Int64(refundData.BizSubRefundId)},
|
||||||
}
|
}
|
||||||
|
refundAfs, _ = getAPI("", 0, refundData.StoreId).QueryAfsOrderDetail(param)
|
||||||
|
if refundAfs.Orders != nil {
|
||||||
|
break
|
||||||
|
}
|
||||||
time.Sleep(time.Second * 1)
|
time.Sleep(time.Second * 1)
|
||||||
refundAfs, _ := getAPI("", 0, refundData.StoreId).QueryAfsOrderDetail(param)
|
}
|
||||||
if refundAfs.Orders == nil {
|
|
||||||
globals.SugarLogger.Debugf("================售中退款成功回调查询售后单为空:")
|
|
||||||
} else {
|
|
||||||
orders := *refundAfs.Orders
|
orders := *refundAfs.Orders
|
||||||
orderStatus.RefVendorOrderID = utils.Int64ToStr(*orders[0].OriginParentId)
|
orderStatus.RefVendorOrderID = utils.Int64ToStr(*orders[0].OriginParentId)
|
||||||
orderStatus.VendorStatus = fmt.Sprintf("%s:%s", tao_vegetable.OrderStatusRefundSuccess, "用户售中退款成功")
|
orderStatus.VendorStatus = fmt.Sprintf("%s:%s", tao_vegetable.OrderStatusRefundSuccess, "用户售中退款成功")
|
||||||
orderStatus.Status = c.GetAfsStatusFromVendorStatus(tao_vegetable.OrderStatusRefundSuccess)
|
orderStatus.Status = c.GetAfsStatusFromVendorStatus(tao_vegetable.OrderStatusRefundSuccess)
|
||||||
orderStatus.StatusTime = time.Now()
|
orderStatus.StatusTime = time.Now()
|
||||||
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
|
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
|
||||||
orderStatus.VendorOrderID = utils.Int64ToStr(*orders[0].RefundOrderId)
|
orderStatus.VendorOrderID = *orders[0].OutMianOrderId
|
||||||
taoRefundList = refundAfs.Orders
|
taoRefundList = refundAfs.Orders
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -63,20 +63,37 @@ func OrderStatusChangeDelivery(order *model.GoodsOrder, orderStatus string) *req
|
|||||||
Status: utils.String2Pointer(orderStatus),
|
Status: utils.String2Pointer(orderStatus),
|
||||||
}
|
}
|
||||||
bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
|
bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
|
||||||
|
storeDetail, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, model.VendorIDTaoVegetable, "")
|
||||||
if bill != nil {
|
if bill != nil {
|
||||||
if bill.CourierName == "" && bill.CourierMobile == "" {
|
if bill.CourierName == "" && bill.CourierMobile == "" {
|
||||||
storeDetail, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, model.VendorIDTaoVegetable, "")
|
|
||||||
param.WorkCallbackRequest.DelivererName = utils.String2Pointer("门店老板")
|
param.WorkCallbackRequest.DelivererName = utils.String2Pointer("门店老板")
|
||||||
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(storeDetail.Tel1)
|
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(storeDetail.Tel1)
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSELF)
|
||||||
|
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(bill.VendorWaybillID)
|
||||||
} else {
|
} else {
|
||||||
param.WorkCallbackRequest.DelivererName = utils.String2Pointer(bill.CourierName)
|
param.WorkCallbackRequest.DelivererName = utils.String2Pointer(bill.CourierName)
|
||||||
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(bill.CourierMobile)
|
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(bill.CourierMobile)
|
||||||
|
switch bill.WaybillVendorID {
|
||||||
|
case model.VendorIDDada:
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeDD)
|
||||||
|
case model.VendorIDFengNiao:
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeFN)
|
||||||
|
case model.VendorIDMTPS:
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeMT)
|
||||||
|
case model.VendorIDSFPS:
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSF)
|
||||||
|
default:
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeOther)
|
||||||
|
}
|
||||||
|
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(bill.VendorWaybillID)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if param.WorkCallbackRequest.DelivererName == nil || param.WorkCallbackRequest.DelivererPhone == nil {
|
if param.WorkCallbackRequest.DelivererName == nil || param.WorkCallbackRequest.DelivererPhone == nil {
|
||||||
param.WorkCallbackRequest.DelivererName = utils.String2Pointer("暂无")
|
param.WorkCallbackRequest.DelivererName = utils.String2Pointer(storeDetail.Tel1)
|
||||||
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer("暂无")
|
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer("门店老板")
|
||||||
|
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSELF)
|
||||||
|
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(order.VendorOrderID + "_1")
|
||||||
}
|
}
|
||||||
|
|
||||||
return param
|
return param
|
||||||
|
|||||||
@@ -41,19 +41,19 @@ var (
|
|||||||
func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) {
|
func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) {
|
||||||
switch funcID {
|
switch funcID {
|
||||||
case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice:
|
case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice:
|
||||||
batchSize = mtwmapi.MaxStoreSkuBatchSize
|
batchSize = 20
|
||||||
case partner.FuncDeleteStoreSkus:
|
case partner.FuncDeleteStoreSkus:
|
||||||
batchSize = mtwmapi.MaxBatchDeleteSize
|
batchSize = 20
|
||||||
case partner.FuncCreateStoreSkus:
|
case partner.FuncCreateStoreSkus:
|
||||||
batchSize = 1 // 可考虑用批量操作
|
batchSize = 20 // 可考虑用批量操作
|
||||||
case partner.FuncUpdateStoreSkus:
|
case partner.FuncUpdateStoreSkus:
|
||||||
batchSize = 1 // mtwmapi.MaxStoreSkuBatchSize
|
batchSize = 20 // mtwmapi.MaxStoreSkuBatchSize
|
||||||
case partner.FuncGetStoreSkusFullInfo:
|
case partner.FuncGetStoreSkusFullInfo:
|
||||||
batchSize = 1
|
batchSize = 20
|
||||||
case partner.FuncCreateActs:
|
case partner.FuncCreateActs:
|
||||||
batchSize = mtwmapi.MaxRetailDiscountCreateBatchSize
|
batchSize = 20
|
||||||
case partner.FuncCancelActs:
|
case partner.FuncCancelActs:
|
||||||
batchSize = mtwmapi.MaxRetailDiscountDeleteBatchSize
|
batchSize = 20
|
||||||
}
|
}
|
||||||
return batchSize
|
return batchSize
|
||||||
}
|
}
|
||||||
@@ -122,7 +122,6 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
Code: utils.String2Pointer(utils.Int2Str(storeCat.StoreCatID)),
|
Code: utils.String2Pointer(utils.Int2Str(storeCat.StoreCatID)),
|
||||||
Name: &storeCat.StoreCatName,
|
Name: &storeCat.StoreCatName,
|
||||||
}})
|
}})
|
||||||
globals.SugarLogger.Debugf("CreateStoreCategory=====err := %v", err)
|
|
||||||
if storeCat.CatSyncStatus&model.SyncFlagNewMask == 0 && p.IsErrCategoryNotExist(err) && storeCat.StoreCatName != "" { // 修改分类名,但分类不存在
|
if storeCat.CatSyncStatus&model.SyncFlagNewMask == 0 && p.IsErrCategoryNotExist(err) && storeCat.StoreCatName != "" { // 修改分类名,但分类不存在
|
||||||
storeCat.CatSyncStatus |= model.SyncFlagNewMask
|
storeCat.CatSyncStatus |= model.SyncFlagNewMask
|
||||||
createCategory := &request.AlibabaWdkSkuCategoryAddRequest{Param: &domain.AlibabaWdkSkuCategoryAddCategoryDo{
|
createCategory := &request.AlibabaWdkSkuCategoryAddRequest{Param: &domain.AlibabaWdkSkuCategoryAddCategoryDo{
|
||||||
@@ -136,7 +135,6 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
}
|
}
|
||||||
|
|
||||||
skuCode, err := api.AddStoreCategoryInfo(createCategory)
|
skuCode, err := api.AddStoreCategoryInfo(createCategory)
|
||||||
globals.SugarLogger.Debugf("AddStoreCategoryInfo=====err := %v", err)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -170,6 +168,11 @@ func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) {
|
func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) {
|
||||||
|
// 668594 正式服印象汇 668469 测试服芬姐(淘宝所有门店公用分类) , 模板门店才能删除
|
||||||
|
if storeID != 668594 && storeID != 668469 {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
|
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
|
||||||
// 只能删除叶子结点
|
// 只能删除叶子结点
|
||||||
// 看看这个level是不是代表子节点,感觉不是
|
// 看看这个level是不是代表子节点,感觉不是
|
||||||
@@ -202,12 +205,11 @@ func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
|
|||||||
|
|
||||||
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||||
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
|
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkus=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkus=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
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)
|
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, true)
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
@@ -224,13 +226,9 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
|
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
|
||||||
if isCreate {
|
if isCreate {
|
||||||
failedList, err = createTaoVegetable(ctx, api, storeSkuList, vendorStoreID, storeID, syncType)
|
failedList, err = createTaoVegetable(ctx, api, storeSkuList, vendorStoreID, storeID, syncType)
|
||||||
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%v", err)
|
|
||||||
} else {
|
} else {
|
||||||
failedList, err = UpdateTaoVegetable(api, storeSkuList, vendorStoreID, storeID, syncType)
|
failedList, err = UpdateTaoVegetable(api, storeSkuList, vendorStoreID, storeID, syncType)
|
||||||
globals.SugarLogger.Debugf("更新淘鲜达商品异常:%v", err)
|
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("createOrUpdateStoreSkus=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("createOrUpdateStoreSkus=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -272,8 +270,6 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync
|
|||||||
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("UpdateTaoVegetable=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("UpdateTaoVegetable=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -284,6 +280,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
|||||||
totalCount := len(storeSkuList)
|
totalCount := len(storeSkuList)
|
||||||
vendorSkuIdMap := make(map[string]string, 0)
|
vendorSkuIdMap := make(map[string]string, 0)
|
||||||
|
|
||||||
|
globals.SugarLogger.Debugf("storeSkuList := %d", len(storeSkuList))
|
||||||
for index, storeSku := range storeSkuList {
|
for index, storeSku := range storeSkuList {
|
||||||
price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100)))
|
price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100)))
|
||||||
sku := domain585.AlibabaWdkSkuAddSkuDo{
|
sku := domain585.AlibabaWdkSkuAddSkuDo{
|
||||||
@@ -345,20 +342,6 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
|||||||
sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo)
|
sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo)
|
||||||
sku.AvgWeight = utils.String2Pointer("1") // (重量)
|
sku.AvgWeight = utils.String2Pointer("1") // (重量)
|
||||||
sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量
|
sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量
|
||||||
//if storeSku.Upc == "" {
|
|
||||||
// //sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagYes)
|
|
||||||
// if storeSku.SpecUnit == "g" || storeSku.SpecUnit == "ml" || storeSku.SpecUnit == "G" || storeSku.SpecUnit == "ML" {
|
|
||||||
// sku.PreMinusWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // 一个售卖单位按多少库存单位扣款(钱)
|
|
||||||
// //sku.AvgWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // (重量)
|
|
||||||
// }
|
|
||||||
// if storeSku.SpecUnit == "kg" || storeSku.SpecUnit == "l" || storeSku.SpecUnit == "KG" || storeSku.SpecUnit == "L" {
|
|
||||||
// sku.PreMinusWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality))) // 每个购买单位重量,预扣重量
|
|
||||||
// //sku.AvgWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // (重量)
|
|
||||||
// }
|
|
||||||
//} else {
|
|
||||||
// //sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo)
|
|
||||||
// sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量
|
|
||||||
//}
|
|
||||||
sku.SkuSuppliers = &[]domain585.AlibabaWdkSkuAddSkuSupplierDo{
|
sku.SkuSuppliers = &[]domain585.AlibabaWdkSkuAddSkuSupplierDo{
|
||||||
domain585.AlibabaWdkSkuAddSkuSupplierDo{
|
domain585.AlibabaWdkSkuAddSkuSupplierDo{
|
||||||
ReturnFlag: utils.Int64ToPointer(model.NO),
|
ReturnFlag: utils.Int64ToPointer(model.NO),
|
||||||
@@ -378,10 +361,10 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
|||||||
}
|
}
|
||||||
|
|
||||||
param = append(param, sku)
|
param = append(param, sku)
|
||||||
|
|
||||||
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
|
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
|
||||||
createPram.ParamList = ¶m
|
createPram.ParamList = ¶m
|
||||||
result, err := api.AddStoreSku(createPram)
|
result, err := api.AddStoreSku(createPram)
|
||||||
globals.SugarLogger.Debugf("创建淘鲜达商品异常 result :%s", utils.Format4Output(result, false))
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
|
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
|
||||||
}
|
}
|
||||||
@@ -406,10 +389,6 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
|
|||||||
}
|
}
|
||||||
failedListStock := updateStoreSkusStockByCreate(ctx, api, storeID, vendorStoreID, successSku)
|
failedListStock := updateStoreSkusStockByCreate(ctx, api, storeID, vendorStoreID, successSku)
|
||||||
failedList = append(failedList, failedListStock...)
|
failedList = append(failedList, failedListStock...)
|
||||||
globals.SugarLogger.Debugf("storeSkuList=====err := %s", utils.Format4Output(storeSkuList, false))
|
|
||||||
|
|
||||||
globals.SugarLogger.Debugf("createTaoVegetable=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("createTaoVegetable=====err := %v", failedList)
|
|
||||||
return failedList, nil
|
return failedList, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -466,8 +445,6 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v
|
|||||||
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("DeleteStoreSkus=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("DeleteStoreSkus=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
//param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
//param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
|
||||||
// StoreId: utils.String2Pointer(vendorStoreID),
|
// StoreId: utils.String2Pointer(vendorStoreID),
|
||||||
@@ -520,8 +497,6 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
|||||||
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusStatus=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusStatus=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -554,8 +529,6 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
|
|||||||
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusPrice=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusPrice=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -625,8 +598,6 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
|
|||||||
param.BatchStockPublishDto = nil
|
param.BatchStockPublishDto = nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", err)
|
|
||||||
globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", failedList)
|
|
||||||
return failedList, err
|
return failedList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -505,7 +505,6 @@ func CreateFreightTemplate(storeCode, deliveryFeeDeductionSill int) (int64, erro
|
|||||||
//param.Columns = nil
|
//param.Columns = nil
|
||||||
param.Template.TemplateName += "固定运费模板"
|
param.Template.TemplateName += "固定运费模板"
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("创建运费模板")
|
|
||||||
if resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param); err != nil {
|
if resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param); err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -226,8 +226,6 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
} else if localThing[0].SyncStatus == model.ThingTypeSyncSuccess {
|
} else if localThing[0].SyncStatus == model.ThingTypeSyncSuccess {
|
||||||
// 主商品存在,直接同步子商品
|
// 主商品存在,直接同步子商品
|
||||||
childrenProductId, err := api.CreateSubProduct(utils.Str2Int64(localThing[0].VendorThingID), utils.Str2Int64(vendorStoreID))
|
childrenProductId, err := api.CreateSubProduct(utils.Str2Int64(localThing[0].VendorThingID), utils.Str2Int64(vendorStoreID))
|
||||||
globals.SugarLogger.Debugf("==========:%s", localThing[0].VendorThingID)
|
|
||||||
globals.SugarLogger.Debugf("==========:%v", err)
|
|
||||||
if err != nil && strings.Contains(err.Error(), "2010004") { // 2010004:主商品非在线审核通过状态,不允许绑定子商品
|
if err != nil && strings.Contains(err.Error(), "2010004") { // 2010004:主商品非在线审核通过状态,不允许绑定子商品
|
||||||
// 线上本地都存在,但是线上审核不成功,就去更新主商品
|
// 线上本地都存在,但是线上审核不成功,就去更新主商品
|
||||||
mainOrderDetail = loadMainProductId(api, storeSku, localThing[0].VendorThingID)
|
mainOrderDetail = loadMainProductId(api, storeSku, localThing[0].VendorThingID)
|
||||||
|
|||||||
@@ -295,7 +295,6 @@ func SpecialTreat(vendorOrgCode string, vendorStoreID, storeID, deliveryFeeDeduc
|
|||||||
}
|
}
|
||||||
//3.设置门店起送价 默认为0
|
//3.设置门店起送价 默认为0
|
||||||
if bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID); err != nil {
|
if bindSaleLimitID, err := GetStoreSaleLimit(vendorOrgCode, vendorStoreID); err != nil {
|
||||||
//errList.AddErr(fmt.Errorf("获取门店限售模板失败:%v", err))
|
|
||||||
globals.SugarLogger.Debugf("获取门店限售模板失败:%v", err)
|
globals.SugarLogger.Debugf("获取门店限售模板失败:%v", err)
|
||||||
} else {
|
} else {
|
||||||
if bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //创建
|
if bindSaleLimitID == 0 || utils.IsNil(bindSaleLimitID) { //创建
|
||||||
|
|||||||
@@ -636,7 +636,7 @@ func (c *OrderController) AdjustOrder() {
|
|||||||
func (c *OrderController) CancelOrder() {
|
func (c *OrderController) CancelOrder() {
|
||||||
c.callCancelOrder(func(params *tOrderCancelOrderParams) (retVal interface{}, errCode string, err error) {
|
c.callCancelOrder(func(params *tOrderCancelOrderParams) (retVal interface{}, errCode string, err error) {
|
||||||
order, err := partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
order, err := partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
||||||
if order.Status >= model.OrderStatusEndBegin {
|
if order.Status >= model.OrderStatusFinished && order.VendorID != model.VendorIDTaoVegetable {
|
||||||
return nil, "", fmt.Errorf("订单处于完成状态,不支持取消操作!请走售后流程")
|
return nil, "", fmt.Errorf("订单处于完成状态,不支持取消操作!请走售后流程")
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
|||||||
@@ -29,17 +29,14 @@ func (c *TaoBaoVegetableController) GetCode() {
|
|||||||
if c.Ctx.Input.Method() == http.MethodPost {
|
if c.Ctx.Input.Method() == http.MethodPost {
|
||||||
body, err := ioutil.ReadAll(c.Ctx.Request.Body)
|
body, err := ioutil.ReadAll(c.Ctx.Request.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("商户收取code获取:%s,%s", string(body), err.Error())
|
|
||||||
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("商户收取code获取:%s", string(body))
|
|
||||||
codeData = string(body)
|
codeData = string(body)
|
||||||
} else {
|
} else {
|
||||||
codeData = c.Ctx.Input.Query("code")
|
codeData = c.Ctx.Input.Query("code")
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("code:%s", utils.Format4Output(codeData, false))
|
|
||||||
tokenInfo, err := api.TaoVegetableApi.GetStoreToken(codeData, "")
|
tokenInfo, err := api.TaoVegetableApi.GetStoreToken(codeData, "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("获取门店token错误:%s", err.Error())
|
globals.SugarLogger.Debugf("获取门店token错误:%s", err.Error())
|
||||||
@@ -47,7 +44,6 @@ func (c *TaoBaoVegetableController) GetCode() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("token:%s", utils.Format4Output(tokenInfo, false))
|
|
||||||
|
|
||||||
// 创建或者更新账号token
|
// 创建或者更新账号token
|
||||||
param := &model.VendorOrgCode{
|
param := &model.VendorOrgCode{
|
||||||
@@ -137,7 +133,6 @@ func (c *TaoBaoVegetableController) ApplyCancelOrder() {
|
|||||||
globals.SugarLogger.Debugf("ApplyCancelOrder := %s", utils.Format4Output(afsOrder, false))
|
globals.SugarLogger.Debugf("ApplyCancelOrder := %s", utils.Format4Output(afsOrder, false))
|
||||||
globals.SugarLogger.Debugf("ApplyCancelOrder err := %s", utils.Format4Output(err, false))
|
globals.SugarLogger.Debugf("ApplyCancelOrder err := %s", utils.Format4Output(err, false))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("用户发起售后:%s", err.Error())
|
|
||||||
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
@@ -183,7 +178,6 @@ func (c *TaoBaoVegetableController) UserCancelRefund() {
|
|||||||
globals.SugarLogger.Debugf("UserCancelRefund := %s", utils.Format4Output(afsOrder, false))
|
globals.SugarLogger.Debugf("UserCancelRefund := %s", utils.Format4Output(afsOrder, false))
|
||||||
globals.SugarLogger.Debugf("UserCancelRefund err := %s", utils.Format4Output(err, false))
|
globals.SugarLogger.Debugf("UserCancelRefund err := %s", utils.Format4Output(err, false))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("用户取消售后:%s", err.Error())
|
|
||||||
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
@@ -229,7 +223,6 @@ func (c *TaoBaoVegetableController) CancelOnSaleRefundOrder() {
|
|||||||
globals.SugarLogger.Debugf("CancelOnSaleRefundOrder := %s", utils.Format4Output(afsOrder, false))
|
globals.SugarLogger.Debugf("CancelOnSaleRefundOrder := %s", utils.Format4Output(afsOrder, false))
|
||||||
globals.SugarLogger.Debugf("CancelOnSaleRefundOrder err := %s", utils.Format4Output(err, false))
|
globals.SugarLogger.Debugf("CancelOnSaleRefundOrder err := %s", utils.Format4Output(err, false))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("用户售中取消:%s", err.Error())
|
|
||||||
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
@@ -274,7 +267,6 @@ func (c *TaoBaoVegetableController) RefundOrderSuccess() {
|
|||||||
globals.SugarLogger.Debugf("RefundOrderSuccess := %s", utils.Format4Output(refundSuccess, false))
|
globals.SugarLogger.Debugf("RefundOrderSuccess := %s", utils.Format4Output(refundSuccess, false))
|
||||||
globals.SugarLogger.Debugf("RefundOrderSuccess err := %s", utils.Format4Output(err, false))
|
globals.SugarLogger.Debugf("RefundOrderSuccess err := %s", utils.Format4Output(err, false))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("用户售后成功消息通知:%s", err.Error())
|
|
||||||
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
c.Data["json"] = tao_vegetable.CallBackResultInfo(err)
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
|
|||||||
Reference in New Issue
Block a user