This commit is contained in:
邹宗楠
2023-03-29 13:47:27 +08:00
parent 837f86f7bd
commit 3d72db5318
2 changed files with 18 additions and 3 deletions

View File

@@ -3,6 +3,7 @@ package localjx
import ( import (
"errors" "errors"
"fmt" "fmt"
"git.rosy.net.cn/jx-callback/globals"
"math" "math"
"regexp" "regexp"
"strings" "strings"
@@ -227,10 +228,14 @@ func GetMyOrderCountInfo(ctx *jxcontext.Context, fromDate, toDate time.Time, sta
//fromStoreID 在后面 generateOrder中有用 //fromStoreID 在后面 generateOrder中有用
//IsAuto 是否是守价结算而自动创建的守价订单 //IsAuto 是否是守价结算而自动创建的守价订单
func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, createType int, fromStoreID int, IsDeliverySelf bool, couponIDs []int) (outJxOrder *JxOrderInfo, err error) { func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, createType int, fromStoreID int, IsDeliverySelf bool, couponIDs []int) (outJxOrder *JxOrderInfo, err error) {
globals.SugarLogger.Debugf("CreateOrder jxOrder %s", utils.Format4Output(jxOrder, false))
outJxOrder, deliveryAddress, err := generateOrder(ctx, jxOrder, addressID, fromStoreID, "", IsDeliverySelf, couponIDs) outJxOrder, deliveryAddress, err := generateOrder(ctx, jxOrder, addressID, fromStoreID, "", IsDeliverySelf, couponIDs)
if err != nil { if err != nil {
return nil, err return nil, err
} }
globals.SugarLogger.Debugf("outJxOrder outJxOrder %s", utils.Format4Output(outJxOrder, false))
globals.SugarLogger.Debugf("deliveryAddress deliveryAddress %s", utils.Format4Output(deliveryAddress, false))
if jxOrder.OrderType == model.OrderTypeMatter { if jxOrder.OrderType == model.OrderTypeMatter {
checkMatterDeliveryAddress(deliveryAddress) checkMatterDeliveryAddress(deliveryAddress)
} }
@@ -254,6 +259,8 @@ func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64,
outJxOrder.OrderID = jxutils.GenOrderNo() outJxOrder.OrderID = jxutils.GenOrderNo()
} }
order, err2 := jxOrder2GoodsOrder(ctx, outJxOrder, deliveryAddress, "", IsDeliverySelf, couponIDs) order, err2 := jxOrder2GoodsOrder(ctx, outJxOrder, deliveryAddress, "", IsDeliverySelf, couponIDs)
globals.SugarLogger.Debugf("order order %s", utils.Format4Output(order, false))
if err = err2; err == nil { if err = err2; err == nil {
order.AddressID = addressID order.AddressID = addressID
if jxOrder.IsPriceDefend == model.YES { if jxOrder.IsPriceDefend == model.YES {
@@ -838,7 +845,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) { if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) {
outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
} else { //以下else为物料订单袋子金额和数量处理 } else { //以下else为物料订单袋子金额和数量处理
if !result.Flag { //只要flag是false就按原价申请是true再按订单量 if !result.Flag { //只要flag是false就按原价申请是true再按订单量
outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice

View File

@@ -1,11 +1,13 @@
package controllers package controllers
import ( import (
"errors"
"git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/model/dao"
"git.rosy.net.cn/jx-callback/business/partner/purchase/jx/localjx" "git.rosy.net.cn/jx-callback/business/partner/purchase/jx/localjx"
"git.rosy.net.cn/jx-callback/globals"
"github.com/astaxie/beego/server/web" "github.com/astaxie/beego/server/web"
) )
@@ -89,7 +91,7 @@ func (c *JxOrderController) Pay4StoreMyselfDeliverOrder() {
FreightPrice: 0, FreightPrice: 0,
OrderPrice: int64(params.PayMoney), OrderPrice: int64(params.PayMoney),
ActualPayPrice: int64(params.PayMoney), ActualPayPrice: int64(params.PayMoney),
OrderID: 0, OrderID: jxutils.GenOrderNo(),
StoreName: orderDetail.Name, StoreName: orderDetail.Name,
Weight: 500, Weight: 500,
FromStoreID: 0, FromStoreID: 0,
@@ -101,11 +103,17 @@ func (c *JxOrderController) Pay4StoreMyselfDeliverOrder() {
UserID: params.Ctx.GetUserID(), UserID: params.Ctx.GetUserID(),
} }
outJxOrder, err := localjx.CreateOrder(params.Ctx, jxOrder, int64(142), 1, 0, true, nil) outJxOrder, err := localjx.CreateOrder(params.Ctx, jxOrder, int64(142), 1, 0, true, nil)
globals.SugarLogger.Debugf("outJxOrder := %s", utils.Format4Output(outJxOrder, false))
if err != nil { if err != nil {
globals.SugarLogger.Debugf(" localjx.CreateOrder err := %s", utils.Format4Output(err, false))
return nil, "", err return nil, "", err
} }
if outJxOrder.OrderID == 0 {
return nil, "", errors.New("orderId 不能为空")
}
retVal, err := localjx.Pay4Order(params.Ctx, outJxOrder.OrderID, params.PayType, params.VendorPayType, params.SubAppID) retVal, err := localjx.Pay4Order(params.Ctx, outJxOrder.OrderID, params.PayType, params.VendorPayType, params.SubAppID)
globals.SugarLogger.Debugf("retVal :=========%s", utils.Format4Output(retVal, false))
globals.SugarLogger.Debugf("errrrr :=========%s", utils.Format4Output(err, false))
return retVal, "", err return retVal, "", err
}) })
} }