This commit is contained in:
苏尹岚
2020-08-18 15:58:33 +08:00
parent 6d143beefc
commit 98f74c6ae9
2 changed files with 32 additions and 32 deletions

View File

@@ -1638,6 +1638,7 @@ func ChangeJxPriceByDiscountAct(ctx *jxcontext.Context) {
if _, err = dao.UpdateEntity(db, storeSku, "Stock"); err != nil {
dao.Rollback(db)
}
// dao.SetStoreSkuSyncStatus(db, model.VendorIDJD, []int{storeSku.StoreID}, []int{storeSku.SkuID}, model.SyncFlagStockMask)
}
}
dao.Commit(db)

View File

@@ -600,14 +600,14 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
sum int //申请物料的店的最近销量,以下会根据销量计算具体袋子的价格
flag = false //新店袋子拆分当个参数
)
if fromStoreID != 0 && fromStoreID != -1 {
result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID)
sum = result.Count
}
// if jxOrder.OrderType == model.OrderTypeMatter && fromStoreID != -1 {
// if fromStoreID != 0 && fromStoreID != -1 {
// result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID)
// sum = result.Count
// }
if jxOrder.OrderType == model.OrderTypeMatter && fromStoreID != -1 {
result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID)
sum = result.Count
}
if jxOrder.Weight == 0 {
for _, v := range jxOrder.Skus {
v.Weight = storeSkuMap[v.SkuID].Weight
@@ -616,16 +616,16 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
for _, v := range skus {
if storeSkuBind := storeSkuMap[v.SkuID]; storeSkuBind != nil {
if fromStoreID != 0 {
// if jxOrder.OrderType == model.OrderTypeMatter {
// if fromStoreID != 0 {
if jxOrder.OrderType == model.OrderTypeMatter {
result2, _ := api.JdEclpAPI.QueryStock(storeSkuBind.EclpID)
if len(result2) > 0 {
if result2[0].UsableNum < v.Count {
return nil, nil, fmt.Errorf("此商品库存不足无法购买请联系管理员skuID:[%v]", v.SkuID)
}
}
// }
}
// }
if sku := skuMap[v.SkuID]; sku != nil {
jxSku := &JxSkuInfo{
SkuID: v.SkuID,
@@ -656,8 +656,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
}
if jxSku != nil {
if fromStoreID == 0 || fromStoreID == -1 {
// if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) {
// if fromStoreID == 0 || fromStoreID == -1 {
if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) {
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
} else { //以下else为物料订单袋子金额和数量处理
@@ -774,19 +774,19 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
return nil, nil, fmt.Errorf("fromStoreID有误,[%v]", fromStoreID)
}
outJxOrder.FromStoreID = fromStoreID
// if jxOrder.OrderType == model.OrderTypeMatter {
//TODO 修改配送费规则2020-04-28
//3kg 5元每多1kg加2元
//配送费要按分包规则计算
if outJxOrder.Weight <= 3000 {
outJxOrder.FreightPrice = 500
} else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight {
outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200)
} else {
_, freightPrice, _ := tryToSplitMatterOrder(jxOrder)
outJxOrder.FreightPrice = freightPrice
if jxOrder.OrderType == model.OrderTypeMatter {
//TODO 修改配送费规则2020-04-28
//3kg 5元每多1kg加2元
//配送费要按分包规则计算
if outJxOrder.Weight <= 3000 {
outJxOrder.FreightPrice = 500
} else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight {
outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200)
} else {
_, freightPrice, _ := tryToSplitMatterOrder(jxOrder)
outJxOrder.FreightPrice = freightPrice
}
}
// }
//要求配送人姓名填门店名
if fromStoreID != -1 {
deliveryAddress.ConsigneeName = storeDetail2.Name
@@ -905,10 +905,10 @@ func jxOrder2GoodsOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, deliveryAd
order.FromStoreID = jxOrder.FromStoreID
order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled
order.Flag = 1
// if jxOrder.OrderType == model.OrderTypeMatter {
order.WaybillVendorID = model.VendorIDJDWL
order.ConsigneeAddress = deliveryAddress.Address
// }
if jxOrder.OrderType == model.OrderTypeMatter {
order.WaybillVendorID = model.VendorIDJDWL
order.ConsigneeAddress = deliveryAddress.Address
}
}
//如果是自提单就设置
if IsDeliverySelf {
@@ -942,9 +942,9 @@ func PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string)
}
func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) {
if order.FromStoreID != 0 {
err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "")
// if order.OrderType == model.OrderTypeMatter {
// if order.FromStoreID != 0 {
err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "")
if order.OrderType == model.OrderTypeMatter {
var (
db = dao.GetDB()
)
@@ -1127,8 +1127,8 @@ func CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string)
}
func CancelMatterOrder(db *dao.DaoDB, order *model.GoodsOrder, reason string) (err error) {
if order.FromStoreID != 0 {
// if order.OrderType == model.OrderTypeMatter {
// if order.FromStoreID != 0 {
if order.OrderType == model.OrderTypeMatter {
if order.EclpOutID != "" {
//表示是京西的物料订单的子订单(拆分后的订单)
if len(order.VendorOrderID) == 16 && order.VendorID == model.VendorIDJX {
@@ -1901,7 +1901,6 @@ func CreateOrderByPriceDefend(ctx *jxcontext.Context) {
if _, err := CreateOrder(ctx, jxOrder, v.AddressID, OrderCreateTypeNormal, 0, false); err == nil {
err = SettleDiscountActByPriceDefend(ctx, v)
}
// dao.GetStoresSkusInfo(db, []int{v.StoreID}, []int{v.SkuID})
}
}