Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop

This commit is contained in:
richboo111
2023-07-12 15:27:53 +08:00
21 changed files with 154 additions and 192 deletions

View File

@@ -3,7 +3,6 @@ package tao_vegetable
import (
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/globals"
@@ -16,7 +15,6 @@ func OnCallbackMsg(orderStatus, orderId string, msg interface{}) (response *tao_
if CurPurchaseHandler != nil {
jxutils.CallMsgHandler(func() {
response = CurPurchaseHandler.onOrderMsg(orderStatus, orderId, msg)
globals.SugarLogger.Debugf("OnCallbackMsg response : %s", utils.Format4Output(response, false))
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDTaoVegetable))
}
return response

View File

@@ -214,6 +214,5 @@ func (p *PurchaseHandler) OrderDetail2Financial(result *domain591.AlibabaAelophy
orderFinancial.SelfDeliveryDiscountMoney = *result.SkuDiscountPlatformFee // 平台承担运费补贴(商家自送)+
orderFinancial.DistanceFreightMoney = 0
globals.SugarLogger.Debugf("orderFinancial===============: %s", utils.Format4Output(orderFinancial, false))
return orderFinancial
}

View File

@@ -156,14 +156,8 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
}
multiSkuMap[sku.SkuID]++
order.Skus = append(order.Skus, sku)
//salePrice += sku.SalePrice
//weight += sku.Weight
globals.SugarLogger.Debugf("=====skuPrice := %d", sku.SalePrice)
}
}
//order.SalePrice = salePrice
//order.Weight = weight
//globals.SugarLogger.Debugf("=====skuPrice := %d", salePrice)
// 淘宝默认自配送
if *orderDetail.DeliveryType == tao_vegetable.OrderDeliveryTypeTime {
@@ -251,6 +245,20 @@ func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, par
return getAPI(vendorOrgCode, 0, vendorStoreID).DeliveryTrajectory(req)
}
func PushDelivererChangeInfo(order *model.GoodsOrder, bill *model.Waybill, deliveryType string) error {
param := &request591.AlibabaAelophyOrderDelivererChangeRequest{
DelivererChangeRequest: &domain591.AlibabaAelophyOrderDelivererChangeDelivererChangeRequest{
StoreId: utils.String2Pointer(order.VendorStoreID),
BizOrderId: utils.Int64ToPointer(utils.Str2Int64(order.VendorOrderID)),
DelivererName: utils.String2Pointer(bill.CourierName),
DelivererPhone: utils.String2Pointer(bill.CourierMobile),
DelivererCompany: nil,
LogisticsNo: utils.String2Pointer(bill.VendorWaybillID),
},
}
return getAPI(order.VendorOrgCode, 0, "").DelivererChange(param)
}
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
order, _, err = p.getOrder(vendorOrgCode, utils.Str2Int64(vendorOrderID), vendorStoreID)
return order, err
@@ -500,7 +508,6 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo
return err
}
if err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").DeliveryFinish(param); err != nil {
globals.SugarLogger.Debugf("PickupGoods 拣货失败可能是BizSubOrderId 没填写 : %s", err.Error())
return err
}
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp)
@@ -553,10 +560,7 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam
return err
}
if err = api.DeliveryFinish(param); err == nil {
paramDelivery, err := orderStatusChangeNotice(order, tao_vegetable.OrderStatusDelivery)
if err != nil {
return err
}
paramDelivery := OrderStatusChangeDelivery(order, tao_vegetable.OrderStatusDelivery)
// 开始配送
return api.DeliveryFinish(paramDelivery)
}
@@ -641,42 +645,61 @@ func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *mod
// CancelOrder 商户取消订单(取消订单全部商品)
func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
orderSkuList, err := getOrderCancelList(api, order)
if err != nil {
return err
}
outSubOrderIds := make([]string, 0, len(*orderSkuList.OutSubOrders))
for _, v := range *orderSkuList.OutSubOrders {
if *v.CanReverse {
outSubOrderIds = append(outSubOrderIds, *v.OutSubOrderId)
if order.Status < model.OrderStatusEndBegin {
// 发送取消状态,商户取消
err = api.DeliveryFinish(&request591.AlibabaAelophyOrderWorkCallbackRequest{
WorkCallbackRequest: &domain591.AlibabaAelophyOrderWorkCallbackWorkCallbackRequest{
StoreId: utils.String2Pointer(order.VendorStoreID),
BizOrderId: utils.Int64ToPointer(utils.Str2Int64(order.VendorOrderID)),
Status: utils.String2Pointer(tao_vegetable.OrderStatusMerchantCancel),
},
})
} else {
localSkuList, _ := dao.GetSimpleOrderSkus(dao.GetDB(), order.VendorOrderID, nil)
skuMap := make(map[string]*model.OrderSku, 0)
for _, v := range localSkuList {
skuMap[v.VendorSubOrderID] = v
}
orderSkuList, err := getOrderCancelList(api, order)
if err != nil {
return err
}
outSubOrderIds := make([]domain3156.AlibabaTclsAelophyRefundCsapplyNewCsApplySubOrderDTO, 0, len(*orderSkuList.OutSubOrders))
for _, v := range *orderSkuList.OutSubOrders {
if *v.CanReverse {
subOrder := domain3156.AlibabaTclsAelophyRefundCsapplyNewCsApplySubOrderDTO{
RefundFee: utils.String2Pointer(utils.Int64ToStr(*v.MaxRefundFee)),
RefundAmount: nil,
OutSubOrderId: v.OutSubOrderId,
}
if skuMap[*v.OutSubOrderId] != nil {
subOrder.RefundAmount = utils.String2Pointer(utils.Int2Str(skuMap[*v.OutSubOrderId].Count))
} else {
continue
}
outSubOrderIds = append(outSubOrderIds, subOrder)
}
}
reasonId := *orderSkuList.ReasonList
param := &request3156.AlibabaTclsAelophyRefundCsapplyNewRequest{
RefundCsApplyDTO: &domain3156.AlibabaTclsAelophyRefundCsapplyNewRefundCsApplyNewDTO{
ReasonId: reasonId[0].ReasonId,
OutOrderId: utils.String2Pointer(order.VendorOrderID2),
StoreId: utils.String2Pointer(order.VendorStoreID),
RequestId: utils.String2Pointer(fmt.Sprintf("%s%d", order.VendorStoreID, time.Now().UnixNano())),
Memo: utils.String2Pointer(reason),
SubRefundOrders: &outSubOrderIds,
RefundReason: utils.String2Pointer(reason),
OrderFrom: utils.Int64ToPointer(tao_vegetable.ChannelCome),
},
}
if err = api.PartialRefund(param); err == nil {
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusMerchantCancel, tao_vegetable.OrderStatusMerchantCancel)
}
}
reasonId := *orderSkuList.ReasonList
param := &request3156.AlibabaTclsAelophyRefundCsapplyRequest{
RefundCsApplyDTO: &domain3156.AlibabaTclsAelophyRefundCsapplyRefundCsApplyDto{
ReasonId: reasonId[0].ReasonId,
OutOrderId: utils.String2Pointer(order.VendorOrderID2),
StoreId: utils.String2Pointer(order.VendorStoreID),
RequestId: utils.String2Pointer(fmt.Sprintf("%s%d", order.VendorStoreID, time.Now().UnixNano())),
OutSubOrderIds: &outSubOrderIds,
Memo: utils.String2Pointer(reason),
},
}
if err = api.PartialRefund(param); err == nil {
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusMerchantCancel, tao_vegetable.OrderStatusMerchantCancel)
}
// 发送取消状态,商户取消
err = api.DeliveryFinish(&request591.AlibabaAelophyOrderWorkCallbackRequest{
WorkCallbackRequest: &domain591.AlibabaAelophyOrderWorkCallbackWorkCallbackRequest{
StoreId: utils.String2Pointer(order.VendorStoreID),
BizOrderId: utils.Int64ToPointer(utils.Str2Int64(order.VendorOrderID)),
Status: utils.String2Pointer(tao_vegetable.OrderStatusMerchantCancel),
},
})
return err
}
@@ -687,7 +710,6 @@ func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.Goods
func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList []*model.OrderSku, reason string) (err error) {
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
globals.SugarLogger.Debugf("removedSkuList := %s", utils.Format4Output(removedSkuList, false))
// 获取需要退货商品的子订单id
refundSkuOrderID := make(map[int]*model.OrderSku, 0)
for _, v := range removedSkuList {

View File

@@ -17,7 +17,6 @@ import (
"git.rosy.net.cn/jx-callback/business/partner"
"git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/api"
"strconv"
"time"
)
@@ -47,7 +46,6 @@ func (c *PurchaseHandler) isAfsMsg(orderStatus string, orderId string, orderCall
// RefundIds: &[]int64{utils.Str2Int64(success.BizSubRefundId)},
//}
//refundAfs, _ := getAPI("", 0, success.StoreId).QueryAfsOrderDetail(param)
//globals.SugarLogger.Debugf("==============refundAfs.Orders : %s", utils.Format4Output(refundAfs.Orders != nil, false))
//if refundAfs.Orders != nil {
// return true
//}
@@ -73,9 +71,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
var err error
var db = dao.GetDB()
orderStatus, scarceGoods := c.callbackAfsMsg2Status(status, msg)
globals.SugarLogger.Debugf("status := %s", status)
globals.SugarLogger.Debugf("orderStatus := %s", utils.Format4Output(orderStatus, false))
globals.SugarLogger.Debugf("scarceGoods := %s", utils.Format4Output(scarceGoods, false))
// 用户取消售后
switch status {
case tao_vegetable.OrderStatusApplyAfs:
@@ -287,8 +282,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
//直接就来一个新的售后单,并且还是售后完成的
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
afsOrder.Flag = model.AfsOrderFlagAgreeUserRefund
globals.SugarLogger.Debugf("==============onsaleRefund afsOrd: = %s", utils.Format4Output(afsOrder, false))
globals.SugarLogger.Debugf("==============onsaleRefund orderStatus: = %s", utils.Format4Output(orderStatus, false))
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
}
case tao_vegetable.OrderStatusRefundSuccess:
@@ -321,13 +314,8 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
for _, v := range *scarceGoods {
var refundFee int64 = 0
skuStr := *v.Attributes
str2, err := strconv.Unquote("\"" + skuStr + "\"")
if err != nil {
return tao_vegetable.CallBackResultInfo(err)
}
skuDetail := tao_vegetable.GoodsScarceRefund{}
if err := json.Unmarshal([]byte(str2), &skuDetail); err != nil {
if err := json.Unmarshal([]byte(*v.Attributes), &skuDetail); err != nil {
return tao_vegetable.CallBackResultInfo(err)
}
@@ -347,8 +335,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
afsOrder.SkuUserMoney += refundFee
afsOrder.RefundType = model.AfsTypePartRefund
globals.SugarLogger.Debugf("============OrderStatusRefundSuccess afsOrder: %s", utils.Format4Output(afsOrder, false))
globals.SugarLogger.Debugf("============OrderStatusRefundSuccess orderStatus: %s", utils.Format4Output(orderStatus, false))
if afsOrder != nil {
//直接就来一个新的售后单,并且还是售后完成的
afsOrder.AfsFinishedAt = afsOrder.AfsCreatedAt
@@ -435,26 +421,28 @@ func (c *PurchaseHandler) callbackAfsMsg2Status(status string, msg interface{})
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
orderStatus.VendorOrderID = refundData.OutMainRefundId
} else {
param := &request591.AlibabaWdkOrderRefundGetRequest{
OrderFrom: utils.Int64ToPointer(utils.Str2Int64(tao_vegetable.TaoVegetableChannelCode)),
ShopId: nil,
StoreId: utils.String2Pointer(refundData.StoreId),
RefundIds: &[]int64{utils.Str2Int64(refundData.BizSubRefundId)},
}
time.Sleep(time.Second * 1)
refundAfs, _ := getAPI("", 0, refundData.StoreId).QueryAfsOrderDetail(param)
if refundAfs.Orders == nil {
globals.SugarLogger.Debugf("================售中退款成功回调查询售后单为空:")
} else {
orders := *refundAfs.Orders
orderStatus.RefVendorOrderID = utils.Int64ToStr(*orders[0].OriginParentId)
orderStatus.VendorStatus = fmt.Sprintf("%s:%s", tao_vegetable.OrderStatusRefundSuccess, "用户售中退款成功")
orderStatus.Status = c.GetAfsStatusFromVendorStatus(tao_vegetable.OrderStatusRefundSuccess)
orderStatus.StatusTime = time.Now()
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
orderStatus.VendorOrderID = utils.Int64ToStr(*orders[0].RefundOrderId)
taoRefundList = refundAfs.Orders
var refundAfs *domain591.AlibabaWdkOrderRefundGetOrderSyncRefundListResult
for i := 0; i < 4; i++ {
param := &request591.AlibabaWdkOrderRefundGetRequest{
OrderFrom: utils.Int64ToPointer(utils.Str2Int64(tao_vegetable.TaoVegetableChannelCode)),
ShopId: nil,
StoreId: utils.String2Pointer(refundData.StoreId),
RefundIds: &[]int64{utils.Str2Int64(refundData.BizSubRefundId)},
}
refundAfs, _ = getAPI("", 0, refundData.StoreId).QueryAfsOrderDetail(param)
if refundAfs.Orders != nil {
break
}
time.Sleep(time.Second * 1)
}
orders := *refundAfs.Orders
orderStatus.RefVendorOrderID = utils.Int64ToStr(*orders[0].OriginParentId)
orderStatus.VendorStatus = fmt.Sprintf("%s:%s", tao_vegetable.OrderStatusRefundSuccess, "用户售中退款成功")
orderStatus.Status = c.GetAfsStatusFromVendorStatus(tao_vegetable.OrderStatusRefundSuccess)
orderStatus.StatusTime = time.Now()
orderStatus.Remark = fmt.Sprintf("QueryTaoAfsOrderId:%s", refundData.BizSubRefundId)
orderStatus.VendorOrderID = *orders[0].OutMianOrderId
taoRefundList = refundAfs.Orders
}
}

View File

@@ -63,20 +63,37 @@ func OrderStatusChangeDelivery(order *model.GoodsOrder, orderStatus string) *req
Status: utils.String2Pointer(orderStatus),
}
bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
storeDetail, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, model.VendorIDTaoVegetable, "")
if bill != nil {
if bill.CourierName == "" && bill.CourierMobile == "" {
storeDetail, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, model.VendorIDTaoVegetable, "")
param.WorkCallbackRequest.DelivererName = utils.String2Pointer("门店老板")
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(storeDetail.Tel1)
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSELF)
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(bill.VendorWaybillID)
} else {
param.WorkCallbackRequest.DelivererName = utils.String2Pointer(bill.CourierName)
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(bill.CourierMobile)
switch bill.WaybillVendorID {
case model.VendorIDDada:
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeDD)
case model.VendorIDFengNiao:
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeFN)
case model.VendorIDMTPS:
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeMT)
case model.VendorIDSFPS:
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSF)
default:
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeOther)
}
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(bill.VendorWaybillID)
}
}
if param.WorkCallbackRequest.DelivererName == nil || param.WorkCallbackRequest.DelivererPhone == nil {
param.WorkCallbackRequest.DelivererName = utils.String2Pointer("暂无")
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer("暂无")
param.WorkCallbackRequest.DelivererName = utils.String2Pointer(storeDetail.Tel1)
param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer("门店老板")
param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSELF)
param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(order.VendorOrderID + "_1")
}
return param

