refactor: 收益

master
howell 3 years ago
parent 6d1a01c814
commit cd2289734c

@ -4,7 +4,6 @@ import (
"fmt"
"recook/internal/back"
"recook/internal/dbc"
"recook/internal/define"
"recook/internal/model/goods"
"recook/internal/v2/lib/es"
ac2 "recook/internal/v2/model/jyy"
@ -272,29 +271,28 @@ func GetGoodsRespByInfoList(goodsList []goods.Information, userID uint, isSale b
inventory := ss.Inventory
salesVolume := ss.SalesVolume + ss.SalesVolumeInc
commission := ss.Commission
commission := ss.GetSelfProfit(u.Level)
tags := make([]string, 0)
rate1 := decimal.Zero
rate2 := decimal.Zero
rate3 := decimal.Zero
if u.Level == 1 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
}
if u.Level == 2 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
rate3 = decimal.NewFromFloat(0.2)
}
base := ss.GetBase()
commission1 := base.Mul(rate1).Round(2)
commission2 := base.Mul(rate2).Round(2)
commission3 := base.Mul(rate3).Round(2)
commission = commission1.Add(commission2).Add(commission3)
if u.Level == 10 {
commission = ss.DiscountPrice.Sub(ss.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient))
}
//rate1 := decimal.Zero
//rate2 := decimal.Zero
//rate3 := decimal.Zero
//if u.Level == 1 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
//}
//if u.Level == 2 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
// rate3 = decimal.NewFromFloat(0.2)
//}
//base := ss.GetBase()
//commission1 := base.Mul(rate1).Round(2)
//commission2 := base.Mul(rate2).Round(2)
//commission3 := base.Mul(rate3).Round(2)
//commission = commission1.Add(commission2).Add(commission3)
//if u.Level == 10 {
// commission = ss.DiscountPrice.Sub(ss.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient))
//}
recookGoodsInfoModel := &goods2.RecookGoodsInfoModel{}
space := " "
@ -336,92 +334,92 @@ type live struct {
RoomId int `json:"room_id"`
}
func GetGoodsRespBySkuList(skuList []goods.Sku, uid uint, isSale bool) []QueryCategoryGoodsListResp {
list := make([]QueryCategoryGoodsListResp, 0, 0)
var u user.RecookUserInfoModel
mysql2.Db.First(&u, "id = ?", uid)
rate1 := decimal.Zero
rate2 := decimal.Zero
rate3 := decimal.Zero
if u.Level == 1 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
}
if u.Level == 2 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
rate3 = decimal.NewFromFloat32(0.2)
}
for _, v := range skuList {
var mainPhoto goods.MainPhoto
dbc.DB.Select("url").First(&mainPhoto, "goods_id = ? AND is_master = 1", v.GoodsID)
var goodsInfo goods.Information
dbc.DB.First(&goodsInfo, v.GoodsID)
if !isSale && goodsInfo.PublishStatus == 0 {
continue
}
if isSale && goodsInfo.SalePublish == 0 {
continue
}
gb := goods.Brand{}
dbc.DB.First(&gb, "id = ?", goodsInfo.BrandID)
var inventory uint
//var percent uint
var startTime = formatime.Second{}
var endTime = formatime.Second{}
salesVolume := v.SalesVolume + v.SalesVolumeInc
discountPrice := v.DiscountPrice
commission := v.Commission
inventory = v.Inventory //sku库存
base := v.GetBase()
commission1 := base.Mul(rate1).Round(2)
commission2 := base.Mul(rate2).Round(2)
commission3 := base.Mul(rate3).Round(2)
fmt.Println(commission1, commission2, commission3, base, v.PurchasePrice, v.DiscountPrice)
commission = commission1.Add(commission2).Add(commission3)
if u.Level == 10 {
commission = v.DiscountPrice.Sub(v.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
}
recookGoodsInfoModel := &goods2.RecookGoodsInfoModel{}
list = append(list, QueryCategoryGoodsListResp{
ID: v.GoodsID,
GoodsName: goodsInfo.GoodsName,
BrandImg: gb.LogoURL,
BrandName: gb.Name + "品牌馆",
BrandId: gb.ID,
Description: goodsInfo.Description,
Inventory: inventory,
SalesVolume: salesVolume,
MainPhotoURL: mainPhoto.URL,
PromotionName: "",
OriginalPrice: v.OriginalPrice,
DiscountPrice: discountPrice,
Commission: commission,
Percent: 0, //百分比,-1不显示
StartTime: startTime,
EndTime: endTime,
Coupon: v.Coupon,
IsImport: goodsInfo.IsImport,
Storehouse: goodsInfo.Storehouse,
IsFerme: goodsInfo.IsFerme,
HasCoin: recookGoodsInfoModel.HasCoin(goodsInfo.Storehouse),
HasBalance: recookGoodsInfoModel.HasBalance(goodsInfo.Storehouse),
GysId: goodsInfo.VendorID,
CountryIcon: "",
SalePrice: v.GetSalePrice(u.Level),
})
}
return list
}
//func GetGoodsRespBySkuList(skuList []goods.Sku, uid uint, isSale bool) []QueryCategoryGoodsListResp {
// list := make([]QueryCategoryGoodsListResp, 0, 0)
// var u user.RecookUserInfoModel
// mysql2.Db.First(&u, "id = ?", uid)
//
// rate1 := decimal.Zero
// rate2 := decimal.Zero
// rate3 := decimal.Zero
// if u.Level == 1 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
// }
// if u.Level == 2 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
// rate3 = decimal.NewFromFloat32(0.2)
// }
//
// for _, v := range skuList {
// var mainPhoto goods.MainPhoto
// dbc.DB.Select("url").First(&mainPhoto, "goods_id = ? AND is_master = 1", v.GoodsID)
//
// var goodsInfo goods.Information
// dbc.DB.First(&goodsInfo, v.GoodsID)
// if !isSale && goodsInfo.PublishStatus == 0 {
// continue
// }
// if isSale && goodsInfo.SalePublish == 0 {
// continue
// }
// gb := goods.Brand{}
// dbc.DB.First(&gb, "id = ?", goodsInfo.BrandID)
//
// var inventory uint
// //var percent uint
//
// var startTime = formatime.Second{}
// var endTime = formatime.Second{}
//
// salesVolume := v.SalesVolume + v.SalesVolumeInc
// discountPrice := v.DiscountPrice
// commission := v.Commission
// inventory = v.Inventory //sku库存
//
// base := v.GetBase()
// commission1 := base.Mul(rate1).Round(2)
// commission2 := base.Mul(rate2).Round(2)
// commission3 := base.Mul(rate3).Round(2)
// fmt.Println(commission1, commission2, commission3, base, v.PurchasePrice, v.DiscountPrice)
// commission = commission1.Add(commission2).Add(commission3)
//
// if u.Level == 10 {
// commission = v.DiscountPrice.Sub(v.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
// }
//
// recookGoodsInfoModel := &goods2.RecookGoodsInfoModel{}
// list = append(list, QueryCategoryGoodsListResp{
// ID: v.GoodsID,
// GoodsName: goodsInfo.GoodsName,
// BrandImg: gb.LogoURL,
// BrandName: gb.Name + "品牌馆",
// BrandId: gb.ID,
// Description: goodsInfo.Description,
// Inventory: inventory,
// SalesVolume: salesVolume,
// MainPhotoURL: mainPhoto.URL,
// PromotionName: "",
// OriginalPrice: v.OriginalPrice,
// DiscountPrice: discountPrice,
// Commission: commission,
// Percent: 0, //百分比,-1不显示
// StartTime: startTime,
// EndTime: endTime,
// Coupon: v.Coupon,
// IsImport: goodsInfo.IsImport,
// Storehouse: goodsInfo.Storehouse,
// IsFerme: goodsInfo.IsFerme,
// HasCoin: recookGoodsInfoModel.HasCoin(goodsInfo.Storehouse),
// HasBalance: recookGoodsInfoModel.HasBalance(goodsInfo.Storehouse),
// GysId: goodsInfo.VendorID,
// CountryIcon: "",
// SalePrice: v.GetSalePrice(u.Level),
// })
// }
// return list
//}
func GetListByLive(goodsList []goods.Information, userID uint, isSale bool) []QueryCategoryGoodsListResp {
return GetGoodsRespByInfoList(goodsList, userID, isSale)

@ -4,10 +4,10 @@ import (
"fmt"
"recook/internal/back"
"recook/internal/dbc"
"recook/internal/define"
"recook/internal/model/attention"
"recook/internal/model/coupon"
"recook/internal/model/goods"
"recook/internal/model/order"
"recook/internal/model/promotion"
"recook/internal/model/shopping_trolley"
goods2 "recook/internal/v2/model/recook/goods"
@ -87,6 +87,29 @@ func (o allPrice) GetSalePrice(level int) decimal.Decimal {
return s1.Round(2)
}
func (r allPrice) GetSelfProfit(level int) decimal.Decimal {
base := r.Commission
switch level {
case 0:
return decimal.Zero
case 1:
self := base.Mul(order.Self.GetProfit()).Round(2)
brand := base.Mul(order.Brand.GetProfit()).Round(2)
return self.Add(brand)
case 2:
// 店铺买
self := base.Mul(order.Self.GetProfit()).Round(2)
brand := base.Mul(order.Brand.GetProfit()).Round(2)
shop := base.Mul(order.Shop.GetProfit()).Round(2)
return self.Add(brand).Add(shop)
case 10:
// 子公司 100%自购
return base.Mul(order.All.GetProfit())
default:
return decimal.Zero
}
}
type recommend struct {
GoodsName string `json:"goodsName,omitempty"`
GoodsId uint `json:"goodsId,omitempty"`
@ -303,19 +326,19 @@ func QueryGoodsDetailNew(c *gin.Context) {
}
var u1 user.RecookUserInfoModel
mysql2.Db.Find(&u1, "id = ?", p.UserID)
rate1 := decimal.Zero
rate2 := decimal.Zero
rate3 := decimal.Zero
if u1.Level == 1 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
}
if u1.Level == 2 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
rate3 = decimal.NewFromFloat(0.2)
}
//rate1 := decimal.Zero
//rate2 := decimal.Zero
//rate3 := decimal.Zero
//
//if u1.Level == 1 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
//}
//if u1.Level == 2 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
// rate3 = decimal.NewFromFloat(0.2)
//}
var summary summaryResponseNew
@ -350,26 +373,27 @@ func QueryGoodsDetailNew(c *gin.Context) {
maxAllPrice.SalePrice = maxAllPrice.GetSalePrice(u1.Level)
// minCost := minAllPrice.PurchasePrice.Mul(decimal.NewFromFloat(1.03))
// minBase := minAllPrice.DiscountPrice.Sub(minCost).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
minBase := minAllPrice.Commission
minCommission1 := minBase.Mul(rate1).Round(2)
minCommission2 := minBase.Mul(rate2).Round(2)
minCommission3 := minBase.Mul(rate3).Round(2)
//minBase := minAllPrice.Commission
//
//minCommission1 := minBase.Mul(rate1).Round(2)
//minCommission2 := minBase.Mul(rate2).Round(2)
//minCommission3 := minBase.Mul(rate3).Round(2)
// maxBase := maxAllPrice.DiscountPrice.Sub(minCost).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
maxBase := maxAllPrice.Commission
maxCommission1 := maxBase.Mul(rate1).Round(2)
maxCommission2 := maxBase.Mul(rate2).Round(2)
maxCommission3 := maxBase.Mul(rate3).Round(2)
minCommission := minCommission1.Add(minCommission2).Add(minCommission3)
maxCommission := maxCommission1.Add(maxCommission2).Add(maxCommission3)
if u1.Level == 10 {
minCommission = minAllPrice.DiscountPrice.Sub(minAllPrice.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
maxCommission = maxAllPrice.DiscountPrice.Sub(maxAllPrice.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
//maxBase := maxAllPrice.Commission
//maxCommission1 := maxBase.Mul(rate1).Round(2)
//maxCommission2 := maxBase.Mul(rate2).Round(2)
//maxCommission3 := maxBase.Mul(rate3).Round(2)
//minCommission := minAllPrice.GetSelfProfit(u1.Level)
//maxCommission := maxAllPrice.GetSelfProfit(u1.Level)
//if u1.Level == 10 {
// minCommission = minAllPrice.DiscountPrice.Sub(minAllPrice.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
// maxCommission = maxAllPrice.DiscountPrice.Sub(maxAllPrice.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
//}
}
minCommission := minAllPrice.GetSelfProfit(u1.Level)
maxCommission := maxAllPrice.GetSelfProfit(u1.Level)
summary.Price = priceBorderSub{
priceSub{
@ -407,15 +431,15 @@ func QueryGoodsDetailNew(c *gin.Context) {
dbc.DB.Table((&goods.Sku{}).TableName()).Find(&(summary.Sku), "goods_id = ?", p.GoodsID)
for index, v := range summary.Sku {
skb := v.GetBase()
sc1 := skb.Mul(rate1).Round(2)
sc2 := skb.Mul(rate2).Round(2)
sc3 := skb.Mul(rate3).Round(2)
summary.Sku[index].Commission = sc1.Add(sc2).Add(sc3)
if u1.Level == 10 {
commission := v.DiscountPrice.Sub(v.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
summary.Sku[index].Commission = commission
}
//skb := v.GetBase()
//sc1 := skb.Mul(rate1).Round(2)
//sc2 := skb.Mul(rate2).Round(2)
//sc3 := skb.Mul(rate3).Round(2)
summary.Sku[index].Commission = v.GetSelfProfit(u1.Level)
//if u1.Level == 10 {
// commission := v.DiscountPrice.Sub(v.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
// summary.Sku[index].Commission = commission
//}
summary.Sku[index].SalePrice = v.GetSalePrice(u1.Level)
}
now := time.Now()

@ -4,7 +4,6 @@ import (
"fmt"
"recook/internal/back"
"recook/internal/dbc"
"recook/internal/define"
"recook/internal/domain"
"recook/internal/model/activity"
"recook/internal/model/goods"
@ -280,12 +279,12 @@ func QueryPromotionGoodsList(c *gin.Context) {
}
var u user2.RecookUserInfoModel
dbc.DB.First(&u, "id = ?", p.UserID)
rate1 := decimal.NewFromFloat32(0.4)
rate2 := decimal.NewFromFloat32(0.1)
rate3 := decimal.Zero
if u.Level == 2 {
rate3 = decimal.NewFromFloat(0.2)
}
//rate1 := decimal.NewFromFloat32(0.4)
//rate2 := decimal.NewFromFloat32(0.1)
//rate3 := decimal.Zero
//if u.Level == 2 {
// rate3 = decimal.NewFromFloat(0.2)
//}
//p.TimeItemID=1275
var promotionGoodsList []promotion.Goods
@ -369,14 +368,15 @@ func QueryPromotionGoodsList(c *gin.Context) {
// //存着有秒杀商品
// one = GetSecKillDetail(v.GoodsID)
//}
base := goodsSku.GetBase()
commission1 := base.Mul(rate1).Round(2)
commission2 := base.Mul(rate2).Round(2)
commission3 := base.Mul(rate3).Round(2)
cm := commission1.Add(commission2).Add(commission3)
if u.Level == 10 {
cm = goodsSku.DiscountPrice.Sub(goodsSku.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
}
//base := goodsSku.GetBase()
//commission1 := base.Mul(rate1).Round(2)
//commission2 := base.Mul(rate2).Round(2)
//commission3 := base.Mul(rate3).Round(2)
//cm := commission1.Add(commission2).Add(commission3)
//if u.Level == 10 {
// cm = goodsSku.DiscountPrice.Sub(goodsSku.PurchasePrice.Mul(decimal.NewFromFloat(1.03))).Mul(decimal.NewFromFloat(define.Coefficient)).Round(2)
//}
cm := goodsSku.GetSelfProfit(u.Level)
gList = append(gList, promotionGoods{
GoodsID: gi.ID,

@ -1,20 +1,16 @@
package goods
import (
"recook/internal/api/mobile/order_preview"
"github.com/gin-gonic/gin"
"github.com/shopspring/decimal"
"recook/internal/back"
"recook/internal/dbc"
"recook/internal/define"
"recook/internal/model/goods"
"recook/internal/model/promotion"
"recook/internal/model/shopping_trolley"
"recook/internal/model/user"
goods2 "recook/internal/v2/model/recook/goods"
"recook/tools"
"time"
"github.com/gin-gonic/gin"
"github.com/shopspring/decimal"
)
type queryShoppingTrolleyListParam struct {
@ -76,7 +72,6 @@ func QueryShoppingTrolleyGoodsList(c *gin.Context) {
dbc.DB.Order("id desc").Find(&trolleyList, "user_id = ?", p.UserID)
// 先把商品跟sku信息拿出来
now := time.Now()
subShoppingChildList := make([]subShoppingChild, 0, 0)
for _, v := range trolleyList {
var mainPhoto goods.MainPhoto
@ -87,69 +82,34 @@ func QueryShoppingTrolleyGoodsList(c *gin.Context) {
var sku goods.Sku
dbc.DB.First(&sku, v.SkuID)
//判断是否在秒杀中
var stock, sec = order_preview.IfSecKill(time.Now(), v.SkuID)
one := SecKillDetail{}
if stock.Id > 0 {
//在秒杀中 给商品价格重新赋值
one = SecKillDetail{
SecKill: 1,
SecKillEndTime: sec.ShowTimeEnd.Format("15:04:05"),
SecKillMinPrice: stock.SecKillDiscountPrice,
SecKillCommission: stock.SecKillCommission,
RealStock: stock.RealStock,
}
}
inventory := sku.Inventory
salesVolume := sku.SalesVolume
discountPrice := sku.DiscountPrice
commission := sku.Commission
commission := sku.GetSelfProfit(u.Level)
valid := true
rate1 := decimal.Zero
rate2 := decimal.Zero
rate3 := decimal.Zero
if u.Level == 1 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
}
if u.Level == 2 {
rate1 = decimal.NewFromFloat32(0.4)
rate2 = decimal.NewFromFloat32(0.1)
rate3 = decimal.NewFromFloat(0.2)
}
base := sku.GetBase()
commission1 := base.Mul(rate1).Round(2)
commission2 := base.Mul(rate2).Round(2)
commission3 := base.Mul(rate3).Round(2)
commission = commission1.Add(commission2).Add(commission3)
if u.Level == 10 {
commission = sku.GetBase().Mul(decimal.NewFromFloat(define.Coefficient))
}
var promotionGoods promotion.Goods
dbc.DB.Select("id, promotion_name, start_time, end_time").
First(&promotionGoods, "goods_id = ? AND start_time <= ? AND end_time >= ?", v.GoodsID, now, now)
if promotionGoods.ID > 0 {
var promotionSku promotion.Sku
dbc.DB.Select("inventory, sales_volume").First(&promotionSku, "promotion_goods_id = ? AND sku_id = ?", promotionGoods.ID, v.SkuID)
inventory = promotionSku.Inventory
salesVolume = promotionSku.SalesVolume
} else { // 再判断商品明天会不会参加活动
dbc.DB.Select("id, promotion_name, start_time, end_time").
First(&promotionGoods, "goods_id = ? AND start_time > ?", v.GoodsID, now)
}
//if promotionGoods.ID > 0 {
// var promotionSku promotion.Sku
// dbc.DB.Select("discount_price, commission").First(&promotionSku, "promotion_goods_id = ? AND sku_id = ?", promotionGoods.ID, v.SkuID)
// discountPrice = promotionSku.DiscountPrice
// commission = promotionSku.Commission
//rate1 := decimal.Zero
//rate2 := decimal.Zero
//rate3 := decimal.Zero
//if u.Level == 1 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
//}
//if u.Level == 2 {
// rate1 = decimal.NewFromFloat32(0.4)
// rate2 = decimal.NewFromFloat32(0.1)
// rate3 = decimal.NewFromFloat(0.2)
//}
//base := sku.GetBase()
//commission1 := base.Mul(rate1).Round(2)
//commission2 := base.Mul(rate2).Round(2)
//commission3 := base.Mul(rate3).Round(2)
//commission = commission1.Add(commission2).Add(commission3)
//
//if u.Level == 10 {
// commission = sku.GetBase().Mul(decimal.NewFromFloat(define.Coefficient))
//}
var country goods2.RecookAbroadCountryModel
dbc.DB.Table(country.TableName()).First(&country, "id = ?", goodsInfo.Country)
if v.Quantity > inventory {
valid = false
@ -166,12 +126,12 @@ func QueryShoppingTrolleyGoodsList(c *gin.Context) {
Inventory: inventory,
SalesVolume: salesVolume,
MainPhotoURL: mainPhoto.URL,
PromotionName: promotionGoods.PromotionName,
PromotionName: "",
OriginalPrice: sku.OriginalPrice,
Price: discountPrice,
Commission: commission,
Valid: valid,
Promotion: &promotionGoods,
Promotion: nil,
IsImport: goodsInfo.IsImport,
Storehouse: goodsInfo.Storehouse,
IsFerme: goodsInfo.IsFerme,
@ -179,9 +139,8 @@ func QueryShoppingTrolleyGoodsList(c *gin.Context) {
HasCoin: recookGoodsInfoModel.HasCoin(goodsInfo.Storehouse),
HasBalance: recookGoodsInfoModel.HasBalance(goodsInfo.Storehouse),
PublishStatus: goodsInfo.PublishStatus,
CountryIcon: country.Icon,
CountryIcon: "",
GysId: goodsInfo.VendorID,
SecKill: one,
})
}

@ -114,9 +114,9 @@ func SubmitOrder(c *gin.Context) {
// 仅考虑商品库存
condition := v.Quantity > sku.Inventory
if orderInfo.OrderType == 2 {
condition = v.Quantity > sku.SaleInventory
}
//if orderInfo.OrderType == 2 {
// condition = v.Quantity > sku.SaleInventory
//}
if condition {
if v.Quantity > sku.Inventory {
back.Fail(c, v.GoodsName+"已被抢光啦")

@ -52,14 +52,14 @@ func (r *Sku) GetSelfProfit(level int) decimal.Decimal {
case 0:
return decimal.Zero
case 1:
self := base.Mul(order.Self.GetProfit())
brand := base.Mul(order.Brand.GetProfit())
self := base.Mul(order.Self.GetProfit()).Round(2)
brand := base.Mul(order.Brand.GetProfit()).Round(2)
return self.Add(brand)
case 2:
// 店铺买
self := base.Mul(order.Self.GetProfit())
brand := base.Mul(order.Brand.GetProfit())
shop := base.Mul(order.Shop.GetProfit())
self := base.Mul(order.Self.GetProfit()).Round(2)
brand := base.Mul(order.Brand.GetProfit()).Round(2)
shop := base.Mul(order.Shop.GetProfit()).Round(2)
return self.Add(brand).Add(shop)
case 10:
// 子公司 100%自购

Loading…
Cancel
Save