新接口合并订单

This commit is contained in:
苏尹岚
2020-08-31 11:44:43 +08:00
parent 6750c35ebd
commit 9fa65e15a1

View File

@@ -1388,51 +1388,47 @@ func MergeJdsOrders(ctx *jxcontext.Context, vendorOrderIDs []string) (vendorOrde
}
stores, _ := dao.GetStoreList(db, []int{storeID}, nil, nil, nil, "")
store := stores[0]
order := &model.GoodsOrder{
StoreID: storeID,
StoreName: store.Name,
VendorStoreID: storeMaps[0].VendorStoreID,
VendorOrderID: utils.Int64ToStr(utils.Str2Int64(orders[0].VendorOrderID2)*10000) + utils.Int2Str(99),
VendorOrderID2: strings.Join(orderIDs, ","),
Status: model.OrderStatusNew,
}
order := orders[0]
order.ID = 0
order.VendorOrderID = utils.Int64ToStr(utils.Str2Int64(orders[0].VendorOrderID2)*10000) + utils.Int2Str(99)
order.VendorOrderID2 = strings.Join(orderIDs, ",")
order.Status = model.OrderStatusNew
setJdsOrderSeq(order)
var (
opentime1 = jxutils.JxOperationTime2TimeByDate(store.OpenTime1, time.Now())
opentime2 = jxutils.JxOperationTime2TimeByDate(store.OpenTime2, time.Now())
closetime1 = jxutils.JxOperationTime2TimeByDate(store.CloseTime1, time.Now())
closetime2 = jxutils.JxOperationTime2TimeByDate(store.CloseTime2, time.Now())
orderCreatedAt = time.Now()
)
if store.OpenTime1 == 0 || store.CloseTime1 == 0 {
return "", fmt.Errorf("该门店没有营业时间,不能接单!门店:[%v]", storeID)
}
if !(orderCreatedAt.Sub(opentime1) >= 0 && orderCreatedAt.Sub(closetime1) <= 0) {
if store.OpenTime2 != 0 && store.CloseTime2 != 0 {
if !(orderCreatedAt.Sub(opentime2) >= 0 && orderCreatedAt.Sub(closetime2) <= 0) {
if order.BusinessType == model.BusinessTypeImmediate {
var (
opentime1 = jxutils.JxOperationTime2TimeByDate(store.OpenTime1, order.CreatedAt)
opentime2 = jxutils.JxOperationTime2TimeByDate(store.OpenTime2, order.CreatedAt)
closetime1 = jxutils.JxOperationTime2TimeByDate(store.CloseTime1, order.CreatedAt)
closetime2 = jxutils.JxOperationTime2TimeByDate(store.CloseTime2, order.CreatedAt)
orderCreatedAt = order.CreatedAt
)
if store.OpenTime1 == 0 || store.CloseTime1 == 0 {
return "", fmt.Errorf("该门店没有营业时间,不能接单!门店:[%v]", storeID)
}
if !(orderCreatedAt.Sub(opentime1) >= 0 && orderCreatedAt.Sub(closetime1) <= 0) {
if store.OpenTime2 != 0 && store.CloseTime2 != 0 {
if !(orderCreatedAt.Sub(opentime2) >= 0 && orderCreatedAt.Sub(closetime2) <= 0) {
if orderCreatedAt.Sub(opentime1) < 0 {
order.ExpectedDeliveredTime = opentime1
order.BusinessType = model.BusinessTypeDingshida
} else {
if orderCreatedAt.Sub(opentime2) < 0 {
order.ExpectedDeliveredTime = opentime2
} else {
order.ExpectedDeliveredTime = opentime1.AddDate(0, 0, 1)
}
order.BusinessType = model.BusinessTypeDingshida
}
}
} else {
if orderCreatedAt.Sub(opentime1) < 0 {
order.ExpectedDeliveredTime = opentime1
order.BusinessType = model.BusinessTypeDingshida
} else {
if orderCreatedAt.Sub(opentime2) < 0 {
order.ExpectedDeliveredTime = opentime2
} else {
order.ExpectedDeliveredTime = opentime1.AddDate(0, 0, 1)
}
order.BusinessType = model.BusinessTypeDingshida
order.ExpectedDeliveredTime = opentime1.AddDate(0, 0, 1)
}
order.BusinessType = model.BusinessTypeDingshida
}
} else {
if orderCreatedAt.Sub(opentime1) < 0 {
order.ExpectedDeliveredTime = opentime1
} else {
order.ExpectedDeliveredTime = opentime1.AddDate(0, 0, 1)
}
order.BusinessType = model.BusinessTypeDingshida
}
} else {
order.BusinessType = model.BusinessTypeImmediate
order.ExpectedDeliveredTime = time.Now().Add(time.Hour)
}
//结算类型
if store.PayPercentage < 50 {