View File

@@ -41,19 +41,19 @@ var (
func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) {
switch funcID {
case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice:
batchSize = mtwmapi.MaxStoreSkuBatchSize
batchSize = 20
case partner.FuncDeleteStoreSkus:
batchSize = mtwmapi.MaxBatchDeleteSize
batchSize = 20
case partner.FuncCreateStoreSkus:
batchSize = 1 // 可考虑用批量操作
batchSize = 20 // 可考虑用批量操作
case partner.FuncUpdateStoreSkus:
batchSize = 1 // mtwmapi.MaxStoreSkuBatchSize
batchSize = 20 // mtwmapi.MaxStoreSkuBatchSize
case partner.FuncGetStoreSkusFullInfo:
batchSize = 1
batchSize = 20
case partner.FuncCreateActs:
batchSize = mtwmapi.MaxRetailDiscountCreateBatchSize
batchSize = 20
case partner.FuncCancelActs:
batchSize = mtwmapi.MaxRetailDiscountDeleteBatchSize
batchSize = 20
}
return batchSize
}
@@ -122,7 +122,6 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
Code: utils.String2Pointer(utils.Int2Str(storeCat.StoreCatID)),
Name: &storeCat.StoreCatName,
}})
globals.SugarLogger.Debugf("CreateStoreCategory=====err := %v", err)
if storeCat.CatSyncStatus&model.SyncFlagNewMask == 0 && p.IsErrCategoryNotExist(err) && storeCat.StoreCatName != "" { // 修改分类名,但分类不存在
storeCat.CatSyncStatus |= model.SyncFlagNewMask
createCategory := &request.AlibabaWdkSkuCategoryAddRequest{Param: &domain.AlibabaWdkSkuCategoryAddCategoryDo{
@@ -136,7 +135,6 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
}
skuCode, err := api.AddStoreCategoryInfo(createCategory)
globals.SugarLogger.Debugf("AddStoreCategoryInfo=====err := %v", err)
if err != nil {
return err
}
@@ -170,6 +168,11 @@ func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, storeID in
}
func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) {
// 668594 正式服印象汇 668469 测试服芬姐(淘宝所有门店公用分类) , 模板门店才能删除
if storeID != 668594 && storeID != 668469 {
return nil
}
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
// 只能删除叶子结点
// 看看这个level是不是代表子节点,感觉不是
@@ -202,12 +205,11 @@ func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
globals.SugarLogger.Debugf("UpdateStoreSkus=====err := %v", err)
globals.SugarLogger.Debugf("UpdateStoreSkus=====err := %v", failedList)
return failedList, err
}
func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
globals.SugarLogger.Debugf("len CreateStoreSkus := %d", len(storeSkuList))
failedList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, true)
return failedList, err
}
@@ -224,13 +226,9 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
api := getAPI(getStoreVendorOrgCode(storeID), storeID, vendorStoreID)
if isCreate {
failedList, err = createTaoVegetable(ctx, api, storeSkuList, vendorStoreID, storeID, syncType)
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%v", err)
} else {
failedList, err = UpdateTaoVegetable(api, storeSkuList, vendorStoreID, storeID, syncType)
globals.SugarLogger.Debugf("更新淘鲜达商品异常:%v", err)
}
globals.SugarLogger.Debugf("createOrUpdateStoreSkus=====err := %v", err)
globals.SugarLogger.Debugf("createOrUpdateStoreSkus=====err := %v", failedList)
return failedList, err
}
@@ -272,8 +270,6 @@ func UpdateTaoVegetable(api *tao_vegetable.API, storeSkuList []*dao.StoreSkuSync
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
}
}
globals.SugarLogger.Debugf("UpdateTaoVegetable=====err := %v", err)
globals.SugarLogger.Debugf("UpdateTaoVegetable=====err := %v", failedList)
return failedList, err
}
@@ -284,6 +280,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
totalCount := len(storeSkuList)
vendorSkuIdMap := make(map[string]string, 0)
globals.SugarLogger.Debugf("storeSkuList := %d", len(storeSkuList))
for index, storeSku := range storeSkuList {
price := utils.String2Pointer(utils.Float64ToStr(utils.Int64ToFloat64(storeSku.VendorPrice) / utils.Int64ToFloat64(100)))
sku := domain585.AlibabaWdkSkuAddSkuDo{
@@ -345,20 +342,6 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo)
sku.AvgWeight = utils.String2Pointer("1") // (重量)
sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量
//if storeSku.Upc == "" {
// //sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagYes)
// if storeSku.SpecUnit == "g" || storeSku.SpecUnit == "ml" || storeSku.SpecUnit == "G" || storeSku.SpecUnit == "ML" {
// sku.PreMinusWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // 一个售卖单位按多少库存单位扣款(钱)
// //sku.AvgWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // (重量)
// }
// if storeSku.SpecUnit == "kg" || storeSku.SpecUnit == "l" || storeSku.SpecUnit == "KG" || storeSku.SpecUnit == "L" {
// sku.PreMinusWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality))) // 每个购买单位重量,预扣重量
// //sku.AvgWeight = utils.String2Pointer(utils.Float64ToStr(float64(storeSku.SpecQuality) / float64(1000))) // (重量)
// }
//} else {
// //sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo)
// sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量
//}
sku.SkuSuppliers = &[]domain585.AlibabaWdkSkuAddSkuSupplierDo{
domain585.AlibabaWdkSkuAddSkuSupplierDo{
ReturnFlag: utils.Int64ToPointer(model.NO),
@@ -378,10 +361,10 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
}
param = append(param, sku)
if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount {
createPram.ParamList = &param
result, err := api.AddStoreSku(createPram)
globals.SugarLogger.Debugf("创建淘鲜达商品异常 result :%s", utils.Format4Output(result, false))
if err != nil {
globals.SugarLogger.Debugf("创建淘鲜达商品异常:%s", err.Error())
}
@@ -406,10 +389,6 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku
}
failedListStock := updateStoreSkusStockByCreate(ctx, api, storeID, vendorStoreID, successSku)
failedList = append(failedList, failedListStock...)
globals.SugarLogger.Debugf("storeSkuList=====err := %s", utils.Format4Output(storeSkuList, false))
globals.SugarLogger.Debugf("createTaoVegetable=====err := %v", err)
globals.SugarLogger.Debugf("createTaoVegetable=====err := %v", failedList)
return failedList, nil
}
@@ -466,8 +445,6 @@ func (p *PurchaseHandler) DeleteStoreSkus(ctx *jxcontext.Context, storeID int, v
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
}
}
globals.SugarLogger.Debugf("DeleteStoreSkus=====err := %v", err)
globals.SugarLogger.Debugf("DeleteStoreSkus=====err := %v", failedList)
return failedList, err
//param := &request.AlibabaAxChannelSkuStatusUpdateRequest{ChannelSkuUpdateStatusReq: &domain.AlibabaAxChannelSkuStatusUpdateChannelSkuUpdateStatusReq{
// StoreId: utils.String2Pointer(vendorStoreID),
@@ -520,8 +497,6 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
}
}
globals.SugarLogger.Debugf("UpdateStoreSkusStatus=====err := %v", err)
globals.SugarLogger.Debugf("UpdateStoreSkusStatus=====err := %v", failedList)
return failedList, err
}
@@ -554,8 +529,6 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
updateSkuList = make([]domain585.AlibabaWdkSkuUpdateSkuDo, 0, 0)
}
}
globals.SugarLogger.Debugf("UpdateStoreSkusPrice=====err := %v", err)
globals.SugarLogger.Debugf("UpdateStoreSkusPrice=====err := %v", failedList)
return failedList, err
}
@@ -625,8 +598,6 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
param.BatchStockPublishDto = nil
}
}
globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", err)
globals.SugarLogger.Debugf("UpdateStoreSkusStock=====err := %v", failedList)
return failedList, err
}