From 7e22f0ed555a20f58d749c0619baec176c1a1ded Mon Sep 17 00:00:00 2001 From: li Date: Fri, 14 Jul 2023 17:29:05 +0800 Subject: [PATCH] fix: --- controller/activity.go | 3 + controller/game_card.go | 86 ++++++-- controller/order.go | 2 +- controller/user.go | 30 +-- model/autogenerated_invite.go | 156 ++++++++++++++ model/autogenerated_user.go | 370 ++++++++++++++++++++++++++++++++++ model/config.go | 45 ++++- model/invite.go | 4 +- model/model_test.go | 4 +- model/user.go | 15 +- router/router_app.go | 3 +- 11 files changed, 675 insertions(+), 43 deletions(-) diff --git a/controller/activity.go b/controller/activity.go index fabb3bb..45210c3 100644 --- a/controller/activity.go +++ b/controller/activity.go @@ -589,6 +589,9 @@ func MemberRenewalUserCouponList(c *gin.Context) { if !user.IsMember() && coupons[i].ActivityType == 1 { continue } + if user.MemberGenre == 201 || user.MemberGenre == 202 { + coupons[i].Availability = 1 + } list = append(list, coupons[i]) } diff --git a/controller/game_card.go b/controller/game_card.go index 5f2071f..524e253 100644 --- a/controller/game_card.go +++ b/controller/game_card.go @@ -264,7 +264,8 @@ type ( ) // TODO两边都改 -// 微信推送支付通知 +// +// 微信推送支付通知 func PushWXPayNotice(c *gin.Context) { fmt.Println("微信推送支付通知") body, err := ioutil.ReadAll(c.Request.Body) @@ -474,9 +475,25 @@ func PushWXPayNotice(c *gin.Context) { spendType = 3 } isShopAssistantCode := false - expireTime := newTime.AddDate(1, 0, 0) + + var expireTime time.Time + if record.MemberGenre == 201 { + expireTime = newTime.AddDate(0, 0, 90) + } else if record.MemberGenre == 202 { + expireTime = newTime.AddDate(0, 0, 180) + } else { + expireTime = newTime.AddDate(1, 0, 0) + } + if user.MemberExpire.After(newTime) { - expireTime = user.MemberExpire.AddDate(1, 0, 0) + //expireTime = user.MemberExpire.AddDate(1, 0, 0) + if record.MemberGenre == 201 { + expireTime = user.MemberExpire.AddDate(0, 0, 90) + } else if record.MemberGenre == 202 { + expireTime = user.MemberExpire.AddDate(0, 0, 180) + } else { + expireTime = user.MemberExpire.AddDate(1, 0, 0) + } } memberRecord.BeforeMemberLevel = user.MemberLevel memberRecord.BeforeMemberExpire = user.MemberExpire @@ -489,14 +506,14 @@ func PushWXPayNotice(c *gin.Context) { memberRecord.OpenMemberLevel = record.MemberLevel memberRecord.OpenMemberTime = newTime } - memberConfig, err := model.GetMemberConfig(record.MemberLevel) + memberConfig, err := model.GetMemberConfig(record.MemberLevel, record.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) return } //openMemberTime := newTime userUpdateQs := model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel). - SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit) + SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit) if user.OpenMemberTime.IsZero() { //openMemberTime = user.OpenMemberTime userUpdateQs = userUpdateQs.SetOpenMemberTime(newTime).SetOpenMemberLevel(record.MemberLevel) @@ -575,7 +592,7 @@ func PushWXPayNotice(c *gin.Context) { } qs = qs.SetMemberOpenTime(newTime).SetMemberLevel(record.MemberLevel) _, err = qs.SetMemberType(2).SetMemberStatus(2). - SetAction(2).SetSpendType(spendType).UpdateNum() + SetAction(2).SetSpendType(spendType).SetMemberGenre(record.MemberGenre).UpdateNum() if err != nil { logger.Error("update user invite action spend type err:", err) } @@ -583,7 +600,7 @@ func PushWXPayNotice(c *gin.Context) { go func() { err = model.NewUserInviteRecordQuerySet(model.DB).IDEq(invite.UserInviteRecordId).GetUpdater(). SetAction(2).SetSpendType(spendType).SetMemberLevel(record.MemberLevel). - SetActionTime(newTime).Update() + SetActionTime(newTime).SetMemberGenre(record.MemberGenre).Update() if err != nil { logger.Error("update user invite record err:", err) } @@ -599,6 +616,7 @@ func PushWXPayNotice(c *gin.Context) { First: 0, Scan: 0, // 自动生成 ActionTime: newTime, + MemberGenre: record.MemberGenre, } err = model.DB.Create(inviteRecordNew).Error if err != nil { @@ -621,6 +639,7 @@ func PushWXPayNotice(c *gin.Context) { UserInviteRecordId: inviteRecordNew.ID, FirstInvite: 0, Scan: 0, + MemberGenre: record.MemberGenre, } if isShopAssistantCode { userInviteNew.InviteForm = 1 @@ -717,7 +736,7 @@ func PushWXPayNotice(c *gin.Context) { return } - memberConfig, err := model.GetMemberConfig(user.MemberLevel) + memberConfig, err := model.GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("err:", err) return @@ -827,7 +846,7 @@ func PushWXPayNotice(c *gin.Context) { } memberRecord.Add() - memberConfig, err := model.GetMemberConfig(record.MemberLevel) + memberConfig, err := model.GetMemberConfig(record.MemberLevel, record.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) return @@ -847,7 +866,7 @@ func PushWXPayNotice(c *gin.Context) { } } - _, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel). + _, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel).SetMemberGenre(record.MemberGenre). SetMemberExpire(record.MemberExpire).SetDeposit(memberConfig.MemberDeposit).UpdateNum() //err = model.UserUpdate(&model.User{Uid: uint32(record.Uid), MemberLevel: record.MemberLevel, MemberExpire: expireTime, Deposit: memberConfig.MemberDeposit}) if err != nil { @@ -1119,7 +1138,7 @@ type HmPushWXPayNoticeReq struct { SignType string `json:"sign_type" form:"sign_type"` } -// 微信推送支付通知 +// 微信推送支付通知 func HmPushWXPayNotice(c *gin.Context) { fmt.Println("微信推送支付通知") @@ -1299,10 +1318,31 @@ func HmPushWXPayNotice(c *gin.Context) { spendType = 3 } isShopAssistantCode := false - expireTime := newTime.AddDate(1, 0, 0) - if user.MemberExpire.After(newTime) { - expireTime = user.MemberExpire.AddDate(1, 0, 0) + //expireTime := newTime.AddDate(1, 0, 0) + //if user.MemberExpire.After(newTime) { + // expireTime = user.MemberExpire.AddDate(1, 0, 0) + //} + + var expireTime time.Time + if record.MemberGenre == 201 { + expireTime = newTime.AddDate(0, 0, 90) + } else if record.MemberGenre == 202 { + expireTime = newTime.AddDate(0, 0, 180) + } else { + expireTime = newTime.AddDate(1, 0, 0) } + + if user.MemberExpire.After(newTime) { + //expireTime = user.MemberExpire.AddDate(1, 0, 0) + if record.MemberGenre == 201 { + expireTime = user.MemberExpire.AddDate(0, 0, 90) + } else if record.MemberGenre == 202 { + expireTime = user.MemberExpire.AddDate(0, 0, 180) + } else { + expireTime = user.MemberExpire.AddDate(1, 0, 0) + } + } + memberRecord.BeforeMemberLevel = user.MemberLevel memberRecord.BeforeMemberExpire = user.MemberExpire memberRecord.Serial = uint32(user.MemberExpire.Unix()) @@ -1314,14 +1354,14 @@ func HmPushWXPayNotice(c *gin.Context) { memberRecord.OpenMemberLevel = record.MemberLevel memberRecord.OpenMemberTime = newTime } - memberConfig, err := model.GetMemberConfig(record.MemberLevel) + memberConfig, err := model.GetMemberConfig(record.MemberLevel, record.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) return } //openMemberTime := newTime userUpdateQs := model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel). - SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit) + SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit) if user.OpenMemberTime.IsZero() { //openMemberTime = user.OpenMemberTime userUpdateQs = userUpdateQs.SetOpenMemberTime(newTime).SetOpenMemberLevel(record.MemberLevel) @@ -1400,7 +1440,7 @@ func HmPushWXPayNotice(c *gin.Context) { } qs = qs.SetMemberOpenTime(newTime).SetMemberLevel(record.MemberLevel) _, err = qs.SetMemberType(2).SetMemberStatus(2). - SetAction(2).SetSpendType(spendType).UpdateNum() + SetAction(2).SetSpendType(spendType).SetMemberGenre(record.MemberGenre).UpdateNum() if err != nil { logger.Error("update user invite action spend type err:", err) } @@ -1408,7 +1448,7 @@ func HmPushWXPayNotice(c *gin.Context) { go func() { err = model.NewUserInviteRecordQuerySet(model.DB).IDEq(invite.UserInviteRecordId).GetUpdater(). SetAction(2).SetSpendType(spendType).SetMemberLevel(record.MemberLevel). - SetActionTime(newTime).Update() + SetActionTime(newTime).SetMemberGenre(record.MemberGenre).Update() if err != nil { logger.Error("update user invite record err:", err) } @@ -1424,6 +1464,7 @@ func HmPushWXPayNotice(c *gin.Context) { First: 0, Scan: 0, // 自动生成 ActionTime: newTime, + MemberGenre: record.MemberGenre, } err = model.DB.Create(inviteRecordNew).Error if err != nil { @@ -1445,6 +1486,7 @@ func HmPushWXPayNotice(c *gin.Context) { MemberLevel: record.MemberLevel, UserInviteRecordId: inviteRecordNew.ID, FirstInvite: 0, + MemberGenre: record.MemberGenre, } if isShopAssistantCode { userInviteNew.InviteForm = 1 @@ -1541,7 +1583,7 @@ func HmPushWXPayNotice(c *gin.Context) { return } - memberConfig, err := model.GetMemberConfig(user.MemberLevel) + memberConfig, err := model.GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("err:", err) return @@ -1651,7 +1693,7 @@ func HmPushWXPayNotice(c *gin.Context) { } memberRecord.Add() - memberConfig, err := model.GetMemberConfig(record.MemberLevel) + memberConfig, err := model.GetMemberConfig(record.MemberLevel, record.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) return @@ -1671,7 +1713,7 @@ func HmPushWXPayNotice(c *gin.Context) { } } - _, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel). + _, err = model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel).SetMemberGenre(record.MemberGenre). SetMemberExpire(record.MemberExpire).SetDeposit(memberConfig.MemberDeposit).UpdateNum() //err = model.UserUpdate(&model.User{Uid: uint32(record.Uid), MemberLevel: record.MemberLevel, MemberExpire: expireTime, Deposit: memberConfig.MemberDeposit}) if err != nil { @@ -1934,7 +1976,7 @@ type WxPayRefundPlaintext struct { UserReceivedAccount string `json:"user_received_account"` } -// 0 元购 微信推送支付通知 +// 0 元购 微信推送支付通知 func PushWXPayRefundNotice(c *gin.Context) { fmt.Println("微信推送支付通知") //body, err := ioutil.ReadAll(c.Request.Body) diff --git a/controller/order.go b/controller/order.go index 73648f4..93f4473 100644 --- a/controller/order.go +++ b/controller/order.go @@ -223,7 +223,7 @@ func RentCardOrderCreate(c *gin.Context) { return } - memberConfig, err := model.GetMemberConfig(user.MemberLevel) + memberConfig, err := model.GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) RespJson(c, status.InternalServerError, nil) diff --git a/controller/user.go b/controller/user.go index d1bb64b..f8d0dee 100644 --- a/controller/user.go +++ b/controller/user.go @@ -208,6 +208,7 @@ func UserInfoUpdate(c *gin.Context) { func OpenMember(c *gin.Context) { req := struct { MemberLevel uint32 `json:"member_level"` // 昵称 + MemberGenre uint32 `json:"member_genre"` // 会员标记: 黄金会员:90天-201 180天-202 UserCouponId uint32 `json:"user_coupon_id"` // 优惠券id }{} if c.ShouldBindJSON(&req) != nil { @@ -220,7 +221,7 @@ func OpenMember(c *gin.Context) { RespJson(c, status.Unauthorized, nil) return } - + fmt.Println("req:", req) user := model.GetUserByUid(uc.Uid) //configInfo, err := model.PayConfigInfo() @@ -229,7 +230,7 @@ func OpenMember(c *gin.Context) { // RespJson(c, status.InternalServerError, nil) // return //} - memberConfig, err := model.GetMemberConfig(req.MemberLevel) + memberConfig, err := model.GetMemberConfig(req.MemberLevel, req.MemberGenre) if err != nil { logger.Error("err:", err) RespJson(c, status.InternalServerError, nil) @@ -255,7 +256,7 @@ func OpenMember(c *gin.Context) { return } - if req.UserCouponId != 0 { + if req.UserCouponId != 0 && req.MemberGenre == 0 { var coupon model.UserCoupon err = model.NewUserCouponQuerySet(model.DB).IDEq(req.UserCouponId).One(&coupon) if err != nil { @@ -307,7 +308,7 @@ func OpenMember(c *gin.Context) { //orderSn := utils.GetSerialNo32HEXString() orderSn := model.GetOrderSn() err = model.UserOpenMemberRecord{Uid: uc.Uid, OpenNo: orderSn, MemberLevel: req.MemberLevel, - UserCouponId: req.UserCouponId, Attach: wxpay.WxPayMember}.Insert() + UserCouponId: req.UserCouponId, Attach: wxpay.WxPayMember, MemberGenre: req.MemberGenre}.Insert() if err != nil { logger.Error(errors.New("WebPay err")) RespJson(c, status.InternalServerError, nil) @@ -350,6 +351,7 @@ func OpenMember(c *gin.Context) { func UpgradeMember(c *gin.Context) { req := struct { MemberLevel uint32 `json:"member_level"` // 昵称 + MemberGenre uint32 `json:"member_genre"` UserCouponId uint32 `json:"user_coupon_id"` }{} if c.ShouldBindJSON(&req) != nil { @@ -369,15 +371,18 @@ func UpgradeMember(c *gin.Context) { // RespJson(c, status.InternalServerError, nil) // return //} + if req.MemberGenre == 0 { + req.MemberGenre = model.GetMemberGenreFromLevel(req.MemberLevel) + } - originalMemberConfig, err := model.GetMemberConfig(user.MemberLevel) + originalMemberConfig, err := model.GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("err:", err) RespJson(c, status.InternalServerError, nil) return } - memberConfig, err := model.GetMemberConfig(req.MemberLevel) + memberConfig, err := model.GetMemberConfig(req.MemberLevel, req.MemberGenre) if err != nil { logger.Error("err:", err) RespJson(c, status.InternalServerError, nil) @@ -449,7 +454,7 @@ func UpgradeMember(c *gin.Context) { return } - if req.UserCouponId != 0 { + if req.UserCouponId != 0 && req.MemberGenre == 0 { var coupon model.UserCoupon err = model.NewUserCouponQuerySet(model.DB).IDEq(req.UserCouponId).One(&coupon) if err != nil { @@ -508,7 +513,7 @@ func UpgradeMember(c *gin.Context) { orderSn := model.GetOrderSn() err = model.UserOpenMemberRecord{Uid: uc.Uid, OpenNo: orderSn, MemberLevel: req.MemberLevel, OrderType: 9, MemberExpire: memberExpire, - UserCouponId: req.UserCouponId, Attach: wxpay.WxPayUpgradeMember}.Insert() + UserCouponId: req.UserCouponId, Attach: wxpay.WxPayUpgradeMember, MemberGenre: req.MemberGenre}.Insert() if err != nil { logger.Error(errors.New("WebPay err")) RespJson(c, status.InternalServerError, nil) @@ -539,6 +544,7 @@ func UpgradeMember(c *gin.Context) { func UpgradeMemberInfo(c *gin.Context) { req := struct { MemberLevel uint32 `json:"member_level"` // 昵称 + MemberGenre uint32 `json:"member_genre"` UserCouponId uint32 `json:"user_coupon_id"` }{} if c.ShouldBindJSON(&req) != nil { @@ -565,14 +571,14 @@ func UpgradeMemberInfo(c *gin.Context) { // RespJson(c, status.InternalServerError, nil) // return //} - originalMemberConfig, err := model.GetMemberConfig(user.MemberLevel) + originalMemberConfig, err := model.GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("err:", err) RespJson(c, status.InternalServerError, nil) return } - memberConfig, err := model.GetMemberConfig(req.MemberLevel) + memberConfig, err := model.GetMemberConfig(req.MemberLevel, req.MemberGenre) if err != nil { logger.Error("err:", err) RespJson(c, status.InternalServerError, nil) @@ -642,7 +648,7 @@ func UpgradeMemberInfo(c *gin.Context) { } var coupon model.UserCoupon - if req.UserCouponId != 0 { + if req.UserCouponId != 0 && req.MemberGenre == 0 { err = model.NewUserCouponQuerySet(model.DB).IDEq(req.UserCouponId).One(&coupon) if err != nil { logger.Error("coupon err:", err) @@ -701,7 +707,7 @@ func PayDeposit(c *gin.Context) { // logger.Error("err:", err) // return //} - memberConfig, err := model.GetMemberConfig(level) + memberConfig, err := model.GetMemberConfig(level, user.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) RespJson(c, status.InternalServerError, nil) diff --git a/model/autogenerated_invite.go b/model/autogenerated_invite.go index b4d682e..c28be57 100644 --- a/model/autogenerated_invite.go +++ b/model/autogenerated_invite.go @@ -1353,6 +1353,62 @@ func (qs UserInviteRecordQuerySet) Limit(limit int) UserInviteRecordQuerySet { return qs.w(qs.db.Limit(limit)) } +// MemberGenreEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreEq(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre = ?", memberGenre)) +} + +// MemberGenreGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreGt(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre > ?", memberGenre)) +} + +// MemberGenreGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreGte(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre >= ?", memberGenre)) +} + +// MemberGenreIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreIn(memberGenre ...uint32) UserInviteRecordQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre IN (?)", memberGenre)) +} + +// MemberGenreLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreLt(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre < ?", memberGenre)) +} + +// MemberGenreLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreLte(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre <= ?", memberGenre)) +} + +// MemberGenreNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreNe(memberGenre uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_genre != ?", memberGenre)) +} + +// MemberGenreNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberGenreNotIn(memberGenre ...uint32) UserInviteRecordQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre NOT IN (?)", memberGenre)) +} + // MemberLevelEq is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) MemberLevelEq(memberLevel uint32) UserInviteRecordQuerySet { @@ -1463,12 +1519,24 @@ func (qs UserInviteRecordQuerySet) OrderAscByID() UserInviteRecordQuerySet { return qs.w(qs.db.Order("id ASC")) } +// OrderAscByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByMemberGenre() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("member_genre ASC")) +} + // OrderAscByMemberLevel is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) OrderAscByMemberLevel() UserInviteRecordQuerySet { return qs.w(qs.db.Order("member_level ASC")) } +// OrderAscByRenewHide is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByRenewHide() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("renew_hide ASC")) +} + // OrderAscByScan is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) OrderAscByScan() UserInviteRecordQuerySet { @@ -1535,12 +1603,24 @@ func (qs UserInviteRecordQuerySet) OrderDescByID() UserInviteRecordQuerySet { return qs.w(qs.db.Order("id DESC")) } +// OrderDescByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByMemberGenre() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("member_genre DESC")) +} + // OrderDescByMemberLevel is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) OrderDescByMemberLevel() UserInviteRecordQuerySet { return qs.w(qs.db.Order("member_level DESC")) } +// OrderDescByRenewHide is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByRenewHide() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("renew_hide DESC")) +} + // OrderDescByScan is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) OrderDescByScan() UserInviteRecordQuerySet { @@ -1565,6 +1645,62 @@ func (qs UserInviteRecordQuerySet) OrderDescByUpdatedAt() UserInviteRecordQueryS return qs.w(qs.db.Order("updated_at DESC")) } +// RenewHideEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideEq(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide = ?", renewHide)) +} + +// RenewHideGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideGt(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide > ?", renewHide)) +} + +// RenewHideGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideGte(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide >= ?", renewHide)) +} + +// RenewHideIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideIn(renewHide ...uint32) UserInviteRecordQuerySet { + if len(renewHide) == 0 { + qs.db.AddError(errors.New("must at least pass one renewHide in RenewHideIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("renew_hide IN (?)", renewHide)) +} + +// RenewHideLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideLt(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide < ?", renewHide)) +} + +// RenewHideLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideLte(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide <= ?", renewHide)) +} + +// RenewHideNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideNe(renewHide uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("renew_hide != ?", renewHide)) +} + +// RenewHideNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) RenewHideNotIn(renewHide ...uint32) UserInviteRecordQuerySet { + if len(renewHide) == 0 { + qs.db.AddError(errors.New("must at least pass one renewHide in RenewHideNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("renew_hide NOT IN (?)", renewHide)) +} + // ScanEq is an autogenerated method // nolint: dupl func (qs UserInviteRecordQuerySet) ScanEq(scan uint32) UserInviteRecordQuerySet { @@ -1818,6 +1954,13 @@ func (u UserInviteRecordUpdater) SetID(ID uint32) UserInviteRecordUpdater { return u } +// SetMemberGenre is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetMemberGenre(memberGenre uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.MemberGenre)] = memberGenre + return u +} + // SetMemberLevel is an autogenerated method // nolint: dupl func (u UserInviteRecordUpdater) SetMemberLevel(memberLevel uint32) UserInviteRecordUpdater { @@ -1825,6 +1968,13 @@ func (u UserInviteRecordUpdater) SetMemberLevel(memberLevel uint32) UserInviteRe return u } +// SetRenewHide is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetRenewHide(renewHide uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.RenewHide)] = renewHide + return u +} + // SetScan is an autogenerated method // nolint: dupl func (u UserInviteRecordUpdater) SetScan(scan uint32) UserInviteRecordUpdater { @@ -1890,9 +2040,11 @@ var UserInviteRecordDBSchema = struct { Action UserInviteRecordDBSchemaField SpendType UserInviteRecordDBSchemaField MemberLevel UserInviteRecordDBSchemaField + MemberGenre UserInviteRecordDBSchemaField First UserInviteRecordDBSchemaField Scan UserInviteRecordDBSchemaField ActionTime UserInviteRecordDBSchemaField + RenewHide UserInviteRecordDBSchemaField }{ ID: UserInviteRecordDBSchemaField("id"), @@ -1904,9 +2056,11 @@ var UserInviteRecordDBSchema = struct { Action: UserInviteRecordDBSchemaField("action"), SpendType: UserInviteRecordDBSchemaField("spend_type"), MemberLevel: UserInviteRecordDBSchemaField("member_level"), + MemberGenre: UserInviteRecordDBSchemaField("member_genre"), First: UserInviteRecordDBSchemaField("first"), Scan: UserInviteRecordDBSchemaField("scan"), ActionTime: UserInviteRecordDBSchemaField("action_time"), + RenewHide: UserInviteRecordDBSchemaField("renew_hide"), } // Update updates UserInviteRecord fields by primary key @@ -1922,9 +2076,11 @@ func (o *UserInviteRecord) Update(db *gorm.DB, fields ...UserInviteRecordDBSchem "action": o.Action, "spend_type": o.SpendType, "member_level": o.MemberLevel, + "member_genre": o.MemberGenre, "first": o.First, "scan": o.Scan, "action_time": o.ActionTime, + "renew_hide": o.RenewHide, } u := map[string]interface{}{} for _, f := range fields { diff --git a/model/autogenerated_user.go b/model/autogenerated_user.go index 76f1dd8..a3d964e 100644 --- a/model/autogenerated_user.go +++ b/model/autogenerated_user.go @@ -8101,6 +8101,62 @@ func (qs UserInviteQuerySet) Limit(limit int) UserInviteQuerySet { return qs.w(qs.db.Limit(limit)) } +// MemberGenreEq is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreEq(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre = ?", memberGenre)) +} + +// MemberGenreGt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreGt(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre > ?", memberGenre)) +} + +// MemberGenreGte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreGte(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre >= ?", memberGenre)) +} + +// MemberGenreIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreIn(memberGenre ...uint32) UserInviteQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre IN (?)", memberGenre)) +} + +// MemberGenreLt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreLt(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre < ?", memberGenre)) +} + +// MemberGenreLte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreLte(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre <= ?", memberGenre)) +} + +// MemberGenreNe is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreNe(memberGenre uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("member_genre != ?", memberGenre)) +} + +// MemberGenreNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) MemberGenreNotIn(memberGenre ...uint32) UserInviteQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre NOT IN (?)", memberGenre)) +} + // MemberLevelEq is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) MemberLevelEq(memberLevel uint32) UserInviteQuerySet { @@ -8359,6 +8415,12 @@ func (qs UserInviteQuerySet) OrderAscByInviteForm() UserInviteQuerySet { return qs.w(qs.db.Order("invite_form ASC")) } +// OrderAscByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderAscByMemberGenre() UserInviteQuerySet { + return qs.w(qs.db.Order("member_genre ASC")) +} + // OrderAscByMemberLevel is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderAscByMemberLevel() UserInviteQuerySet { @@ -8383,6 +8445,12 @@ func (qs UserInviteQuerySet) OrderAscByMemberType() UserInviteQuerySet { return qs.w(qs.db.Order("member_type ASC")) } +// OrderAscByRenewHide is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderAscByRenewHide() UserInviteQuerySet { + return qs.w(qs.db.Order("renew_hide ASC")) +} + // OrderAscByScan is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderAscByScan() UserInviteQuerySet { @@ -8473,6 +8541,12 @@ func (qs UserInviteQuerySet) OrderDescByInviteForm() UserInviteQuerySet { return qs.w(qs.db.Order("invite_form DESC")) } +// OrderDescByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderDescByMemberGenre() UserInviteQuerySet { + return qs.w(qs.db.Order("member_genre DESC")) +} + // OrderDescByMemberLevel is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderDescByMemberLevel() UserInviteQuerySet { @@ -8497,6 +8571,12 @@ func (qs UserInviteQuerySet) OrderDescByMemberType() UserInviteQuerySet { return qs.w(qs.db.Order("member_type DESC")) } +// OrderDescByRenewHide is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderDescByRenewHide() UserInviteQuerySet { + return qs.w(qs.db.Order("renew_hide DESC")) +} + // OrderDescByScan is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderDescByScan() UserInviteQuerySet { @@ -8545,6 +8625,62 @@ func (qs UserInviteQuerySet) OrderDescByUserType() UserInviteQuerySet { return qs.w(qs.db.Order("user_type DESC")) } +// RenewHideEq is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideEq(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide = ?", renewHide)) +} + +// RenewHideGt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideGt(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide > ?", renewHide)) +} + +// RenewHideGte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideGte(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide >= ?", renewHide)) +} + +// RenewHideIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideIn(renewHide ...uint32) UserInviteQuerySet { + if len(renewHide) == 0 { + qs.db.AddError(errors.New("must at least pass one renewHide in RenewHideIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("renew_hide IN (?)", renewHide)) +} + +// RenewHideLt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideLt(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide < ?", renewHide)) +} + +// RenewHideLte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideLte(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide <= ?", renewHide)) +} + +// RenewHideNe is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideNe(renewHide uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("renew_hide != ?", renewHide)) +} + +// RenewHideNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) RenewHideNotIn(renewHide ...uint32) UserInviteQuerySet { + if len(renewHide) == 0 { + qs.db.AddError(errors.New("must at least pass one renewHide in RenewHideNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("renew_hide NOT IN (?)", renewHide)) +} + // ScanEq is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) ScanEq(scan uint32) UserInviteQuerySet { @@ -9022,6 +9158,13 @@ func (u UserInviteUpdater) SetInviteForm(inviteForm uint32) UserInviteUpdater { return u } +// SetMemberGenre is an autogenerated method +// nolint: dupl +func (u UserInviteUpdater) SetMemberGenre(memberGenre uint32) UserInviteUpdater { + u.fields[string(UserInviteDBSchema.MemberGenre)] = memberGenre + return u +} + // SetMemberLevel is an autogenerated method // nolint: dupl func (u UserInviteUpdater) SetMemberLevel(memberLevel uint32) UserInviteUpdater { @@ -9050,6 +9193,13 @@ func (u UserInviteUpdater) SetMemberType(memberType uint32) UserInviteUpdater { return u } +// SetRenewHide is an autogenerated method +// nolint: dupl +func (u UserInviteUpdater) SetRenewHide(renewHide uint32) UserInviteUpdater { + u.fields[string(UserInviteDBSchema.RenewHide)] = renewHide + return u +} + // SetScan is an autogenerated method // nolint: dupl func (u UserInviteUpdater) SetScan(scan uint32) UserInviteUpdater { @@ -9149,10 +9299,12 @@ var UserInviteDBSchema = struct { Action UserInviteDBSchemaField SpendType UserInviteDBSchemaField MemberLevel UserInviteDBSchemaField + MemberGenre UserInviteDBSchemaField UserInviteRecordId UserInviteDBSchemaField FirstInvite UserInviteDBSchemaField Scan UserInviteDBSchemaField InviteForm UserInviteDBSchemaField + RenewHide UserInviteDBSchemaField }{ ID: UserInviteDBSchemaField("id"), @@ -9170,10 +9322,12 @@ var UserInviteDBSchema = struct { Action: UserInviteDBSchemaField("action"), SpendType: UserInviteDBSchemaField("spend_type"), MemberLevel: UserInviteDBSchemaField("member_level"), + MemberGenre: UserInviteDBSchemaField("member_genre"), UserInviteRecordId: UserInviteDBSchemaField("user_invite_record_id"), FirstInvite: UserInviteDBSchemaField("first_invite"), Scan: UserInviteDBSchemaField("scan"), InviteForm: UserInviteDBSchemaField("invite_form"), + RenewHide: UserInviteDBSchemaField("renew_hide"), } // Update updates UserInvite fields by primary key @@ -9195,10 +9349,12 @@ func (o *UserInvite) Update(db *gorm.DB, fields ...UserInviteDBSchemaField) erro "action": o.Action, "spend_type": o.SpendType, "member_level": o.MemberLevel, + "member_genre": o.MemberGenre, "user_invite_record_id": o.UserInviteRecordId, "first_invite": o.FirstInvite, "scan": o.Scan, "invite_form": o.InviteForm, + "renew_hide": o.RenewHide, } u := map[string]interface{}{} for _, f := range fields { @@ -11317,6 +11473,62 @@ func (qs UserOpenMemberRecordQuerySet) MemberExpireNe(memberExpire time.Time) Us return qs.w(qs.db.Where("member_expire != ?", memberExpire)) } +// MemberGenreEq is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreEq(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre = ?", memberGenre)) +} + +// MemberGenreGt is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreGt(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre > ?", memberGenre)) +} + +// MemberGenreGte is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreGte(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre >= ?", memberGenre)) +} + +// MemberGenreIn is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreIn(memberGenre ...uint32) UserOpenMemberRecordQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre IN (?)", memberGenre)) +} + +// MemberGenreLt is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreLt(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre < ?", memberGenre)) +} + +// MemberGenreLte is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreLte(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre <= ?", memberGenre)) +} + +// MemberGenreNe is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreNe(memberGenre uint32) UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Where("member_genre != ?", memberGenre)) +} + +// MemberGenreNotIn is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) MemberGenreNotIn(memberGenre ...uint32) UserOpenMemberRecordQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre NOT IN (?)", memberGenre)) +} + // MemberLevelEq is an autogenerated method // nolint: dupl func (qs UserOpenMemberRecordQuerySet) MemberLevelEq(memberLevel uint32) UserOpenMemberRecordQuerySet { @@ -11495,6 +11707,12 @@ func (qs UserOpenMemberRecordQuerySet) OrderAscByMemberExpire() UserOpenMemberRe return qs.w(qs.db.Order("member_expire ASC")) } +// OrderAscByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) OrderAscByMemberGenre() UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Order("member_genre ASC")) +} + // OrderAscByMemberLevel is an autogenerated method // nolint: dupl func (qs UserOpenMemberRecordQuerySet) OrderAscByMemberLevel() UserOpenMemberRecordQuerySet { @@ -11585,6 +11803,12 @@ func (qs UserOpenMemberRecordQuerySet) OrderDescByMemberExpire() UserOpenMemberR return qs.w(qs.db.Order("member_expire DESC")) } +// OrderDescByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserOpenMemberRecordQuerySet) OrderDescByMemberGenre() UserOpenMemberRecordQuerySet { + return qs.w(qs.db.Order("member_genre DESC")) +} + // OrderDescByMemberLevel is an autogenerated method // nolint: dupl func (qs UserOpenMemberRecordQuerySet) OrderDescByMemberLevel() UserOpenMemberRecordQuerySet { @@ -11998,6 +12222,13 @@ func (u UserOpenMemberRecordUpdater) SetMemberExpire(memberExpire time.Time) Use return u } +// SetMemberGenre is an autogenerated method +// nolint: dupl +func (u UserOpenMemberRecordUpdater) SetMemberGenre(memberGenre uint32) UserOpenMemberRecordUpdater { + u.fields[string(UserOpenMemberRecordDBSchema.MemberGenre)] = memberGenre + return u +} + // SetMemberLevel is an autogenerated method // nolint: dupl func (u UserOpenMemberRecordUpdater) SetMemberLevel(memberLevel uint32) UserOpenMemberRecordUpdater { @@ -12091,6 +12322,7 @@ var UserOpenMemberRecordDBSchema = struct { OrderId UserOpenMemberRecordDBSchemaField OrderType UserOpenMemberRecordDBSchemaField MemberLevel UserOpenMemberRecordDBSchemaField + MemberGenre UserOpenMemberRecordDBSchemaField MemberExpire UserOpenMemberRecordDBSchemaField UserCouponId UserOpenMemberRecordDBSchemaField State UserOpenMemberRecordDBSchemaField @@ -12108,6 +12340,7 @@ var UserOpenMemberRecordDBSchema = struct { OrderId: UserOpenMemberRecordDBSchemaField("order_id"), OrderType: UserOpenMemberRecordDBSchemaField("order_type"), MemberLevel: UserOpenMemberRecordDBSchemaField("member_level"), + MemberGenre: UserOpenMemberRecordDBSchemaField("member_genre"), MemberExpire: UserOpenMemberRecordDBSchemaField("member_expire"), UserCouponId: UserOpenMemberRecordDBSchemaField("user_coupon_id"), State: UserOpenMemberRecordDBSchemaField("state"), @@ -12129,6 +12362,7 @@ func (o *UserOpenMemberRecord) Update(db *gorm.DB, fields ...UserOpenMemberRecor "order_id": o.OrderId, "order_type": o.OrderType, "member_level": o.MemberLevel, + "member_genre": o.MemberGenre, "member_expire": o.MemberExpire, "user_coupon_id": o.UserCouponId, "state": o.State, @@ -12823,6 +13057,42 @@ func (qs UserQuerySet) DepositTypeNotIn(depositType ...uint32) UserQuerySet { return qs.w(qs.db.Where("deposit_type NOT IN (?)", depositType)) } +// FirstRetailOrderEq is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderEq(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order = ?", firstRetailOrder)) +} + +// FirstRetailOrderGt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderGt(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order > ?", firstRetailOrder)) +} + +// FirstRetailOrderGte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderGte(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order >= ?", firstRetailOrder)) +} + +// FirstRetailOrderLt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderLt(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order < ?", firstRetailOrder)) +} + +// FirstRetailOrderLte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderLte(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order <= ?", firstRetailOrder)) +} + +// FirstRetailOrderNe is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) FirstRetailOrderNe(firstRetailOrder time.Time) UserQuerySet { + return qs.w(qs.db.Where("first_retail_order != ?", firstRetailOrder)) +} + // GenderEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) GenderEq(gender uint8) UserQuerySet { @@ -13229,6 +13499,62 @@ func (qs UserQuerySet) MemberExpireNe(memberExpire time.Time) UserQuerySet { return qs.w(qs.db.Where("member_expire != ?", memberExpire)) } +// MemberGenreEq is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreEq(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre = ?", memberGenre)) +} + +// MemberGenreGt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreGt(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre > ?", memberGenre)) +} + +// MemberGenreGte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreGte(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre >= ?", memberGenre)) +} + +// MemberGenreIn is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreIn(memberGenre ...uint32) UserQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre IN (?)", memberGenre)) +} + +// MemberGenreLt is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreLt(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre < ?", memberGenre)) +} + +// MemberGenreLte is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreLte(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre <= ?", memberGenre)) +} + +// MemberGenreNe is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreNe(memberGenre uint32) UserQuerySet { + return qs.w(qs.db.Where("member_genre != ?", memberGenre)) +} + +// MemberGenreNotIn is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) MemberGenreNotIn(memberGenre ...uint32) UserQuerySet { + if len(memberGenre) == 0 { + qs.db.AddError(errors.New("must at least pass one memberGenre in MemberGenreNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_genre NOT IN (?)", memberGenre)) +} + // MemberLevelEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) MemberLevelEq(memberLevel uint32) UserQuerySet { @@ -13517,6 +13843,12 @@ func (qs UserQuerySet) OrderAscByDepositType() UserQuerySet { return qs.w(qs.db.Order("deposit_type ASC")) } +// OrderAscByFirstRetailOrder is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderAscByFirstRetailOrder() UserQuerySet { + return qs.w(qs.db.Order("first_retail_order ASC")) +} + // OrderAscByGender is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByGender() UserQuerySet { @@ -13565,6 +13897,12 @@ func (qs UserQuerySet) OrderAscByMemberExpire() UserQuerySet { return qs.w(qs.db.Order("member_expire ASC")) } +// OrderAscByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderAscByMemberGenre() UserQuerySet { + return qs.w(qs.db.Order("member_genre ASC")) +} + // OrderAscByMemberLevel is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByMemberLevel() UserQuerySet { @@ -13733,6 +14071,12 @@ func (qs UserQuerySet) OrderDescByDepositType() UserQuerySet { return qs.w(qs.db.Order("deposit_type DESC")) } +// OrderDescByFirstRetailOrder is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderDescByFirstRetailOrder() UserQuerySet { + return qs.w(qs.db.Order("first_retail_order DESC")) +} + // OrderDescByGender is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByGender() UserQuerySet { @@ -13781,6 +14125,12 @@ func (qs UserQuerySet) OrderDescByMemberExpire() UserQuerySet { return qs.w(qs.db.Order("member_expire DESC")) } +// OrderDescByMemberGenre is an autogenerated method +// nolint: dupl +func (qs UserQuerySet) OrderDescByMemberGenre() UserQuerySet { + return qs.w(qs.db.Order("member_genre DESC")) +} + // OrderDescByMemberLevel is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByMemberLevel() UserQuerySet { @@ -14807,6 +15157,13 @@ func (u UserUpdater) SetDepositType(depositType uint32) UserUpdater { return u } +// SetFirstRetailOrder is an autogenerated method +// nolint: dupl +func (u UserUpdater) SetFirstRetailOrder(firstRetailOrder time.Time) UserUpdater { + u.fields[string(UserDBSchema.FirstRetailOrder)] = firstRetailOrder + return u +} + // SetGender is an autogenerated method // nolint: dupl func (u UserUpdater) SetGender(gender uint8) UserUpdater { @@ -14863,6 +15220,13 @@ func (u UserUpdater) SetMemberExpire(memberExpire time.Time) UserUpdater { return u } +// SetMemberGenre is an autogenerated method +// nolint: dupl +func (u UserUpdater) SetMemberGenre(memberGenre uint32) UserUpdater { + u.fields[string(UserDBSchema.MemberGenre)] = memberGenre + return u +} + // SetMemberLevel is an autogenerated method // nolint: dupl func (u UserUpdater) SetMemberLevel(memberLevel uint32) UserUpdater { @@ -15023,6 +15387,7 @@ var UserDBSchema = struct { DeletedAt UserDBSchemaField Uid UserDBSchemaField MemberLevel UserDBSchemaField + MemberGenre UserDBSchemaField MemberExpire UserDBSchemaField OpenMemberTime UserDBSchemaField Bond UserDBSchemaField @@ -15050,6 +15415,7 @@ var UserDBSchema = struct { CooperativeName UserDBSchemaField ShopAssistantName UserDBSchemaField OpenMemberLevel UserDBSchemaField + FirstRetailOrder UserDBSchemaField Version UserDBSchemaField InviteTime UserDBSchemaField DepositType UserDBSchemaField @@ -15061,6 +15427,7 @@ var UserDBSchema = struct { DeletedAt: UserDBSchemaField("deleted_at"), Uid: UserDBSchemaField("uid"), MemberLevel: UserDBSchemaField("member_level"), + MemberGenre: UserDBSchemaField("member_genre"), MemberExpire: UserDBSchemaField("member_expire"), OpenMemberTime: UserDBSchemaField("open_member_time"), Bond: UserDBSchemaField("bond"), @@ -15088,6 +15455,7 @@ var UserDBSchema = struct { CooperativeName: UserDBSchemaField("cooperative_name"), ShopAssistantName: UserDBSchemaField("shop_assistant_name"), OpenMemberLevel: UserDBSchemaField("open_member_level"), + FirstRetailOrder: UserDBSchemaField("first_retail_order"), Version: UserDBSchemaField("version"), InviteTime: UserDBSchemaField("invite_time"), DepositType: UserDBSchemaField("deposit_type"), @@ -15103,6 +15471,7 @@ func (o *User) Update(db *gorm.DB, fields ...UserDBSchemaField) error { "deleted_at": o.DeletedAt, "uid": o.Uid, "member_level": o.MemberLevel, + "member_genre": o.MemberGenre, "member_expire": o.MemberExpire, "open_member_time": o.OpenMemberTime, "bond": o.Bond, @@ -15130,6 +15499,7 @@ func (o *User) Update(db *gorm.DB, fields ...UserDBSchemaField) error { "cooperative_name": o.CooperativeName, "shop_assistant_name": o.ShopAssistantName, "open_member_level": o.OpenMemberLevel, + "first_retail_order": o.FirstRetailOrder, "version": o.Version, "invite_time": o.InviteTime, "deposit_type": o.DepositType, diff --git a/model/config.go b/model/config.go index 426bfbd..bd2935a 100644 --- a/model/config.go +++ b/model/config.go @@ -7,8 +7,9 @@ import ( "time" ) -//go:generate goqueryset -in config.go // gen:qs +// +//go:generate goqueryset -in config.go type Config struct { Model @@ -81,10 +82,18 @@ func MemberConfigInfo() ([]MemberConfig, error) { return memberConfigs, nil } -func GetMemberConfig(level uint32) (*MemberConfig, error) { +func GetMemberConfig(level uint32, genre uint32) (*MemberConfig, error) { if level == 3 { level = 2 } + if level == 2 && genre != 0 { + v, ok := ShortMemberConfigMap[genre] + if !ok { + logger.Error("genre err") + return nil, errors.New("genre err") + } + return v, nil + } info, err := MemberConfigInfo() if err != nil { return nil, err @@ -98,6 +107,38 @@ func GetMemberConfig(level uint32) (*MemberConfig, error) { return nil, errors.New("level err") } +// 会员费配置 + +//var ShortMemberConfigMap = map[uint32]*MemberConfig{ +// 201: { +// MemberLever: 2, +// MemberFee: 1, +// MemberDeposit: 3, +// CardMax: 1, +// }, +// 202: { +// MemberLever: 2, +// MemberFee: 2, +// MemberDeposit: 3, +// CardMax: 1, +// }, +//} + +var ShortMemberConfigMap = map[uint32]*MemberConfig{ + 201: { + MemberLever: 2, + MemberFee: 19900, + MemberDeposit: 30000, + CardMax: 1, + }, + 202: { + MemberLever: 2, + MemberFee: 29900, + MemberDeposit: 30000, + CardMax: 1, + }, +} + type MemberVmConfig struct { MemberLever uint32 `json:"member_lever"` // 会员等级 MemberVm uint32 `json:"member_vm"` diff --git a/model/invite.go b/model/invite.go index 883962f..88e1971 100644 --- a/model/invite.go +++ b/model/invite.go @@ -3,8 +3,9 @@ package model import "time" // 邀请关系 -//go:generate goqueryset -in invite.go // gen:qs +// +//go:generate goqueryset -in invite.go type UserInviteLevel struct { Model @@ -26,6 +27,7 @@ type UserInviteRecord struct { Action uint32 `json:"action"` // 1-未激活 2-激活邀请 SpendType uint32 `json:"spend_type"` // 1-未开通 2-开通会员 3-续费 4-升级 MemberLevel uint32 `json:"member_level"` // 会员等级 + MemberGenre uint32 `json:"member_genre"` // 会员类型 First uint32 `json:"first"` // 首次 Scan uint32 `json:"scan"` // 扫码 ActionTime time.Time `json:"action_time"` // 激活时间 diff --git a/model/model_test.go b/model/model_test.go index c1aa9c5..0d4371b 100644 --- a/model/model_test.go +++ b/model/model_test.go @@ -2021,8 +2021,8 @@ func TestNewUser(t *testing.T) { InitTestDB() DB = DBDev - InviteUid := uint32(63192613) - Uid := uint32(41186164) + InviteUid := uint32(45401895) + Uid := uint32(38986764) user := GetUserByUid(Uid) nowTime := time.Now() diff --git a/model/user.go b/model/user.go index 39510f9..5a6f17f 100644 --- a/model/user.go +++ b/model/user.go @@ -20,6 +20,7 @@ type User struct { Uid uint32 `json:"uid" gorm:"column:uid;unique_index"` MemberLevel uint32 `json:"member_level"` // 会员等级 1-用户 2-会员 + MemberGenre uint32 `json:"member_genre"` // 会员类型 MemberExpire time.Time `json:"member_expire"` // 会员到期时间 OpenMemberTime time.Time `json:"open_member_time"` // 开通会员 Bond uint32 `json:"bond"` // 保证金 @@ -102,6 +103,7 @@ type UserInvite struct { Action uint32 `json:"action"` // 1-未激活 2-激活邀请 SpendType uint32 `json:"spend_type"` // 1-未开通 2-开通会员 3-续费 4-升级 5-店员推广续费 MemberLevel uint32 `json:"member_level"` // 会员等级 + MemberGenre uint32 `json:"member_genre"` // 会员类型 UserInviteRecordId uint32 `json:"user_invite_record_id"` // 邀请记录 FirstInvite uint32 `json:"first_invite"` // 首次 Scan uint32 `json:"scan"` // 扫码 @@ -285,6 +287,7 @@ type UserOpenMemberRecord struct { OrderId uint32 `json:"order_id" gorm:"index"` OrderType uint32 `json:"order_type"` MemberLevel uint32 `json:"member_level"` + MemberGenre uint32 `json:"member_genre"` MemberExpire time.Time `json:"member_expire"` // 会员到期时间 UserCouponId uint32 `json:"user_coupon_id" gorm:"index"` // 优惠券id State uint32 `json:"state"` // 1-未处理 2-已处理 @@ -827,7 +830,7 @@ func OrderCardUserRentCard(uid uint32, count uint32, memberConfig *MemberConfig, return errors.New("user nil") } if memberConfig == nil { - memberConfig, err = GetMemberConfig(user.MemberLevel) + memberConfig, err = GetMemberConfig(user.MemberLevel, user.MemberGenre) if err != nil { logger.Error("GetMemberConfig err:", err) return err @@ -1230,6 +1233,16 @@ func StorePromotion(inviteUid, uid uint32, inviteUser, user *User) error { return nil } +func GetMemberGenreFromLevel(level uint32) uint32 { + switch level { + case 4: + return 400 + case 5: + return 500 + } + return 0 +} + //// todo //var userCoupon model.UserCoupon //err := model.NewUserCouponQuerySet(model.DB).IDEq(record.UserCouponId).One(&userCoupon) diff --git a/router/router_app.go b/router/router_app.go index 84b9230..161b1b8 100644 --- a/router/router_app.go +++ b/router/router_app.go @@ -175,7 +175,7 @@ func ConfigAppRouter(r gin.IRouter) { activity.POST("member_renewal/coupon_draw", controller.UserMemberRenewalCouponDraw) activity.POST("member_renewal/user_coupon/list", controller.MemberRenewalUserCouponList) activity.POST("postage_package/buy", controller.PostagePackageBuy) - activity.POST("user_coupon/list", controller.UserCouponList) + activity.POST("user_coupon/list", controller.UserCouponList) // 运费包 activity.POST("postage_package/info", controller.PostagePackageInfo) } @@ -197,7 +197,6 @@ func ConfigAppRouter(r gin.IRouter) { mall.POST("order/refund", controller.MallOrderRefund) // 订单-退货 mall.POST("order/refund_cancel", controller.MallOrderRefundCancel) // 订单-退货-取消 mall.POST("order/refund_send", controller.MallOrderRefundSend) // 订单-退货-填物流 - } shoppingCart := api.Group("shopping_cart") {