1、查询用户信息接口增加字段:member_discount_flag,用来让前端判断该用户能否享受会员优惠;
This commit is contained in:
parent
80b776ec47
commit
bbfda005cf
|
@ -116,6 +116,7 @@ type UserInfo struct {
|
|||
Store *Store `json:"store" gorm:"-"` //
|
||||
OrderCards []OrderCard `json:"order_cards" gorm:"foreignKey:uid;references:uid"` //
|
||||
ForfeitPenalty int `json:"forfeit_penalty" gorm:"-"` // 滞纳金
|
||||
MemberDiscountFlag int `json:"member_discount_flag" gorm:"-"` // 会员优惠标志:0-不享受会员优惠,1-可享受会员优惠
|
||||
//RenewalTime *time.Time `json:"renewal_time"` //
|
||||
//RenewalMemberLevel uint32 `json:"renewal_member_level"` //
|
||||
//MemberLevelString string `json:"member_level_string" gorm:"-"` // 会员类型
|
||||
|
@ -532,6 +533,13 @@ func GetNewUserList(req *NewUserListReq, c *gin.Context) (*NewUserListResp, erro
|
|||
validateZeroTime(&users[i].FirstRetailOrder)
|
||||
}
|
||||
|
||||
if req.Uid != 0 && len(users) == 1 { // 只有单个查询用户uid时,才判断是否能够享受会员优惠 add:2024-10-25
|
||||
memberDiscountFlag := canEnjoyMemberDiscount(req.Uid)
|
||||
if memberDiscountFlag {
|
||||
users[0].MemberDiscountFlag = 1
|
||||
}
|
||||
}
|
||||
|
||||
if req.IsExport == 1 {
|
||||
exportFile, err := newUserListExport(users, c)
|
||||
if err != nil {
|
||||
|
@ -546,6 +554,40 @@ func GetNewUserList(req *NewUserListReq, c *gin.Context) (*NewUserListResp, erro
|
|||
return resp, nil
|
||||
}
|
||||
|
||||
func canEnjoyMemberDiscount(uid int) bool {
|
||||
// 查询user表
|
||||
userInfo := new(UserInfo)
|
||||
err := orm.Eloquent.Table("user").Where("uid = ?", uid).Find(userInfo).Error
|
||||
if err != nil {
|
||||
logger.Error("查询 user 表时出错:", logger.Field("err", err))
|
||||
return false
|
||||
}
|
||||
|
||||
// 检查user表的member_level是否在黄金会员、短期会员、白金会员、黑金会员之间
|
||||
if userInfo.MemberLevel == MemberLevelGold ||
|
||||
userInfo.MemberLevel == MemberLevelPeriod ||
|
||||
userInfo.MemberLevel == MemberLevelPlatinum ||
|
||||
userInfo.MemberLevel == MemberLevelBlackGold {
|
||||
return true
|
||||
}
|
||||
|
||||
// 查询privilege_member表
|
||||
privilegeInfo := new(PrivilegeMember)
|
||||
err = orm.Eloquent.Table("privilege_member").Where("uid = ?", uid).Find(privilegeInfo).Error
|
||||
if err != nil {
|
||||
logger.Error("查询 privilege_member 表时出错:", logger.Field("err", err))
|
||||
return false
|
||||
}
|
||||
|
||||
// 检查privilege_member表的member_level是否为6
|
||||
if privilegeInfo.MemberLevel == MemberLevelPrivilege {
|
||||
return true
|
||||
}
|
||||
|
||||
// 如果不满足条件,则返回false
|
||||
return false
|
||||
}
|
||||
|
||||
// GetUserListByForfeitPenalty 滞纳金排序
|
||||
func GetUserListByForfeitPenalty(req *NewUserListReq) (*NewUserListResp, error) {
|
||||
resp := &NewUserListResp{
|
||||
|
|
Loading…
Reference in New Issue
Block a user