From 2e8ea731ab18fb8dd9414cf582b2e04d7f8951ea Mon Sep 17 00:00:00 2001 From: li Date: Thu, 24 Nov 2022 17:56:21 +0800 Subject: [PATCH] fix: --- controller/user.go | 5 +++ lib/status/status.go | 8 ++-- model/autogenerated_user.go | 78 +++++++++++++++++++++++++++++++++++++ model/model_test.go | 2 + model/user.go | 7 ++-- 5 files changed, 94 insertions(+), 6 deletions(-) diff --git a/controller/user.go b/controller/user.go index dd46a26..bf2b7f1 100644 --- a/controller/user.go +++ b/controller/user.go @@ -741,6 +741,11 @@ func RefundDeposit(c *gin.Context) { RespJson(c, status.InternalServerError, nil) return } + if user.DepositType == 3 { + logger.Error("deposit restraint") + RespJson(c, status.DepositRestraint, nil) + return + } unreturnedOrders, err := model.IsUserHaveUnreturnedOrder(user.Uid) if err != nil { logger.Error("err:", err) diff --git a/lib/status/status.go b/lib/status/status.go index 7122057..81f340c 100644 --- a/lib/status/status.go +++ b/lib/status/status.go @@ -107,6 +107,7 @@ const ( UserNotMember = 500524 // 仅开通过会员的用户可兑换 CouponReceived = 500525 // 你已兑换过该券 CouponPromotionalUnused = 500526 // 您有未使用的专属续费券 + DepositRestraint = 500527 // 押金受限 ToastErr = 600 // 报错 ) @@ -179,9 +180,9 @@ var statusDesc = map[int]string{ UserNotMember: "仅开通过会员的用户可兑换", CouponReceived: "你已兑换过该券", CouponPromotionalUnused: "您有未使用的专属续费券", - - NotMember: "非会员", - HadReceiveReward: "已经领取过了", + DepositRestraint: "押金受限", + NotMember: "非会员", + HadReceiveReward: "已经领取过了", } var statusMsg = map[int]string{ @@ -253,6 +254,7 @@ var statusMsg = map[int]string{ UserNotMember: "仅开通过会员的用户可兑换", CouponReceived: "你已兑换过该券", CouponPromotionalUnused: "您有未使用的专属续费券", + DepositRestraint: "押金受限", AwardOffShelves: "奖品已下架", AwardExchangeOut: "奖品已兑完", diff --git a/model/autogenerated_user.go b/model/autogenerated_user.go index 423b0d8..3bc243c 100644 --- a/model/autogenerated_user.go +++ b/model/autogenerated_user.go @@ -12677,6 +12677,62 @@ func (qs UserQuerySet) DepositNotIn(deposit ...uint32) UserQuerySet { return qs.w(qs.db.Where("deposit NOT IN (?)", deposit)) } +// DepositTypeEq is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeEq(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type = ?", depositType)) +} + +// DepositTypeGt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeGt(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type > ?", depositType)) +} + +// DepositTypeGte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeGte(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type >= ?", depositType)) +} + +// DepositTypeIn is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeIn(depositType ...uint32) UserQuerySet { + if len(depositType) == 0 { + qs.db.AddError(errors.New("must at least pass one depositType in DepositTypeIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("deposit_type IN (?)", depositType)) +} + +// DepositTypeLt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeLt(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type < ?", depositType)) +} + +// DepositTypeLte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeLte(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type <= ?", depositType)) +} + +// DepositTypeNe is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeNe(depositType uint32) UserQuerySet { + return qs.w(qs.db.Where("deposit_type != ?", depositType)) +} + +// DepositTypeNotIn is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) DepositTypeNotIn(depositType ...uint32) UserQuerySet { + if len(depositType) == 0 { + qs.db.AddError(errors.New("must at least pass one depositType in DepositTypeNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("deposit_type NOT IN (?)", depositType)) +} + // GenderEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) GenderEq(gender uint8) UserQuerySet { @@ -13365,6 +13421,12 @@ func (qs UserQuerySet) OrderAscByDeposit() UserQuerySet { return qs.w(qs.db.Order("deposit ASC")) } +// OrderAscByDepositType is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderAscByDepositType() UserQuerySet { + return qs.w(qs.db.Order("deposit_type ASC")) +} + // OrderAscByGender is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByGender() UserQuerySet { @@ -13575,6 +13637,12 @@ func (qs UserQuerySet) OrderDescByDeposit() UserQuerySet { return qs.w(qs.db.Order("deposit DESC")) } +// OrderDescByDepositType is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderDescByDepositType() UserQuerySet { + return qs.w(qs.db.Order("deposit_type DESC")) +} + // OrderDescByGender is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByGender() UserQuerySet { @@ -14642,6 +14710,13 @@ func (u UserUpdater) SetDeposit(deposit uint32) UserUpdater { return u } +// SetDepositType is an autogenerated method +// nolint: dupl +func (u UserUpdater) SetDepositType(depositType uint32) UserUpdater { + u.fields[string(UserDBSchema.DepositType)] = depositType + return u +} + // SetGender is an autogenerated method // nolint: dupl func (u UserUpdater) SetGender(gender uint8) UserUpdater { @@ -14887,6 +14962,7 @@ var UserDBSchema = struct { OpenMemberLevel UserDBSchemaField Version UserDBSchemaField InviteTime UserDBSchemaField + DepositType UserDBSchemaField }{ ID: UserDBSchemaField("id"), @@ -14924,6 +15000,7 @@ var UserDBSchema = struct { OpenMemberLevel: UserDBSchemaField("open_member_level"), Version: UserDBSchemaField("version"), InviteTime: UserDBSchemaField("invite_time"), + DepositType: UserDBSchemaField("deposit_type"), } // Update updates User fields by primary key @@ -14965,6 +15042,7 @@ func (o *User) Update(db *gorm.DB, fields ...UserDBSchemaField) error { "open_member_level": o.OpenMemberLevel, "version": o.Version, "invite_time": o.InviteTime, + "deposit_type": o.DepositType, } u := map[string]interface{}{} for _, f := range fields { diff --git a/model/model_test.go b/model/model_test.go index d8a147e..e7e9955 100644 --- a/model/model_test.go +++ b/model/model_test.go @@ -165,6 +165,7 @@ func InitTestDB() { &UserCoupon{}, &ShopperPromotionCode{}, &UserInvite{}, + &User{}, ) fmt.Println("DB init success") @@ -213,6 +214,7 @@ func InitDBProd() { &ShopperPromotionCode{}, &UserCoupon{}, &UserInvite{}, + &User{}, ) if err := DBProd.DB().Ping(); err != nil { diff --git a/model/user.go b/model/user.go index 05430bf..663011f 100644 --- a/model/user.go +++ b/model/user.go @@ -49,9 +49,10 @@ type User struct { //RenewalMemberLevel uint32 `json:"renewal_member_level"` OpenMemberLevel uint32 `json:"open_member_level"` - Version uint32 `json:"-"` // - UserVm *UserVm `json:"user_vm" gorm:"-"` // - InviteTime time.Time `json:"invite_time"` + Version uint32 `json:"-"` // + UserVm *UserVm `json:"user_vm" gorm:"-"` // + InviteTime time.Time `json:"invite_time"` + DepositType uint32 `json:"deposit_type"` // 押金类型: 3-未充值 //RoleId uint32 `json:"role_id"` // 角色id }