From c5d03e936fb1da48536e24009a5e717593cafad3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 30 Nov 2023 17:46:35 +0800 Subject: [PATCH 01/24] 1 --- business/partner/purchase/ebai/store_sku2.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index 13304761c..1fc0ff17d 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -703,6 +703,10 @@ func SelectStoreSkuListByOpResult(storeSkuList []*partner.StoreSkuInfo, opResult sql := ` UPDATE store_sku_bind SET ebai_id = 0,ebai_sync_status = 2 WHERE store_id = ? AND sku_id = ?` param := []interface{}{storeID, v.SkuID} dao.ExecuteSQL(dao.GetDB(), sql, param...) + } else if strings.Contains(opResultMap[utils.Str2Int64(v.VendorSkuID)], "商品禁止售卖不允许上架") { + sql := ` UPDATE store_sku_bind SET ebai_sync_status = 0 WHERE store_id = ? AND sku_id = ?` + param := []interface{}{storeID, v.SkuID} + dao.ExecuteSQL(dao.GetDB(), sql, param...) } selectedStoreSkuList = append(selectedStoreSkuList, opFailed) } From 472dc0868525fa16ca0dfedc8d47d1ba328ebdc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 1 Dec 2023 17:21:41 +0800 Subject: [PATCH 02/24] 1 --- business/jxstore/cms/system_store_sku.go | 2 +- business/partner/delivery/dada/waybill.go | 6 ++-- business/partner/delivery/fn/waybill.go | 6 ++-- business/partner/delivery/mtps/waybill.go | 9 ++--- business/partner/delivery/rider.go | 8 ++--- business/partner/delivery/sfps/waybill.go | 6 ++-- business/partner/delivery/uupt/waybill.go | 6 ++-- .../partner/purchase/tiktok_store/order.go | 34 ++++++++----------- 8 files changed, 37 insertions(+), 40 deletions(-) diff --git a/business/jxstore/cms/system_store_sku.go b/business/jxstore/cms/system_store_sku.go index 1bec2eaee..8eb9eac84 100644 --- a/business/jxstore/cms/system_store_sku.go +++ b/business/jxstore/cms/system_store_sku.go @@ -45,7 +45,7 @@ func CopyOnStoreSkuToOther(ctx *jxcontext.Context, fromVendorStoreId, toStoreId switch step { case 1: // 1.加载门店商品,删除商品.当分类下没有商品时.删除分类 - //errs := LoadingStoreSkuList(ctx, toApi, toStore.VendorStoreID) + // errs := LoadingStoreSkuList(ctx, toApi, toStore.VendorStoreID) //if errs != nil && len(errs) > 0 { // return nil, errs[0] //} diff --git a/business/partner/delivery/dada/waybill.go b/business/partner/delivery/dada/waybill.go index e9b22b19a..3667fbea7 100644 --- a/business/partner/delivery/dada/waybill.go +++ b/business/partner/delivery/dada/waybill.go @@ -117,7 +117,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *dadaapi.CallbackMsg) (retVal *dadaap switch order.OrderVendorID { case model.VendorIDDD: Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2) - tiktokStatusPush(order, msg.OrderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat)) + tiktokStatusPush(order, msg.OrderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), goodsOrder.VendorOrgCode) case model.VendorIDMTWM, model.VendorIDTaoVegetable: delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新 if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.OrderStatus == dadaapi.OrderStatusAccepted { @@ -129,7 +129,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *dadaapi.CallbackMsg) (retVal *dadaap } // 抖音订单状态回传 -func tiktokStatusPush(order *model.Waybill, status int, lng, lat string) { +func tiktokStatusPush(order *model.Waybill, status int, lng, lat, vendorOrgCode string) { result := &utils.RiderInfo{ OrderId: order.VendorOrderID, ThirdCarrierOrderId: order.VendorOrderID, @@ -177,7 +177,7 @@ func tiktokStatusPush(order *model.Waybill, status int, lng, lat string) { result.LogisticsStatus = 0 result.LogisticsContext = model.RiderGetOrderDeliverOther } - delivery.PullTiktokRiderInfo(result) + delivery.PullTiktokRiderInfo(result, vendorOrgCode) } func (c *DeliveryHandler) callbackMsg2Waybill(msg *dadaapi.CallbackMsg) (retVal *model.Waybill, goods *model.GoodsOrder) { diff --git a/business/partner/delivery/fn/waybill.go b/business/partner/delivery/fn/waybill.go index eec4deacf..23404757f 100644 --- a/business/partner/delivery/fn/waybill.go +++ b/business/partner/delivery/fn/waybill.go @@ -311,7 +311,7 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta switch order.OrderVendorID { case model.VendorIDDD: Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2) - tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat)) + tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), order.VendorOrgCode) case model.VendorIDMTWM, model.VendorIDTaoVegetable: delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新 if good.VendorID == model.VendorIDTaoVegetable && cc.OrderStatus == fnpsapi.OrderStatusAssigned { @@ -322,7 +322,7 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta } // 抖音订单状态回传 -func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat string) { +func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat, vendorOrgCode string) { result := &utils.RiderInfo{ OrderId: order.VendorOrderID, ThirdCarrierOrderId: order.VendorOrderID, @@ -361,7 +361,7 @@ func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat string) result.LogisticsStatus = 0 result.LogisticsContext = model.RiderGetOrderDeliverOther } - delivery.PullTiktokRiderInfo(result) + delivery.PullTiktokRiderInfo(result, vendorOrgCode) } // 异常报备 diff --git a/business/partner/delivery/mtps/waybill.go b/business/partner/delivery/mtps/waybill.go index 2116dc3ef..581cac531 100644 --- a/business/partner/delivery/mtps/waybill.go +++ b/business/partner/delivery/mtps/waybill.go @@ -142,7 +142,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m switch order.OrderVendorID { case model.VendorIDDD: Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2) - pushMTPSToTiktok(msg.Status, order, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat)) + pushMTPSToTiktok(msg.Status, order, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), goodsOrder.VendorOrgCode) case model.VendorIDMTWM, model.VendorIDTaoVegetable: delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新 if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.Status == mtpsapi.OrderStatusAccepted { @@ -153,7 +153,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m return err } -func pushMTPSToTiktok(msgStatus int, order *model.Waybill, lng, lat string) { +func pushMTPSToTiktok(msgStatus int, order *model.Waybill, lng, lat, vendorOrgCode string) { result := &utils.RiderInfo{ OrderId: order.VendorOrderID, ThirdCarrierOrderId: order.VendorOrderID, @@ -186,11 +186,12 @@ func pushMTPSToTiktok(msgStatus int, order *model.Waybill, lng, lat string) { result.LogisticsStatus = 0 result.LogisticsContext = model.RiderGetOrderDeliverOther } - delivery.PullTiktokRiderInfo(result) if result.LogisticsStatus == model.WaybillStatusCourierArrived { result.LogisticsStatus = model.WaybillStatusDelivering result.LogisticsContext = model.RiderGetOrderDelivering - delivery.PullTiktokRiderInfo(result) + delivery.PullTiktokRiderInfo(result, vendorOrgCode) + } else { + delivery.PullTiktokRiderInfo(result, vendorOrgCode) } } diff --git a/business/partner/delivery/rider.go b/business/partner/delivery/rider.go index 9d4d6a748..108ef69dd 100644 --- a/business/partner/delivery/rider.go +++ b/business/partner/delivery/rider.go @@ -230,7 +230,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) { case model.VendorIDWSC: // 微盟微商城 continue case model.VendorIDDD: // 抖店小时达 - riderInfo.LogisticsProviderCode = utils.JxVendorId2TiktokCode(v.WaybillVendorID) + riderInfo.LogisticsProviderCode = tiktok_api.JxVendorId2TiktokCode(v.WaybillVendorID) riderInfo.ThirdCarrierOrderId = v.VendorOrderID if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil { if err := handler.GetOrderRider(v.VendorOrgCode, v.VendorStoreID, utils.Struct2Map(riderInfo, "", true)); err != nil { @@ -261,7 +261,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) { return } -func PullTiktokRiderInfo(riderInfo *utils.RiderInfo) { +func PullTiktokRiderInfo(riderInfo *utils.RiderInfo, vendorOrgCode string) { switch riderInfo.LogisticsStatus { case 5: // 呼叫骑手 riderInfo.LogisticsStatus = 0 @@ -304,7 +304,7 @@ func PullTiktokRiderInfo(riderInfo *utils.RiderInfo) { // 抖店由于发配送时运单id已经固定了,我们系统在重新发货,或者运单号发生改变时去推送信息时.抖店只识别第一个运单号所以在这儿修改成发单时的第一个运单号! paramsMap := utils.Struct2Map(riderInfo, "", true) if handler := partner.GetPurchaseOrderHandlerFromVendorID(model.VendorIDDD); handler != nil { - if err := handler.GetOrderRider("", "", paramsMap); err != nil { + if err := handler.GetOrderRider(vendorOrgCode, "", paramsMap); err != nil { globals.SugarLogger.Errorf("PullTiktokRiderInfo Err %s", err.Error()) } } @@ -439,7 +439,7 @@ func UpdateFakeWayBillToTiktok() { if riderInfo.LogisticsContext != model.RiderGetOrderDeliverFailed && riderInfo.LogisticsContext != model.RiderGetOrderDeliverOther && riderInfo.LogisticsContext != model.RiderWaitRider { riderInfo.LogisticsContext = fmt.Sprintf(riderInfo.LogisticsContext, riderInfo.CourierName, riderInfo.CourierPhone) } - riderInfo.LogisticsProviderCode = utils.JxVendorId2TiktokCode(fakeWayBill[i].WaybillVendorID) + riderInfo.LogisticsProviderCode = tiktok_api.JxVendorId2TiktokCode(fakeWayBill[i].WaybillVendorID) // 推送骑手信息 paramsMap := utils.Struct2Map(riderInfo, "", true) diff --git a/business/partner/delivery/sfps/waybill.go b/business/partner/delivery/sfps/waybill.go index 7c6c581ff..7db36f0cf 100644 --- a/business/partner/delivery/sfps/waybill.go +++ b/business/partner/delivery/sfps/waybill.go @@ -441,7 +441,7 @@ func OnWaybillMsg(urlIndex string, msg interface{}) (resp *sfps2.CallbackRespons switch order.OrderVendorID { case model.VendorIDDD: Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2) - tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat)) + tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), good.VendorOrgCode) case model.VendorIDTaoVegetable, model.VendorIDMTWM: delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新 if good.VendorID == model.VendorIDTaoVegetable && orderStatus == sfps2.OrderStatusTakeOrder { @@ -451,7 +451,7 @@ func OnWaybillMsg(urlIndex string, msg interface{}) (resp *sfps2.CallbackRespons return sfps2.Err2CallbackResponse(nil) } -func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat string) { +func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat, vendorOrgCode string) { result := &utils.RiderInfo{ OrderId: order.VendorOrderID, ThirdCarrierOrderId: order.VendorOrderID, @@ -489,7 +489,7 @@ func tiktokStatusPush(order *model.Waybill, orderStatus int64, lng, lat string) result.LogisticsStatus = 0 result.LogisticsContext = model.RiderGetOrderDeliverOther } - delivery.PullTiktokRiderInfo(result) + delivery.PullTiktokRiderInfo(result, vendorOrgCode) } // OnWaybillExceptSF 异常报备 diff --git a/business/partner/delivery/uupt/waybill.go b/business/partner/delivery/uupt/waybill.go index d1c1d88be..6421bdadc 100644 --- a/business/partner/delivery/uupt/waybill.go +++ b/business/partner/delivery/uupt/waybill.go @@ -416,7 +416,7 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp switch param.OrderVendorID { case model.VendorIDDD: Lng, Lat, _ := partner.GetRidderPositionGetter(param.WaybillVendorID).GetRidderPosition(nil, param.VendorOrderID, param.VendorOrderID, param.VendorWaybillID, param.VendorWaybillID2) - tiktokStatusPush(param, req.State, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat)) + tiktokStatusPush(param, req.State, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), good.VendorOrgCode) case model.VendorIDMTWM, model.VendorIDTaoVegetable: delivery.GetOrderRiderInfoToPlatform(param.VendorOrderID, param.Status) // 骑手位置更新 if good.VendorID == model.VendorIDTaoVegetable && req.State == uuptapi.StateRMGrabsOrder { @@ -426,7 +426,7 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp return uuptapi.Err2CallbackResponse(nil) } -func tiktokStatusPush(param *model.Waybill, orderStatus string, lng, lat string) { +func tiktokStatusPush(param *model.Waybill, orderStatus string, lng, lat, vendorOrgCode string) { result := &utils.RiderInfo{ OrderId: param.VendorOrderID, ThirdCarrierOrderId: param.VendorOrderID, @@ -464,7 +464,7 @@ func tiktokStatusPush(param *model.Waybill, orderStatus string, lng, lat string) result.LogisticsStatus = 0 result.LogisticsContext = model.RiderGetOrderDeliverOther } - delivery.PullTiktokRiderInfo(result) + delivery.PullTiktokRiderInfo(result, vendorOrgCode) } //辅助函数 diff --git a/business/partner/purchase/tiktok_store/order.go b/business/partner/purchase/tiktok_store/order.go index 511692df7..88d623af8 100644 --- a/business/partner/purchase/tiktok_store/order.go +++ b/business/partner/purchase/tiktok_store/order.go @@ -3,7 +3,9 @@ package tiktok_store import ( "errors" "fmt" + "git.rosy.net.cn/baseapi/platformapi/autonavi" "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/ascription_place" + "git.rosy.net.cn/jx-callback/globals/api" "regexp" "strings" "time" @@ -245,6 +247,15 @@ func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, par //appKey := `7152420904331429407` // 暂时定死 //appSecret := `cc7ba367-2394-4cbb-81c6-26f0e929d1c6` //暂时定死 //return tiktokShop.NewExpress(appKey, appSecret, "").OrderStatusAndPsInfoNew(param) + //api.AutonaviAPI. + if param["latitude"].(string) != "" && param["longitude"].(string) != "" { + if len(param["latitude"].(string)) > len("39.978573") && len(param["longitude"].(string)) > len("116.5031060") { // 是否为百度坐标 + lng, lat, _ := api.AutonaviAPI.CoordinateConvert(param["latitude"].(float64), param["longitude"].(float64), autonavi.CoordSysBaidu) + param["latitude"] = utils.Float64ToStr(lat) + param["longitude"] = utils.Float64ToStr(lng) + } + } + return getAPI(vendorOrgCode, 0, vendorStoreID).OrderStatusAndPsInfoNew(param) } @@ -598,22 +609,7 @@ func (c *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName s AddressId: 0, StoreId: utils.Str2Int64(order.VendorStoreID), } - switch order.WaybillVendorID { - case model.VendorIDDada: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeDaDa - case model.VendorIDMTPS: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeMeiTuan - case model.VendorIDFengNiao: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeFengNiao - case model.VendorIDSFPS: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeSF - case model.VendorIDUUPT: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeUU - case model.VendorJXFakeWL, -1: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeMerchant - default: - logisticsAdd.CompanyCode = tiktokShop.TiktokDeliveryTypeMerchant - } + logisticsAdd.CompanyCode = tiktokShop.JxVendorId2TiktokCode(order.WaybillVendorID) //转门店自送通知抖音发货 return api.OrderDelivering(logisticsAdd) } @@ -641,7 +637,7 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam AddressId: 0, StoreId: utils.Str2Int64(order.VendorStoreID), } - param.CompanyCode = utils.JxVendorId2TiktokCode(order.WaybillVendorID) + param.CompanyCode = tiktokShop.JxVendorId2TiktokCode(order.WaybillVendorID) err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderDelivering(param) if err != nil { return err @@ -677,7 +673,7 @@ func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLng)), OpCode: tiktokShop.TiktokLogisticsDELIVERED, } - riderInfo.LogisticsProviderCode = utils.JxVendorId2TiktokCode(order.WaybillVendorID) + riderInfo.LogisticsProviderCode = tiktokShop.JxVendorId2TiktokCode(order.WaybillVendorID) bills, _ := dao.GetWaybills(dao.GetDB(), order.VendorOrderID, nil) for _, v := range bills { if v.Status == model.OrderStatusCanceled { @@ -686,7 +682,7 @@ func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName riderInfo.CourierName = v.CourierName riderInfo.CourierPhone = v.CourierMobile } - riderInfo.LogisticsProviderCode = utils.JxVendorId2TiktokCode(order.WaybillVendorID) + riderInfo.LogisticsProviderCode = tiktokShop.JxVendorId2TiktokCode(order.WaybillVendorID) return c.GetOrderRider("", "", utils.Struct2MapByJson(riderInfo)) } From 9dae9f86b83e6e1f49bbb8a65c4fa0b0c95b13c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Sun, 3 Dec 2023 11:33:34 +0800 Subject: [PATCH 03/24] 1 --- controllers/jd_callback.go | 1 + 1 file changed, 1 insertion(+) diff --git a/controllers/jd_callback.go b/controllers/jd_callback.go index ff0d6d7e1..f51042664 100644 --- a/controllers/jd_callback.go +++ b/controllers/jd_callback.go @@ -145,6 +145,7 @@ func (c *DjswController) SinglePromoteCreate() { func (c *DjswController) StoreCrud() { if c.Ctx.Input.Method() == http.MethodPost { callbackResponse := c.handleMsg(func(a *jdapi.API, obj interface{}) (callbackResponse *jdapi.CallbackResponse) { + globals.SugarLogger.Debugf("==============StoreCrud := %s", utils.Format4Output(obj, false)) callbackResponse = jd.OnStoreMsg(obj.(*jdapi.CallbackOrderMsg)) return callbackResponse }) From 8cc1ce339d962e449b1a266fa7d7a9ec57d5b718 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 4 Dec 2023 11:08:32 +0800 Subject: [PATCH 04/24] 1 --- controllers/jd_callback.go | 1 - 1 file changed, 1 deletion(-) diff --git a/controllers/jd_callback.go b/controllers/jd_callback.go index f51042664..ff0d6d7e1 100644 --- a/controllers/jd_callback.go +++ b/controllers/jd_callback.go @@ -145,7 +145,6 @@ func (c *DjswController) SinglePromoteCreate() { func (c *DjswController) StoreCrud() { if c.Ctx.Input.Method() == http.MethodPost { callbackResponse := c.handleMsg(func(a *jdapi.API, obj interface{}) (callbackResponse *jdapi.CallbackResponse) { - globals.SugarLogger.Debugf("==============StoreCrud := %s", utils.Format4Output(obj, false)) callbackResponse = jd.OnStoreMsg(obj.(*jdapi.CallbackOrderMsg)) return callbackResponse }) From bde8bb08395af89fa1d730860416337c015f7272 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 4 Dec 2023 15:12:03 +0800 Subject: [PATCH 05/24] 1 --- controllers/jd_callback.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/controllers/jd_callback.go b/controllers/jd_callback.go index ff0d6d7e1..a9b9ba988 100644 --- a/controllers/jd_callback.go +++ b/controllers/jd_callback.go @@ -24,6 +24,7 @@ func (c *DjswController) handleMsg(handler func(*jdapi.API, interface{}) *jdapi. callbackMsg, mapData, callbackResponse := jdapi.GetCallbackMsg(getUsefulRequest(c.Ctx)) if callbackResponse == nil { if jdAPI := jd.GetAPIbyKey(callbackMsg.AppKey); jdAPI != nil { + // 暂时不校验token if callbackResponse = jdAPI.CheckCallbackValidation(mapData, callbackMsg.Sign); callbackResponse == nil { callbackResponse = handler(jdAPI, callbackMsg.Param) } @@ -143,6 +144,7 @@ func (c *DjswController) SinglePromoteCreate() { } func (c *DjswController) StoreCrud() { + globals.SugarLogger.Debugf("======================") if c.Ctx.Input.Method() == http.MethodPost { callbackResponse := c.handleMsg(func(a *jdapi.API, obj interface{}) (callbackResponse *jdapi.CallbackResponse) { callbackResponse = jd.OnStoreMsg(obj.(*jdapi.CallbackOrderMsg)) From a81d363db36135b6a5d26e1faefd2a2f2eb720e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 4 Dec 2023 16:02:24 +0800 Subject: [PATCH 06/24] 1 --- business/partner/purchase/ebai/store_sku2.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index 1fc0ff17d..5e4c19959 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -703,8 +703,8 @@ func SelectStoreSkuListByOpResult(storeSkuList []*partner.StoreSkuInfo, opResult sql := ` UPDATE store_sku_bind SET ebai_id = 0,ebai_sync_status = 2 WHERE store_id = ? AND sku_id = ?` param := []interface{}{storeID, v.SkuID} dao.ExecuteSQL(dao.GetDB(), sql, param...) - } else if strings.Contains(opResultMap[utils.Str2Int64(v.VendorSkuID)], "商品禁止售卖不允许上架") { - sql := ` UPDATE store_sku_bind SET ebai_sync_status = 0 WHERE store_id = ? AND sku_id = ?` + } else if strings.Contains(opResultMap[utils.Str2Int64(v.VendorSkuID)], "商品禁止售卖不允许上架") || strings.Contains(opResultMap[utils.Str2Int64(v.VendorSkuID)], "商品已被禁售") { + sql := ` UPDATE store_sku_bind SET ebai_sync_status = 4 WHERE store_id = ? AND sku_id = ?` param := []interface{}{storeID, v.SkuID} dao.ExecuteSQL(dao.GetDB(), sql, param...) } From b73d41a92c01a81f84719994b89e07e3b675030d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 4 Dec 2023 17:47:48 +0800 Subject: [PATCH 07/24] 1 --- business/partner/purchase/mtwm/store.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index 5eff49f1e..aa18a5e6b 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -462,13 +462,13 @@ func (c *PurchaseHandler) UpdateStoreBoxFee(ctx *jxcontext.Context, vendorOrgCod func (c *PurchaseHandler) UpdateStoreLineStatus(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, lineStatus int) (err error) { mtwmApi := getAPI(vendorOrgCode, storeID, vendorStoreID) switch lineStatus { - case model.StoreStatusOpened: + case model.StoreStatusOpened: // 先上线在开店 if err = mtwmApi.PoiOnline(vendorStoreID); err == nil { err = mtwmApi.PoiOpen(vendorStoreID) } - default: - if err = mtwmApi.PoiOffline(vendorStoreID); err == nil { - err = mtwmApi.PoiClose(vendorStoreID) + default: // 先关店,在下线 + if err = mtwmApi.PoiClose(vendorStoreID); err == nil { + err = mtwmApi.PoiOffline(vendorStoreID) } } From 880fe9db12675388d97a406e305afe92cca85132 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 4 Dec 2023 18:02:08 +0800 Subject: [PATCH 08/24] 1 --- business/partner/purchase/jd/store.go | 3 +++ controllers/jd_callback.go | 2 -- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/jd/store.go b/business/partner/purchase/jd/store.go index d11fa23d2..fa7313b66 100644 --- a/business/partner/purchase/jd/store.go +++ b/business/partner/purchase/jd/store.go @@ -352,6 +352,9 @@ func (c *PurchaseHandler) OnStoreMsg(vendorOrgCode string, msg *jdapi.CallbackOr } } } + if err != nil { + globals.SugarLogger.Debugf("OnStoreMsg==============%v", err) + } return jdapi.Err2CallbackResponse(err, "") } diff --git a/controllers/jd_callback.go b/controllers/jd_callback.go index a9b9ba988..ff0d6d7e1 100644 --- a/controllers/jd_callback.go +++ b/controllers/jd_callback.go @@ -24,7 +24,6 @@ func (c *DjswController) handleMsg(handler func(*jdapi.API, interface{}) *jdapi. callbackMsg, mapData, callbackResponse := jdapi.GetCallbackMsg(getUsefulRequest(c.Ctx)) if callbackResponse == nil { if jdAPI := jd.GetAPIbyKey(callbackMsg.AppKey); jdAPI != nil { - // 暂时不校验token if callbackResponse = jdAPI.CheckCallbackValidation(mapData, callbackMsg.Sign); callbackResponse == nil { callbackResponse = handler(jdAPI, callbackMsg.Param) } @@ -144,7 +143,6 @@ func (c *DjswController) SinglePromoteCreate() { } func (c *DjswController) StoreCrud() { - globals.SugarLogger.Debugf("======================") if c.Ctx.Input.Method() == http.MethodPost { callbackResponse := c.handleMsg(func(a *jdapi.API, obj interface{}) (callbackResponse *jdapi.CallbackResponse) { callbackResponse = jd.OnStoreMsg(obj.(*jdapi.CallbackOrderMsg)) From 711dc8a96c4474c576c2098ef81abfb063a995ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 5 Dec 2023 10:57:03 +0800 Subject: [PATCH 09/24] 1 --- business/partner/purchase/jd/store.go | 1 + 1 file changed, 1 insertion(+) diff --git a/business/partner/purchase/jd/store.go b/business/partner/purchase/jd/store.go index fa7313b66..5c79efc1f 100644 --- a/business/partner/purchase/jd/store.go +++ b/business/partner/purchase/jd/store.go @@ -347,6 +347,7 @@ func (c *PurchaseHandler) OnStoreMsg(vendorOrgCode string, msg *jdapi.CallbackOr err = partner.CurStoreManager.OnStoreStatusChanged(vendorStoreID, model.VendorIDJD, storeStatus) } else { // 可能在门店删除的情况下会出查不到门店的错误 + globals.SugarLogger.Debugf("GetStoreStatus==============%v", err) if errExt, ok := err.(*utils.ErrorWithCode); ok && errExt.IntCode() == 4 { err = nil } From 34833993c1f9d9eb49c822f128c9f7106b364dec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 6 Dec 2023 09:41:12 +0800 Subject: [PATCH 10/24] 1 --- business/jxstore/cms/store_sku_check.go | 37 ++++++++++++++++++--- business/model/dao/store_sku.go | 32 ++++++++++++++++++ business/partner/purchase/mtwm/order_afs.go | 7 ++-- 3 files changed, 69 insertions(+), 7 deletions(-) diff --git a/business/jxstore/cms/store_sku_check.go b/business/jxstore/cms/store_sku_check.go index 039bf05a1..b18c06a57 100644 --- a/business/jxstore/cms/store_sku_check.go +++ b/business/jxstore/cms/store_sku_check.go @@ -928,12 +928,41 @@ func StoreOpenAll(ctx *jxcontext.Context) { // globals.SugarLogger.Debug("StoreOpenAll skuID is Complete") //} -// 对比本地商品和平台商品差异(价格和规格),不同的重新同步 -func CheckSkuDiffBetweenJxAndVendor2(ctx *jxcontext.Context, vendorIDList []int, storeIDList []int) { - //db := dao.GetDB() +// CheckSkuDiffBetweenJxAndVendor2 对比本地商品和平台商品差异(价格和规格),不同的重新同步 +func CheckSkuDiffBetweenJxAndVendor2(ctx *jxcontext.Context, vendorIDList []int, storeIDList []int) error { + //var ( + // db = dao.GetDB() + // errList = make([]error, 0, 0) + //) //for _, v := range storeIDList { - // //storeMapList, err := dao.GetStoresMapList(db, vendorIDList, []int{v}, []int{model.StoreStatusOpened, model.StoreStatusHaveRest, model.StoreStatusClosed}, status, model.StoreIsSyncYes, "", "", "") + // // 1.判断本地门店是否开启了同步,未开启的跳过 + // storeMapList, err := dao.GetStoresMapList(db, vendorIDList, []int{v}, []int{model.StoreStatusOpened, model.StoreStatusHaveRest, model.StoreStatusClosed}, model.StoreStatusOpened, model.StoreIsSyncYes, "", "", "") + // if err != nil { + // errList = append(errList, fmt.Errorf("门店id[%d]查询异常:%v", v, err)) + // continue + // } + // if len(storeMapList) == model.NO { + // errList = append(errList, fmt.Errorf("门店id[%d],未绑定平台账号或者同步未打开", v)) + // continue + // } + // // 2.查询本地商品列表,存储sku_id,vendor_price,weight + // skuList, skuErr := dao.GetStoreSkuBindPriceAndWeight(db, v) + // if len(skuList) == model.NO || skuErr != nil { + // errList = append(errList, fmt.Errorf("门店id[%d],商品为空或错误:%v", v, skuErr)) + // continue + // } + // + // // 查询平台门店所有商品 + // for _, storeMap := range storeMapList { + // singleStoreHandler := partner.GetPurchasePlatformFromVendorID(storeMap.VendorID).(partner.ISingleStoreStoreSkuHandler) + // // 淘宝需要storeSkuList有值 + // vendorSkuInfoList, err := singleStoreHandler.GetStoreSkusFullInfo(ctx, nil, v, storeMap.VendorStoreID, nil) + // + // } + // // 3.比对价格和规格重量,不同的以本地为基础开始重新同步 + // //} + return nil } //入口函数,校验本地商品京西和其他平台的差异 diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go index 05d37d034..8e03299ab 100644 --- a/business/model/dao/store_sku.go +++ b/business/model/dao/store_sku.go @@ -2105,3 +2105,35 @@ func GetStoresSkusForManageState(db *DaoDB, storeID, status int) (storeSkuList [ err = GetRows(db, &storeSkuList, sql, sqlParams...) return storeSkuList, err } + +type SkuPriceAndWeight struct { + SkuId int64 `orm:"column(sku_id)" json:"skuId"` // 商品本地id + MtwmPrice int64 `orm:"column(mtwm_price)" json:"mtwmPrice"` // 美团平台价 + JdPrice int64 `orm:"column(jd_price)" json:"jdPrice"` // 京东平台价 + EbaiPrice int64 `orm:"column(ebai_price)" json:"ebaiPrice"` // 饿百平台价 + TaoPrice int64 `orm:"column(tao_price)" json:"taoPrice"` // 淘宝平台价 + DdPrice int64 `orm:"column(dd_price)" json:"ddPrice"` // 抖店平台价 + Weight int64 `orm:"column(weight)" json:"weight"` // 商品规格重量 +} + +// GetStoreSkuBindPriceAndWeight 获取门店绑定商品平台价格和规格 +func GetStoreSkuBindPriceAndWeight(db *DaoDB, storeId int) (skuList map[string]*SkuPriceAndWeight, err error) { + sql := ` SELECT b.sku_id,b.mtwm_price,b.jd_price,b.ebai_price,b.tao_price,b.dd_price,s.weight FROM store_sku_bind b + INNER JOIN sku s ON s.id = b.sku_id + WHERE b.store_id = ? AND b.deleted_at = ? + ` + result := make([]*SkuPriceAndWeight, 0, 0) + sqlParams := []interface{}{storeId, utils.DefaultTimeValue} + if err = GetRows(db, &result, sql, sqlParams...); err != nil { + return nil, err + } + + if len(result) != model.NO { + skuMap := make(map[string]*SkuPriceAndWeight, 0) + for _, v := range result { + skuMap[utils.Int64ToStr(v.SkuId)] = v + } + return skuMap, nil + } + return nil, errors.New("门店不存在商品数据") +} diff --git a/business/partner/purchase/mtwm/order_afs.go b/business/partner/purchase/mtwm/order_afs.go index 622d011d0..67f84b141 100644 --- a/business/partner/purchase/mtwm/order_afs.go +++ b/business/partner/purchase/mtwm/order_afs.go @@ -149,17 +149,18 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwma err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus) } } else { + // msg-status 1-已申请 10-初审已同意 11-初审已驳回 16-初审已申诉 17-初审申诉已同意 18-初审申诉已驳回 20-终审已发起(用户已发货) 21-终审已同意 22-终审已驳回 26-终审已申诉 27-终审申诉已同意 28-终审申诉已驳回 30-已取消 if err := partner.CurOrderManager.OnAfsOrderStatusChanged(orderStatus); err == nil { // 订单回调全额退款接口时,将订单状态修改为取消 refundData := msg.Data.(*mtwmapi.CallbackRefundInfo) - if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && msg.Cmd == mtwmapi.MsgTypeOrderRefund { + if (refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && msg.Cmd == mtwmapi.MsgTypeOrderRefund) || refundData.Status == "21" { order, _ := partner.CurOrderManager.LoadOrder(orderStatus.RefVendorOrderID, model.VendorIDMTWM) order.Status = model.OrderStatusCanceled dao.UpdateEntity(dao.GetDB(), order, "Status") } // 新订单平台自动同意退单,某一些情况下产生的运单没退!这个处理一下! - if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree) { + if (refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree)) || refundData.Status == "21" { wayBill, _ := dao.GetWaybills(dao.GetDB(), orderStatus.RefVendorOrderID, nil) for _, v := range wayBill { handlerInfo := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID) @@ -168,7 +169,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwma } } } - + } } return mtwmapi.Err2CallbackResponse(err, "") From 153b74b3924fb5cc91d245d6ea81b8fb4b139259 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 6 Dec 2023 13:43:53 +0800 Subject: [PATCH 11/24] 1 --- .../partner/purchase/tao_vegetable/order.go | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/business/partner/purchase/tao_vegetable/order.go b/business/partner/purchase/tao_vegetable/order.go index 180a37211..7f1967d05 100644 --- a/business/partner/purchase/tao_vegetable/order.go +++ b/business/partner/purchase/tao_vegetable/order.go @@ -97,17 +97,23 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve order.ConsigneeLat = jxutils.StandardCoordinate2Int(utils.Str2Float64(originalList[1])) order.DiscountMoney = *orderDetail.DiscountFee - //var salePrice int64 = 0 - //var weight int = 0 order.PmSubsidyMoney = *orderDetail.SkuDiscountPlatformFee // 平台承担优惠 // 添加需要赠送的东西(暂时没有赠品套餐直接商品) multiSkuMap := make(map[int]int) + var ( + skuSalePrice int64 = 0 // 商品售卖价 + merchantDiscountsPrice int64 = 0 // 商户优惠价 + // 平台优惠价 + platformDiscountsPrice int64 = *orderDetail.PlatformDeduction.BaseLogisticsFee + *orderDetail.PlatformDeduction.TechnicalServiceFee + *orderDetail.PlatformDeduction.PayServiceFee + *orderDetail.PlatformDeduction.ThirdpartnarFee + ) if len(*orderDetail.SubOrderResponseList) > 0 { for _, extra := range *orderDetail.SubOrderResponseList { // 这个是包装袋的价格,用户退款是包装袋未推送退款,导致本地订单退款状态无法更新,取消包装袋的记录 if *extra.SkuCode == "6108080" { continue } + skuSalePrice += *extra.OriginalFee + merchantDiscountsPrice += *extra.DiscountMerchantFee sku := &model.OrderSku{ VendorOrderID: order.VendorOrderID, VendorSubOrderID: *extra.OutSubOrderId, @@ -200,7 +206,7 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve v.IsVendorAct = model.YES } } - // 抖音订单手机号和收货地址是否同城(虚拟号,无法获取到正确地址) + //订单手机号和收货地址是否同城(虚拟号,无法获取到正确地址) order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + "归属信息不匹配:" + "虚拟电话号码" // 本地获取订单记录 @@ -217,6 +223,28 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve order.StoreName = "未获取到" // 真实门店名称 } + //结算类型 + if store.PayPercentage < 50 { + order.EarningType = model.EarningTypePoints + } else { + order.EarningType = model.EarningTypeQuote + } + + // 平台结算金额 + order.TotalShopMoney = skuSalePrice + *orderDetail.PostFee - merchantDiscountsPrice - platformDiscountsPrice + if order.EarningType == model.EarningTypePoints { + waybill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID) + if waybill == nil { + if (order.NewEarningPrice == 0 || order.NewEarningPrice != order.TotalShopMoney*int64(100-order.OrderPayPercentage/2)/int64(100)) && order.OrderPayPercentage <= 50 { + order.NewEarningPrice = order.TotalShopMoney * int64(100-order.OrderPayPercentage/2) / int64(100) + } + } else { + if (order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-order.OrderPayPercentage/2)/int64(100)) && order.OrderPayPercentage <= 50 { + order.NewEarningPrice = order.TotalShopMoney*int64(100-order.OrderPayPercentage/2)/int64(100) - waybill.DesiredFee + } + } + } + return order, orderMap, err } From f9a4d3f512334f3c07355c0b0c34293cfd0584c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 6 Dec 2023 14:17:47 +0800 Subject: [PATCH 12/24] 1 --- business/partner/purchase/tao_vegetable/order.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/business/partner/purchase/tao_vegetable/order.go b/business/partner/purchase/tao_vegetable/order.go index 7f1967d05..9b321682a 100644 --- a/business/partner/purchase/tao_vegetable/order.go +++ b/business/partner/purchase/tao_vegetable/order.go @@ -108,12 +108,13 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve ) if len(*orderDetail.SubOrderResponseList) > 0 { for _, extra := range *orderDetail.SubOrderResponseList { - // 这个是包装袋的价格,用户退款是包装袋未推送退款,导致本地订单退款状态无法更新,取消包装袋的记录 + skuSalePrice += *extra.OriginalFee + merchantDiscountsPrice += *extra.DiscountMerchantFee + + // 这个是包装袋的价格,用户退款是包装袋未推送退款,导致本地订单退款状态无法更新,取消包装袋的记录(但是结算的时候需要加上去) if *extra.SkuCode == "6108080" { continue } - skuSalePrice += *extra.OriginalFee - merchantDiscountsPrice += *extra.DiscountMerchantFee sku := &model.OrderSku{ VendorOrderID: order.VendorOrderID, VendorSubOrderID: *extra.OutSubOrderId, From b3e2f8eb96cfad258dce07ef2d11819fab55f640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Thu, 7 Dec 2023 14:51:44 +0800 Subject: [PATCH 13/24] 1 --- business/partner/purchase/ebai/order_afs.go | 11 +++++++++++ business/partner/purchase/mtwm/order_afs.go | 22 ++++++++++++++++++--- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/business/partner/purchase/ebai/order_afs.go b/business/partner/purchase/ebai/order_afs.go index 09f7d72fb..89cdfc9ab 100644 --- a/business/partner/purchase/ebai/order_afs.go +++ b/business/partner/purchase/ebai/order_afs.go @@ -3,6 +3,7 @@ package ebai import ( "errors" "fmt" + "git.rosy.net.cn/jx-callback/business/model/dao" "strings" "time" @@ -163,6 +164,16 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaia err = partner.CurOrderManager.OnAfsOrderStatusChanged(orderStatus) } } + + // 只有有售后订单就更新此订单的结算信息 + if utils.Str2Int(orderStatus.VendorStatus) == ebaiapi.OrderPartRefundSuccess { + orderData, err2 := api.EbaiAPI.OrderPartRefundGet(orderStatus.RefVendorOrderID) + if err2 == nil && utils.MustInterface2Int64(orderData["shop_fee"]) != model.NO { + goodsOrder, _ := partner.CurOrderManager.LoadOrder(orderStatus.RefVendorOrderID, model.VendorIDEBAI) + goodsOrder.TotalShopMoney = utils.MustInterface2Int64(orderData["shop_fee"]) + dao.UpdateEntity(dao.GetDB(), goodsOrder, "TotalShopMoney") + } + } retVal = api.EbaiAPI.Err2CallbackResponse(msg.Cmd, err, nil) } return retVal diff --git a/business/partner/purchase/mtwm/order_afs.go b/business/partner/purchase/mtwm/order_afs.go index 67f84b141..2c5839675 100644 --- a/business/partner/purchase/mtwm/order_afs.go +++ b/business/partner/purchase/mtwm/order_afs.go @@ -151,16 +151,32 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwma } else { // msg-status 1-已申请 10-初审已同意 11-初审已驳回 16-初审已申诉 17-初审申诉已同意 18-初审申诉已驳回 20-终审已发起(用户已发货) 21-终审已同意 22-终审已驳回 26-终审已申诉 27-终审申诉已同意 28-终审申诉已驳回 30-已取消 if err := partner.CurOrderManager.OnAfsOrderStatusChanged(orderStatus); err == nil { + order, _ := partner.CurOrderManager.LoadOrder(orderStatus.RefVendorOrderID, model.VendorIDMTWM) // 订单回调全额退款接口时,将订单状态修改为取消 refundData := msg.Data.(*mtwmapi.CallbackRefundInfo) - if (refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && msg.Cmd == mtwmapi.MsgTypeOrderRefund) || refundData.Status == "21" { - order, _ := partner.CurOrderManager.LoadOrder(orderStatus.RefVendorOrderID, model.VendorIDMTWM) + if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && msg.Cmd == mtwmapi.MsgTypeOrderRefund { order.Status = model.OrderStatusCanceled dao.UpdateEntity(dao.GetDB(), order, "Status") + } else if refundData.Status == "21" { + skuList, _ := dao.GetSimpleOrderSkus(dao.GetDB(), orderStatus.RefVendorOrderID, nil) + totalSkuCount := 0 + for _, v := range skuList { + totalSkuCount += v.Count + } + + financialSku, _ := dao.GetOrderRefundSkuList(dao.GetDB(), []string{orderStatus.RefVendorOrderID}) + refundSkuCount := 0 + for _, v := range financialSku { + refundSkuCount += v.Count + } + if totalSkuCount == refundSkuCount { + order.Status = model.OrderStatusCanceled + dao.UpdateEntity(dao.GetDB(), order, "Status") + } } // 新订单平台自动同意退单,某一些情况下产生的运单没退!这个处理一下! - if (refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree)) || refundData.Status == "21" { + if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree) { wayBill, _ := dao.GetWaybills(dao.GetDB(), orderStatus.RefVendorOrderID, nil) for _, v := range wayBill { handlerInfo := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID) From e4fe9faaadeca7f5627c93f8c6a41372196321ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 10:01:17 +0800 Subject: [PATCH 14/24] 1 --- business/jxcallback/orderman/order.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index ef57cfdd1..c0013c498 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -944,6 +944,9 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da if db == nil { db = dao.GetDB() } + if orderStatus.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(orderStatus, false)) + } isDuplicated, err = addOrderOrWaybillStatus(orderStatus, db) if err == nil && !isDuplicated && (orderStatus.Status != model.OrderStatusUnknown && orderStatus.Status != model.OrderStatusMsg) { // todo 加这个代码的原因是,抖店运单取消会去将本地的订单状态设置为取消,跳过,不修改本地订单状态 @@ -961,6 +964,9 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da // if orderStatus.VendorID == model.VendorIDMTWM && model.IsOrderFinalStatus(order.Status) { // return false, order, nil // } + if orderStatus.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(order, false)) + } if (model.IsOrderLockStatus(orderStatus.Status) || model.IsOrderUnlockStatus(orderStatus.Status)) || (model.IsOrderMainStatus(orderStatus.Status) && orderStatus.Status >= order.Status) { // todo 要求status不能回绕 order.VendorStatus = orderStatus.VendorStatus @@ -994,6 +1000,9 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da updateFields = append(updateFields, "LockStatus", "LockStatusTime", "Flag") } } + if orderStatus.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================:2 %s", utils.Format4Output(order, false)) + } utils.CallFuncLogError(func() error { _, err = db.Db.Update(order, updateFields...) return err From 2bc59b9c2597745c31ad74429eda4c15ce6570fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 10:01:37 +0800 Subject: [PATCH 15/24] 1 --- business/jxcallback/orderman/order.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index c0013c498..3c90bcc57 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -1019,6 +1019,9 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da } } } + if orderStatus.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================:3 %s", utils.Format4Output(order, false)) + } return isDuplicated, order, err } From f6bad9abc6763a62166b64c51192511c0625accd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 10:19:41 +0800 Subject: [PATCH 16/24] 1 --- business/jxcallback/orderman/order.go | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index 3c90bcc57..c5d66269f 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -189,6 +189,9 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m } } + if orderStatus.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(orderStatus, false)) + } isDuplicated, order, err := c.addOrderStatus(orderStatus, db) if err == nil { dao.Commit(db, txDB) @@ -944,9 +947,7 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da if db == nil { db = dao.GetDB() } - if orderStatus.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(orderStatus, false)) - } + isDuplicated, err = addOrderOrWaybillStatus(orderStatus, db) if err == nil && !isDuplicated && (orderStatus.Status != model.OrderStatusUnknown && orderStatus.Status != model.OrderStatusMsg) { // todo 加这个代码的原因是,抖店运单取消会去将本地的订单状态设置为取消,跳过,不修改本地订单状态 @@ -964,9 +965,6 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da // if orderStatus.VendorID == model.VendorIDMTWM && model.IsOrderFinalStatus(order.Status) { // return false, order, nil // } - if orderStatus.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(order, false)) - } if (model.IsOrderLockStatus(orderStatus.Status) || model.IsOrderUnlockStatus(orderStatus.Status)) || (model.IsOrderMainStatus(orderStatus.Status) && orderStatus.Status >= order.Status) { // todo 要求status不能回绕 order.VendorStatus = orderStatus.VendorStatus @@ -1000,9 +998,7 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da updateFields = append(updateFields, "LockStatus", "LockStatusTime", "Flag") } } - if orderStatus.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================:2 %s", utils.Format4Output(order, false)) - } + utils.CallFuncLogError(func() error { _, err = db.Db.Update(order, updateFields...) return err @@ -1019,9 +1015,7 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da } } } - if orderStatus.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================:3 %s", utils.Format4Output(order, false)) - } + return isDuplicated, order, err } From 0ca6f8a4aa02f1a792cd04b16e656f07b52d8703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 10:30:46 +0800 Subject: [PATCH 17/24] 1 --- business/partner/purchase/mtwm/order.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/business/partner/purchase/mtwm/order.go b/business/partner/purchase/mtwm/order.go index 1b9e52e04..b601ce08c 100644 --- a/business/partner/purchase/mtwm/order.go +++ b/business/partner/purchase/mtwm/order.go @@ -345,6 +345,9 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap return response } else { status := c.callbackMsg2Status(msg) + if status.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(status, false)) + } if partner.CurOrderManager.GetStatusDuplicatedCount(status) > 1 { // 重复消息推送校验,允许推送两次 return nil } @@ -391,6 +394,9 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap } }) } + if status.RefVendorOrderID == "1100842032100912947" { + globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(status, false)) + } err = partner.CurOrderManager.OnOrderStatusChanged(msg.AppID, status) if err == nil && msg.Cmd == mtwmapi.MsgTypeOrderFinished { utils.CallFuncAsync(func() { From e6cb5b1bddae340005d587e9eaf136f45af34523 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 11:35:49 +0800 Subject: [PATCH 18/24] 1 --- business/jxcallback/orderman/order.go | 3 --- business/partner/purchase/mtwm/order.go | 12 ++++++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index c5d66269f..33847a088 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -189,9 +189,6 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m } } - if orderStatus.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(orderStatus, false)) - } isDuplicated, order, err := c.addOrderStatus(orderStatus, db) if err == nil { dao.Commit(db, txDB) diff --git a/business/partner/purchase/mtwm/order.go b/business/partner/purchase/mtwm/order.go index b601ce08c..2d42852b3 100644 --- a/business/partner/purchase/mtwm/order.go +++ b/business/partner/purchase/mtwm/order.go @@ -345,9 +345,6 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap return response } else { status := c.callbackMsg2Status(msg) - if status.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(status, false)) - } if partner.CurOrderManager.GetStatusDuplicatedCount(status) > 1 { // 重复消息推送校验,允许推送两次 return nil } @@ -394,9 +391,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap } }) } - if status.RefVendorOrderID == "1100842032100912947" { - globals.SugarLogger.Debugf("======================: %s", utils.Format4Output(status, false)) - } + err = partner.CurOrderManager.OnOrderStatusChanged(msg.AppID, status) if err == nil && msg.Cmd == mtwmapi.MsgTypeOrderFinished { utils.CallFuncAsync(func() { @@ -515,6 +510,11 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI "订单已经确认过了", }) { err = nil + goodsOrder, _ := partner.CurOrderManager.LoadOrder(order.VendorOrderID, order.VendorID) + if goodsOrder.Status < model.OrderStatusAccepted { + order.Status = model.OrderStatusAccepted + dao.UpdateEntity(dao.GetDB(), order, "Status") + } } else { globals.SugarLogger.Warnf("mtwm AcceptOrRefuseOrder orderID:%s failed with err:%v", order.VendorOrderID, err) } From d8d9b9bd2d910fe213a9bab74cbc0766df2089bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 11:58:55 +0800 Subject: [PATCH 19/24] 1 --- business/partner/purchase/mtwm/order.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/business/partner/purchase/mtwm/order.go b/business/partner/purchase/mtwm/order.go index 2d42852b3..8c1af7f84 100644 --- a/business/partner/purchase/mtwm/order.go +++ b/business/partner/purchase/mtwm/order.go @@ -514,6 +514,8 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI if goodsOrder.Status < model.OrderStatusAccepted { order.Status = model.OrderStatusAccepted dao.UpdateEntity(dao.GetDB(), order, "Status") + globals.SugarLogger.Debugf("============:goodsOrder= %s", utils.Format4Output(goodsOrder, false)) + globals.SugarLogger.Debugf("============:order= %s", utils.Format4Output(order, false)) } } else { globals.SugarLogger.Warnf("mtwm AcceptOrRefuseOrder orderID:%s failed with err:%v", order.VendorOrderID, err) From 251afaf2f6dd4f6b68830c51b3bbd1a4e94d43d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Fri, 8 Dec 2023 14:04:46 +0800 Subject: [PATCH 20/24] 1 --- business/partner/purchase/mtwm/order.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/business/partner/purchase/mtwm/order.go b/business/partner/purchase/mtwm/order.go index 8c1af7f84..2d42852b3 100644 --- a/business/partner/purchase/mtwm/order.go +++ b/business/partner/purchase/mtwm/order.go @@ -514,8 +514,6 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI if goodsOrder.Status < model.OrderStatusAccepted { order.Status = model.OrderStatusAccepted dao.UpdateEntity(dao.GetDB(), order, "Status") - globals.SugarLogger.Debugf("============:goodsOrder= %s", utils.Format4Output(goodsOrder, false)) - globals.SugarLogger.Debugf("============:order= %s", utils.Format4Output(order, false)) } } else { globals.SugarLogger.Warnf("mtwm AcceptOrRefuseOrder orderID:%s failed with err:%v", order.VendorOrderID, err) From bcb0f3b24a58a72aba4e7adfab64a953e9ea2e5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 11 Dec 2023 18:24:02 +0800 Subject: [PATCH 21/24] 1 --- business/partner/purchase/mtwm/store.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index aa18a5e6b..0208c0dc7 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -467,8 +467,16 @@ func (c *PurchaseHandler) UpdateStoreLineStatus(ctx *jxcontext.Context, vendorOr err = mtwmApi.PoiOpen(vendorStoreID) } default: // 先关店,在下线 - if err = mtwmApi.PoiClose(vendorStoreID); err == nil { + globals.SugarLogger.Debugf("===========err1 := %s", vendorStoreID) + err = mtwmApi.PoiClose(vendorStoreID) + if err != nil { + globals.SugarLogger.Debugf("===========err1 := %v", err) + } + if err == nil { err = mtwmApi.PoiOffline(vendorStoreID) + if err != nil { + globals.SugarLogger.Debugf("===========err1 := %v", err) + } } } From 8486122d5769c6f291c39558ad7b59c5eec69d24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 12 Dec 2023 09:32:21 +0800 Subject: [PATCH 22/24] 1 --- business/jxstore/misc/misc.go | 4 ++-- business/partner/purchase/mtwm/store.go | 10 +--------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/business/jxstore/misc/misc.go b/business/jxstore/misc/misc.go index 2e16a79b2..843201c4d 100644 --- a/business/jxstore/misc/misc.go +++ b/business/jxstore/misc/misc.go @@ -194,8 +194,8 @@ func Init() { ScheduleTimerFunc("UpdateTiktokShopTotalMoney", func() { orderman.UpdateTiktokShopTotalMoney() }, []string{ - "03:35:00", - "11:05:00", + "04:30:00", + "09:40:00", }) /// 更新淘鲜达结算信息 ScheduleTimerFunc("UpdateTaoTotalMoney", func() { diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index 0208c0dc7..aa18a5e6b 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -467,16 +467,8 @@ func (c *PurchaseHandler) UpdateStoreLineStatus(ctx *jxcontext.Context, vendorOr err = mtwmApi.PoiOpen(vendorStoreID) } default: // 先关店,在下线 - globals.SugarLogger.Debugf("===========err1 := %s", vendorStoreID) - err = mtwmApi.PoiClose(vendorStoreID) - if err != nil { - globals.SugarLogger.Debugf("===========err1 := %v", err) - } - if err == nil { + if err = mtwmApi.PoiClose(vendorStoreID); err == nil { err = mtwmApi.PoiOffline(vendorStoreID) - if err != nil { - globals.SugarLogger.Debugf("===========err1 := %v", err) - } } } From d40b5dbddc5d2df420cc1f38c5f6572c1df65d65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 12 Dec 2023 09:49:40 +0800 Subject: [PATCH 23/24] 1 --- business/jxcallback/orderman/order.go | 1 + business/jxstore/misc/misc.go | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index 33847a088..f02ff1c40 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -2698,6 +2698,7 @@ func UpdateTiktokShopTotalMoney() { } } } + globals.SugarLogger.Debugf("vendorOrderId =========: %s , TotalShopMoney := %d", v.VendorOrderID, v.TotalShopMoney) if _, err := dao.UpdateEntity(db, v, "TotalShopMoney", "NewEarningPrice"); err != nil { globals.SugarLogger.Errorf("更新本地订单结算信息错误 : %s", err) continue diff --git a/business/jxstore/misc/misc.go b/business/jxstore/misc/misc.go index 843201c4d..d26a8bb5f 100644 --- a/business/jxstore/misc/misc.go +++ b/business/jxstore/misc/misc.go @@ -194,8 +194,8 @@ func Init() { ScheduleTimerFunc("UpdateTiktokShopTotalMoney", func() { orderman.UpdateTiktokShopTotalMoney() }, []string{ - "04:30:00", - "09:40:00", + "16:30:00", + "09:53:00", }) /// 更新淘鲜达结算信息 ScheduleTimerFunc("UpdateTaoTotalMoney", func() { From bfd1f84e5fd02850f1d87575abdbc71d86cf6b36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 12 Dec 2023 10:07:47 +0800 Subject: [PATCH 24/24] 1 --- business/jxcallback/orderman/order.go | 2 +- business/jxstore/misc/misc.go | 12 +++++++++-- .../partner/purchase/tiktok_store/order.go | 20 +++++++++---------- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go index f02ff1c40..77b672070 100644 --- a/business/jxcallback/orderman/order.go +++ b/business/jxcallback/orderman/order.go @@ -2658,7 +2658,7 @@ func UpdateTiktokShopTotalMoney() { var goodsOrders []*model.GoodsOrder sql := `SELECT g.* FROM goods_order g WHERE g.order_created_at >= ? AND g.status = ? AND g.vendor_id = ? AND total_shop_money = ? ORDER BY g.order_created_at desc` - orderCreateTime := time.Now().AddDate(0, 0, -15) + orderCreateTime := time.Now().AddDate(0, 0, -50) param := []interface{}{orderCreateTime, model.OrderStatusFinished, model.VendorIDDD, model.NO} if err := dao.GetRows(db, &goodsOrders, sql, param...); err != nil { globals.SugarLogger.Debugf("Update GoodsOrder Total shop money err %s", err) diff --git a/business/jxstore/misc/misc.go b/business/jxstore/misc/misc.go index d26a8bb5f..4a71ae913 100644 --- a/business/jxstore/misc/misc.go +++ b/business/jxstore/misc/misc.go @@ -194,8 +194,16 @@ func Init() { ScheduleTimerFunc("UpdateTiktokShopTotalMoney", func() { orderman.UpdateTiktokShopTotalMoney() }, []string{ - "16:30:00", - "09:53:00", + "03:00:00", + "05:00:00", + "07:00:00", + "09:00:00", + "11:00:00", + "14:00:00", + "16:00:00", + "19:00:00", + "21:00:00", + "01:00:00", }) /// 更新淘鲜达结算信息 ScheduleTimerFunc("UpdateTaoTotalMoney", func() { diff --git a/business/partner/purchase/tiktok_store/order.go b/business/partner/purchase/tiktok_store/order.go index 88d623af8..d01a15039 100644 --- a/business/partner/purchase/tiktok_store/order.go +++ b/business/partner/purchase/tiktok_store/order.go @@ -135,16 +135,16 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s if len(result.SkuOrderList) > 0 { for _, extra := range result.SkuOrderList { sku := &model.OrderSku{ - VendorOrderID: extra.ParentOrderId, - VendorID: model.VendorIDDD, - StoreSubID: 0, - StoreSubName: "", - Count: int(extra.ItemNum), - VendorSkuID: utils.Int64ToStr(extra.SkuId), - SkuID: utils.Str2Int(extra.OutSkuId), - JxSkuID: utils.Str2Int(extra.OutSkuId), - SkuName: extra.ProductName, - ShopPrice: extra.OriginAmount, + VendorOrderID: extra.ParentOrderId, + VendorID: model.VendorIDDD, + StoreSubID: 0, + StoreSubName: "", + Count: int(extra.ItemNum), + VendorSkuID: utils.Int64ToStr(extra.SkuId), + SkuID: utils.Str2Int(extra.OutSkuId), + JxSkuID: utils.Str2Int(extra.OutSkuId), + SkuName: extra.ProductName, + //ShopPrice: extra.OriginAmount, 京西价 VendorPrice: extra.OrderAmount / extra.ItemNum, SalePrice: extra.OriginAmount, EarningPrice: 0,