From b769147e2cc1361d5c6dc47225578545d7755a93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 12 Jan 2021 11:37:29 +0800 Subject: [PATCH] aa --- business/partner/purchase/jx/localjx/order.go | 14 +++++++------- controllers/jx_order2.go | 6 +++++- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index e42abd562..368c16134 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -226,8 +226,8 @@ func GetMyOrderCountInfo(ctx *jxcontext.Context, fromDate, toDate time.Time, sta //fromStoreID 为-1 表示也是物料订单,但是不是门店申请,是个人申请的 //fromStoreID 在后面 generateOrder中有用 //IsAuto 是否是守价结算而自动创建的守价订单 -func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, createType int, fromStoreID int, IsDeliverySelf bool) (outJxOrder *JxOrderInfo, err error) { - outJxOrder, deliveryAddress, err := generateOrder(ctx, jxOrder, addressID, fromStoreID, "", IsDeliverySelf) +func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, createType int, fromStoreID int, IsDeliverySelf bool, couponIDs []int) (outJxOrder *JxOrderInfo, err error) { + outJxOrder, deliveryAddress, err := generateOrder(ctx, jxOrder, addressID, fromStoreID, "", IsDeliverySelf, couponIDs) if err != nil { return nil, err } @@ -584,7 +584,7 @@ func isTimeInOpTime(openTime1, closeTime1, openTime2, closeTime2 int16, time2Che return false } -func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, fromStoreID int, userID string, IsDeliverySelf bool) (outJxOrder *JxOrderInfo, deliveryAddress *dao.UserDeliveryAddressEx, err error) { +func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, fromStoreID int, userID string, IsDeliverySelf bool, couponIDs []int) (outJxOrder *JxOrderInfo, deliveryAddress *dao.UserDeliveryAddressEx, err error) { db := dao.GetDB() if jxOrder.StoreID == 0 { return nil, nil, fmt.Errorf("没有指定门店信息") @@ -1183,7 +1183,7 @@ func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) { for k, v := range outOrders { v.OrderType = model.OrderTypeMatter v.FromStoreID = order.FromStoreID - outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, v, order.AddressID, order.FromStoreID, order.UserID, false) + outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, v, order.AddressID, order.FromStoreID, order.UserID, false, nil) if err != nil { return err } @@ -2000,7 +2000,7 @@ func SendFailedMatterOrder(ctx *jxcontext.Context, vendorOrderID string) (err er } func createMatterOrder(jxOrder *JxOrderInfo, order *model.GoodsOrder, newOrderIDSuffix int64) (order2 *model.GoodsOrder, err error) { - outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, jxOrder, order.AddressID, order.FromStoreID, order.UserID, false) + outJxOrder, deliveryAddress, err := generateOrder(jxcontext.AdminCtx, jxOrder, order.AddressID, order.FromStoreID, order.UserID, false, nil) if err != nil { return nil, err } @@ -2073,7 +2073,7 @@ func CreateOrderByPriceDefend(ctx *jxcontext.Context) (err error) { OrderID: utils.Str2Int64(vv[0].VendorOrderID), UserID: address.UserID, } - if _, err := CreateOrder(ctx, jxOrder, kk, OrderCreateTypeNormal, 0, false); err == nil { + if _, err := CreateOrder(ctx, jxOrder, kk, OrderCreateTypeNormal, 0, false, nil); err == nil { err = SettleDiscountActByPriceDefend(ctx, vv[0], false) } } else { @@ -2099,7 +2099,7 @@ func CreateOrderByPriceDefend(ctx *jxcontext.Context) (err error) { } jxOrder.Skus = skus jxOrder.OrderID2 = strings.Join(orderIDs, ",") - if _, err := CreateOrder(ctx, jxOrder, kk, OrderCreateTypeNormal, 0, false); err == nil { + if _, err := CreateOrder(ctx, jxOrder, kk, OrderCreateTypeNormal, 0, false, nil); err == nil { } } } diff --git a/controllers/jx_order2.go b/controllers/jx_order2.go index ecbc7e904..30c84bf29 100644 --- a/controllers/jx_order2.go +++ b/controllers/jx_order2.go @@ -18,6 +18,7 @@ type JxOrderController struct { // @Param jxOrder formData string true "订单信息" // @Param addressID formData int64 true "配送地址ID" // @Param fromStoreID formData int fasle "物料配送门店" +// @Param couponIDs formData string fasle "优惠券IDs" // @Param createType formData int false "创建类型, 0:预创建, 1:创建" // @Param isDeliverySelf formData bool false "是否是自提单" // @Success 200 {object} controllers.CallResult @@ -27,7 +28,10 @@ func (c *JxOrderController) CreateOrder() { c.callCreateOrder(func(params *tJxorderCreateOrderParams) (retVal interface{}, errCode string, err error) { var jxOrder *localjx.JxOrderInfo if err = utils.UnmarshalUseNumber([]byte(params.JxOrder), &jxOrder); err == nil { - retVal, err = localjx.CreateOrder(params.Ctx, jxOrder, int64(params.AddressID), params.CreateType, params.FromStoreID, params.IsDeliverySelf) + var couponIDs []int + if err = jxutils.Strings2Objs(params.CouponIDs, &couponIDs); err == nil { + retVal, err = localjx.CreateOrder(params.Ctx, jxOrder, int64(params.AddressID), params.CreateType, params.FromStoreID, params.IsDeliverySelf, couponIDs) + } } return retVal, "", err })