diff --git a/controller/account.go b/controller/account.go index 5d71beb..e7cbc80 100644 --- a/controller/account.go +++ b/controller/account.go @@ -72,42 +72,80 @@ func AuthLogin(c *gin.Context) { inviteUser := model.GetUserByUid(req.InviteUid) user.StoreId = inviteUser.StoreId - if inviteUser.UserType == 2 { - //user.UserType = model.UserTypeConsumer + if user.StoreId == 0 { _, err = model.NewUserQuerySet(model.DB).UidEq(user.Uid).GetUpdater().SetStoreId(inviteUser.StoreId). UpdateNum() if err != nil { - logger.Error(err) - } - memberLevel := user.MemberLevel - if memberLevel == 0 { - memberLevel = model.MemberTypeConsumer - } - invite := &model.UserInvite{ - FromUid: req.InviteUid, - UserType: inviteUser.UserType, - StoreId: inviteUser.StoreId, - MemberOpenTime: time.Time{}, - MemberType: memberLevel, - MemberStatus: 1, - ToUid: user.Uid, - } - - //count, err := model.NewUserInviteQuerySet(model.DB).FromUidEq(req.InviteUid).ToUidEq(user.Uid).Count() - //if err != nil { - // logger.Error(err) - // RespJson(c, status.InternalServerError, nil) - // return - //} - //if count == 0 { - //} - if err := invite.Create(model.DB); err != nil { - logger.Error(err) - RespJson(c, status.InternalServerError, nil) - return + logger.Error("update err:", err) } } + if inviteUser.UserType == 2 && user.Uid != 0 { + inviteRecord := &model.UserInviteRecord{ + ToUid: user.Uid, + FromUid: req.InviteUid, + Action: 1, + SpendType: 1, + MemberLevel: 0, + First: 0, + Scan: 1, + ActionTime: now, + } + err = model.DB.Create(inviteRecord).Error + if err != nil { + logger.Error("create user invite record err:", err) + } + + var inviteNew model.UserInvite + inviteErr := model.NewUserInviteQuerySet(model.DB).ToUidEq(user.Uid).FromUidEq(req.InviteUid).ActionEq(1). + SpendTypeEq(1).One(&inviteNew) + if inviteErr != nil && inviteErr != model.RecordNotFound { + logger.Error("user invite err:", err) + } + if inviteErr == model.RecordNotFound { + memberLevel := user.MemberLevel + if memberLevel == 0 { + memberLevel = model.MemberTypeConsumer + } + invite := &model.UserInvite{ + FromUid: req.InviteUid, + UserType: inviteUser.UserType, + StoreId: inviteUser.StoreId, + MemberOpenTime: time.Time{}, + MemberType: memberLevel, + MemberStatus: 1, + ToUid: user.Uid, + Action: 1, + SpendType: 1, + UserInviteRecordId: inviteRecord.ID, + FirstInvite: 1, + Scan: 1, + } + + //count, err := model.NewUserInviteQuerySet(model.DB).FromUidEq(req.InviteUid).ToUidEq(user.Uid).Count() + //if err != nil { + // logger.Error(err) + // RespJson(c, status.InternalServerError, nil) + // return + //} + //if count == 0 { + //} + if err := invite.Create(model.DB); err != nil { + logger.Error(err) + RespJson(c, status.InternalServerError, nil) + return + } + } + + if inviteErr == nil { + err = model.NewUserInviteQuerySet(model.DB).IDEq(inviteNew.ID).GetUpdater(). + SetFromUid(req.InviteUid).SetStoreId(inviteUser.StoreId).SetUserInviteRecordId(inviteRecord.ID).Update() + if err != nil { + logger.Error("from uid update user invite err:", err, req.InviteUid) + } + } + + } } if sqlErr == model.RecordNotFound { user = model.User{ @@ -121,20 +159,53 @@ func AuthLogin(c *gin.Context) { var eg errgroup.Group if req.InviteUid != 0 { - inviteUser := model.GetUserByUid(req.InviteUid) + inviteRecordFirst := &model.UserInviteRecord{ + ToUid: user.Uid, + FromUid: req.InviteUid, + Action: 2, + SpendType: 1, + MemberLevel: 0, + First: 1, + Scan: 1, + ActionTime: now, + } + err = model.DB.Create(inviteRecordFirst).Error + if err != nil { + logger.Error("create user invite record err:", err) + } + inviteRecord := &model.UserInviteRecord{ + ToUid: user.Uid, + FromUid: req.InviteUid, + Action: 1, + SpendType: 1, + MemberLevel: 0, + First: 0, + Scan: 1, + ActionTime: now, + } + err = model.DB.Create(inviteRecord).Error + if err != nil { + logger.Error("create user invite record err:", err) + } + + inviteUser := model.GetUserByUid(req.InviteUid) user.StoreId = inviteUser.StoreId user.UserType = model.UserTypeConsumer user.CooperativeBusinessId = inviteUser.CooperativeBusinessId user.CooperativeName = inviteUser.CooperativeName invite := &model.UserInvite{ - FromUid: req.InviteUid, - UserType: inviteUser.UserType, - StoreId: inviteUser.StoreId, - MemberType: model.MemberTypeConsumer, - ToUid: user.Uid, - MemberStatus: 1, + FromUid: req.InviteUid, + UserType: inviteUser.UserType, + StoreId: inviteUser.StoreId, + MemberType: model.MemberTypeConsumer, + ToUid: user.Uid, + MemberStatus: 1, + Action: 1, + SpendType: 1, + UserInviteRecordId: inviteRecord.ID, + Scan: 1, } eg.Go(func() error { if err := invite.Create(model.DB); err != nil { diff --git a/controller/cb_goods_stock.go b/controller/cb_goods_stock.go index 6cace9c..b4700c9 100644 --- a/controller/cb_goods_stock.go +++ b/controller/cb_goods_stock.go @@ -519,7 +519,7 @@ func AssistantMemberPromotionDetail(c *gin.Context) { var list []model.UserInvite qs := model.NewUserInviteQuerySet(model.DB).FromUidEq(req.AssistantUid). MemberOpenTimeGte(dateTime).MemberOpenTimeLte(dateTime.AddDate(0, 1, 0)) - + qs = qs.SpendTypeEq(2) count, err := qs.Count() if err != nil { logger.Error("err:", err) diff --git a/controller/game_card.go b/controller/game_card.go index e4682d8..2259541 100644 --- a/controller/game_card.go +++ b/controller/game_card.go @@ -475,7 +475,6 @@ func PushWXPayNotice(c *gin.Context) { } else { memberRecord.Type = model.GetUserMemberRecordType(record.MemberLevel, 2) } - _, err = userUpdateQs.UpdateNum() if err != nil { logger.Error("err:", err) @@ -505,6 +504,8 @@ func PushWXPayNotice(c *gin.Context) { ToUid: record.Uid, MemberStatus: 2, MemberLevel: record.MemberLevel, + Action: 1, + SpendType: 1, } err := userInvite.Create(model.DB) if err != nil { @@ -514,17 +515,71 @@ func PushWXPayNotice(c *gin.Context) { if err != nil { logger.Error("send user vm err:", err) } - } else { - qs := model.NewUserInviteQuerySet(model.DB).ToUidEq(record.Uid).GetUpdater() - if user.MemberLevel != 2 { - qs = qs.SetMemberOpenTime(newTime).SetMemberLevel(record.MemberLevel) + } + + if err == nil { + spendType := uint32(2) + if !user.OpenMemberTime.IsZero() { + spendType = 3 } - num, err := qs.SetMemberType(2).SetMemberStatus(2).UpdateNum() - if err != nil { - logger.Error("err:", err) - } - if num == 0 { - logger.Error("更新错误") + + //qs := model.NewUserInviteQuerySet(model.DB).ToUidEq(record.Uid).GetUpdater() + if invite.Action != 2 { + qs := model.NewUserInviteQuerySet(model.DB).IDEq(invite.ID).GetUpdater() + if user.MemberLevel != 2 { + qs = qs.SetMemberOpenTime(newTime).SetMemberLevel(record.MemberLevel) + } + _, err = qs.SetMemberType(2).SetMemberStatus(2). + SetAction(2).SetSpendType(spendType).UpdateNum() + if err != nil { + logger.Error("update user invite action spend type err:", err) + } + if invite.UserInviteRecordId != 0 { + go func() { + err = model.NewUserInviteRecordQuerySet(model.DB).IDEq(invite.UserInviteRecordId).GetUpdater(). + SetAction(2).SetSpendType(spendType).SetMemberLevel(record.MemberLevel). + SetActionTime(newTime).Update() + if err != nil { + logger.Error("update user invite record err:", err) + } + }() + } + } else { + inviteRecordNew := &model.UserInviteRecord{ + ToUid: invite.ToUid, + FromUid: invite.FromUid, + Action: 2, + SpendType: spendType, + MemberLevel: record.MemberLevel, + First: 0, + Scan: 0, + ActionTime: newTime, + } + err = model.DB.Create(inviteRecordNew).Error + if err != nil { + logger.Error("create invite record err:", err) + } + + userInviteNew := &model.UserInvite{ + FromUid: invite.FromUid, + UserType: invite.UserType, + StoreId: invite.StoreId, + MemberOpenTime: invite.MemberOpenTime, + MemberType: 2, + MemberStatus: 2, + ToUid: invite.ToUid, + StoreType: invite.StoreType, + Action: 2, + SpendType: spendType, + MemberLevel: record.MemberLevel, + UserInviteRecordId: inviteRecordNew.ID, + FirstInvite: 0, + } + err = model.DB.Create(userInviteNew).Error + if err != nil { + logger.Error("create invite record err:", err) + } + } if invite.FromUid != 0 { diff --git a/controller/user.go b/controller/user.go index a3b084a..81808cd 100644 --- a/controller/user.go +++ b/controller/user.go @@ -391,12 +391,18 @@ func UpgradeMember(c *gin.Context) { if deductionTime > 0 { deductionDays = deductionTime / int64(24*3600) } - memberYare := deductionDays/365 + 1 + memberYare := 0 + memberMendFee := int64(0) // 抵扣金 deductionFee := (((int64(memberFee) * deductionDays) / 365) / 100) * 100 - - // 补会员费 - memberMendFee := int64(memberConfig.MemberFee*uint32(memberYare)) - deductionFee + if deductionDays < 365 { + memberYare = 1 + // 补会员费 + memberMendFee = int64(memberConfig.MemberFee*uint32(memberYare)) - deductionFee + } else { + // 补会员费 + memberMendFee = int64((int64(memberConfig.MemberFee)*deductionDays)/365) - deductionFee + } totalFee := int64(depositMendFee) + memberMendFee //if memberMendFee < 0 { @@ -419,6 +425,7 @@ func UpgradeMember(c *gin.Context) { RespJson(c, status.InternalServerError, nil) return } + totalFee = (totalFee / 100) * 100 if user.IsMember() && req.UserCouponId != 0 { var coupon model.UserCoupon @@ -465,7 +472,12 @@ func UpgradeMember(c *gin.Context) { // return //} //orderSn := utils.GetSerialNo32HEXString() - memberExpire := time.Now().AddDate(1*int(memberYare), 0, count*30) + memberExpire := time.Time{} + if deductionDays < 365 { + memberExpire = time.Now().AddDate(1*int(memberYare), 0, count*30) + } else { + memberExpire = time.Now().AddDate(0, 0, count*30+int(deductionDays)) + } orderSn := model.GetOrderSn() err = model.UserOpenMemberRecord{Uid: uc.Uid, OpenNo: orderSn, MemberLevel: req.MemberLevel, OrderType: 9, MemberExpire: memberExpire, @@ -565,12 +577,25 @@ func UpgradeMemberInfo(c *gin.Context) { if deductionTime > 0 { deductionDays = deductionTime / int64(24*3600) } - memberYare := deductionDays/365 + 1 + //memberYare := deductionDays/365 + 1 + //// 抵扣金 + //deductionFee := (((int64(memberFee) * deductionDays) / 365) / 100) * 100 + // + //// 补会员费 + //memberMendFee := int64(memberConfig.MemberFee*uint32(memberYare)) - deductionFee + + memberYare := 0 + memberMendFee := int64(0) // 抵扣金 deductionFee := (((int64(memberFee) * deductionDays) / 365) / 100) * 100 - - // 补会员费 - memberMendFee := int64(memberConfig.MemberFee*uint32(memberYare)) - deductionFee + if deductionDays < 365 { + memberYare = 1 + // 补会员费 + memberMendFee = int64(memberConfig.MemberFee*uint32(memberYare)) - deductionFee + } else { + // 补会员费 + memberMendFee = int64((int64(memberConfig.MemberFee)*deductionDays)/365) - deductionFee + } totalFee := int64(depositMendFee) + memberMendFee //if memberMendFee < 0 { @@ -583,6 +608,7 @@ func UpgradeMemberInfo(c *gin.Context) { RespJson(c, status.InternalServerError, nil) return } + totalFee = (totalFee / 100) * 100 //fmt.Println("MemberLevel:", req.MemberLevel) //fmt.Println("UserCouponId:", req.UserCouponId) //fmt.Println("totalFee:", totalFee) diff --git a/model/autogenerated_invite.go b/model/autogenerated_invite.go new file mode 100644 index 0000000..b4d682e --- /dev/null +++ b/model/autogenerated_invite.go @@ -0,0 +1,1963 @@ +// Code generated by go-queryset. DO NOT EDIT. +package model + +import ( + "errors" + "fmt" + "strings" + "time" + + "github.com/jinzhu/gorm" +) + +// ===== BEGIN of all query sets + +// ===== BEGIN of query set UserInviteLevelQuerySet + +// UserInviteLevelQuerySet is an queryset type for UserInviteLevel +type UserInviteLevelQuerySet struct { + db *gorm.DB +} + +// NewUserInviteLevelQuerySet constructs new UserInviteLevelQuerySet +func NewUserInviteLevelQuerySet(db *gorm.DB) UserInviteLevelQuerySet { + return UserInviteLevelQuerySet{ + db: db.Model(&UserInviteLevel{}), + } +} + +func (qs UserInviteLevelQuerySet) w(db *gorm.DB) UserInviteLevelQuerySet { + return NewUserInviteLevelQuerySet(db) +} + +func (qs UserInviteLevelQuerySet) Select(fields ...UserInviteLevelDBSchemaField) UserInviteLevelQuerySet { + names := []string{} + for _, f := range fields { + names = append(names, f.String()) + } + + return qs.w(qs.db.Select(strings.Join(names, ","))) +} + +// Create is an autogenerated method +// nolint: dupl +func (o *UserInviteLevel) Create(db *gorm.DB) error { + return db.Create(o).Error +} + +// Delete is an autogenerated method +// nolint: dupl +func (o *UserInviteLevel) Delete(db *gorm.DB) error { + return db.Delete(o).Error +} + +// All is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) All(ret *[]UserInviteLevel) error { + return qs.db.Find(ret).Error +} + +// Count is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Count() (int, error) { + var count int + err := qs.db.Count(&count).Error + return count, err +} + +// CreatedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtEq(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at = ?", createdAt)) +} + +// CreatedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtGt(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at > ?", createdAt)) +} + +// CreatedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtGte(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at >= ?", createdAt)) +} + +// CreatedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtLt(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at < ?", createdAt)) +} + +// CreatedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtLte(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at <= ?", createdAt)) +} + +// CreatedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) CreatedAtNe(createdAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("created_at != ?", createdAt)) +} + +// Delete is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Delete() error { + return qs.db.Delete(UserInviteLevel{}).Error +} + +// DeleteNum is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeleteNum() (int64, error) { + db := qs.db.Delete(UserInviteLevel{}) + return db.RowsAffected, db.Error +} + +// DeleteNumUnscoped is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeleteNumUnscoped() (int64, error) { + db := qs.db.Unscoped().Delete(UserInviteLevel{}) + return db.RowsAffected, db.Error +} + +// DeletedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtEq(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at = ?", deletedAt)) +} + +// DeletedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtGt(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at > ?", deletedAt)) +} + +// DeletedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtGte(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at >= ?", deletedAt)) +} + +// DeletedAtIsNotNull is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtIsNotNull() UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at IS NOT NULL")) +} + +// DeletedAtIsNull is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtIsNull() UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at IS NULL")) +} + +// DeletedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtLt(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at < ?", deletedAt)) +} + +// DeletedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtLte(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at <= ?", deletedAt)) +} + +// DeletedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) DeletedAtNe(deletedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("deleted_at != ?", deletedAt)) +} + +// GetDB is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) GetDB() *gorm.DB { + return qs.db +} + +// GetUpdater is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) GetUpdater() UserInviteLevelUpdater { + return NewUserInviteLevelUpdater(qs.db) +} + +// IDEq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDEq(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id = ?", ID)) +} + +// IDGt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDGt(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id > ?", ID)) +} + +// IDGte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDGte(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id >= ?", ID)) +} + +// IDIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDIn(ID ...uint32) UserInviteLevelQuerySet { + if len(ID) == 0 { + qs.db.AddError(errors.New("must at least pass one ID in IDIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("id IN (?)", ID)) +} + +// IDLt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDLt(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id < ?", ID)) +} + +// IDLte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDLte(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id <= ?", ID)) +} + +// IDNe is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDNe(ID uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("id != ?", ID)) +} + +// IDNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) IDNotIn(ID ...uint32) UserInviteLevelQuerySet { + if len(ID) == 0 { + qs.db.AddError(errors.New("must at least pass one ID in IDNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("id NOT IN (?)", ID)) +} + +// Limit is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Limit(limit int) UserInviteLevelQuerySet { + return qs.w(qs.db.Limit(limit)) +} + +// Lv1Eq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Eq(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 = ?", lv1)) +} + +// Lv1Gt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Gt(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 > ?", lv1)) +} + +// Lv1Gte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Gte(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 >= ?", lv1)) +} + +// Lv1In is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1In(lv1 ...uint32) UserInviteLevelQuerySet { + if len(lv1) == 0 { + qs.db.AddError(errors.New("must at least pass one lv1 in Lv1In")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv1 IN (?)", lv1)) +} + +// Lv1Lt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Lt(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 < ?", lv1)) +} + +// Lv1Lte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Lte(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 <= ?", lv1)) +} + +// Lv1Ne is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1Ne(lv1 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv1 != ?", lv1)) +} + +// Lv1NotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv1NotIn(lv1 ...uint32) UserInviteLevelQuerySet { + if len(lv1) == 0 { + qs.db.AddError(errors.New("must at least pass one lv1 in Lv1NotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv1 NOT IN (?)", lv1)) +} + +// Lv2Eq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Eq(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 = ?", lv2)) +} + +// Lv2Gt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Gt(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 > ?", lv2)) +} + +// Lv2Gte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Gte(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 >= ?", lv2)) +} + +// Lv2In is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2In(lv2 ...uint32) UserInviteLevelQuerySet { + if len(lv2) == 0 { + qs.db.AddError(errors.New("must at least pass one lv2 in Lv2In")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv2 IN (?)", lv2)) +} + +// Lv2Lt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Lt(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 < ?", lv2)) +} + +// Lv2Lte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Lte(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 <= ?", lv2)) +} + +// Lv2Ne is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2Ne(lv2 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv2 != ?", lv2)) +} + +// Lv2NotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv2NotIn(lv2 ...uint32) UserInviteLevelQuerySet { + if len(lv2) == 0 { + qs.db.AddError(errors.New("must at least pass one lv2 in Lv2NotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv2 NOT IN (?)", lv2)) +} + +// Lv3Eq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Eq(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 = ?", lv3)) +} + +// Lv3Gt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Gt(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 > ?", lv3)) +} + +// Lv3Gte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Gte(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 >= ?", lv3)) +} + +// Lv3In is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3In(lv3 ...uint32) UserInviteLevelQuerySet { + if len(lv3) == 0 { + qs.db.AddError(errors.New("must at least pass one lv3 in Lv3In")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv3 IN (?)", lv3)) +} + +// Lv3Lt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Lt(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 < ?", lv3)) +} + +// Lv3Lte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Lte(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 <= ?", lv3)) +} + +// Lv3Ne is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3Ne(lv3 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv3 != ?", lv3)) +} + +// Lv3NotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv3NotIn(lv3 ...uint32) UserInviteLevelQuerySet { + if len(lv3) == 0 { + qs.db.AddError(errors.New("must at least pass one lv3 in Lv3NotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv3 NOT IN (?)", lv3)) +} + +// Lv4Eq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Eq(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 = ?", lv4)) +} + +// Lv4Gt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Gt(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 > ?", lv4)) +} + +// Lv4Gte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Gte(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 >= ?", lv4)) +} + +// Lv4In is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4In(lv4 ...uint32) UserInviteLevelQuerySet { + if len(lv4) == 0 { + qs.db.AddError(errors.New("must at least pass one lv4 in Lv4In")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv4 IN (?)", lv4)) +} + +// Lv4Lt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Lt(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 < ?", lv4)) +} + +// Lv4Lte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Lte(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 <= ?", lv4)) +} + +// Lv4Ne is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4Ne(lv4 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv4 != ?", lv4)) +} + +// Lv4NotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv4NotIn(lv4 ...uint32) UserInviteLevelQuerySet { + if len(lv4) == 0 { + qs.db.AddError(errors.New("must at least pass one lv4 in Lv4NotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv4 NOT IN (?)", lv4)) +} + +// Lv5Eq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Eq(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 = ?", lv5)) +} + +// Lv5Gt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Gt(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 > ?", lv5)) +} + +// Lv5Gte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Gte(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 >= ?", lv5)) +} + +// Lv5In is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5In(lv5 ...uint32) UserInviteLevelQuerySet { + if len(lv5) == 0 { + qs.db.AddError(errors.New("must at least pass one lv5 in Lv5In")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv5 IN (?)", lv5)) +} + +// Lv5Lt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Lt(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 < ?", lv5)) +} + +// Lv5Lte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Lte(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 <= ?", lv5)) +} + +// Lv5Ne is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5Ne(lv5 uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("lv5 != ?", lv5)) +} + +// Lv5NotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Lv5NotIn(lv5 ...uint32) UserInviteLevelQuerySet { + if len(lv5) == 0 { + qs.db.AddError(errors.New("must at least pass one lv5 in Lv5NotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("lv5 NOT IN (?)", lv5)) +} + +// Offset is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) Offset(offset int) UserInviteLevelQuerySet { + return qs.w(qs.db.Offset(offset)) +} + +// One is used to retrieve one result. It returns gorm.ErrRecordNotFound +// if nothing was fetched +func (qs UserInviteLevelQuerySet) One(ret *UserInviteLevel) error { + return qs.db.First(ret).Error +} + +// OrderAscByCreatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByCreatedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("created_at ASC")) +} + +// OrderAscByDeletedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByDeletedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("deleted_at ASC")) +} + +// OrderAscByID is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByID() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("id ASC")) +} + +// OrderAscByLv1 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByLv1() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv1 ASC")) +} + +// OrderAscByLv2 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByLv2() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv2 ASC")) +} + +// OrderAscByLv3 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByLv3() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv3 ASC")) +} + +// OrderAscByLv4 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByLv4() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv4 ASC")) +} + +// OrderAscByLv5 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByLv5() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv5 ASC")) +} + +// OrderAscByUid is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByUid() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("uid ASC")) +} + +// OrderAscByUpdatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderAscByUpdatedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("updated_at ASC")) +} + +// OrderDescByCreatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByCreatedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("created_at DESC")) +} + +// OrderDescByDeletedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByDeletedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("deleted_at DESC")) +} + +// OrderDescByID is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByID() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("id DESC")) +} + +// OrderDescByLv1 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByLv1() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv1 DESC")) +} + +// OrderDescByLv2 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByLv2() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv2 DESC")) +} + +// OrderDescByLv3 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByLv3() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv3 DESC")) +} + +// OrderDescByLv4 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByLv4() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv4 DESC")) +} + +// OrderDescByLv5 is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByLv5() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("lv5 DESC")) +} + +// OrderDescByUid is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByUid() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("uid DESC")) +} + +// OrderDescByUpdatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) OrderDescByUpdatedAt() UserInviteLevelQuerySet { + return qs.w(qs.db.Order("updated_at DESC")) +} + +// UidEq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidEq(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid = ?", uid)) +} + +// UidGt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidGt(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid > ?", uid)) +} + +// UidGte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidGte(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid >= ?", uid)) +} + +// UidIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidIn(uid ...uint32) UserInviteLevelQuerySet { + if len(uid) == 0 { + qs.db.AddError(errors.New("must at least pass one uid in UidIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("uid IN (?)", uid)) +} + +// UidLt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidLt(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid < ?", uid)) +} + +// UidLte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidLte(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid <= ?", uid)) +} + +// UidNe is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidNe(uid uint32) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("uid != ?", uid)) +} + +// UidNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UidNotIn(uid ...uint32) UserInviteLevelQuerySet { + if len(uid) == 0 { + qs.db.AddError(errors.New("must at least pass one uid in UidNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("uid NOT IN (?)", uid)) +} + +// UpdatedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtEq(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at = ?", updatedAt)) +} + +// UpdatedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtGt(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at > ?", updatedAt)) +} + +// UpdatedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtGte(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at >= ?", updatedAt)) +} + +// UpdatedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtLt(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at < ?", updatedAt)) +} + +// UpdatedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtLte(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at <= ?", updatedAt)) +} + +// UpdatedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteLevelQuerySet) UpdatedAtNe(updatedAt time.Time) UserInviteLevelQuerySet { + return qs.w(qs.db.Where("updated_at != ?", updatedAt)) +} + +// SetCreatedAt is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetCreatedAt(createdAt time.Time) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.CreatedAt)] = createdAt + return u +} + +// SetDeletedAt is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetDeletedAt(deletedAt *time.Time) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.DeletedAt)] = deletedAt + return u +} + +// SetID is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetID(ID uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.ID)] = ID + return u +} + +// SetLv1 is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetLv1(lv1 uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Lv1)] = lv1 + return u +} + +// SetLv2 is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetLv2(lv2 uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Lv2)] = lv2 + return u +} + +// SetLv3 is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetLv3(lv3 uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Lv3)] = lv3 + return u +} + +// SetLv4 is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetLv4(lv4 uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Lv4)] = lv4 + return u +} + +// SetLv5 is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetLv5(lv5 uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Lv5)] = lv5 + return u +} + +// SetUid is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetUid(uid uint32) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.Uid)] = uid + return u +} + +// SetUpdatedAt is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) SetUpdatedAt(updatedAt time.Time) UserInviteLevelUpdater { + u.fields[string(UserInviteLevelDBSchema.UpdatedAt)] = updatedAt + return u +} + +// Update is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) Update() error { + return u.db.Updates(u.fields).Error +} + +// UpdateNum is an autogenerated method +// nolint: dupl +func (u UserInviteLevelUpdater) UpdateNum() (int64, error) { + db := u.db.Updates(u.fields) + return db.RowsAffected, db.Error +} + +// ===== END of query set UserInviteLevelQuerySet + +// ===== BEGIN of UserInviteLevel modifiers + +// UserInviteLevelDBSchemaField describes database schema field. It requires for method 'Update' +type UserInviteLevelDBSchemaField string + +// String method returns string representation of field. +// nolint: dupl +func (f UserInviteLevelDBSchemaField) String() string { + return string(f) +} + +// UserInviteLevelDBSchema stores db field names of UserInviteLevel +var UserInviteLevelDBSchema = struct { + ID UserInviteLevelDBSchemaField + CreatedAt UserInviteLevelDBSchemaField + UpdatedAt UserInviteLevelDBSchemaField + DeletedAt UserInviteLevelDBSchemaField + Uid UserInviteLevelDBSchemaField + Lv1 UserInviteLevelDBSchemaField + Lv2 UserInviteLevelDBSchemaField + Lv3 UserInviteLevelDBSchemaField + Lv4 UserInviteLevelDBSchemaField + Lv5 UserInviteLevelDBSchemaField +}{ + + ID: UserInviteLevelDBSchemaField("id"), + CreatedAt: UserInviteLevelDBSchemaField("created_at"), + UpdatedAt: UserInviteLevelDBSchemaField("updated_at"), + DeletedAt: UserInviteLevelDBSchemaField("deleted_at"), + Uid: UserInviteLevelDBSchemaField("uid"), + Lv1: UserInviteLevelDBSchemaField("lv1"), + Lv2: UserInviteLevelDBSchemaField("lv2"), + Lv3: UserInviteLevelDBSchemaField("lv3"), + Lv4: UserInviteLevelDBSchemaField("lv4"), + Lv5: UserInviteLevelDBSchemaField("lv5"), +} + +// Update updates UserInviteLevel fields by primary key +// nolint: dupl +func (o *UserInviteLevel) Update(db *gorm.DB, fields ...UserInviteLevelDBSchemaField) error { + dbNameToFieldName := map[string]interface{}{ + "id": o.ID, + "created_at": o.CreatedAt, + "updated_at": o.UpdatedAt, + "deleted_at": o.DeletedAt, + "uid": o.Uid, + "lv1": o.Lv1, + "lv2": o.Lv2, + "lv3": o.Lv3, + "lv4": o.Lv4, + "lv5": o.Lv5, + } + u := map[string]interface{}{} + for _, f := range fields { + fs := f.String() + u[fs] = dbNameToFieldName[fs] + } + if err := db.Model(o).Updates(u).Error; err != nil { + if err == gorm.ErrRecordNotFound { + return err + } + + return fmt.Errorf("can't update UserInviteLevel %v fields %v: %s", + o, fields, err) + } + + return nil +} + +// UserInviteLevelUpdater is an UserInviteLevel updates manager +type UserInviteLevelUpdater struct { + fields map[string]interface{} + db *gorm.DB +} + +// NewUserInviteLevelUpdater creates new UserInviteLevel updater +// nolint: dupl +func NewUserInviteLevelUpdater(db *gorm.DB) UserInviteLevelUpdater { + return UserInviteLevelUpdater{ + fields: map[string]interface{}{}, + db: db.Model(&UserInviteLevel{}), + } +} + +// ===== END of UserInviteLevel modifiers + +// ===== BEGIN of query set UserInviteRecordQuerySet + +// UserInviteRecordQuerySet is an queryset type for UserInviteRecord +type UserInviteRecordQuerySet struct { + db *gorm.DB +} + +// NewUserInviteRecordQuerySet constructs new UserInviteRecordQuerySet +func NewUserInviteRecordQuerySet(db *gorm.DB) UserInviteRecordQuerySet { + return UserInviteRecordQuerySet{ + db: db.Model(&UserInviteRecord{}), + } +} + +func (qs UserInviteRecordQuerySet) w(db *gorm.DB) UserInviteRecordQuerySet { + return NewUserInviteRecordQuerySet(db) +} + +func (qs UserInviteRecordQuerySet) Select(fields ...UserInviteRecordDBSchemaField) UserInviteRecordQuerySet { + names := []string{} + for _, f := range fields { + names = append(names, f.String()) + } + + return qs.w(qs.db.Select(strings.Join(names, ","))) +} + +// Create is an autogenerated method +// nolint: dupl +func (o *UserInviteRecord) Create(db *gorm.DB) error { + return db.Create(o).Error +} + +// Delete is an autogenerated method +// nolint: dupl +func (o *UserInviteRecord) Delete(db *gorm.DB) error { + return db.Delete(o).Error +} + +// ActionEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionEq(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action = ?", action)) +} + +// ActionGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionGt(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action > ?", action)) +} + +// ActionGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionGte(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action >= ?", action)) +} + +// ActionIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionIn(action ...uint32) UserInviteRecordQuerySet { + if len(action) == 0 { + qs.db.AddError(errors.New("must at least pass one action in ActionIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("action IN (?)", action)) +} + +// ActionLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionLt(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action < ?", action)) +} + +// ActionLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionLte(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action <= ?", action)) +} + +// ActionNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionNe(action uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action != ?", action)) +} + +// ActionNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionNotIn(action ...uint32) UserInviteRecordQuerySet { + if len(action) == 0 { + qs.db.AddError(errors.New("must at least pass one action in ActionNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("action NOT IN (?)", action)) +} + +// ActionTimeEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeEq(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time = ?", actionTime)) +} + +// ActionTimeGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeGt(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time > ?", actionTime)) +} + +// ActionTimeGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeGte(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time >= ?", actionTime)) +} + +// ActionTimeLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeLt(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time < ?", actionTime)) +} + +// ActionTimeLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeLte(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time <= ?", actionTime)) +} + +// ActionTimeNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ActionTimeNe(actionTime time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("action_time != ?", actionTime)) +} + +// All is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) All(ret *[]UserInviteRecord) error { + return qs.db.Find(ret).Error +} + +// Count is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) Count() (int, error) { + var count int + err := qs.db.Count(&count).Error + return count, err +} + +// CreatedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtEq(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at = ?", createdAt)) +} + +// CreatedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtGt(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at > ?", createdAt)) +} + +// CreatedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtGte(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at >= ?", createdAt)) +} + +// CreatedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtLt(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at < ?", createdAt)) +} + +// CreatedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtLte(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at <= ?", createdAt)) +} + +// CreatedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) CreatedAtNe(createdAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("created_at != ?", createdAt)) +} + +// Delete is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) Delete() error { + return qs.db.Delete(UserInviteRecord{}).Error +} + +// DeleteNum is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeleteNum() (int64, error) { + db := qs.db.Delete(UserInviteRecord{}) + return db.RowsAffected, db.Error +} + +// DeleteNumUnscoped is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeleteNumUnscoped() (int64, error) { + db := qs.db.Unscoped().Delete(UserInviteRecord{}) + return db.RowsAffected, db.Error +} + +// DeletedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtEq(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at = ?", deletedAt)) +} + +// DeletedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtGt(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at > ?", deletedAt)) +} + +// DeletedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtGte(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at >= ?", deletedAt)) +} + +// DeletedAtIsNotNull is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtIsNotNull() UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at IS NOT NULL")) +} + +// DeletedAtIsNull is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtIsNull() UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at IS NULL")) +} + +// DeletedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtLt(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at < ?", deletedAt)) +} + +// DeletedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtLte(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at <= ?", deletedAt)) +} + +// DeletedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) DeletedAtNe(deletedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("deleted_at != ?", deletedAt)) +} + +// FirstEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstEq(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first = ?", first)) +} + +// FirstGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstGt(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first > ?", first)) +} + +// FirstGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstGte(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first >= ?", first)) +} + +// FirstIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstIn(first ...uint32) UserInviteRecordQuerySet { + if len(first) == 0 { + qs.db.AddError(errors.New("must at least pass one first in FirstIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("first IN (?)", first)) +} + +// FirstLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstLt(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first < ?", first)) +} + +// FirstLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstLte(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first <= ?", first)) +} + +// FirstNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstNe(first uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("first != ?", first)) +} + +// FirstNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FirstNotIn(first ...uint32) UserInviteRecordQuerySet { + if len(first) == 0 { + qs.db.AddError(errors.New("must at least pass one first in FirstNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("first NOT IN (?)", first)) +} + +// FromUidEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidEq(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid = ?", fromUid)) +} + +// FromUidGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidGt(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid > ?", fromUid)) +} + +// FromUidGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidGte(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid >= ?", fromUid)) +} + +// FromUidIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidIn(fromUid ...uint32) UserInviteRecordQuerySet { + if len(fromUid) == 0 { + qs.db.AddError(errors.New("must at least pass one fromUid in FromUidIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("from_uid IN (?)", fromUid)) +} + +// FromUidLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidLt(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid < ?", fromUid)) +} + +// FromUidLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidLte(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid <= ?", fromUid)) +} + +// FromUidNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidNe(fromUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("from_uid != ?", fromUid)) +} + +// FromUidNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) FromUidNotIn(fromUid ...uint32) UserInviteRecordQuerySet { + if len(fromUid) == 0 { + qs.db.AddError(errors.New("must at least pass one fromUid in FromUidNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("from_uid NOT IN (?)", fromUid)) +} + +// GetDB is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) GetDB() *gorm.DB { + return qs.db +} + +// GetUpdater is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) GetUpdater() UserInviteRecordUpdater { + return NewUserInviteRecordUpdater(qs.db) +} + +// IDEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDEq(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id = ?", ID)) +} + +// IDGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDGt(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id > ?", ID)) +} + +// IDGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDGte(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id >= ?", ID)) +} + +// IDIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDIn(ID ...uint32) UserInviteRecordQuerySet { + if len(ID) == 0 { + qs.db.AddError(errors.New("must at least pass one ID in IDIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("id IN (?)", ID)) +} + +// IDLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDLt(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id < ?", ID)) +} + +// IDLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDLte(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id <= ?", ID)) +} + +// IDNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDNe(ID uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("id != ?", ID)) +} + +// IDNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) IDNotIn(ID ...uint32) UserInviteRecordQuerySet { + if len(ID) == 0 { + qs.db.AddError(errors.New("must at least pass one ID in IDNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("id NOT IN (?)", ID)) +} + +// Limit is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) Limit(limit int) UserInviteRecordQuerySet { + return qs.w(qs.db.Limit(limit)) +} + +// MemberLevelEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelEq(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level = ?", memberLevel)) +} + +// MemberLevelGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelGt(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level > ?", memberLevel)) +} + +// MemberLevelGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelGte(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level >= ?", memberLevel)) +} + +// MemberLevelIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelIn(memberLevel ...uint32) UserInviteRecordQuerySet { + if len(memberLevel) == 0 { + qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_level IN (?)", memberLevel)) +} + +// MemberLevelLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelLt(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level < ?", memberLevel)) +} + +// MemberLevelLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelLte(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level <= ?", memberLevel)) +} + +// MemberLevelNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelNe(memberLevel uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("member_level != ?", memberLevel)) +} + +// MemberLevelNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) MemberLevelNotIn(memberLevel ...uint32) UserInviteRecordQuerySet { + if len(memberLevel) == 0 { + qs.db.AddError(errors.New("must at least pass one memberLevel in MemberLevelNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("member_level NOT IN (?)", memberLevel)) +} + +// Offset is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) Offset(offset int) UserInviteRecordQuerySet { + return qs.w(qs.db.Offset(offset)) +} + +// One is used to retrieve one result. It returns gorm.ErrRecordNotFound +// if nothing was fetched +func (qs UserInviteRecordQuerySet) One(ret *UserInviteRecord) error { + return qs.db.First(ret).Error +} + +// OrderAscByAction is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByAction() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("action ASC")) +} + +// OrderAscByActionTime is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByActionTime() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("action_time ASC")) +} + +// OrderAscByCreatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByCreatedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("created_at ASC")) +} + +// OrderAscByDeletedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByDeletedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("deleted_at ASC")) +} + +// OrderAscByFirst is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByFirst() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("first ASC")) +} + +// OrderAscByFromUid is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByFromUid() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("from_uid ASC")) +} + +// OrderAscByID is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByID() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("id ASC")) +} + +// OrderAscByMemberLevel is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByMemberLevel() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("member_level ASC")) +} + +// OrderAscByScan is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByScan() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("scan ASC")) +} + +// OrderAscBySpendType is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscBySpendType() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("spend_type ASC")) +} + +// OrderAscByToUid is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByToUid() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("to_uid ASC")) +} + +// OrderAscByUpdatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderAscByUpdatedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("updated_at ASC")) +} + +// OrderDescByAction is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByAction() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("action DESC")) +} + +// OrderDescByActionTime is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByActionTime() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("action_time DESC")) +} + +// OrderDescByCreatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByCreatedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("created_at DESC")) +} + +// OrderDescByDeletedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByDeletedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("deleted_at DESC")) +} + +// OrderDescByFirst is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByFirst() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("first DESC")) +} + +// OrderDescByFromUid is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByFromUid() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("from_uid DESC")) +} + +// OrderDescByID is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByID() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("id DESC")) +} + +// OrderDescByMemberLevel is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByMemberLevel() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("member_level DESC")) +} + +// OrderDescByScan is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByScan() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("scan DESC")) +} + +// OrderDescBySpendType is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescBySpendType() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("spend_type DESC")) +} + +// OrderDescByToUid is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByToUid() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("to_uid DESC")) +} + +// OrderDescByUpdatedAt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) OrderDescByUpdatedAt() UserInviteRecordQuerySet { + return qs.w(qs.db.Order("updated_at DESC")) +} + +// ScanEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanEq(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan = ?", scan)) +} + +// ScanGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanGt(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan > ?", scan)) +} + +// ScanGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanGte(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan >= ?", scan)) +} + +// ScanIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanIn(scan ...uint32) UserInviteRecordQuerySet { + if len(scan) == 0 { + qs.db.AddError(errors.New("must at least pass one scan in ScanIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("scan IN (?)", scan)) +} + +// ScanLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanLt(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan < ?", scan)) +} + +// ScanLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanLte(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan <= ?", scan)) +} + +// ScanNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanNe(scan uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("scan != ?", scan)) +} + +// ScanNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ScanNotIn(scan ...uint32) UserInviteRecordQuerySet { + if len(scan) == 0 { + qs.db.AddError(errors.New("must at least pass one scan in ScanNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("scan NOT IN (?)", scan)) +} + +// SpendTypeEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeEq(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type = ?", spendType)) +} + +// SpendTypeGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeGt(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type > ?", spendType)) +} + +// SpendTypeGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeGte(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type >= ?", spendType)) +} + +// SpendTypeIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeIn(spendType ...uint32) UserInviteRecordQuerySet { + if len(spendType) == 0 { + qs.db.AddError(errors.New("must at least pass one spendType in SpendTypeIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("spend_type IN (?)", spendType)) +} + +// SpendTypeLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeLt(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type < ?", spendType)) +} + +// SpendTypeLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeLte(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type <= ?", spendType)) +} + +// SpendTypeNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeNe(spendType uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("spend_type != ?", spendType)) +} + +// SpendTypeNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) SpendTypeNotIn(spendType ...uint32) UserInviteRecordQuerySet { + if len(spendType) == 0 { + qs.db.AddError(errors.New("must at least pass one spendType in SpendTypeNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("spend_type NOT IN (?)", spendType)) +} + +// ToUidEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidEq(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid = ?", toUid)) +} + +// ToUidGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidGt(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid > ?", toUid)) +} + +// ToUidGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidGte(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid >= ?", toUid)) +} + +// ToUidIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidIn(toUid ...uint32) UserInviteRecordQuerySet { + if len(toUid) == 0 { + qs.db.AddError(errors.New("must at least pass one toUid in ToUidIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("to_uid IN (?)", toUid)) +} + +// ToUidLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidLt(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid < ?", toUid)) +} + +// ToUidLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidLte(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid <= ?", toUid)) +} + +// ToUidNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidNe(toUid uint32) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("to_uid != ?", toUid)) +} + +// ToUidNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) ToUidNotIn(toUid ...uint32) UserInviteRecordQuerySet { + if len(toUid) == 0 { + qs.db.AddError(errors.New("must at least pass one toUid in ToUidNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("to_uid NOT IN (?)", toUid)) +} + +// UpdatedAtEq is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtEq(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at = ?", updatedAt)) +} + +// UpdatedAtGt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtGt(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at > ?", updatedAt)) +} + +// UpdatedAtGte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtGte(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at >= ?", updatedAt)) +} + +// UpdatedAtLt is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtLt(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at < ?", updatedAt)) +} + +// UpdatedAtLte is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtLte(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at <= ?", updatedAt)) +} + +// UpdatedAtNe is an autogenerated method +// nolint: dupl +func (qs UserInviteRecordQuerySet) UpdatedAtNe(updatedAt time.Time) UserInviteRecordQuerySet { + return qs.w(qs.db.Where("updated_at != ?", updatedAt)) +} + +// SetAction is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetAction(action uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.Action)] = action + return u +} + +// SetActionTime is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetActionTime(actionTime time.Time) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.ActionTime)] = actionTime + return u +} + +// SetCreatedAt is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetCreatedAt(createdAt time.Time) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.CreatedAt)] = createdAt + return u +} + +// SetDeletedAt is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetDeletedAt(deletedAt *time.Time) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.DeletedAt)] = deletedAt + return u +} + +// SetFirst is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetFirst(first uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.First)] = first + return u +} + +// SetFromUid is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetFromUid(fromUid uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.FromUid)] = fromUid + return u +} + +// SetID is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetID(ID uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.ID)] = ID + return u +} + +// SetMemberLevel is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetMemberLevel(memberLevel uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.MemberLevel)] = memberLevel + return u +} + +// SetScan is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetScan(scan uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.Scan)] = scan + return u +} + +// SetSpendType is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetSpendType(spendType uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.SpendType)] = spendType + return u +} + +// SetToUid is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetToUid(toUid uint32) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.ToUid)] = toUid + return u +} + +// SetUpdatedAt is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) SetUpdatedAt(updatedAt time.Time) UserInviteRecordUpdater { + u.fields[string(UserInviteRecordDBSchema.UpdatedAt)] = updatedAt + return u +} + +// Update is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) Update() error { + return u.db.Updates(u.fields).Error +} + +// UpdateNum is an autogenerated method +// nolint: dupl +func (u UserInviteRecordUpdater) UpdateNum() (int64, error) { + db := u.db.Updates(u.fields) + return db.RowsAffected, db.Error +} + +// ===== END of query set UserInviteRecordQuerySet + +// ===== BEGIN of UserInviteRecord modifiers + +// UserInviteRecordDBSchemaField describes database schema field. It requires for method 'Update' +type UserInviteRecordDBSchemaField string + +// String method returns string representation of field. +// nolint: dupl +func (f UserInviteRecordDBSchemaField) String() string { + return string(f) +} + +// UserInviteRecordDBSchema stores db field names of UserInviteRecord +var UserInviteRecordDBSchema = struct { + ID UserInviteRecordDBSchemaField + CreatedAt UserInviteRecordDBSchemaField + UpdatedAt UserInviteRecordDBSchemaField + DeletedAt UserInviteRecordDBSchemaField + ToUid UserInviteRecordDBSchemaField + FromUid UserInviteRecordDBSchemaField + Action UserInviteRecordDBSchemaField + SpendType UserInviteRecordDBSchemaField + MemberLevel UserInviteRecordDBSchemaField + First UserInviteRecordDBSchemaField + Scan UserInviteRecordDBSchemaField + ActionTime UserInviteRecordDBSchemaField +}{ + + ID: UserInviteRecordDBSchemaField("id"), + CreatedAt: UserInviteRecordDBSchemaField("created_at"), + UpdatedAt: UserInviteRecordDBSchemaField("updated_at"), + DeletedAt: UserInviteRecordDBSchemaField("deleted_at"), + ToUid: UserInviteRecordDBSchemaField("to_uid"), + FromUid: UserInviteRecordDBSchemaField("from_uid"), + Action: UserInviteRecordDBSchemaField("action"), + SpendType: UserInviteRecordDBSchemaField("spend_type"), + MemberLevel: UserInviteRecordDBSchemaField("member_level"), + First: UserInviteRecordDBSchemaField("first"), + Scan: UserInviteRecordDBSchemaField("scan"), + ActionTime: UserInviteRecordDBSchemaField("action_time"), +} + +// Update updates UserInviteRecord fields by primary key +// nolint: dupl +func (o *UserInviteRecord) Update(db *gorm.DB, fields ...UserInviteRecordDBSchemaField) error { + dbNameToFieldName := map[string]interface{}{ + "id": o.ID, + "created_at": o.CreatedAt, + "updated_at": o.UpdatedAt, + "deleted_at": o.DeletedAt, + "to_uid": o.ToUid, + "from_uid": o.FromUid, + "action": o.Action, + "spend_type": o.SpendType, + "member_level": o.MemberLevel, + "first": o.First, + "scan": o.Scan, + "action_time": o.ActionTime, + } + u := map[string]interface{}{} + for _, f := range fields { + fs := f.String() + u[fs] = dbNameToFieldName[fs] + } + if err := db.Model(o).Updates(u).Error; err != nil { + if err == gorm.ErrRecordNotFound { + return err + } + + return fmt.Errorf("can't update UserInviteRecord %v fields %v: %s", + o, fields, err) + } + + return nil +} + +// UserInviteRecordUpdater is an UserInviteRecord updates manager +type UserInviteRecordUpdater struct { + fields map[string]interface{} + db *gorm.DB +} + +// NewUserInviteRecordUpdater creates new UserInviteRecord updater +// nolint: dupl +func NewUserInviteRecordUpdater(db *gorm.DB) UserInviteRecordUpdater { + return UserInviteRecordUpdater{ + fields: map[string]interface{}{}, + db: db.Model(&UserInviteRecord{}), + } +} + +// ===== END of UserInviteRecord modifiers + +// ===== END of all query sets diff --git a/model/autogenerated_user.go b/model/autogenerated_user.go index 271a02d..29bbd69 100644 --- a/model/autogenerated_user.go +++ b/model/autogenerated_user.go @@ -6923,6 +6923,62 @@ func (o *UserInvite) Delete(db *gorm.DB) error { return db.Delete(o).Error } +// ActionEq is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionEq(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action = ?", action)) +} + +// ActionGt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionGt(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action > ?", action)) +} + +// ActionGte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionGte(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action >= ?", action)) +} + +// ActionIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionIn(action ...uint32) UserInviteQuerySet { + if len(action) == 0 { + qs.db.AddError(errors.New("must at least pass one action in ActionIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("action IN (?)", action)) +} + +// ActionLt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionLt(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action < ?", action)) +} + +// ActionLte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionLte(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action <= ?", action)) +} + +// ActionNe is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionNe(action uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("action != ?", action)) +} + +// ActionNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) ActionNotIn(action ...uint32) UserInviteQuerySet { + if len(action) == 0 { + qs.db.AddError(errors.New("must at least pass one action in ActionNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("action NOT IN (?)", action)) +} + // All is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) All(ret *[]UserInvite) error { @@ -7387,6 +7443,12 @@ func (qs UserInviteQuerySet) One(ret *UserInvite) error { return qs.db.First(ret).Error } +// OrderAscByAction is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderAscByAction() UserInviteQuerySet { + return qs.w(qs.db.Order("action ASC")) +} + // OrderAscByCreatedAt is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderAscByCreatedAt() UserInviteQuerySet { @@ -7435,6 +7497,12 @@ func (qs UserInviteQuerySet) OrderAscByMemberType() UserInviteQuerySet { return qs.w(qs.db.Order("member_type ASC")) } +// OrderAscBySpendType is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderAscBySpendType() UserInviteQuerySet { + return qs.w(qs.db.Order("spend_type ASC")) +} + // OrderAscByStoreId is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderAscByStoreId() UserInviteQuerySet { @@ -7459,12 +7527,24 @@ func (qs UserInviteQuerySet) OrderAscByUpdatedAt() UserInviteQuerySet { return qs.w(qs.db.Order("updated_at ASC")) } +// OrderAscByUserInviteRecordId is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderAscByUserInviteRecordId() UserInviteQuerySet { + return qs.w(qs.db.Order("user_invite_record_id ASC")) +} + // OrderAscByUserType is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderAscByUserType() UserInviteQuerySet { return qs.w(qs.db.Order("user_type ASC")) } +// OrderDescByAction is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderDescByAction() UserInviteQuerySet { + return qs.w(qs.db.Order("action DESC")) +} + // OrderDescByCreatedAt is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderDescByCreatedAt() UserInviteQuerySet { @@ -7513,6 +7593,12 @@ func (qs UserInviteQuerySet) OrderDescByMemberType() UserInviteQuerySet { return qs.w(qs.db.Order("member_type DESC")) } +// OrderDescBySpendType is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderDescBySpendType() UserInviteQuerySet { + return qs.w(qs.db.Order("spend_type DESC")) +} + // OrderDescByStoreId is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderDescByStoreId() UserInviteQuerySet { @@ -7537,6 +7623,12 @@ func (qs UserInviteQuerySet) OrderDescByUpdatedAt() UserInviteQuerySet { return qs.w(qs.db.Order("updated_at DESC")) } +// OrderDescByUserInviteRecordId is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) OrderDescByUserInviteRecordId() UserInviteQuerySet { + return qs.w(qs.db.Order("user_invite_record_id DESC")) +} + // OrderDescByUserType is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) OrderDescByUserType() UserInviteQuerySet { @@ -7549,6 +7641,62 @@ func (qs UserInviteQuerySet) PreloadToUser() UserInviteQuerySet { return qs.w(qs.db.Preload("ToUser")) } +// SpendTypeEq is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeEq(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type = ?", spendType)) +} + +// SpendTypeGt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeGt(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type > ?", spendType)) +} + +// SpendTypeGte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeGte(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type >= ?", spendType)) +} + +// SpendTypeIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeIn(spendType ...uint32) UserInviteQuerySet { + if len(spendType) == 0 { + qs.db.AddError(errors.New("must at least pass one spendType in SpendTypeIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("spend_type IN (?)", spendType)) +} + +// SpendTypeLt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeLt(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type < ?", spendType)) +} + +// SpendTypeLte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeLte(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type <= ?", spendType)) +} + +// SpendTypeNe is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeNe(spendType uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("spend_type != ?", spendType)) +} + +// SpendTypeNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) SpendTypeNotIn(spendType ...uint32) UserInviteQuerySet { + if len(spendType) == 0 { + qs.db.AddError(errors.New("must at least pass one spendType in SpendTypeNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("spend_type NOT IN (?)", spendType)) +} + // StoreIdEq is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) StoreIdEq(storeId uint64) UserInviteQuerySet { @@ -7765,6 +7913,62 @@ func (qs UserInviteQuerySet) UpdatedAtNe(updatedAt time.Time) UserInviteQuerySet return qs.w(qs.db.Where("updated_at != ?", updatedAt)) } +// UserInviteRecordIdEq is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdEq(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id = ?", userInviteRecordId)) +} + +// UserInviteRecordIdGt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdGt(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id > ?", userInviteRecordId)) +} + +// UserInviteRecordIdGte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdGte(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id >= ?", userInviteRecordId)) +} + +// UserInviteRecordIdIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdIn(userInviteRecordId ...uint32) UserInviteQuerySet { + if len(userInviteRecordId) == 0 { + qs.db.AddError(errors.New("must at least pass one userInviteRecordId in UserInviteRecordIdIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("user_invite_record_id IN (?)", userInviteRecordId)) +} + +// UserInviteRecordIdLt is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdLt(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id < ?", userInviteRecordId)) +} + +// UserInviteRecordIdLte is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdLte(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id <= ?", userInviteRecordId)) +} + +// UserInviteRecordIdNe is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdNe(userInviteRecordId uint32) UserInviteQuerySet { + return qs.w(qs.db.Where("user_invite_record_id != ?", userInviteRecordId)) +} + +// UserInviteRecordIdNotIn is an autogenerated method +// nolint: dupl +func (qs UserInviteQuerySet) UserInviteRecordIdNotIn(userInviteRecordId ...uint32) UserInviteQuerySet { + if len(userInviteRecordId) == 0 { + qs.db.AddError(errors.New("must at least pass one userInviteRecordId in UserInviteRecordIdNotIn")) + return qs.w(qs.db) + } + return qs.w(qs.db.Where("user_invite_record_id NOT IN (?)", userInviteRecordId)) +} + // UserTypeEq is an autogenerated method // nolint: dupl func (qs UserInviteQuerySet) UserTypeEq(userType uint32) UserInviteQuerySet { @@ -7821,6 +8025,13 @@ func (qs UserInviteQuerySet) UserTypeNotIn(userType ...uint32) UserInviteQuerySe return qs.w(qs.db.Where("user_type NOT IN (?)", userType)) } +// SetAction is an autogenerated method +// nolint: dupl +func (u UserInviteUpdater) SetAction(action uint32) UserInviteUpdater { + u.fields[string(UserInviteDBSchema.Action)] = action + return u +} + // SetCreatedAt is an autogenerated method // nolint: dupl func (u UserInviteUpdater) SetCreatedAt(createdAt time.Time) UserInviteUpdater { @@ -7877,6 +8088,13 @@ func (u UserInviteUpdater) SetMemberType(memberType uint32) UserInviteUpdater { return u } +// SetSpendType is an autogenerated method +// nolint: dupl +func (u UserInviteUpdater) SetSpendType(spendType uint32) UserInviteUpdater { + u.fields[string(UserInviteDBSchema.SpendType)] = spendType + return u +} + // SetStoreId is an autogenerated method // nolint: dupl func (u UserInviteUpdater) SetStoreId(storeId uint64) UserInviteUpdater { @@ -7905,6 +8123,13 @@ func (u UserInviteUpdater) SetUpdatedAt(updatedAt time.Time) UserInviteUpdater { return u } +// SetUserInviteRecordId is an autogenerated method +// nolint: dupl +func (u UserInviteUpdater) SetUserInviteRecordId(userInviteRecordId uint32) UserInviteUpdater { + u.fields[string(UserInviteDBSchema.UserInviteRecordId)] = userInviteRecordId + return u +} + // SetUserType is an autogenerated method // nolint: dupl func (u UserInviteUpdater) SetUserType(userType uint32) UserInviteUpdater { @@ -7940,56 +8165,65 @@ func (f UserInviteDBSchemaField) String() string { // UserInviteDBSchema stores db field names of UserInvite var UserInviteDBSchema = struct { - ID UserInviteDBSchemaField - CreatedAt UserInviteDBSchemaField - UpdatedAt UserInviteDBSchemaField - DeletedAt UserInviteDBSchemaField - FromUid UserInviteDBSchemaField - UserType UserInviteDBSchemaField - StoreId UserInviteDBSchemaField - MemberOpenTime UserInviteDBSchemaField - MemberType UserInviteDBSchemaField - MemberStatus UserInviteDBSchemaField - ToUid UserInviteDBSchemaField - StoreType UserInviteDBSchemaField - MemberLevel UserInviteDBSchemaField - ToUser UserInviteDBSchemaField + ID UserInviteDBSchemaField + CreatedAt UserInviteDBSchemaField + UpdatedAt UserInviteDBSchemaField + DeletedAt UserInviteDBSchemaField + FromUid UserInviteDBSchemaField + UserType UserInviteDBSchemaField + StoreId UserInviteDBSchemaField + MemberOpenTime UserInviteDBSchemaField + MemberType UserInviteDBSchemaField + MemberStatus UserInviteDBSchemaField + ToUid UserInviteDBSchemaField + StoreType UserInviteDBSchemaField + Action UserInviteDBSchemaField + SpendType UserInviteDBSchemaField + MemberLevel UserInviteDBSchemaField + UserInviteRecordId UserInviteDBSchemaField + ToUser UserInviteDBSchemaField }{ - ID: UserInviteDBSchemaField("id"), - CreatedAt: UserInviteDBSchemaField("created_at"), - UpdatedAt: UserInviteDBSchemaField("updated_at"), - DeletedAt: UserInviteDBSchemaField("deleted_at"), - FromUid: UserInviteDBSchemaField("from_uid"), - UserType: UserInviteDBSchemaField("user_type"), - StoreId: UserInviteDBSchemaField("store_id"), - MemberOpenTime: UserInviteDBSchemaField("member_open_time"), - MemberType: UserInviteDBSchemaField("member_type"), - MemberStatus: UserInviteDBSchemaField("member_status"), - ToUid: UserInviteDBSchemaField("to_uid"), - StoreType: UserInviteDBSchemaField("store_type"), - MemberLevel: UserInviteDBSchemaField("member_level"), - ToUser: UserInviteDBSchemaField("to_user"), + ID: UserInviteDBSchemaField("id"), + CreatedAt: UserInviteDBSchemaField("created_at"), + UpdatedAt: UserInviteDBSchemaField("updated_at"), + DeletedAt: UserInviteDBSchemaField("deleted_at"), + FromUid: UserInviteDBSchemaField("from_uid"), + UserType: UserInviteDBSchemaField("user_type"), + StoreId: UserInviteDBSchemaField("store_id"), + MemberOpenTime: UserInviteDBSchemaField("member_open_time"), + MemberType: UserInviteDBSchemaField("member_type"), + MemberStatus: UserInviteDBSchemaField("member_status"), + ToUid: UserInviteDBSchemaField("to_uid"), + StoreType: UserInviteDBSchemaField("store_type"), + Action: UserInviteDBSchemaField("action"), + SpendType: UserInviteDBSchemaField("spend_type"), + MemberLevel: UserInviteDBSchemaField("member_level"), + UserInviteRecordId: UserInviteDBSchemaField("user_invite_record_id"), + ToUser: UserInviteDBSchemaField("to_user"), } // Update updates UserInvite fields by primary key // nolint: dupl func (o *UserInvite) Update(db *gorm.DB, fields ...UserInviteDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ - "id": o.ID, - "created_at": o.CreatedAt, - "updated_at": o.UpdatedAt, - "deleted_at": o.DeletedAt, - "from_uid": o.FromUid, - "user_type": o.UserType, - "store_id": o.StoreId, - "member_open_time": o.MemberOpenTime, - "member_type": o.MemberType, - "member_status": o.MemberStatus, - "to_uid": o.ToUid, - "store_type": o.StoreType, - "member_level": o.MemberLevel, - "to_user": o.ToUser, + "id": o.ID, + "created_at": o.CreatedAt, + "updated_at": o.UpdatedAt, + "deleted_at": o.DeletedAt, + "from_uid": o.FromUid, + "user_type": o.UserType, + "store_id": o.StoreId, + "member_open_time": o.MemberOpenTime, + "member_type": o.MemberType, + "member_status": o.MemberStatus, + "to_uid": o.ToUid, + "store_type": o.StoreType, + "action": o.Action, + "spend_type": o.SpendType, + "member_level": o.MemberLevel, + "user_invite_record_id": o.UserInviteRecordId, + "to_user": o.ToUser, } u := map[string]interface{}{} for _, f := range fields { diff --git a/model/cooperative_business.go b/model/cooperative_business.go index bdc72bb..01826d7 100644 --- a/model/cooperative_business.go +++ b/model/cooperative_business.go @@ -74,16 +74,16 @@ const ( type CooperativeMemberPromotion struct { Model CooperativeBusinessId uint32 `json:"cooperative_business_id" gorm:"index"` - CooperativeName string `json:"cooperative_name"` // 合作商名称 - GoldCount uint32 `json:"gold_count"` // 黄金会员数量 - PlatinumCount uint32 `json:"platinum_count"` // 白金会员数量 - BlackGoldCount uint32 `json:"black_gold_count"` // 黑金会员数量 - Date string `json:"date" gorm:"index"` // - State string `json:"state"` // 待发起结算 待财务打款 已结算 + CooperativeName string `json:"cooperative_name"` // 合作商名称 + GoldCount uint32 `json:"gold_count" gorm:"default:0"` // 黄金会员数量 + PlatinumCount uint32 `json:"platinum_count" gorm:"default:0"` // 白金会员数量 + BlackGoldCount uint32 `json:"black_gold_count" gorm:"default:0"` // 黑金会员数量 + Date string `json:"date" gorm:"index"` // + State string `json:"state"` // 待发起结算 待财务打款 已结算 - RenewalGoldCount uint32 `json:"renewal_gold_count"` // 续费黄金会员数量 - RenewalPlatinumCount uint32 `json:"renewal_platinum_count"` // 续费白金会员数量 - RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count"` // 续费黑金会员数量 + RenewalGoldCount uint32 `json:"renewal_gold_count" gorm:"default:0"` // 续费黄金会员数量 + RenewalPlatinumCount uint32 `json:"renewal_platinum_count" gorm:"default:0"` // 续费白金会员数量 + RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count" gorm:"default:0"` // 续费黑金会员数量 // cooperative_member_promotion } @@ -93,15 +93,15 @@ type CooperativeMemberPromotion struct { type CooperativeMemberPromotionStore struct { Model CooperativeBusinessId uint32 `json:"cooperative_business_id" gorm:"index"` - CooperativeName string `json:"cooperative_name"` // 合作商名称 - StoreId uint32 `json:"store_id" gorm:"index"` // 门店id - GoldCount uint32 `json:"gold_count"` // 黄金会员数量 - PlatinumCount uint32 `json:"platinum_count"` // 白金会员数量 - BlackGoldCount uint32 `json:"black_gold_count"` // 黑金会员数量 - Date string `json:"date" gorm:"index"` // - RenewalGoldCount uint32 `json:"renewal_gold_count"` // 续费黄金会员数量 - RenewalPlatinumCount uint32 `json:"renewal_platinum_count"` // 续费白金会员数量 - RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count"` // 续费黑金会员数量 + CooperativeName string `json:"cooperative_name"` // 合作商名称 + StoreId uint32 `json:"store_id" gorm:"index"` // 门店id + GoldCount uint32 `json:"gold_count" gorm:"default:0"` // 黄金会员数量 + PlatinumCount uint32 `json:"platinum_count" gorm:"default:0"` // 白金会员数量 + BlackGoldCount uint32 `json:"black_gold_count" gorm:"default:0"` // 黑金会员数量 + Date string `json:"date" gorm:"index"` // + RenewalGoldCount uint32 `json:"renewal_gold_count" gorm:"default:0"` // 续费黄金会员数量 + RenewalPlatinumCount uint32 `json:"renewal_platinum_count" gorm:"default:0"` // 续费白金会员数量 + RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count" gorm:"default:0"` // 续费黑金会员数量 // cooperative_member_promotion_store } @@ -110,14 +110,14 @@ type CooperativeMemberPromotionStore struct { type CooperativeMemberPromotionDay struct { Model CooperativeBusinessId uint32 `json:"cooperative_business_id" gorm:"index"` - CooperativeName string `json:"cooperative_name"` // 合作商名称 - GoldCount uint32 `json:"gold_count"` // 黄金会员数量 - PlatinumCount uint32 `json:"platinum_count"` // 白金会员数量 - BlackGoldCount uint32 `json:"black_gold_count"` // 黑金会员数量 - DayTime string `json:"day_time" gorm:"index"` // - RenewalGoldCount uint32 `json:"renewal_gold_count"` // 续费黄金会员数量 - RenewalPlatinumCount uint32 `json:"renewal_platinum_count"` // 续费白金会员数量 - RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count"` // 续费黑金会员数量 + CooperativeName string `json:"cooperative_name"` // 合作商名称 + GoldCount uint32 `json:"gold_count" gorm:"default:0"` // 黄金会员数量 + PlatinumCount uint32 `json:"platinum_count" gorm:"default:0"` // 白金会员数量 + BlackGoldCount uint32 `json:"black_gold_count" gorm:"default:0"` // 黑金会员数量 + DayTime string `json:"day_time" gorm:"index"` // + RenewalGoldCount uint32 `json:"renewal_gold_count" gorm:"default:0"` // 续费黄金会员数量 + RenewalPlatinumCount uint32 `json:"renewal_platinum_count" gorm:"default:0"` // 续费白金会员数量 + RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count" gorm:"default:0"` // 续费黑金会员数量 // cooperative_member_promotion_day } @@ -126,15 +126,15 @@ type CooperativeMemberPromotionDay struct { type CooperativeMemberPromotionStoreDay struct { Model CooperativeBusinessId uint32 `json:"cooperative_business_id" gorm:"index"` - CooperativeName string `json:"cooperative_name"` // 合作商名称 - StoreId uint32 `json:"store_id" gorm:"index"` // 门店id - GoldCount uint32 `json:"gold_count"` // 黄金会员数量 - PlatinumCount uint32 `json:"platinum_count"` // 白金会员数量 - BlackGoldCount uint32 `json:"black_gold_count"` // 黑金会员数量 - DayTime string `json:"day_time" gorm:"index"` // - RenewalGoldCount uint32 `json:"renewal_gold_count"` // 续费黄金会员数量 - RenewalPlatinumCount uint32 `json:"renewal_platinum_count"` // 续费白金会员数量 - RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count"` // 续费黑金会员数量 + CooperativeName string `json:"cooperative_name"` // 合作商名称 + StoreId uint32 `json:"store_id" gorm:"index"` // 门店id + GoldCount uint32 `json:"gold_count" gorm:"default:0"` // 黄金会员数量 + PlatinumCount uint32 `json:"platinum_count" gorm:"default:0"` // 白金会员数量 + BlackGoldCount uint32 `json:"black_gold_count" gorm:"default:0"` // 黑金会员数量 + DayTime string `json:"day_time" gorm:"index"` // + RenewalGoldCount uint32 `json:"renewal_gold_count" gorm:"default:0"` // 续费黄金会员数量 + RenewalPlatinumCount uint32 `json:"renewal_platinum_count" gorm:"default:0"` // 续费白金会员数量 + RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count" gorm:"default:0"` // 续费黑金会员数量 // cooperative_member_promotion_store_day } @@ -143,21 +143,21 @@ type CooperativeDeductSettle struct { Model CooperativeMemberPromotionId uint32 `json:"cooperative_member_promotion_id" gorm:"index"` CooperativeBusinessId uint32 `json:"cooperative_business_id" gorm:"index"` - CooperativeName string `json:"cooperative_name"` // 合作商名称 - DeductAmount uint32 `json:"deduct_amount"` // 提成金额 - Date string `json:"date" gorm:"index"` // - State string `json:"state"` // 待财务打款 已结算 - GoldCount uint32 `json:"gold_count"` // 黄金会员数量 - PlatinumCount uint32 `json:"platinum_count"` // 白金会员数量 - BlackGoldCount uint32 `json:"black_gold_count"` // 黑金会员数量 + CooperativeName string `json:"cooperative_name"` // 合作商名称 + DeductAmount uint32 `json:"deduct_amount"` // 提成金额 + Date string `json:"date" gorm:"index"` // + State string `json:"state"` // 待财务打款 已结算 + GoldCount uint32 `json:"gold_count" gorm:"default:0"` // 黄金会员数量 + PlatinumCount uint32 `json:"platinum_count" gorm:"default:0"` // 白金会员数量 + BlackGoldCount uint32 `json:"black_gold_count" gorm:"default:0"` // 黑金会员数量 GoldDeduct uint32 `json:"gold_deduct"` // 黄金会员提成配置 PlatinumDeduct uint32 `json:"platinum_deduct"` // 白金会员提成配置 BlackGoldDeduct uint32 `json:"black_gold_deduct"` // 黑金会员提成配置 - RenewalGoldCount uint32 `json:"renewal_gold_count"` // 续费黄金会员数量 - RenewalPlatinumCount uint32 `json:"renewal_platinum_count"` // 续费白金会员数量 - RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count"` // 续费黑金会员数量 + RenewalGoldCount uint32 `json:"renewal_gold_count" gorm:"default:0"` // 续费黄金会员数量 + RenewalPlatinumCount uint32 `json:"renewal_platinum_count" gorm:"default:0"` // 续费白金会员数量 + RenewalBlackGoldCount uint32 `json:"renewal_black_gold_count" gorm:"default:0"` // 续费黑金会员数量 RenewalGoldDeduct uint32 `json:"renewal_gold_deduct"` // 续费黄金会员提成 RenewalPlatinumDeduct uint32 `json:"renewal_platinum_deduct"` // 续费白金会员提成 @@ -600,6 +600,7 @@ func (m *CooperativeMemberPromotion) AddRenewal(gdb *gorm.DB, memberLevel int) e return err } } else { + m.State = PromotionStateUnSettlement err = gdb.Create(m).Error if err != nil { @@ -649,6 +650,7 @@ func (m *CooperativeMemberPromotionStore) AddRenewal(gdb *gorm.DB, memberLevel i return err } } else { + err = gdb.Create(m).Error if err != nil { logger.Error("create cooperative member promotion err:", err) @@ -693,6 +695,7 @@ func (m *CooperativeMemberPromotionDay) AddRenewal(gdb *gorm.DB, memberLevel int return err } } else { + err = gdb.Create(m).Error if err != nil { logger.Error("create cooperative member promotion day err:", err) @@ -741,6 +744,7 @@ func (m *CooperativeMemberPromotionStoreDay) AddRenewal(gdb *gorm.DB, memberLeve return err } } else { + err = gdb.Create(m).Error if err != nil { logger.Error("create cooperative member promotion store day err:", err) @@ -765,6 +769,7 @@ func (m *InviteMemberReport) AddRenewal(gdb *gorm.DB, memberLevel int) error { return errors.New("uid is null") } m.Date = dateString + sql := "" switch memberLevel { case 2: @@ -798,6 +803,7 @@ func (m *InviteMemberReport) AddRenewal(gdb *gorm.DB, memberLevel int) error { return err } } else { + //m.State = PromotionStateUnSettlement err = gdb.Create(m).Error if err != nil { diff --git a/model/game_card.go b/model/game_card.go index 42f9915..bab7e30 100644 --- a/model/game_card.go +++ b/model/game_card.go @@ -111,8 +111,9 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId switch sortType { case 1: // 排序类型 1-默认 - qs = qs.OrderDescByCreatedAt() + //qs = qs.OrderDescByCreatedAt() //qs = qs.OrderAscByStockState() + qs = qs.OrderAscByID() case 2: // 排序类型 2-新品 qs = qs.NewProductsEq(1) @@ -146,6 +147,10 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId var user *User if uid != 0 { user = GetUserByUid(uid) + if user == nil { + logger.Error("get user err:", err) + return cards, 0, err + } if user.MemberExpire.After(time.Now()) && user.MemberExpire.AddDate(0, 0, -14).Before(time.Now()) { qs = qs.RealPriceLte(hideGamePrice) @@ -254,9 +259,6 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId } } - //if count == 0 { - // - //} count, err = qs.Count() if err != nil { logger.Error("count err:", err) @@ -275,7 +277,8 @@ func GetGameCardList(sortType, page, pageSize int, gameTypeIds []uint64, storeId GameCardListSetStockState(cards, storeId) } else { - err = qs.All(&cards) + err = qs.OrderDescByID().All(&cards) + //err = qs.OrderAscByID().All(&cards) if err != nil && err != RecordNotFound { logger.Error("list err:", err) return cards, 0, err diff --git a/model/invite.go b/model/invite.go index b5bfd03..5241392 100644 --- a/model/invite.go +++ b/model/invite.go @@ -1,7 +1,9 @@ package model +import "time" + // 邀请关系 -//go:generate goqueryset -in user_invite_level.go +//go:generate goqueryset -in invite.go // gen:qs type UserInviteLevel struct { Model @@ -19,6 +21,13 @@ type UserInviteLevel struct { type UserInviteRecord struct { Model - ToUid uint32 `json:"to_uid"` // 用户ID - FromUid uint32 `json:"from_uid"` // 邀请人ID + ToUid uint32 `json:"to_uid"` // 用户ID + FromUid uint32 `json:"from_uid"` // 邀请人ID + Action uint32 `json:"action"` // 1-未激活 2-激活邀请 + SpendType uint32 `json:"spend_type"` // 1-未开通 2-开通会员 3-续费 4-升级 + MemberLevel uint32 `json:"member_level"` // 会员等级 + First uint32 `json:"first"` // 首次 + Scan uint32 `json:"scan"` // 扫码 + ActionTime time.Time `json:"action_time"` // 激活时间 + // user_invite_record } diff --git a/model/model_test.go b/model/model_test.go index 7803944..dfdeaa0 100644 --- a/model/model_test.go +++ b/model/model_test.go @@ -147,13 +147,16 @@ func InitTestDB() { //&CooperativeMemberPromotion{}, //&CooperativeMemberPromotion{}, //&CooperativeMemberPromotionDay{}, - &CooperativeMemberDeduct{}, - &CooperativeAssistantMemberDeduct{}, - &CooperativeMemberPromotion{}, + //&CooperativeMemberDeduct{}, + //&CooperativeAssistantMemberDeduct{}, + //&CooperativeMemberPromotion{}, + //&CooperativeMemberPromotionStore{}, + //&CooperativeMemberPromotionDay{}, + //&CooperativeMemberPromotionStoreDay{}, + //&CooperativeDeductSettle{}, + &UserInvite{}, + &UserInviteRecord{}, &CooperativeMemberPromotionStore{}, - &CooperativeMemberPromotionDay{}, - &CooperativeMemberPromotionStoreDay{}, - &CooperativeDeductSettle{}, ) fmt.Println("DB init success") @@ -258,6 +261,10 @@ func InitDBProd() { //&HomeCarousel{}, //&UserRenewalLog{}, &GameCard{}, + &CooperativeMemberPromotion{}, + &CooperativeMemberPromotionStore{}, + &CooperativeMemberPromotionDay{}, + &CooperativeMemberPromotionStoreDay{}, ) if err := DBProd.DB().Ping(); err != nil { @@ -772,28 +779,28 @@ func TestMemberUserList(t *testing.T) { } func MemberUserList() { - InitDBProd() - var users []User - err := NewUserQuerySet(DBProd).MemberLevelEq(2).OrderAscByID().All(&users) - //err := NewUserQuerySet(DBProd).MemberLevelNe(2).OrderAscByID().All(&users) - //err := NewUserQuerySet(DBProd).StoreTypeEq(1).OrderAscByID().All(&users) - if err != nil { - fmt.Println("users err:", err) - return - } - endTime, _ := time.Parse("2006-01-02", "2022-02-13") - startTime, _ := time.Parse("2006-01-02", "2021-07-30") - - for _, user := range users { - count, err := NewUserInviteQuerySet(DBProd).ToUidEq(user.Uid).MemberTypeEq(2).MemberOpenTimeGt(startTime).MemberOpenTimeLt(endTime).Count() - //count, err := NewUserInviteQuerySet(DBProd).ToUidEq(user.Uid).MemberTypeEq(2).MemberOpenTimeGt(startTime).MemberOpenTimeLt(endTime).Count() - if err != nil { - fmt.Println("err:", err) - } - if count == 0 { - fmt.Println("user :", user.Uid) - } - } + //InitDBProd() + //var users []User + //err := NewUserQuerySet(DBProd).MemberLevelEq(2).OrderAscByID().All(&users) + ////err := NewUserQuerySet(DBProd).MemberLevelNe(2).OrderAscByID().All(&users) + ////err := NewUserQuerySet(DBProd).StoreTypeEq(1).OrderAscByID().All(&users) + //if err != nil { + // fmt.Println("users err:", err) + // return + //} + //endTime, _ := time.Parse("2006-01-02", "2022-02-13") + //startTime, _ := time.Parse("2006-01-02", "2021-07-30") + // + //for _, user := range users { + // count, err := NewUserInviteQuerySet(DBProd).ToUidEq(user.Uid).MemberTypeEq(2).MemberOpenTimeGt(startTime).MemberOpenTimeLt(endTime).Count() + // //count, err := NewUserInviteQuerySet(DBProd).ToUidEq(user.Uid).MemberTypeEq(2).MemberOpenTimeGt(startTime).MemberOpenTimeLt(endTime).Count() + // if err != nil { + // fmt.Println("err:", err) + // } + // if count == 0 { + // fmt.Println("user :", user.Uid) + // } + //} } @@ -802,34 +809,34 @@ func TestOpenMemberTimeUserList(t *testing.T) { } func OpenMemberTimeUserList() { - InitDBProd() - var users []User - err := NewUserQuerySet(DBProd).MemberLevelEq(2).All(&users) - if err != nil { - fmt.Println("err:", err) - } - userMap := make(map[uint32]User, 0) - for i, _ := range users { - userMap[users[i].Uid] = users[i] - } - - var userInvites []UserInvite - err = NewUserInviteQuerySet(DBProd).MemberTypeEq(2).All(&userInvites) - if err != nil { - fmt.Println("err:", err) - } - - for i, _ := range userInvites { - user, ok := userMap[userInvites[i].ToUid] - if ok { - if user.OpenMemberTime.IsZero() { - fmt.Println("", user.OpenMemberTime, user.Uid, user.MemberLevel) - fmt.Println("", userInvites[i].MemberOpenTime, userInvites[i].MemberType, userInvites[i].ToUid) - - } - } - - } + //InitDBProd() + //var users []User + //err := NewUserQuerySet(DBProd).MemberLevelEq(2).All(&users) + //if err != nil { + // fmt.Println("err:", err) + //} + //userMap := make(map[uint32]User, 0) + //for i, _ := range users { + // userMap[users[i].Uid] = users[i] + //} + // + //var userInvites []UserInvite + //err = NewUserInviteQuerySet(DBProd).MemberTypeEq(2).All(&userInvites) + //if err != nil { + // fmt.Println("err:", err) + //} + // + //for i, _ := range userInvites { + // user, ok := userMap[userInvites[i].ToUid] + // if ok { + // if user.OpenMemberTime.IsZero() { + // fmt.Println("", user.OpenMemberTime, user.Uid, user.MemberLevel) + // fmt.Println("", userInvites[i].MemberOpenTime, userInvites[i].MemberType, userInvites[i].ToUid) + // + // } + // } + // + //} } @@ -882,29 +889,29 @@ func TestSyncUserOpenMemberTime(t *testing.T) { } func SyncUserOpenMemberTime() { - InitDBProd() - var userInvites []UserInvite - err := NewUserInviteQuerySet(DBProd).MemberTypeEq(2).All(&userInvites) - if err != nil { - logger.Error("err:", err) - } - count := 0 - for _, userInvite := range userInvites { - fmt.Println("user:", userInvite.MemberLevel, userInvite.MemberOpenTime) - //err = NewUserInviteQuerySet(DBProd).IDEq(userInvite.ID).GetUpdater().SetMemberLevel(2).Update() - //if err != nil { - // logger.Error("err:", err) - //} - - err = NewUserQuerySet(DBProd).UidEq(userInvite.ToUid).GetUpdater(). - SetOpenMemberTime(userInvite.MemberOpenTime).Update() - if err != nil { - logger.Error("err:", err) - } - count++ - } - - fmt.Println("count:", count) + //InitDBProd() + //var userInvites []UserInvite + //err := NewUserInviteQuerySet(DBProd).MemberTypeEq(2).All(&userInvites) + //if err != nil { + // logger.Error("err:", err) + //} + //count := 0 + //for _, userInvite := range userInvites { + // fmt.Println("user:", userInvite.MemberLevel, userInvite.MemberOpenTime) + // //err = NewUserInviteQuerySet(DBProd).IDEq(userInvite.ID).GetUpdater().SetMemberLevel(2).Update() + // //if err != nil { + // // logger.Error("err:", err) + // //} + // + // err = NewUserQuerySet(DBProd).UidEq(userInvite.ToUid).GetUpdater(). + // SetOpenMemberTime(userInvite.MemberOpenTime).Update() + // if err != nil { + // logger.Error("err:", err) + // } + // count++ + //} + // + //fmt.Println("count:", count) } func TestSyncUserOrder(t *testing.T) { diff --git a/model/user.go b/model/user.go index 013f749..a69d347 100644 --- a/model/user.go +++ b/model/user.go @@ -87,16 +87,23 @@ const ( type UserInvite struct { Model - FromUid uint32 `json:"from_uid"` // 邀请用户id - UserType uint32 `json:"user_type"` // 用户类型 - StoreId uint64 `json:"store_id"` // 门店id - MemberOpenTime time.Time `json:"member_open_time"` // 开通会员 - MemberType uint32 `json:"member_type"` // 被邀请用户 1-普通用户 2-会员 - MemberStatus uint8 `json:"member_status"` // 被邀请用户 1-未开通 2-已开通 3-已取消会员 - ToUid uint32 `json:"to_uid"` // 被邀请用户 - StoreType uint32 `json:"store_type"` // 门店类型 - MemberLevel uint32 `json:"member_level"` // 会员等级 - ToUser *UserLess `json:"to_user"` // + FromUid uint32 `json:"from_uid"` // 邀请用户id + UserType uint32 `json:"user_type"` // 用户类型 1-普通用户 + StoreId uint64 `json:"store_id"` // 门店id + MemberOpenTime time.Time `json:"member_open_time"` // 开通会员 + MemberType uint32 `json:"member_type"` // 被邀请用户 1-普通用户 2-会员 + MemberStatus uint8 `json:"member_status"` // 被邀请用户 1-未开通 2-已开通 3-已取消会员 + ToUid uint32 `json:"to_uid"` // 被邀请用户 + StoreType uint32 `json:"store_type"` // 门店类型 1-自有 2-合作商 + Action uint32 `json:"action"` // 1-未激活 2-激活邀请 + SpendType uint32 `json:"spend_type"` // 1-未开通 2-开通会员 3-续费 4-升级 + MemberLevel uint32 `json:"member_level"` // 会员等级 + UserInviteRecordId uint32 `json:"user_invite_record_id"` // 邀请记录 + FirstInvite uint32 `json:"first_invite"` // 首次 + Scan uint32 `json:"scan"` // 扫码 + ToUser *User `json:"to_user" gorm:"-"` + + //ToUser *UserLess `json:"to_user" gorm:"-"` // } type UserLess struct { @@ -128,13 +135,6 @@ type DepositRefundRecord struct { } const ( - //FundTypeMemberGold = "member_gold" // 黄金会员 - //FundTypeMemberPlatinum = "member_platinum" // 白金会员 - //FundTypeMemberBlackGold = "member_black_gold" // 黑金会员 - //FundTypeMemberGoldDeposit = "member_gold_deposit" // 黄金会员押金 - //FundTypeMemberPlatinumDeposit = "member_platinum_deposit" // 白金会员押金 - //FundTypeMemberBlackGoldDeposit = "member_black_gold_platinum" // 黑金会员押金 - FundTypeMemberFee = "member_fee" // 会员费 FundTypeMemberDeposit = "member_deposit" // 押金 FundTypeExpressFee = "express_fee" // 邮费 @@ -522,22 +522,23 @@ type UserInviteListReq struct { } type UserInviteListResp struct { - Page int `json:"page"` - TotalPage int `json:"total_page"` - List []UserInviteList `json:"list"` - Count int `json:"count"` + Page int `json:"page"` + TotalPage int `json:"total_page"` + //List []UserInviteList `json:"list"` + List []UserInvite `json:"list"` + Count int `json:"count"` } -type UserInviteList struct { - User User `json:"user"` - UserInvite UserInvite `json:"user_invite"` -} +//type UserInviteList struct { +// User User `json:"user"` +// UserInvite UserInvite `json:"user_invite"` +//} func (m *UserInviteListReq) InviteUserList() (*UserInviteListResp, error) { list := make([]User, 0) resp := &UserInviteListResp{ Page: m.Page, - List: make([]UserInviteList, 0), + List: make([]UserInvite, 0), } page := m.Page - 1 if page < 0 { @@ -587,19 +588,25 @@ func (m *UserInviteListReq) InviteUserList() (*UserInviteListResp, error) { var invites []UserInvite //err = qs.Offset(page * m.PageSize).Limit(m.PageSize).OrderDescByID().All(&invites) - err = qs.Offset(page * m.PageSize).Limit(m.PageSize).OrderDescByMemberOpenTime().All(&invites) + err = qs.OrderDescByID().Offset(page * m.PageSize).Limit(m.PageSize).OrderDescByMemberOpenTime().All(&invites) if err != nil && err != RecordNotFound { logger.Error("err:", err) return resp, err } - if len(invites) == 0 { - return resp, nil - } + //if len(invites) == 0 { + // return resp, nil + //} uids := make([]uint32, 0) - inviteMap := make(map[uint32]UserInvite, 0) + //inviteMap := make(map[uint32]UserInvite, 0) for i, _ := range invites { uids = append(uids, invites[i].ToUid) - inviteMap[invites[i].ToUid] = invites[i] + //inviteMap[invites[i].ToUid] = invites[i] + if invites[i].MemberStatus != 1 { + invites[i].CreatedAt = invites[i].MemberOpenTime + } + } + if len(uids) == 0 { + return resp, nil } err = NewUserQuerySet(DB).UidIn(uids...).All(&list) if err != nil { @@ -611,22 +618,27 @@ func (m *UserInviteListReq) InviteUserList() (*UserInviteListResp, error) { for i, _ := range list { userMap[list[i].Uid] = list[i] } - //users := make([]User, 0) - users := make([]UserInviteList, 0) - for i, _ := range uids { + for i, _ := range invites { user, ok1 := userMap[uids[i]] - invite, ok2 := inviteMap[uids[i]] - if !ok1 || !ok2 { - continue + if ok1 { + invites[i].ToUser = &user } - userInvite := UserInviteList{ - User: user, - UserInvite: invite, - } - - users = append(users, userInvite) } - resp.List = users + //users := make([]User, 0) + //users := make([]UserInviteList, 0) + //for i, _ := range uids { + // user, ok1 := userMap[uids[i]] + // invite, ok2 := inviteMap[uids[i]] + // if !ok1 || !ok2 { + // continue + // } + // userInvite := UserInviteList{ + // User: user, + // UserInvite: invite, + // } + // users = append(users, userInvite) + //} + resp.List = invites return resp, nil } @@ -1003,28 +1015,28 @@ func (u *User) SetVm() error { } func UserInviteListSetToUser(list []UserInvite) { - ids := make([]uint32, 0, len(list)) - for i, _ := range list { - ids = append(ids, list[i].ToUid) - } + //ids := make([]uint32, 0, len(list)) + //for i, _ := range list { + // ids = append(ids, list[i].ToUid) + //} + // + //userMap, err := GetUserMap(ids) + //if err != nil { + // logger.Error("user map err:", err) + // return + //} - userMap, err := GetUserMap(ids) - if err != nil { - logger.Error("user map err:", err) - return - } - - for i, _ := range list { - v, ok := userMap[list[i].ToUid] - if ok { - - list[i].ToUser = &UserLess{ - Uid: v.Uid, - MemberOpenTime: v.OpenMemberTime, - MemberLevel: v.MemberLevel, - } - } - } + //for i, _ := range list { + // v, ok := userMap[list[i].ToUid] + // if ok { + // + // list[i].ToUser = &UserLess{ + // Uid: v.Uid, + // MemberOpenTime: v.OpenMemberTime, + // MemberLevel: v.MemberLevel, + // } + // } + //} } // gen:qs