新增字段

This commit is contained in:
苏尹岚
2020-08-14 13:56:02 +08:00
parent f450b18b3e
commit e32274a31b
2 changed files with 47 additions and 11 deletions

View File

@@ -106,12 +106,13 @@ type JxOrderInfo struct {
OrderPrice int64 `json:"orderPrice"` // 单位为分 订单商品价格
ActualPayPrice int64 `json:"actualPayPrice"` // 单位为分 顾客实际支付
OrderID int64 `json:"orderID"`
StoreName string `json:"storeName"`
Weight int `json:"weight"`
FromStoreID int `json:"fromStoreID"`
EarningType int `json:"earningType"`
OrderType int `json:"orderType"`
OrderID int64 `json:"orderID"`
StoreName string `json:"storeName"`
Weight int `json:"weight"`
FromStoreID int `json:"fromStoreID"`
EarningType int `json:"earningType"`
OrderType int `json:"orderType"`
IsBuyNowPrice int `json:"isBuyNowPrice"`
}
type DeliveryTimeItem struct {
@@ -230,7 +231,14 @@ func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64,
if fromStoreID != 0 {
checkMatterDeliveryAddress(deliveryAddress)
}
if createType != OrderCreateTypePre {
if createType == OrderCreateTypePre {
if jxOrder.OrderType == model.OrderTypeDefendPrice {
buildDefendPriceOrder(ctx, jxOrder, addressID)
}
} else {
if jxOrder.OrderType == model.OrderTypeDefendPrice {
return
}
if outJxOrder.TotalPrice != jxOrder.TotalPrice {
return nil, fmt.Errorf("商品或配送信息发生改变,请重新下单")
}
@@ -245,6 +253,31 @@ func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64,
return outJxOrder, err
}
func buildDefendPriceOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64) {
var (
issue = 0
db = dao.GetDB()
)
//属于下一期
if time.Now().Hour() >= 22 {
issue = utils.Str2Int(time.Now().AddDate(0, 0, 1).Format("20060102"))
} else {
issue = utils.Str2Int(time.Now().Format("20060102"))
}
priceDefendOrder := &model.PriceDefendOrder{
VendorOrderID: utils.Int64ToStr(GenOrderNo(ctx)),
StoreID: jxOrder.StoreID,
SkuID: jxOrder.Skus[0].SkuID,
AddressID: addressID,
Count: jxOrder.Skus[0].Count,
DefendPrice: jxOrder.Skus[0].Price,
IsBuyNowPrice: jxOrder.IsBuyNowPrice,
Issue: issue,
}
priceDefendOrder.ActualPayPrice = int64(priceDefendOrder.Count) * priceDefendOrder.DefendPrice
dao.CreateEntity(db, &priceDefendOrder)
}
// 买家取消(或申请取消)订单
func BuyerCancelOrder(ctx *jxcontext.Context, orderID int64, reason string) (canceled bool, err error) {
order, err := partner.CurOrderManager.LoadOrder(utils.Int64ToStr(orderID), model.VendorIDJX)