可售数一半
This commit is contained in:
@@ -118,7 +118,6 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
|
|||||||
order.ConsigneeLat = jxutils.StandardCoordinate2Int(lat)
|
order.ConsigneeLat = jxutils.StandardCoordinate2Int(lat)
|
||||||
order.CoordinateType = model.CoordinateTypeMars
|
order.CoordinateType = model.CoordinateTypeMars
|
||||||
}
|
}
|
||||||
var skuIDs []int
|
|
||||||
for _, v := range msg.ItemInfoList {
|
for _, v := range msg.ItemInfoList {
|
||||||
sku := &model.OrderSku{
|
sku := &model.OrderSku{
|
||||||
VendorID: model.VendorIDJDShop,
|
VendorID: model.VendorIDJDShop,
|
||||||
@@ -136,7 +135,6 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
|
|||||||
_, _, _, specUnit, _, specQuality := jxutils.SplitSkuName(v.SkuName)
|
_, _, _, specUnit, _, specQuality := jxutils.SplitSkuName(v.SkuName)
|
||||||
sku.Weight = jxutils.FormatSkuWeight(specQuality, specUnit)
|
sku.Weight = jxutils.FormatSkuWeight(specQuality, specUnit)
|
||||||
order.Skus = append(order.Skus, sku)
|
order.Skus = append(order.Skus, sku)
|
||||||
skuIDs = append(skuIDs, sku.SkuID)
|
|
||||||
}
|
}
|
||||||
storeList, err := common.GetStoreListByLocation(jxcontext.AdminCtx, jxutils.IntCoordinate2Standard(order.ConsigneeLng), jxutils.IntCoordinate2Standard(order.ConsigneeLat), 3000, false, true)
|
storeList, err := common.GetStoreListByLocation(jxcontext.AdminCtx, jxutils.IntCoordinate2Standard(order.ConsigneeLng), jxutils.IntCoordinate2Standard(order.ConsigneeLat), 3000, false, true)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -158,27 +156,38 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
|
|||||||
order.EarningType = model.EarningTypeQuote
|
order.EarningType = model.EarningTypeQuote
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if order.EarningType == model.EarningTypeQuote {
|
var (
|
||||||
var shopPriceSum int
|
shopPriceSum int
|
||||||
storeSkuList, _ := dao.GetStoresSkusInfo(dao.GetDB(), []int{order.StoreID}, skuIDs)
|
saleNormalSum int
|
||||||
for _, storeSku := range storeSkuList {
|
)
|
||||||
shopPriceSum += storeSku.Price
|
for _, sku := range order.Skus {
|
||||||
|
storeSkuList, _ := dao.GetStoresSkusInfo(dao.GetDB(), []int{order.StoreID}, []int{sku.SkuID})
|
||||||
|
if len(storeSkuList) > 0 && storeSkuList[0].Status == model.StoreSkuBindStatusNormal {
|
||||||
|
saleNormalSum += 1
|
||||||
|
shopPriceSum += storeSkuList[0].Price
|
||||||
}
|
}
|
||||||
if shopPriceSum+700 > int(order.TotalShopMoney) {
|
}
|
||||||
order.StoreID = 102919
|
//可售数小于一半就不行
|
||||||
order.JxStoreID = 102919
|
if math.Mod(float64(len(order.Skus)), float64(2)) == 0 {
|
||||||
order.StoreName = "商城模板(成都发货)"
|
if saleNormalSum < len(order.Skus)/2 {
|
||||||
order.VendorStoreID = model.JdShopMainVendorStoreID
|
buildOrderTo102919(order)
|
||||||
order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled
|
} else {
|
||||||
|
if order.EarningType == model.EarningTypeQuote && shopPriceSum+700 > int(order.TotalShopMoney) {
|
||||||
|
buildOrderTo102919(order)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if saleNormalSum <= len(order.Skus)/2 {
|
||||||
|
buildOrderTo102919(order)
|
||||||
|
} else {
|
||||||
|
if order.EarningType == model.EarningTypeQuote && shopPriceSum+700 > int(order.TotalShopMoney) {
|
||||||
|
buildOrderTo102919(order)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
order.StoreID = 102919
|
buildOrderTo102919(order)
|
||||||
order.JxStoreID = 102919
|
|
||||||
order.StoreName = "商城模板(成都发货)"
|
|
||||||
order.VendorStoreID = model.JdShopMainVendorStoreID
|
|
||||||
order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled
|
|
||||||
}
|
}
|
||||||
storeMaps, _ := dao.GetStoresMapList(dao.GetDB(), []int{model.VendorIDJDShop}, []int{order.StoreID}, nil, model.StoreStatusAll, model.StoreIsSyncAll, "", "")
|
storeMaps, _ := dao.GetStoresMapList(dao.GetDB(), []int{model.VendorIDJDShop}, []int{order.StoreID}, nil, model.StoreStatusAll, model.StoreIsSyncAll, "", "")
|
||||||
if len(storeMaps) > 0 {
|
if len(storeMaps) > 0 {
|
||||||
@@ -198,18 +207,24 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
|
|||||||
globals.SugarLogger.Debugf("暂不支持的京东商城订单类型!type: %v", msg.OrderState)
|
globals.SugarLogger.Debugf("暂不支持的京东商城订单类型!type: %v", msg.OrderState)
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if msg.IDSopShipmenttype == jdshopapi.IdSopShipmenttypeTC {
|
if msg.IDSopShipmenttype == jdshopapi.IdSopShipmenttypeTC {
|
||||||
if time, err := api.JdShopAPI.GetOrderExtInfoByOrderId(order.VendorOrderID2); err == nil {
|
if time, err := api.JdShopAPI.GetOrderExtInfoByOrderId(order.VendorOrderID2); err == nil {
|
||||||
order.BusinessType = model.BusinessTypeDingshida
|
order.BusinessType = model.BusinessTypeDingshida
|
||||||
order.ExpectedDeliveredTime = utils.Str2Time(time)
|
order.ExpectedDeliveredTime = utils.Str2Time(time)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
setJdsOrderSeq(order)
|
setJdsOrderSeq(order)
|
||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func buildOrderTo102919(order *model.GoodsOrder) {
|
||||||
|
order.StoreID = 102919
|
||||||
|
order.JxStoreID = 102919
|
||||||
|
order.StoreName = "商城模板(成都发货)"
|
||||||
|
order.VendorStoreID = model.JdShopMainVendorStoreID
|
||||||
|
order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled
|
||||||
|
}
|
||||||
|
|
||||||
func setJdsOrderSeq(order *model.GoodsOrder) (err error) {
|
func setJdsOrderSeq(order *model.GoodsOrder) (err error) {
|
||||||
type tCount struct {
|
type tCount struct {
|
||||||
Count int `json:"count"`
|
Count int `json:"count"`
|
||||||
|
|||||||
Reference in New Issue
Block a user