fix:修改用户绑定门店

This commit is contained in:
li 2022-04-22 10:45:15 +08:00
parent 4059e15450
commit eb9ee6614b
7 changed files with 152 additions and 57 deletions

View File

@ -36,9 +36,14 @@ func GameCardList(c *gin.Context) {
RespJson(c, status.BadRequest, nil) RespJson(c, status.BadRequest, nil)
return return
} }
uc := auth.GetCurrentUser(c)
if uc == nil {
RespJson(c, status.Unauthorized, nil)
return
}
fmt.Println("游戏类型:GameTypeIds:", req.GameTypeIds) fmt.Println("游戏类型:GameTypeIds:", req.GameTypeIds)
cardList, totalPage, err := model.GetGameCardList(req.SortType, req.Page, req.PageSize, req.GameTypeIds, req.StoreId) cardList, totalPage, err := model.GetGameCardList(req.SortType, req.Page, req.PageSize, req.GameTypeIds, req.StoreId, uc.Uid)
if err != nil { if err != nil {
logger.Error("err:", err) logger.Error("err:", err)
RespJson(c, status.InternalServerError, nil) RespJson(c, status.InternalServerError, nil)

View File

@ -240,17 +240,17 @@ func RentCardOrderCreate(c *gin.Context) {
for _, v := range req.GameCardList { for _, v := range req.GameCardList {
cardCount += v.Count cardCount += v.Count
} }
fmt.Println("cardCount:", cardCount) //fmt.Println("cardCount:", cardCount)
rentCard := model.GetUserRentCard(uc.Uid) rentCard := model.GetUserRentCard(uc.Uid)
if rentCard == nil { if rentCard == nil {
//logger.Error(errors.New("GetUserByUid err")) //logger.Error(errors.New("GetUserByUid err"))
//RespJson(c, status.InternalServerError, nil) //RespJson(c, status.InternalServerError, nil)
//return //return
fmt.Println("CardMax", memberConfig.CardMax) //fmt.Println("CardMax", memberConfig.CardMax)
rentCard = &model.UserRentCard{LevelRentCount: memberConfig.CardMax, CanRentCount: memberConfig.CardMax} rentCard = &model.UserRentCard{LevelRentCount: memberConfig.CardMax, CanRentCount: memberConfig.CardMax}
} }
fmt.Println("rentCard", rentCard.CanRentCount) //fmt.Println("rentCard", rentCard.CanRentCount)
if cardCount > rentCard.CanRentCount { if cardCount > rentCard.CanRentCount {
logger.Error("GetMemberConfig err:", err) logger.Error("GetMemberConfig err:", err)
RespJson(c, status.OrderOutRentCount, nil) RespJson(c, status.OrderOutRentCount, nil)
@ -335,7 +335,9 @@ func RentCardOrderCreate(c *gin.Context) {
RespJson(c, status.OrderStockOut, nil) RespJson(c, status.OrderStockOut, nil)
return return
} }
go func() {
}()
fmt.Println("PayPrice:", order.PayPrice) fmt.Println("PayPrice:", order.PayPrice)
if req.Price == 0 { if req.Price == 0 {
tx := model.TransactionBegin() tx := model.TransactionBegin()

View File

@ -3603,6 +3603,12 @@ func (qs GameCardQuerySet) OrderAscByPrice() GameCardQuerySet {
return qs.w(qs.db.Order("price ASC")) return qs.w(qs.db.Order("price ASC"))
} }
// OrderAscByRealPrice is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) OrderAscByRealPrice() GameCardQuerySet {
return qs.w(qs.db.Order("real_price ASC"))
}
// OrderAscByStatus is an autogenerated method // OrderAscByStatus is an autogenerated method
// nolint: dupl // nolint: dupl
func (qs GameCardQuerySet) OrderAscByStatus() GameCardQuerySet { func (qs GameCardQuerySet) OrderAscByStatus() GameCardQuerySet {
@ -3785,6 +3791,12 @@ func (qs GameCardQuerySet) OrderDescByPrice() GameCardQuerySet {
return qs.w(qs.db.Order("price DESC")) return qs.w(qs.db.Order("price DESC"))
} }
// OrderDescByRealPrice is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) OrderDescByRealPrice() GameCardQuerySet {
return qs.w(qs.db.Order("real_price DESC"))
}
// OrderDescByStatus is an autogenerated method // OrderDescByStatus is an autogenerated method
// nolint: dupl // nolint: dupl
func (qs GameCardQuerySet) OrderDescByStatus() GameCardQuerySet { func (qs GameCardQuerySet) OrderDescByStatus() GameCardQuerySet {
@ -3983,6 +3995,62 @@ func (qs GameCardQuerySet) PriceNotIn(price ...uint32) GameCardQuerySet {
return qs.w(qs.db.Where("price NOT IN (?)", price)) return qs.w(qs.db.Where("price NOT IN (?)", price))
} }
// RealPriceEq is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceEq(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price = ?", realPrice))
}
// RealPriceGt is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceGt(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price > ?", realPrice))
}
// RealPriceGte is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceGte(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price >= ?", realPrice))
}
// RealPriceIn is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceIn(realPrice ...uint32) GameCardQuerySet {
if len(realPrice) == 0 {
qs.db.AddError(errors.New("must at least pass one realPrice in RealPriceIn"))
return qs.w(qs.db)
}
return qs.w(qs.db.Where("real_price IN (?)", realPrice))
}
// RealPriceLt is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceLt(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price < ?", realPrice))
}
// RealPriceLte is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceLte(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price <= ?", realPrice))
}
// RealPriceNe is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceNe(realPrice uint32) GameCardQuerySet {
return qs.w(qs.db.Where("real_price != ?", realPrice))
}
// RealPriceNotIn is an autogenerated method
// nolint: dupl
func (qs GameCardQuerySet) RealPriceNotIn(realPrice ...uint32) GameCardQuerySet {
if len(realPrice) == 0 {
qs.db.AddError(errors.New("must at least pass one realPrice in RealPriceNotIn"))
return qs.w(qs.db)
}
return qs.w(qs.db.Where("real_price NOT IN (?)", realPrice))
}
// StatusEq is an autogenerated method // StatusEq is an autogenerated method
// nolint: dupl // nolint: dupl
func (qs GameCardQuerySet) StatusEq(status uint8) GameCardQuerySet { func (qs GameCardQuerySet) StatusEq(status uint8) GameCardQuerySet {
@ -4355,6 +4423,13 @@ func (u GameCardUpdater) SetPrice(price uint32) GameCardUpdater {
return u return u
} }
// SetRealPrice is an autogenerated method
// nolint: dupl
func (u GameCardUpdater) SetRealPrice(realPrice uint32) GameCardUpdater {
u.fields[string(GameCardDBSchema.RealPrice)] = realPrice
return u
}
// SetStatus is an autogenerated method // SetStatus is an autogenerated method
// nolint: dupl // nolint: dupl
func (u GameCardUpdater) SetStatus(status uint8) GameCardUpdater { func (u GameCardUpdater) SetStatus(status uint8) GameCardUpdater {
@ -4439,6 +4514,7 @@ var GameCardDBSchema = struct {
Likes GameCardDBSchemaField Likes GameCardDBSchemaField
DetailInfo GameCardDBSchemaField DetailInfo GameCardDBSchemaField
DetailImg GameCardDBSchemaField DetailImg GameCardDBSchemaField
RealPrice GameCardDBSchemaField
}{ }{
ID: GameCardDBSchemaField("id"), ID: GameCardDBSchemaField("id"),
@ -4462,6 +4538,7 @@ var GameCardDBSchema = struct {
Likes: GameCardDBSchemaField("likes"), Likes: GameCardDBSchemaField("likes"),
DetailInfo: GameCardDBSchemaField("detail_info"), DetailInfo: GameCardDBSchemaField("detail_info"),
DetailImg: GameCardDBSchemaField("detail_img"), DetailImg: GameCardDBSchemaField("detail_img"),
RealPrice: GameCardDBSchemaField("real_price"),
} }
// Update updates GameCard fields by primary key // Update updates GameCard fields by primary key
@ -4489,6 +4566,7 @@ func (o *GameCard) Update(db *gorm.DB, fields ...GameCardDBSchemaField) error {
"likes": o.Likes, "likes": o.Likes,
"detail_info": o.DetailInfo, "detail_info": o.DetailInfo,
"detail_img": o.DetailImg, "detail_img": o.DetailImg,
"real_price": o.RealPrice,
} }
u := map[string]interface{}{} u := map[string]interface{}{}
for _, f := range fields { for _, f := range fields {

View File

@ -4,6 +4,7 @@ import (
"fmt" "fmt"
"github.com/codinl/go-logger" "github.com/codinl/go-logger"
"strings" "strings"
"time"
) )
//go:generate goqueryset -in game_card.go //go:generate goqueryset -in game_card.go
@ -29,6 +30,7 @@ type GameCard struct {
DetailInfo string `json:"detail_info" gorm:"type:text;comment:'详情描述'"` // 详情描述 DetailInfo string `json:"detail_info" gorm:"type:text;comment:'详情描述'"` // 详情描述
DetailImg string `json:"detail_img"` // 详情图片 DetailImg string `json:"detail_img"` // 详情图片
EstimateVm uint32 `json:"estimate_vm" gorm:"-"` // 预计积分 EstimateVm uint32 `json:"estimate_vm" gorm:"-"` // 预计积分
RealPrice uint32 `json:"real_price"` // 真实价格
} }
func (*GameCard) TableName() string { func (*GameCard) TableName() string {
@ -68,7 +70,7 @@ type CardInfo struct {
Count uint32 `json:"count"` Count uint32 `json:"count"`
} }
func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId uint32) ([]GameCard, uint32, error) { func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId, uid uint32) ([]GameCard, uint32, error) {
var ( var (
cards []GameCard = make([]GameCard, 0) cards []GameCard = make([]GameCard, 0)
totalPage uint32 totalPage uint32
@ -85,6 +87,7 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId
// logger.Error("NewGameCardQuerySet err:", err) // logger.Error("NewGameCardQuerySet err:", err)
// return cards, 0, err // return cards, 0, err
//} //}
user := GetUserByUid(uid)
qs := NewGameCardQuerySet(DB) qs := NewGameCardQuerySet(DB)
switch sortType { switch sortType {
@ -139,7 +142,9 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId
qs = qs.IDIn(gameIds...) qs = qs.IDIn(gameIds...)
} }
if user.MemberExpire.After(time.Now().AddDate(0, 0, -14)) {
qs = qs.RealPriceLte(30000)
}
if count == 0 { if count == 0 {
count, err = qs.Count() count, err = qs.Count()
} }

View File

@ -69,56 +69,57 @@ func InitTestDB() {
db.SingularTable(true) db.SingularTable(true)
db.AutoMigrate( db.AutoMigrate(
&User{}, //&User{},
//&LotteryInviteTargetUser{}, ////&LotteryInviteTargetUser{},
&GameCard{}, //&GameCard{},
&Collection{}, //&Collection{},
&Config{}, //&Config{},
&HistoryBrowsing{}, //&HistoryBrowsing{},
&ShoppingCart{}, //&ShoppingCart{},
&UserAddress{}, //&UserAddress{},
&SearchHistory{}, //&SearchHistory{},
&Order{}, //&Order{},
&HotSearch{}, //&HotSearch{},
&HomeCarousel{}, //&HomeCarousel{},
&GameCardType{}, //&GameCardType{},
&Store{}, //&Store{},
&GameType{}, //&GameType{},
&UserOpenMemberRecord{}, //&UserOpenMemberRecord{},
&CommonProblem{}, //&CommonProblem{},
&ExpressCompany{}, //&ExpressCompany{},
&GameCardGoodsStock{}, //&GameCardGoodsStock{},
&GameCardGoods{}, //&GameCardGoods{},
&UserInvite{}, //&UserInvite{},
&ArticleTitlePanel{}, //&ArticleTitlePanel{},
&RedeemCode{}, //&RedeemCode{},
&UserRedeemCode{}, //&UserRedeemCode{},
&DepositRefundRecord{}, //&DepositRefundRecord{},
&GroupSendMessageTemplate{}, //&GroupSendMessageTemplate{},
//
&Goods{}, //&Goods{},
&GoodsOrder{}, //&GoodsOrder{},
&UserVm{}, //&UserVm{},
&UserVmRecord{}, //&UserVmRecord{},
//
&OrderCard{}, //&OrderCard{},
&UserRentCard{}, //&UserRentCard{},
&UserConsumeRecord{}, //&UserConsumeRecord{},
&UserMemberExpireDelay{}, //&UserMemberExpireDelay{},
//
&UserShareCardBill{}, //&UserShareCardBill{},
&ShareCardBillGame{}, //&ShareCardBillGame{},
&UserShareCard{}, //&UserShareCard{},
&ShareCardVmRecord{}, //&ShareCardVmRecord{},
&UserShareCardVm{}, //&UserShareCardVm{},
&ShareCardDateVm{}, //&ShareCardDateVm{},
&ShareCardVmRecord{}, //&ShareCardVmRecord{},
&ShareCardRetrieve{}, //&ShareCardRetrieve{},
&ShareCardRetrieveCard{}, //&ShareCardRetrieveCard{},
&GameCardLabel{}, //&GameCardLabel{},
&CardIssueFeedback{}, //&CardIssueFeedback{},
//&GameShareCardVm{}, //&GameShareCardVm{},
&GameCard{},
) )
fmt.Println("DB init success") fmt.Println("DB init success")
@ -158,7 +159,6 @@ func InitDBProd() {
&UserRedeemCode{}, &UserRedeemCode{},
&GameCardGoods{}, &GameCardGoods{},
&UserShareCardBill{}, &UserShareCardBill{},
&ShareCardBillGame{}, &ShareCardBillGame{},
&UserShareCard{}, &UserShareCard{},

View File

@ -828,3 +828,7 @@ func (m *Order) CreatOrderCard(cards []CardInfo, storeId uint32, gdb *gorm.DB) e
} }
return nil return nil
} }
func QueryRecordExist(sql string) {
DB.Where("").Count("")
}

View File

@ -49,13 +49,14 @@ func ConfigAppRouter(r gin.IRouter) {
gameCard := api.Group("game_card") gameCard := api.Group("game_card")
{ {
gameCard.POST("list", controller.GameCardList) // 游戏卡列表
gameCard.POST("banner", controller.HomeCarouselList) // 轮播图 gameCard.POST("banner", controller.HomeCarouselList) // 轮播图
gameCard.POST("game_type", controller.GameCardTypes) // 游戏标签 gameCard.POST("game_type", controller.GameCardTypes) // 游戏标签
gameCard.POST("type/list", controller.GameCardTypeList) // 游戏类型列表 gameCard.POST("type/list", controller.GameCardTypeList) // 游戏类型列表
gameCard.Use(auth.UserAccessAuth) gameCard.Use(auth.UserAccessAuth)
gameCard.POST("info", controller.GameCardInfo) // 游戏卡详情 gameCard.POST("info", controller.GameCardInfo) // 游戏卡详情
gameCard.POST("list", controller.GameCardList) // 游戏卡列表
} }
search := gameCard.Group("search") search := gameCard.Group("search")