美团商超
This commit is contained in:
@@ -139,7 +139,7 @@ func (c *OrderManager) OnOrderAdjust(order *model.GoodsOrder, orderStatus *model
|
|||||||
order.AdjustCount = adjustCount + 1
|
order.AdjustCount = adjustCount + 1
|
||||||
//扣点的订单需要修改订单的totalshopmoney
|
//扣点的订单需要修改订单的totalshopmoney
|
||||||
if err == nil && order.OrderPayPercentage < 100 {
|
if err == nil && order.OrderPayPercentage < 100 {
|
||||||
order2, _ := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).GetOrder(order.VendorOrgCode, order.VendorOrderID)
|
order2, _ := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID)
|
||||||
order.TotalShopMoney = order2.TotalShopMoney
|
order.TotalShopMoney = order2.TotalShopMoney
|
||||||
}
|
}
|
||||||
isDuplicated, err = c.SaveOrder(order, true, db)
|
isDuplicated, err = c.SaveOrder(order, true, db)
|
||||||
@@ -160,9 +160,9 @@ func (c *OrderManager) OnOrderAdjust(order *model.GoodsOrder, orderStatus *model
|
|||||||
func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *model.OrderStatus) (err error) {
|
func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *model.OrderStatus) (err error) {
|
||||||
// 有些平台(比如美团外卖),在新订单事件没有成功返回,但在重发订单消息前,订单状态转换,则不会再重发新订单事件,特殊处理一下
|
// 有些平台(比如美团外卖),在新订单事件没有成功返回,但在重发订单消息前,订单状态转换,则不会再重发新订单事件,特殊处理一下
|
||||||
if orderStatus.Status == model.OrderStatusAccepted {
|
if orderStatus.Status == model.OrderStatusAccepted {
|
||||||
if _, err2 := c.LoadOrder(orderStatus.VendorOrderID, orderStatus.VendorID); err2 == ErrCanNotFindOrder {
|
if ordermt, err2 := c.LoadOrder(orderStatus.VendorOrderID, orderStatus.VendorID); err2 == ErrCanNotFindOrder {
|
||||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(orderStatus.VendorID); handler != nil {
|
if handler := partner.GetPurchaseOrderHandlerFromVendorID(orderStatus.VendorID); handler != nil {
|
||||||
if order, err2 := handler.GetOrder(vendorOrgCode, orderStatus.VendorOrderID); err2 == nil {
|
if order, err2 := handler.GetOrder(vendorOrgCode, orderStatus.VendorOrderID, ordermt.VendorStoreID); err2 == nil {
|
||||||
c.OnOrderNew(order, orderStatus)
|
c.OnOrderNew(order, orderStatus)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
|
|||||||
if order, _ := c.LoadOrder(afsOrder.VendorOrderID, afsOrder.VendorID); order != nil {
|
if order, _ := c.LoadOrder(afsOrder.VendorOrderID, afsOrder.VendorID); order != nil {
|
||||||
if order.ConsigneeMobile2 == "" {
|
if order.ConsigneeMobile2 == "" {
|
||||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID); handler != nil {
|
if handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID); handler != nil {
|
||||||
if order2, _ := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID); order2 != nil && order.ConsigneeMobile != order2.ConsigneeMobile {
|
if order2, _ := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID); order2 != nil && order.ConsigneeMobile != order2.ConsigneeMobile {
|
||||||
order.ConsigneeMobile = order2.ConsigneeMobile
|
order.ConsigneeMobile = order2.ConsigneeMobile
|
||||||
c.UpdateOrderFields(order, []string{"ConsigneeMobile"})
|
c.UpdateOrderFields(order, []string{"ConsigneeMobile"})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ func (c *OrderManager) OnOrderComments(orderCommentList []*model.OrderComment) (
|
|||||||
orderComment.ConsigneeMobile = order.ConsigneeMobile2
|
orderComment.ConsigneeMobile = order.ConsigneeMobile2
|
||||||
} else {
|
} else {
|
||||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID); handler != nil {
|
if handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID); handler != nil {
|
||||||
if order2, _ := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID); order2 != nil && order.ConsigneeMobile != order2.ConsigneeMobile {
|
if order2, _ := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID); order2 != nil && order.ConsigneeMobile != order2.ConsigneeMobile {
|
||||||
order.ConsigneeMobile = order2.ConsigneeMobile
|
order.ConsigneeMobile = order2.ConsigneeMobile
|
||||||
partner.CurOrderManager.UpdateOrderFields(order, []string{"ConsigneeMobile"})
|
partner.CurOrderManager.UpdateOrderFields(order, []string{"ConsigneeMobile"})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ func (c *OrderManager) GetOrderInfo(ctx *jxcontext.Context, vendorOrderID string
|
|||||||
if err == nil && num > 0 {
|
if err == nil && num > 0 {
|
||||||
order = orders[0]
|
order = orders[0]
|
||||||
if isRefresh && vendorID == model.VendorIDJD {
|
if isRefresh && vendorID == model.VendorIDJD {
|
||||||
tmpOrder, err2 := partner.GetPurchaseOrderHandlerFromVendorID(vendorID).GetOrder(order.VendorOrgCode, vendorOrderID)
|
tmpOrder, err2 := partner.GetPurchaseOrderHandlerFromVendorID(vendorID).GetOrder(order.VendorOrgCode, vendorOrderID, order.VendorStoreID)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
order.CurrentConsigneeMobile = tmpOrder.ConsigneeMobile
|
order.CurrentConsigneeMobile = tmpOrder.ConsigneeMobile
|
||||||
} else {
|
} else {
|
||||||
@@ -1114,6 +1114,7 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
|||||||
VendorOrderID string
|
VendorOrderID string
|
||||||
VendorID int
|
VendorID int
|
||||||
VendorOrgCode string
|
VendorOrgCode string
|
||||||
|
VendorStoreID string
|
||||||
}
|
}
|
||||||
if len(dateVendorList) > 0 {
|
if len(dateVendorList) > 0 {
|
||||||
var missingOrderList []*tOrderVendorPair
|
var missingOrderList []*tOrderVendorPair
|
||||||
@@ -1141,11 +1142,17 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
|||||||
if err = err2; err == nil && len(orderIDs) > 0 {
|
if err = err2; err == nil && len(orderIDs) > 0 {
|
||||||
var orderList []*tOrderVendorPair
|
var orderList []*tOrderVendorPair
|
||||||
for _, v := range orderIDs {
|
for _, v := range orderIDs {
|
||||||
|
var vendorStoreID string
|
||||||
|
if orders, _ := dao.QueryOrders(db, v, 0, nil, 0, utils.ZeroTimeValue, utils.ZeroTimeValue); len(orders) > 0 {
|
||||||
|
vendorStoreID = orders[0].VendorStoreID
|
||||||
|
}
|
||||||
orderList = append(orderList, &tOrderVendorPair{
|
orderList = append(orderList, &tOrderVendorPair{
|
||||||
VendorOrderID: v,
|
VendorOrderID: v,
|
||||||
VendorID: vendorDate.VendorID,
|
VendorID: vendorDate.VendorID,
|
||||||
VendorOrgCode: vendorDate.VendorOrgCode,
|
VendorOrgCode: vendorDate.VendorOrgCode,
|
||||||
|
VendorStoreID: vendorStoreID,
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
retVal = orderList
|
retVal = orderList
|
||||||
}
|
}
|
||||||
@@ -1190,7 +1197,7 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
|||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
pair := batchItemList[0].(*tOrderVendorPair)
|
pair := batchItemList[0].(*tOrderVendorPair)
|
||||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(pair.VendorID); handler != nil {
|
if handler := partner.GetPurchaseOrderHandlerFromVendorID(pair.VendorID); handler != nil {
|
||||||
order, err2 := handler.GetOrder(pair.VendorOrgCode, pair.VendorOrderID)
|
order, err2 := handler.GetOrder(pair.VendorOrgCode, pair.VendorOrderID, pair.VendorStoreID)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
isDuplicated, err2 := c.SaveOrder(order, false, dao.GetDB())
|
isDuplicated, err2 := c.SaveOrder(order, false, dao.GetDB())
|
||||||
if err2 == nil && !isDuplicated {
|
if err2 == nil && !isDuplicated {
|
||||||
@@ -1210,7 +1217,7 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
|||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
goodsOrder := batchItemList[0].(*model.GoodsOrder)
|
goodsOrder := batchItemList[0].(*model.GoodsOrder)
|
||||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(goodsOrder.VendorID); handler != nil {
|
if handler := partner.GetPurchaseOrderHandlerFromVendorID(goodsOrder.VendorID); handler != nil {
|
||||||
order, err2 := handler.GetOrder(goodsOrder.VendorOrgCode, goodsOrder.VendorOrderID)
|
order, err2 := handler.GetOrder(goodsOrder.VendorOrgCode, goodsOrder.VendorOrderID, goodsOrder.VendorStoreID)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
if model.IsOrderFinalStatus(order.Status) {
|
if model.IsOrderFinalStatus(order.Status) {
|
||||||
goodsOrder.Status = order.Status
|
goodsOrder.Status = order.Status
|
||||||
@@ -1264,7 +1271,7 @@ func (c *OrderManager) RefreshOrderFinancial(ctx *jxcontext.Context, fromTime, t
|
|||||||
order := batchItemList[0].(*model.GoodsOrder)
|
order := batchItemList[0].(*model.GoodsOrder)
|
||||||
handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID)
|
handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID)
|
||||||
if handler != nil {
|
if handler != nil {
|
||||||
remoteOrder, err2 := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID)
|
remoteOrder, err2 := handler.GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
order.TotalShopMoney = remoteOrder.TotalShopMoney
|
order.TotalShopMoney = remoteOrder.TotalShopMoney
|
||||||
order.PmSubsidyMoney = remoteOrder.PmSubsidyMoney
|
order.PmSubsidyMoney = remoteOrder.PmSubsidyMoney
|
||||||
|
|||||||
@@ -250,7 +250,7 @@ func init() {
|
|||||||
partner.CurOrderManager.OnOrderMsg(order, "自动接单失败", err.Error())
|
partner.CurOrderManager.OnOrderMsg(order, "自动接单失败", err.Error())
|
||||||
// 为了解决京东新消息与接单消息乱序的问题
|
// 为了解决京东新消息与接单消息乱序的问题
|
||||||
if errWithCode, ok := err.(*utils.ErrorWithCode); ok && errWithCode.Level() == 1 && errWithCode.IntCode() == -1 {
|
if errWithCode, ok := err.(*utils.ErrorWithCode); ok && errWithCode.Level() == 1 && errWithCode.IntCode() == -1 {
|
||||||
if order2, err2 := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).GetOrder(order.VendorOrgCode, order.VendorOrderID); err2 == nil {
|
if order2, err2 := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID); err2 == nil {
|
||||||
if order2.Status > order.Status {
|
if order2.Status > order.Status {
|
||||||
order.Status = order2.Status
|
order.Status = order2.Status
|
||||||
jxutils.CallMsgHandlerAsync(func() {
|
jxutils.CallMsgHandlerAsync(func() {
|
||||||
|
|||||||
@@ -1004,7 +1004,7 @@ func CreateConsumerFromOrders(ctx *jxcontext.Context, vendorIDs []int, fromDate,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if order2 == nil && order.VendorID == model.VendorIDMTWM && time.Now().Sub(curDate) < 60*24*time.Hour {
|
if order2 == nil && order.VendorID == model.VendorIDMTWM && time.Now().Sub(curDate) < 60*24*time.Hour {
|
||||||
order2, err = handler.GetOrder(order.VendorOrgCode, order.VendorOrderID)
|
order2, err = handler.GetOrder(order.VendorOrgCode, order.VendorOrderID, order.VendorStoreID)
|
||||||
}
|
}
|
||||||
if order2 != nil {
|
if order2 != nil {
|
||||||
if order2.VendorUserID != "" && order.VendorUserID != order2.VendorUserID {
|
if order2.VendorUserID != "" && order.VendorUserID != order2.VendorUserID {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ type OrderPhoneNumberInfo struct {
|
|||||||
|
|
||||||
type IPurchasePlatformOrderHandler interface {
|
type IPurchasePlatformOrderHandler interface {
|
||||||
Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder)
|
Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder)
|
||||||
GetOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, err error)
|
GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error)
|
||||||
GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error)
|
GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error)
|
||||||
GetStatusActionTimeout(order *model.GoodsOrder, statusType, status int) (params *StatusActionParams)
|
GetStatusActionTimeout(order *model.GoodsOrder, statusType, status int) (params *StatusActionParams)
|
||||||
|
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ func (p *PurchaseHandler) getStatusFromVendorStatus(vendorStatus string) int {
|
|||||||
return model.OrderStatusUnknown
|
return model.OrderStatusUnknown
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, err error) {
|
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
order, _, err = p.getOrder(vendorOrderID)
|
order, _, err = p.getOrder(vendorOrderID)
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
@@ -475,7 +475,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaiapi.
|
|||||||
if status.Status == model.OrderStatusDelivering || status.Status == model.OrderStatusFinished {
|
if status.Status == model.OrderStatusDelivering || status.Status == model.OrderStatusFinished {
|
||||||
if order, err2 := partner.CurOrderManager.LoadOrder(status.VendorOrderID, status.VendorID); err2 == nil {
|
if order, err2 := partner.CurOrderManager.LoadOrder(status.VendorOrderID, status.VendorID); err2 == nil {
|
||||||
if order.TotalShopMoney == 0 {
|
if order.TotalShopMoney == 0 {
|
||||||
if order2, err2 := c.GetOrder(msg.Source, status.VendorOrderID); err2 == nil {
|
if order2, err2 := c.GetOrder(msg.Source, status.VendorOrderID, ""); err2 == nil {
|
||||||
order.TotalShopMoney = order2.TotalShopMoney
|
order.TotalShopMoney = order2.TotalShopMoney
|
||||||
order.PmSubsidyMoney = order2.PmSubsidyMoney
|
order.PmSubsidyMoney = order2.PmSubsidyMoney
|
||||||
partner.CurOrderManager.UpdateOrderFields(order, []string{"TotalShopMoney", "PmSubsidyMoney"})
|
partner.CurOrderManager.UpdateOrderFields(order, []string{"TotalShopMoney", "PmSubsidyMoney"})
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ var (
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
BusinessFormID: 1672214913,
|
BusinessFormID: 1672214913,
|
||||||
BrandName: "京西到家",
|
BrandName: "京西到家便利店",
|
||||||
},
|
},
|
||||||
EbaiSupplierIDhc: &tEbaiSupplierInfo{
|
EbaiSupplierIDhc: &tEbaiSupplierInfo{
|
||||||
SupplierID: EbaiSupplierIDhc,
|
SupplierID: EbaiSupplierIDhc,
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ func (c *PurchaseHandler) getOrder(a *jdapi.API, orderID string) (order *model.G
|
|||||||
return order, orderMap, err
|
return order, orderMap, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *PurchaseHandler) GetOrder(vendorOrgCode, orderID string) (order *model.GoodsOrder, err error) {
|
func (c *PurchaseHandler) GetOrder(vendorOrgCode, orderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
order, _, err = c.getOrder(getAPI(vendorOrgCode), orderID)
|
order, _, err = c.getOrder(getAPI(vendorOrgCode), orderID)
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
@@ -469,7 +469,7 @@ func (c *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName s
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
if errWithCode, ok := err.(*utils.ErrorWithCode); ok && errWithCode.Level() == 1 {
|
if errWithCode, ok := err.(*utils.ErrorWithCode); ok && errWithCode.Level() == 1 {
|
||||||
globals.SugarLogger.Infof("Swtich2SelfDeliver failed with error:%v try get current status", err)
|
globals.SugarLogger.Infof("Swtich2SelfDeliver failed with error:%v try get current status", err)
|
||||||
if order2, err2 := c.GetOrder(order.VendorOrgCode, order.VendorOrderID); err2 == nil {
|
if order2, err2 := c.GetOrder(order.VendorOrgCode, order.VendorOrderID, ""); err2 == nil {
|
||||||
var mapData map[string]interface{}
|
var mapData map[string]interface{}
|
||||||
if err2 = utils.UnmarshalUseNumber([]byte(order2.OriginalData), &mapData); err2 == nil {
|
if err2 = utils.UnmarshalUseNumber([]byte(order2.OriginalData), &mapData); err2 == nil {
|
||||||
if utils.Interface2String(mapData["deliveryCarrierNo"]) == "2938" { // 当前已经是自送状态了
|
if utils.Interface2String(mapData["deliveryCarrierNo"]) == "2938" { // 当前已经是自送状态了
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
|||||||
}
|
}
|
||||||
return order
|
return order
|
||||||
}
|
}
|
||||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, err error) {
|
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
resultOrders, err := api.JdShopAPI.AllOrders(&jdshopapi.AllOrdersParam{
|
resultOrders, err := api.JdShopAPI.AllOrders(&jdshopapi.AllOrdersParam{
|
||||||
OrderID: vendorOrderID,
|
OrderID: vendorOrderID,
|
||||||
Current: 1,
|
Current: 1,
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ func (c *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
|||||||
return order
|
return order
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *PurchaseHandler) GetOrder(vendorOrgCode, orderID string) (order *model.GoodsOrder, err error) {
|
func (c *PurchaseHandler) GetOrder(vendorOrgCode, orderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
order, err = partner.CurOrderManager.LoadOrder(orderID, model.VendorIDJX)
|
order, err = partner.CurOrderManager.LoadOrder(orderID, model.VendorIDJX)
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,3 +36,7 @@ func OnCallbackMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse
|
|||||||
func GetOrderIDFromMsg(msg *mtwmapi.CallbackMsg) string {
|
func GetOrderIDFromMsg(msg *mtwmapi.CallbackMsg) string {
|
||||||
return msg.FormData.Get(mtwmapi.KeyOrderID)
|
return msg.FormData.Get(mtwmapi.KeyOrderID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetVendorStoreIDFromMsg(msg *mtwmapi.CallbackMsg) string {
|
||||||
|
return msg.FormData.Get(mtwmapi.KeyAppPoiCode)
|
||||||
|
}
|
||||||
|
|||||||
@@ -5,6 +5,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
@@ -224,7 +226,24 @@ func (p *PurchaseHandler) getUploadImgPoiCode() (poiCode string) {
|
|||||||
return poiCode
|
return poiCode
|
||||||
}
|
}
|
||||||
|
|
||||||
func getAPI(appOrgCode string) (apiObj *mtwmapi.API) {
|
func getAPI(appOrgCode string, storeID int, vendorStoreID string) (apiObj *mtwmapi.API) {
|
||||||
|
if appOrgCode == "" {
|
||||||
|
globals.SugarLogger.Warnf("getAPI appOrgCode is empty")
|
||||||
|
}
|
||||||
|
apiObj = partner.CurAPIManager.GetAPI(model.VendorIDMTWM, appOrgCode).(*mtwmapi.API)
|
||||||
|
if appOrgCode == globals.Mtwm2Code {
|
||||||
|
var storeDetail *dao.StoreDetail
|
||||||
|
if storeID != 0 {
|
||||||
|
storeDetail, _ = dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDEBAI, appOrgCode)
|
||||||
|
} else if vendorStoreID != "" {
|
||||||
|
storeDetail, _ = dao.GetStoreDetailByVendorStoreID(dao.GetDB(), vendorStoreID, model.VendorIDEBAI, appOrgCode)
|
||||||
|
}
|
||||||
|
apiObj.SetToken(storeDetail.MtwmToken)
|
||||||
|
}
|
||||||
|
return apiObj
|
||||||
|
}
|
||||||
|
|
||||||
|
func getAPIWithoutToken(appOrgCode string) (apiObj *mtwmapi.API) {
|
||||||
if appOrgCode == "" {
|
if appOrgCode == "" {
|
||||||
globals.SugarLogger.Warnf("getAPI appOrgCode is empty")
|
globals.SugarLogger.Warnf("getAPI appOrgCode is empty")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -84,8 +84,8 @@ func (p *PurchaseHandler) getStatusFromVendorStatus(vendorStatus string) int {
|
|||||||
return model.OrderStatusUnknown
|
return model.OrderStatusUnknown
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, orderMap map[string]interface{}, err error) {
|
func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, orderMap map[string]interface{}, err error) {
|
||||||
result, err := getAPI(vendorOrgCode).OrderGetOrderDetail(utils.Str2Int64(vendorOrderID), true)
|
result, err := getAPI(vendorOrgCode, 0, vendorStoreID).OrderGetOrderDetail(utils.Str2Int64(vendorOrderID), true)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
result[keyVendorOrgCode] = vendorOrgCode
|
result[keyVendorOrgCode] = vendorOrgCode
|
||||||
order = p.Map2Order(result)
|
order = p.Map2Order(result)
|
||||||
@@ -93,13 +93,15 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID string) (order *
|
|||||||
return order, result, err
|
return order, result, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, err error) {
|
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
order, _, err = p.getOrder(vendorOrgCode, vendorOrderID)
|
order, _, err = p.getOrder(vendorOrgCode, vendorOrderID, vendorStoreID)
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error) {
|
func (p *PurchaseHandler) GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error) {
|
||||||
status, err = getAPI(vendorOrgCode).OrderViewStatus(utils.Str2Int64(vendorOrderID))
|
if order, _ := partner.CurOrderManager.LoadOrder(vendorOrderID, model.VendorIDMTWM); order != nil {
|
||||||
|
status, err = getAPI(vendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderViewStatus(utils.Str2Int64(vendorOrderID))
|
||||||
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
status = p.getStatusFromVendorStatus(utils.Int2Str(status))
|
status = p.getStatusFromVendorStatus(utils.Int2Str(status))
|
||||||
}
|
}
|
||||||
@@ -284,9 +286,9 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
|||||||
|
|
||||||
func getRefundSkuDetailList(msg *mtwmapi.CallbackMsg, order *model.GoodsOrder) (skuList []*mtwmapi.RefundSkuDetail, err error) {
|
func getRefundSkuDetailList(msg *mtwmapi.CallbackMsg, order *model.GoodsOrder) (skuList []*mtwmapi.RefundSkuDetail, err error) {
|
||||||
if false {
|
if false {
|
||||||
skuList = getAPI(order.VendorOrgCode).GetRefundSkuDetailFromMsg(msg)
|
skuList = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").GetRefundSkuDetailFromMsg(msg)
|
||||||
} else {
|
} else {
|
||||||
refundOrderDetailList, err2 := getAPI(order.VendorOrgCode).GetOrderRefundDetail(utils.Str2Int64(GetOrderIDFromMsg(msg)), mtwmapi.RefundTypePart)
|
refundOrderDetailList, err2 := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").GetOrderRefundDetail(utils.Str2Int64(GetOrderIDFromMsg(msg)), mtwmapi.RefundTypePart)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
for _, v := range refundOrderDetailList {
|
for _, v := range refundOrderDetailList {
|
||||||
skuList = append(skuList, v.WmAppRetailForOrderPartRefundList...)
|
skuList = append(skuList, v.WmAppRetailForOrderPartRefundList...)
|
||||||
@@ -321,7 +323,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
if msg.Cmd == mtwmapi.MsgTypeNewOrder {
|
if msg.Cmd == mtwmapi.MsgTypeNewOrder {
|
||||||
order, orderMap, err2 := c.getOrder(msg.AppID, GetOrderIDFromMsg(msg))
|
order, orderMap, err2 := c.getOrder(msg.AppID, GetOrderIDFromMsg(msg), GetVendorStoreIDFromMsg(msg))
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
err = partner.CurOrderManager.OnOrderNew(order, c.callbackMsg2Status(msg))
|
err = partner.CurOrderManager.OnOrderNew(order, c.callbackMsg2Status(msg))
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -337,7 +339,8 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
|
|||||||
} else {
|
} else {
|
||||||
if status != nil {
|
if status != nil {
|
||||||
var order *model.GoodsOrder
|
var order *model.GoodsOrder
|
||||||
if order, err = c.GetOrder(msg.AppID, GetOrderIDFromMsg(msg)); err == nil {
|
if order, err = partner.CurOrderManager.LoadOrder(GetOrderIDFromMsg(msg), model.VendorIDEBAI); err == nil {
|
||||||
|
// if order, err = c.GetOrder(msg.AppID, GetOrderIDFromMsg(msg)); err == nil {
|
||||||
if status.Status == model.OrderStatusAdjust {
|
if status.Status == model.OrderStatusAdjust {
|
||||||
skuList, err2 := getRefundSkuDetailList(msg, order)
|
skuList, err2 := getRefundSkuDetailList(msg, order)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
@@ -358,14 +361,14 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
|
|||||||
// 美团订单即使时在配送状态时,如果之前没有调用过拣货完成,也会对门店指标生成影响,这里强制再调用拣货完成,且忽略错误
|
// 美团订单即使时在配送状态时,如果之前没有调用过拣货完成,也会对门店指标生成影响,这里强制再调用拣货完成,且忽略错误
|
||||||
utils.CallFuncAsync(func() {
|
utils.CallFuncAsync(func() {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(order.VendorOrgCode).PreparationMealComplete(utils.Str2Int64(status.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").PreparationMealComplete(utils.Str2Int64(status.VendorOrderID))
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
err = partner.CurOrderManager.OnOrderStatusChanged(msg.AppID, status)
|
err = partner.CurOrderManager.OnOrderStatusChanged(msg.AppID, status)
|
||||||
if err == nil && msg.Cmd == mtwmapi.MsgTypeOrderFinished {
|
if err == nil && msg.Cmd == mtwmapi.MsgTypeOrderFinished {
|
||||||
utils.CallFuncAsync(func() {
|
utils.CallFuncAsync(func() {
|
||||||
orderMap, err := getAPI(order.VendorOrgCode).OrderGetOrderDetail(utils.Str2Int64(GetOrderIDFromMsg(msg)), true)
|
orderMap, err := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderGetOrderDetail(utils.Str2Int64(GetOrderIDFromMsg(msg)), true)
|
||||||
if err == nil && utils.MustInterface2Int64(orderMap["is_third_shipping"]) == SelfDeliveryCarrierNo {
|
if err == nil && utils.MustInterface2Int64(orderMap["is_third_shipping"]) == SelfDeliveryCarrierNo {
|
||||||
c.OnOrderDetail(orderMap, partner.UpdatedPeration)
|
c.OnOrderDetail(orderMap, partner.UpdatedPeration)
|
||||||
}
|
}
|
||||||
@@ -402,7 +405,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msg *mtwmapi.CallbackMsg) (orderSta
|
|||||||
if notifyType == mtwmapi.NotifyTypePartyApply {
|
if notifyType == mtwmapi.NotifyTypePartyApply {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if order, _ := partner.CurOrderManager.LoadOrder(orderID, model.VendorIDMTWM); order != nil {
|
if order, _ := partner.CurOrderManager.LoadOrder(orderID, model.VendorIDMTWM); order != nil {
|
||||||
getAPI(order.VendorOrgCode).OrderRefundAgree(utils.Str2Int64(orderID), "自动确认退款")
|
getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderRefundAgree(utils.Str2Int64(orderID), "自动确认退款")
|
||||||
}
|
}
|
||||||
// goods, err := dao.GetSimpleOrder(dao.GetDB(), orderID)
|
// goods, err := dao.GetSimpleOrder(dao.GetDB(), orderID)
|
||||||
// if err == nil {
|
// if err == nil {
|
||||||
@@ -466,7 +469,7 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI
|
|||||||
if isAcceptIt {
|
if isAcceptIt {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
// err = api.MtwmAPI.OrderReceived(utils.Str2Int64(order.VendorOrderID))
|
// err = api.MtwmAPI.OrderReceived(utils.Str2Int64(order.VendorOrderID))
|
||||||
err = getAPI(order.VendorOrgCode).OrderConfirm(utils.Str2Int64(order.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderConfirm(utils.Str2Int64(order.VendorOrderID))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if utils.IsErrMatch(err, utils.Int2Str(mtwmapi.ErrCodeOpFailed), []string{
|
if utils.IsErrMatch(err, utils.Int2Str(mtwmapi.ErrCodeOpFailed), []string{
|
||||||
"订单已经确认过了",
|
"订单已经确认过了",
|
||||||
@@ -493,7 +496,7 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo
|
|||||||
if !isSelfDelivery {
|
if !isSelfDelivery {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
// err = api.MtwmAPI.OrderConfirm(utils.Str2Int64(order.VendorOrderID))
|
// err = api.MtwmAPI.OrderConfirm(utils.Str2Int64(order.VendorOrderID))
|
||||||
err = getAPI(order.VendorOrgCode).PreparationMealComplete(utils.Str2Int64(order.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").PreparationMealComplete(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -522,7 +525,7 @@ func (c *PurchaseHandler) CanSwitch2SelfDeliver(order *model.GoodsOrder) (isCan
|
|||||||
func (c *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
func (c *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
||||||
globals.SugarLogger.Debugf("mtwm Swtich2SelfDeliver orderID:%s", order.VendorOrderID)
|
globals.SugarLogger.Debugf("mtwm Swtich2SelfDeliver orderID:%s", order.VendorOrderID)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(order.VendorOrgCode).OrderLogisticsChange2Self(utils.Str2Int64(order.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderLogisticsChange2Self(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -540,7 +543,7 @@ func (c *PurchaseHandler) Swtich2SelfDelivered(order *model.GoodsOrder, userName
|
|||||||
func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userName string) (err error) {
|
func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userName string) (err error) {
|
||||||
globals.SugarLogger.Debugf("mtwm SelfDeliverDelivering orderID:%s", order.VendorOrderID)
|
globals.SugarLogger.Debugf("mtwm SelfDeliverDelivering orderID:%s", order.VendorOrderID)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(order.VendorOrgCode).OrderDelivering(utils.Str2Int64(order.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderDelivering(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -548,7 +551,7 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam
|
|||||||
func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName string) (err error) {
|
func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName string) (err error) {
|
||||||
globals.SugarLogger.Debugf("mtwm SelfDeliverDelivered orderID:%s", order.VendorOrderID)
|
globals.SugarLogger.Debugf("mtwm SelfDeliverDelivered orderID:%s", order.VendorOrderID)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(order.VendorOrgCode).OrderArrived(utils.Str2Int64(order.VendorOrderID))
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderArrived(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -568,9 +571,9 @@ func (c *PurchaseHandler) GetOrderRealMobile(ctx *jxcontext.Context, order *mode
|
|||||||
func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAgree bool, reason string) (err error) {
|
func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAgree bool, reason string) (err error) {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if isAgree {
|
if isAgree {
|
||||||
err = getAPI(order.VendorOrgCode).OrderRefundAgree(utils.Str2Int64(order.VendorOrderID), reason)
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderRefundAgree(utils.Str2Int64(order.VendorOrderID), reason)
|
||||||
} else {
|
} else {
|
||||||
err = getAPI(order.VendorOrgCode).OrderRefundReject(utils.Str2Int64(order.VendorOrderID), reason)
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderRefundReject(utils.Str2Int64(order.VendorOrderID), reason)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
@@ -578,7 +581,7 @@ func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *mod
|
|||||||
|
|
||||||
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) {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if err = getAPI(order.VendorOrgCode).OrderCancel(utils.Str2Int64(order.VendorOrderID), reason, mtwmapi.CancelReasonOther); err == nil {
|
if err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderCancel(utils.Str2Int64(order.VendorOrderID), reason, mtwmapi.CancelReasonOther); err == nil {
|
||||||
// 调用开放平台接口取消订单,不推送取消订单消息和退款消息。
|
// 调用开放平台接口取消订单,不推送取消订单消息和退款消息。
|
||||||
c.postFakeMsg(order.VendorOrderID, mtwmapi.MsgTypeOrderCanceled, mtwmapi.OrderStatusCanceled)
|
c.postFakeMsg(order.VendorOrderID, mtwmapi.MsgTypeOrderCanceled, mtwmapi.OrderStatusCanceled)
|
||||||
}
|
}
|
||||||
@@ -602,7 +605,7 @@ func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.Goods
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(order.VendorOrgCode).OrderApplyPartRefund(utils.Str2Int64(order.VendorOrderID), reason, skuList)
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderApplyPartRefund(utils.Str2Int64(order.VendorOrderID), reason, skuList)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
@@ -634,11 +637,11 @@ func (c *PurchaseHandler) ListOrders(ctx *jxcontext.Context, vendorOrgCode strin
|
|||||||
seqEnd := seqStart + batchSize - 1
|
seqEnd := seqStart + batchSize - 1
|
||||||
var tmpOrderIDs []int64
|
var tmpOrderIDs []int64
|
||||||
if seqStart == seqEnd {
|
if seqStart == seqEnd {
|
||||||
if vendorOderID, err2 := getAPI(vendorOrgCode).GetOrderIdByDaySeqSingle(vendorStoreID, queryDate, seqStart); err2 == nil {
|
if vendorOderID, err2 := getAPI(vendorOrgCode, 0, vendorStoreID).GetOrderIdByDaySeqSingle(vendorStoreID, queryDate, seqStart); err2 == nil {
|
||||||
tmpOrderIDs = []int64{vendorOderID}
|
tmpOrderIDs = []int64{vendorOderID}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
tmpOrderIDs, err = getAPI(vendorOrgCode).GetOrderIdByDaySeq(vendorStoreID, queryDate, seqStart, seqEnd)
|
tmpOrderIDs, err = getAPI(vendorOrgCode, 0, vendorStoreID).GetOrderIdByDaySeq(vendorStoreID, queryDate, seqStart, seqEnd)
|
||||||
}
|
}
|
||||||
if len(tmpOrderIDs) > 0 {
|
if len(tmpOrderIDs) > 0 {
|
||||||
for _, v := range tmpOrderIDs {
|
for _, v := range tmpOrderIDs {
|
||||||
@@ -677,7 +680,7 @@ func (p *PurchaseHandler) GetOrderConsigneeNumber(ctx *jxcontext.Context, storeI
|
|||||||
offset := 0
|
offset := 0
|
||||||
for {
|
for {
|
||||||
store, _ := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM, "")
|
store, _ := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM, "")
|
||||||
result, err2 := getAPI(store.VendorOrgCode).OrderBatchPullPhoneNumber(vendorStoreID, offset, mtwmapi.MaxBatchPullPhoneNumberLimit)
|
result, err2 := getAPI(store.VendorOrgCode, storeID, "").OrderBatchPullPhoneNumber(vendorStoreID, offset, mtwmapi.MaxBatchPullPhoneNumberLimit)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
for _, v := range result {
|
for _, v := range result {
|
||||||
v2 := &partner.OrderPhoneNumberInfo{
|
v2 := &partner.OrderPhoneNumberInfo{
|
||||||
@@ -704,7 +707,7 @@ func (p *PurchaseHandler) GetOrderCourierNumber(ctx *jxcontext.Context, storeID
|
|||||||
offset := 0
|
offset := 0
|
||||||
for {
|
for {
|
||||||
store, _ := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM, "")
|
store, _ := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDMTWM, "")
|
||||||
result, err2 := getAPI(store.VendorOrgCode).OrderGetRiderInfoPhoneNumber(vendorStoreID, offset, mtwmapi.MaxBatchPullPhoneNumberLimit)
|
result, err2 := getAPI(store.VendorOrgCode, 0, "").OrderGetRiderInfoPhoneNumber(vendorStoreID, offset, mtwmapi.MaxBatchPullPhoneNumberLimit)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
for _, v := range result {
|
for _, v := range result {
|
||||||
numberList = append(numberList, &partner.OrderPhoneNumberInfo{
|
numberList = append(numberList, &partner.OrderPhoneNumberInfo{
|
||||||
@@ -785,7 +788,7 @@ func (p *PurchaseHandler) onNumberDowngrade(msg *mtwmapi.CallbackMsg) (response
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *PurchaseHandler) GetWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2 string) (tipFee int64, err error) {
|
func (c *PurchaseHandler) GetWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2 string) (tipFee int64, err error) {
|
||||||
orderInfo, err := getAPI(vendorOrgCode).GetDistributeOrderDetail(vendorOrderID, vendorStoreID)
|
orderInfo, err := getAPI(vendorOrgCode, 0, vendorStoreID).GetDistributeOrderDetail(vendorOrderID, vendorStoreID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tipFee = jxutils.StandardPrice2Int(orderInfo.TipAmount)
|
tipFee = jxutils.StandardPrice2Int(orderInfo.TipAmount)
|
||||||
}
|
}
|
||||||
@@ -794,7 +797,7 @@ func (c *PurchaseHandler) GetWaybillTip(ctx *jxcontext.Context, vendorOrgCode, v
|
|||||||
|
|
||||||
func (c *PurchaseHandler) UpdateWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2, cityCode string, tipFee int64) (err error) {
|
func (c *PurchaseHandler) UpdateWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2, cityCode string, tipFee int64) (err error) {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(vendorOrgCode).OrderModityTips(vendorOrderID, vendorStoreID, jxutils.IntPrice2Standard(tipFee))
|
err = getAPI(vendorOrgCode, 0, vendorStoreID).OrderModityTips(vendorOrderID, vendorStoreID, jxutils.IntPrice2Standard(tipFee))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ func (c *PurchaseHandler) isAfsMsg(msg *mtwmapi.CallbackMsg) bool {
|
|||||||
// refundData := msg.Data.(*mtwmapi.CallbackRefundInfo)
|
// refundData := msg.Data.(*mtwmapi.CallbackRefundInfo)
|
||||||
orderID := utils.Str2Int64(GetOrderIDFromMsg(msg))
|
orderID := utils.Str2Int64(GetOrderIDFromMsg(msg))
|
||||||
order, _ := partner.CurOrderManager.LoadOrder(utils.Int64ToStr(orderID), model.VendorIDMTWM)
|
order, _ := partner.CurOrderManager.LoadOrder(utils.Int64ToStr(orderID), model.VendorIDMTWM)
|
||||||
status, err := getAPI(order.VendorOrgCode).OrderViewStatus(orderID)
|
status, err := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), order.VendorStoreID).OrderViewStatus(orderID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
return utils.Int2Str(status) == mtwmapi.OrderStatusFinished
|
return utils.Int2Str(status) == mtwmapi.OrderStatusFinished
|
||||||
}
|
}
|
||||||
@@ -188,9 +188,9 @@ func (c *PurchaseHandler) GetAfsStatusFromVendorStatus(resType int, notifyType s
|
|||||||
func (c *PurchaseHandler) AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error) {
|
func (c *PurchaseHandler) AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error) {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if approveType == partner.AfsApproveTypeRefused {
|
if approveType == partner.AfsApproveTypeRefused {
|
||||||
err = getAPI(order.VendorOrgCode).OrderRefundReject(utils.Str2Int64(order.VendorOrderID), reason)
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromAfsOrder(order), order.VendorStoreID).OrderRefundReject(utils.Str2Int64(order.VendorOrderID), reason)
|
||||||
} else {
|
} else {
|
||||||
err = getAPI(order.VendorOrgCode).OrderRefundAgree(utils.Str2Int64(order.VendorOrderID), reason)
|
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromAfsOrder(order), order.VendorStoreID).OrderRefundAgree(utils.Str2Int64(order.VendorOrderID), reason)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ func (c *PurchaseHandler) RefreshComment(fromTime, toTime time.Time) (err error)
|
|||||||
storeMap := batchItemList[0].(*model.StoreMap)
|
storeMap := batchItemList[0].(*model.StoreMap)
|
||||||
endDateStr := time.Now().Add(-24 * time.Hour).Format("20060102")
|
endDateStr := time.Now().Add(-24 * time.Hour).Format("20060102")
|
||||||
startDateStr := time.Now().Add(-RefreshCommentTime).Format("20060102")
|
startDateStr := time.Now().Add(-RefreshCommentTime).Format("20060102")
|
||||||
commentList, err2 := getAPI(storeMap.VendorOrgCode).CommentQuery(storeMap.VendorStoreID, startDateStr, endDateStr, 0, 0, mtwmapi.CommentReplyStatusAll)
|
commentList, err2 := getAPI(storeMap.VendorOrgCode, storeMap.StoreID, storeMap.VendorStoreID).CommentQuery(storeMap.VendorStoreID, startDateStr, endDateStr, 0, 0, mtwmapi.CommentReplyStatusAll)
|
||||||
|
|
||||||
var orderCommentList []*model.OrderComment
|
var orderCommentList []*model.OrderComment
|
||||||
if err = err2; err != nil {
|
if err = err2; err != nil {
|
||||||
@@ -105,7 +105,7 @@ func (c *PurchaseHandler) RefreshComment(fromTime, toTime time.Time) (err error)
|
|||||||
func (c *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, vendorOrgCode string, orderComment *model.OrderComment, replyComment string) (err error) {
|
func (c *PurchaseHandler) ReplyOrderComment(ctx *jxcontext.Context, vendorOrgCode string, orderComment *model.OrderComment, replyComment string) (err error) {
|
||||||
globals.SugarLogger.Debugf("mtwm ReplyOrderComment, orderComment:%s, replyComment:%s", utils.Format4Output(orderComment, true), replyComment)
|
globals.SugarLogger.Debugf("mtwm ReplyOrderComment, orderComment:%s, replyComment:%s", utils.Format4Output(orderComment, true), replyComment)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(vendorOrgCode).CommentAddReply(orderComment.VendorStoreID, utils.Str2Int64(orderComment.UserCommentID), replyComment)
|
err = getAPI(vendorOrgCode, orderComment.StoreID, orderComment.VendorStoreID).CommentAddReply(orderComment.VendorStoreID, utils.Str2Int64(orderComment.UserCommentID), replyComment)
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ type tEbaiStoreInfo struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID string) (retVal *dao.StoreDetail, err error) {
|
func (p *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID string) (retVal *dao.StoreDetail, err error) {
|
||||||
result, err := getAPI(vendorOrgCode).PoiGet(vendorStoreID)
|
result, err := getAPI(vendorOrgCode, 0, vendorStoreID).PoiGet(vendorStoreID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
// globals.SugarLogger.Debug(utils.Format4Output(result, false))
|
// globals.SugarLogger.Debug(utils.Format4Output(result, false))
|
||||||
retVal = &dao.StoreDetail{
|
retVal = &dao.StoreDetail{
|
||||||
@@ -73,9 +73,9 @@ func (p *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorOrgCode, vendo
|
|||||||
retVal.ID = int(utils.Str2Int64WithDefault(poiCode, 0))
|
retVal.ID = int(utils.Str2Int64WithDefault(poiCode, 0))
|
||||||
retVal.DeliveryRangeType = model.DeliveryRangeTypePolygon
|
retVal.DeliveryRangeType = model.DeliveryRangeTypePolygon
|
||||||
var deliveryRangeInfo []map[string]interface{}
|
var deliveryRangeInfo []map[string]interface{}
|
||||||
deliveryRangeInfo, err = getAPI(vendorOrgCode).ShippingFetch(poiCode)
|
deliveryRangeInfo, err = getAPI(vendorOrgCode, 0, vendorStoreID).ShippingFetch(poiCode)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
deliveryRangeInfo, err = getAPI(vendorOrgCode).ShippingList(poiCode)
|
deliveryRangeInfo, err = getAPI(vendorOrgCode, 0, vendorStoreID).ShippingList(poiCode)
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if len(deliveryRangeInfo) > 0 {
|
if len(deliveryRangeInfo) > 0 {
|
||||||
@@ -109,7 +109,7 @@ func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
|
|||||||
if db == nil {
|
if db == nil {
|
||||||
db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
}
|
}
|
||||||
mtapi := getAPI(getStoreVendorOrgCode(storeID))
|
mtapi := getAPI(getStoreVendorOrgCode(storeID), 0, "")
|
||||||
storeDetail, err := dao.GetStoreDetail(db, storeID, model.VendorIDMTWM, "")
|
storeDetail, err := dao.GetStoreDetail(db, storeID, model.VendorIDMTWM, "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@@ -201,7 +201,7 @@ func (p *PurchaseHandler) onStoreStatusChanged(msg *mtwmapi.CallbackMsg) (respon
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string) (storeStatus int, err error) {
|
func (p *PurchaseHandler) GetStoreStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string) (storeStatus int, err error) {
|
||||||
result, err := getAPI(vendorOrgCode).PoiGet(vendorStoreID)
|
result, err := getAPI(vendorOrgCode, storeID, "").PoiGet(vendorStoreID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
return bizStatusMtwm2JX(result.OpenLevel, result.IsOnline), nil
|
return bizStatusMtwm2JX(result.OpenLevel, result.IsOnline), nil
|
||||||
}
|
}
|
||||||
@@ -216,18 +216,18 @@ func (c *PurchaseHandler) UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCod
|
|||||||
openLevel, isOnline := bizStatusJX2Mtwm(status)
|
openLevel, isOnline := bizStatusJX2Mtwm(status)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if isOnline != mtwmapi.PoiStatusOnline {
|
if isOnline != mtwmapi.PoiStatusOnline {
|
||||||
err = getAPI(vendorOrgCode).PoiOffline(vendorStoreID)
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiOffline(vendorStoreID)
|
||||||
} else {
|
} else {
|
||||||
if err = getAPI(vendorOrgCode).PoiOnline(vendorStoreID); err == nil { // 这个函数成功返回也并不表示上线成功。。。
|
if err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiOnline(vendorStoreID); err == nil { // 这个函数成功返回也并不表示上线成功。。。
|
||||||
remoteStoreInfo, err2 := getAPI(vendorOrgCode).PoiGet(vendorStoreID)
|
remoteStoreInfo, err2 := getAPI(vendorOrgCode, storeID, vendorStoreID).PoiGet(vendorStoreID)
|
||||||
if err = err2; err != nil {
|
if err = err2; err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if remoteStoreInfo.IsOnline == mtwmapi.PoiStatusOnline {
|
if remoteStoreInfo.IsOnline == mtwmapi.PoiStatusOnline {
|
||||||
if openLevel == mtwmapi.PoiOpenLevelHaveRest {
|
if openLevel == mtwmapi.PoiOpenLevelHaveRest {
|
||||||
err = getAPI(vendorOrgCode).PoiClose(vendorStoreID)
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiClose(vendorStoreID)
|
||||||
} else {
|
} else {
|
||||||
err = getAPI(vendorOrgCode).PoiOpen(vendorStoreID)
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiOpen(vendorStoreID)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
err = errors.New("门店还未上线,不能修改营业状态")
|
err = errors.New("门店还未上线,不能修改营业状态")
|
||||||
@@ -284,14 +284,14 @@ func constrainOpTimeList(opTimeList, validOpTimeList []int16) (newOpTimeList []i
|
|||||||
func (c *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, opTimeList []int16) (err error) {
|
func (c *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, opTimeList []int16) (err error) {
|
||||||
shippingTime := openTimeJX2Mtwm(opTimeList)
|
shippingTime := openTimeJX2Mtwm(opTimeList)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(vendorOrgCode).PoiShipTimeUpdate(vendorStoreID, shippingTime)
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiShipTimeUpdate(vendorStoreID, shippingTime)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
shippingTime = ""
|
shippingTime = ""
|
||||||
if validOpTimeList := getOpTimeListFromErr(err); len(validOpTimeList) > 0 {
|
if validOpTimeList := getOpTimeListFromErr(err); len(validOpTimeList) > 0 {
|
||||||
shippingTime = openTimeJX2Mtwm(constrainOpTimeList(opTimeList, validOpTimeList))
|
shippingTime = openTimeJX2Mtwm(constrainOpTimeList(opTimeList, validOpTimeList))
|
||||||
}
|
}
|
||||||
if shippingTime != "" {
|
if shippingTime != "" {
|
||||||
err = getAPI(vendorOrgCode).PoiShipTimeUpdate(vendorStoreID, shippingTime)
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PoiShipTimeUpdate(vendorStoreID, shippingTime)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -299,7 +299,7 @@ func (c *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCod
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *PurchaseHandler) GetAllStoresVendorID(ctx *jxcontext.Context, vendorOrgCode string) (vendorStoreIDs []string, err error) {
|
func (c *PurchaseHandler) GetAllStoresVendorID(ctx *jxcontext.Context, vendorOrgCode string) (vendorStoreIDs []string, err error) {
|
||||||
vendorStoreIDs, err = getAPI(vendorOrgCode).PoiGetIDs()
|
vendorStoreIDs, err = getAPIWithoutToken(vendorOrgCode).PoiGetIDs()
|
||||||
return vendorStoreIDs, err
|
return vendorStoreIDs, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -311,7 +311,7 @@ func (c *PurchaseHandler) UpdateStoreBoxFee(ctx *jxcontext.Context, vendorOrgCod
|
|||||||
boxFee, err := dao.GetSysConfigAsInt64(dao.GetDB(), model.ConfigSysMtwmBoxFee)
|
boxFee, err := dao.GetSysConfigAsInt64(dao.GetDB(), model.ConfigSysMtwmBoxFee)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if globals.EnableMtwmStoreWrite && globals.IsProductEnv() {
|
if globals.EnableMtwmStoreWrite && globals.IsProductEnv() {
|
||||||
err = getAPI(vendorOrgCode).PackagePriceUpdate(vendorStoreID, 1, int(boxFee))
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).PackagePriceUpdate(vendorStoreID, 1, int(boxFee))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ func getStoreVendorOrgCode(storeID int) (vendorOrgCode string) {
|
|||||||
|
|
||||||
// 门店分类
|
// 门店分类
|
||||||
func (p *PurchaseHandler) GetStoreAllCategories(ctx *jxcontext.Context, storeID int, vendorStoreID string) (cats []*partner.BareCategoryInfo, err error) {
|
func (p *PurchaseHandler) GetStoreAllCategories(ctx *jxcontext.Context, storeID int, vendorStoreID string) (cats []*partner.BareCategoryInfo, err error) {
|
||||||
remoteCats, err := getAPI(getStoreVendorOrgCode(storeID)).RetailCatList(vendorStoreID)
|
remoteCats, err := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailCatList(vendorStoreID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
cats = convertVendorCatList(remoteCats)
|
cats = convertVendorCatList(remoteCats)
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
SecondaryCategoryName: subCatName,
|
SecondaryCategoryName: subCatName,
|
||||||
Sequence: storeCat.Seq,
|
Sequence: storeCat.Seq,
|
||||||
}
|
}
|
||||||
err = getAPI(storeCat.VendorOrgCode).RetailCatUpdate(vendorStoreID, catName, param4Update)
|
err = getAPI(storeCat.VendorOrgCode, storeID, vendorStoreID).RetailCatUpdate(vendorStoreID, catName, param4Update)
|
||||||
if storeCat.CatSyncStatus&model.SyncFlagNewMask == 0 && // 修改分类名,但分类不存在
|
if storeCat.CatSyncStatus&model.SyncFlagNewMask == 0 && // 修改分类名,但分类不存在
|
||||||
p.IsErrCategoryNotExist(err) && originName != "" {
|
p.IsErrCategoryNotExist(err) && originName != "" {
|
||||||
storeCat.CatSyncStatus |= model.SyncFlagNewMask
|
storeCat.CatSyncStatus |= model.SyncFlagNewMask
|
||||||
@@ -181,7 +181,7 @@ 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) {
|
||||||
if false {
|
if false {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
err = getAPI(getStoreVendorOrgCode(storeID)).RetailCatDelete(vendorStoreID, tryCatName2Code(vendorCatID), vendorCatID)
|
err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailCatDelete(vendorStoreID, tryCatName2Code(vendorCatID), vendorCatID)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var catCodes []string
|
var catCodes []string
|
||||||
@@ -190,9 +190,9 @@ func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
}
|
}
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if level == 1 {
|
if level == 1 {
|
||||||
err = getAPI(getStoreVendorOrgCode(storeID)).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, catCodes, []string{vendorCatID}, nil, nil, nil)
|
err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, catCodes, []string{vendorCatID}, nil, nil, nil)
|
||||||
} else {
|
} else {
|
||||||
err = getAPI(getStoreVendorOrgCode(storeID)).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, nil, nil, catCodes, []string{vendorCatID}, nil)
|
err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, nil, nil, catCodes, []string{vendorCatID}, nil)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -323,10 +323,10 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if len(foodDataList) == 1 {
|
if len(foodDataList) == 1 {
|
||||||
foodDataList[0]["skus"] = string(utils.MustMarshal(foodDataList[0]["skus"]))
|
foodDataList[0]["skus"] = string(utils.MustMarshal(foodDataList[0]["skus"]))
|
||||||
err = getAPI(getStoreVendorOrgCode(storeID)).RetailInitData(ctx.GetTrackInfo(), vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID), foodDataList[0])
|
err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailInitData(ctx.GetTrackInfo(), vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID), foodDataList[0])
|
||||||
failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDMTWM], syncType)
|
failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDMTWM], syncType)
|
||||||
} else if len(foodDataList) > 0 {
|
} else if len(foodDataList) > 0 {
|
||||||
failedFoodList, err2 := getAPI(getStoreVendorOrgCode(storeID)).RetailBatchInitData(ctx.GetTrackInfo(), vendorStoreID, foodDataList)
|
failedFoodList, err2 := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailBatchInitData(ctx.GetTrackInfo(), vendorStoreID, foodDataList)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
if err = putils.GenPartialFailedErr(failedFoodList, len(failedFoodList)); err != nil {
|
if err = putils.GenPartialFailedErr(failedFoodList, len(failedFoodList)); err != nil {
|
||||||
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], syncType)
|
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], syncType)
|
||||||
@@ -360,11 +360,11 @@ func getAppFoodCodeList(l []*mtwmapi.AppFoodResult) (vendorSkuIDs []string) {
|
|||||||
func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if len(storeSkuList) == 1 {
|
if len(storeSkuList) == 1 {
|
||||||
err = getAPI(storeSkuList[0].VendorOrgCode).RetailDelete(ctx.GetTrackInfo(), vendorStoreID, storeSkuList[0].VendorSkuID)
|
err = getAPI(storeSkuList[0].VendorOrgCode, storeID, vendorStoreID).RetailDelete(ctx.GetTrackInfo(), vendorStoreID, storeSkuList[0].VendorSkuID)
|
||||||
failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDMTWM], "删除商品")
|
failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDMTWM], "删除商品")
|
||||||
} else {
|
} else {
|
||||||
// todo 部分失败
|
// todo 部分失败
|
||||||
err = getAPI(getStoreVendorOrgCode(storeID)).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, nil, nil, nil, nil, partner.BareStoreSkuInfoList(storeSkuList).GetVendorSkuIDList())
|
err = getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID).RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, nil, nil, nil, nil, partner.BareStoreSkuInfoList(storeSkuList).GetVendorSkuIDList())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if errExt, ok := err.(*utils.ErrorWithCode); ok {
|
if errExt, ok := err.(*utils.ErrorWithCode); ok {
|
||||||
myMap := make(map[string][]*mtwmapi.AppFoodResult)
|
myMap := make(map[string][]*mtwmapi.AppFoodResult)
|
||||||
@@ -432,7 +432,7 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
|||||||
skuList := storeSku2Mtwm(storeSkuList, updateTypeStatus)
|
skuList := storeSku2Mtwm(storeSkuList, updateTypeStatus)
|
||||||
mtwmStatus := skuStatusJX2Mtwm(status)
|
mtwmStatus := skuStatusJX2Mtwm(status)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
failedFoodList, err2 := getAPI(vendorOrgCode).RetailSellStatus(ctx.GetTrackInfo(), vendorStoreID, skuList, mtwmStatus)
|
failedFoodList, err2 := getAPI(vendorOrgCode, storeID, vendorStoreID).RetailSellStatus(ctx.GetTrackInfo(), vendorStoreID, skuList, mtwmStatus)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
if len(failedFoodList) > 0 {
|
if len(failedFoodList) > 0 {
|
||||||
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品状态")
|
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品状态")
|
||||||
@@ -452,7 +452,7 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
|
|||||||
func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||||
priceList := storeSku2Mtwm(storeSkuList, updateTypePrice)
|
priceList := storeSku2Mtwm(storeSkuList, updateTypePrice)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
failedFoodList, err2 := getAPI(vendorOrgCode).RetailSkuPrice(ctx.GetTrackInfo(), vendorStoreID, priceList)
|
failedFoodList, err2 := getAPI(vendorOrgCode, storeID, vendorStoreID).RetailSkuPrice(ctx.GetTrackInfo(), vendorStoreID, priceList)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
if len(failedFoodList) > 0 {
|
if len(failedFoodList) > 0 {
|
||||||
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品价格")
|
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品价格")
|
||||||
@@ -471,7 +471,7 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
|
|||||||
func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
|
||||||
stockList := storeSku2Mtwm(storeSkuList, updateTypeStock)
|
stockList := storeSku2Mtwm(storeSkuList, updateTypeStock)
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
failedFoodList, err2 := getAPI(vendorOrgCode).RetailSkuStock(ctx.GetTrackInfo(), vendorStoreID, stockList)
|
failedFoodList, err2 := getAPI(vendorOrgCode, storeID, vendorStoreID).RetailSkuStock(ctx.GetTrackInfo(), vendorStoreID, stockList)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
if len(failedFoodList) > 0 {
|
if len(failedFoodList) > 0 {
|
||||||
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品库存")
|
failedList = SelectStoreSkuListByFoodList(storeSkuList, failedFoodList, storeID, model.VendorChineseNames[model.VendorIDMTWM], "更新商品库存")
|
||||||
@@ -501,7 +501,7 @@ func mtwmSkuStatus2Jx(mtwmSkuStatus int) (jxSkuStatus int) {
|
|||||||
|
|
||||||
func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (skuNameList []*partner.SkuNameInfo, err error) {
|
func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (skuNameList []*partner.SkuNameInfo, err error) {
|
||||||
if len(storeSkuList) == 1 {
|
if len(storeSkuList) == 1 {
|
||||||
skuInfo, err := getAPI(storeSkuList[0].VendorOrgCode).RetailGet(vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID))
|
skuInfo, err := getAPI(storeSkuList[0].VendorOrgCode, storeID, vendorStoreID).RetailGet(vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -513,7 +513,7 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
|
|||||||
if storeSkuList != nil {
|
if storeSkuList != nil {
|
||||||
storeSkuMap = putils.StoreSkuList2MapByVendorSkuID(storeSkuList)
|
storeSkuMap = putils.StoreSkuList2MapByVendorSkuID(storeSkuList)
|
||||||
}
|
}
|
||||||
mtapi := getAPI(getStoreVendorOrgCode(storeID))
|
mtapi := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
|
||||||
for {
|
for {
|
||||||
// todo 待优化获取速度
|
// todo 待优化获取速度
|
||||||
result, err := mtapi.RetailList(vendorStoreID, len(skuNameList), mtwmapi.GeneralMaxLimit)
|
result, err := mtapi.RetailList(vendorStoreID, len(skuNameList), mtwmapi.GeneralMaxLimit)
|
||||||
@@ -674,9 +674,9 @@ func (p *PurchaseHandler) UpdateStoreSkusSpecTag(ctx *jxcontext.Context, vendorO
|
|||||||
}
|
}
|
||||||
if globals.EnableMtwmStoreWrite {
|
if globals.EnableMtwmStoreWrite {
|
||||||
if len(foodDataList) == 1 {
|
if len(foodDataList) == 1 {
|
||||||
err = getAPI(vendorOrgCode).RetailInitData(ctx.GetTrackInfo(), vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID), foodDataList[0])
|
err = getAPI(vendorOrgCode, storeID, vendorStoreID).RetailInitData(ctx.GetTrackInfo(), vendorStoreID, utils.Int2Str(storeSkuList[0].SkuID), foodDataList[0])
|
||||||
} else if len(foodDataList) > 0 {
|
} else if len(foodDataList) > 0 {
|
||||||
_, err = getAPI(vendorOrgCode).RetailBatchInitData(ctx.GetTrackInfo(), vendorStoreID, foodDataList)
|
_, err = getAPI(vendorOrgCode, storeID, vendorStoreID).RetailBatchInitData(ctx.GetTrackInfo(), vendorStoreID, foodDataList)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ func (p *PurchaseHandler) AcceptOrRefuseFailedGetOrder(ctx *jxcontext.Context, o
|
|||||||
func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder) {
|
func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder) {
|
||||||
return order
|
return order
|
||||||
}
|
}
|
||||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID string) (order *model.GoodsOrder, err error) {
|
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
func (p *PurchaseHandler) GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error) {
|
func (p *PurchaseHandler) GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user