1、修改获取用户数据接口UserData,新增超期标志和通知字段:mark, overdueNotice;
2、开通会员时默认把mark设置为0; 3、租赁订单只有物流订单才触发消息通知; 4、修改租赁订单列表接口GetOrderCardList,增加超期提示字段OverdueNotice,状态为7表示超期; 5、超期提示从配置表config中读取,支持实时配置;
This commit is contained in:
parent
ed91928ae3
commit
48e0cd78d4
|
@ -591,6 +591,11 @@ func UserData(c *gin.Context) {
|
|||
m.RoleName = roleInfo.RoleName
|
||||
}
|
||||
|
||||
if m.Mark == 1 {
|
||||
notice, _ := model.GetDepositNotice()
|
||||
m.OverdueNotice = notice
|
||||
}
|
||||
|
||||
// 查询最近一条邀请记录
|
||||
var inviteRecord model.UserInviteRecord
|
||||
err = model.NewUserInviteRecordQuerySet(model.DB).ToUidEq(uc.Uid).OrderDescByCreatedAt().OrderDescByID().Limit(1).Find(&inviteRecord)
|
||||
|
|
|
@ -616,7 +616,8 @@ func PushWXPayNotice(c *gin.Context) {
|
|||
}
|
||||
//openMemberTime := newTime
|
||||
userUpdateQs := model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel).
|
||||
SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit)
|
||||
SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit).
|
||||
SetMark(0)
|
||||
if user.OpenMemberTime.IsZero() {
|
||||
//openMemberTime = user.OpenMemberTime
|
||||
userUpdateQs = userUpdateQs.SetOpenMemberTime(newTime).SetOpenMemberLevel(record.MemberLevel)
|
||||
|
@ -2153,7 +2154,8 @@ func HmPushWXPayNotice(c *gin.Context) {
|
|||
}
|
||||
//openMemberTime := newTime
|
||||
userUpdateQs := model.NewUserQuerySet(model.DB).UidEq(record.Uid).GetUpdater().SetMemberLevel(record.MemberLevel).
|
||||
SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit)
|
||||
SetMemberGenre(record.MemberGenre).SetMemberExpire(expireTime).SetDeposit(memberConfig.MemberDeposit).
|
||||
SetMark(0)
|
||||
if user.OpenMemberTime.IsZero() {
|
||||
//openMemberTime = user.OpenMemberTime
|
||||
userUpdateQs = userUpdateQs.SetOpenMemberTime(newTime).SetOpenMemberLevel(record.MemberLevel)
|
||||
|
|
|
@ -434,12 +434,14 @@ func RentCardOrderCreate(c *gin.Context) {
|
|||
|
||||
go model.ShoppingCartCreateOrder(uc.Uid, req.GameCardList)
|
||||
|
||||
// 触发消息
|
||||
model.TriggerBizEvent(model.BizTypeOnRentCard, model.EventOnDeliver, map[string]interface{}{
|
||||
"order_id": order.ID,
|
||||
"uid": order.Uid,
|
||||
"createdAt": order.CreatedAt,
|
||||
}, uint32(order.StoreId))
|
||||
if userCoupon.ID != 0 && userCoupon.ActivityType == 3 {
|
||||
// 触发消息
|
||||
model.TriggerBizEvent(model.BizTypeOnRentCard, model.EventOnDeliver, map[string]interface{}{
|
||||
"order_id": order.ID,
|
||||
"uid": order.Uid,
|
||||
"createdAt": order.CreatedAt,
|
||||
}, uint32(order.StoreId))
|
||||
}
|
||||
|
||||
RespOK(c, ret)
|
||||
return
|
||||
|
|
|
@ -15423,6 +15423,7 @@ var UserDBSchema = struct {
|
|||
Version UserDBSchemaField
|
||||
InviteTime UserDBSchemaField
|
||||
DepositType UserDBSchemaField
|
||||
Mark UserDBSchemaField
|
||||
}{
|
||||
|
||||
ID: UserDBSchemaField("id"),
|
||||
|
@ -15463,6 +15464,7 @@ var UserDBSchema = struct {
|
|||
Version: UserDBSchemaField("version"),
|
||||
InviteTime: UserDBSchemaField("invite_time"),
|
||||
DepositType: UserDBSchemaField("deposit_type"),
|
||||
Mark: UserDBSchemaField("mark"),
|
||||
}
|
||||
|
||||
// Update updates User fields by primary key
|
||||
|
@ -15947,6 +15949,13 @@ func (qs UserRentCardQuerySet) MemberLevelEq(memberLevel uint32) UserRentCardQue
|
|||
return qs.w(qs.db.Where("member_level = ?", memberLevel))
|
||||
}
|
||||
|
||||
// SetMark is an autogenerated method
|
||||
// nolint: dupl
|
||||
func (u UserUpdater) SetMark(mark int8) UserUpdater {
|
||||
u.fields[string(UserDBSchema.Mark)] = mark
|
||||
return u
|
||||
}
|
||||
|
||||
// MemberLevelGt is an autogenerated method
|
||||
// nolint: dupl
|
||||
func (qs UserRentCardQuerySet) MemberLevelGt(memberLevel uint32) UserRentCardQuerySet {
|
||||
|
|
|
@ -40,6 +40,7 @@ const (
|
|||
ConfigPostagePackageFee = "postage_package_fee_config" // 运费包费
|
||||
ConfigPaymentGenre = "payment_genre_config" // 支付方式
|
||||
ConfigNamePrivilegeMember = "privilege_member_config" // 尊享会员配置
|
||||
ConfigNameOverdueNotice = "overdue_notice" // 超期提示语
|
||||
)
|
||||
|
||||
func PayConfigInfo() (*PayConfig, error) {
|
||||
|
@ -141,6 +142,48 @@ func GetPrivilegeMemberFee() (uint32, error) {
|
|||
return memberConfig.MemberFee, nil
|
||||
}
|
||||
|
||||
func GetOrderNotice() (string, error) {
|
||||
var noticeConfig struct {
|
||||
OrderNotice string `json:"order_notice"` // 超期提示(租赁订单)
|
||||
DepositNotice string `json:"deposit_notice"` // 超期提示(保证金)
|
||||
}
|
||||
var configAllocation Config
|
||||
err := NewConfigQuerySet(DB).NameEq(ConfigNameOverdueNotice).One(&configAllocation)
|
||||
if err != nil {
|
||||
logger.Error("err:", err)
|
||||
return "", err
|
||||
}
|
||||
|
||||
err = json.Unmarshal([]byte(configAllocation.Value), ¬iceConfig)
|
||||
if err != nil {
|
||||
logger.Error("err:", err)
|
||||
return "", err
|
||||
}
|
||||
|
||||
return noticeConfig.OrderNotice, nil
|
||||
}
|
||||
|
||||
func GetDepositNotice() (string, error) {
|
||||
var noticeConfig struct {
|
||||
OrderNotice string `json:"order_notice"` // 超期提示(租赁订单)
|
||||
DepositNotice string `json:"deposit_notice"` // 超期提示(保证金)
|
||||
}
|
||||
var configAllocation Config
|
||||
err := NewConfigQuerySet(DB).NameEq(ConfigNameOverdueNotice).One(&configAllocation)
|
||||
if err != nil {
|
||||
logger.Error("err:", err)
|
||||
return "", err
|
||||
}
|
||||
|
||||
err = json.Unmarshal([]byte(configAllocation.Value), ¬iceConfig)
|
||||
if err != nil {
|
||||
logger.Error("err:", err)
|
||||
return "", err
|
||||
}
|
||||
|
||||
return noticeConfig.DepositNotice, nil
|
||||
}
|
||||
|
||||
// ShortMemberConfigMap_Dev 会员费配置
|
||||
// 开发环境配置
|
||||
var ShortMemberConfigMap_Dev = map[uint32]*MemberConfig{
|
||||
|
|
|
@ -13,12 +13,13 @@ import (
|
|||
)
|
||||
|
||||
const (
|
||||
OrderCardStatusUnPick = 1 // 待取货中
|
||||
OrderCardStatusPlaying = 2 // 游玩中
|
||||
OrderCardStatusReturning = 3 // 归还中
|
||||
OrderCardStatusCompleted = 4 // 已完成
|
||||
OrderCardStatusCancel = 5 // 已取消
|
||||
OrderCardStatusRefund = 6 // 已退款
|
||||
OrderCardStatusUnPick = 1 // 待取货中
|
||||
OrderCardStatusPlaying = 2 // 游玩中
|
||||
OrderCardStatusReturning = 3 // 归还中
|
||||
OrderCardStatusCompleted = 4 // 已完成
|
||||
OrderCardStatusCancel = 5 // 已取消
|
||||
OrderCardStatusRefund = 6 // 已退款
|
||||
OrderCardStatusSystemReturn = 7 // 系统处理(超期卡)
|
||||
|
||||
DeliveryTypeStorePick = 1 // 门店取货
|
||||
DeliveryTypeExpress = 2 // 快递取货
|
||||
|
@ -115,6 +116,7 @@ type OrderCard struct {
|
|||
GameCard *GameCard `json:"game_card" gorm:"-"` // 游戏
|
||||
Store *Store `json:"store" gorm:"-"` // 游戏
|
||||
RevertStore *Store `json:"revert_store" gorm:"-"` // 游戏
|
||||
OverdueNotice string `json:"overdue_notice" gorm:"-"` // 超期提示
|
||||
//Status uint8 `json:"status" gorm:"index"` // 1-待领取 2-游玩中 3-已归还 4-未领取
|
||||
//PickupCode string `json:"pickup_code"` // 取货码
|
||||
}
|
||||
|
@ -254,6 +256,13 @@ func (m *OrderListReq) GetOrderCardList() ([]OrderCard, uint32, error) {
|
|||
totalPage = uint32(count/m.PageSize + 1)
|
||||
fmt.Println("orderCards:", orderCards)
|
||||
|
||||
for i, _ := range orderCards {
|
||||
if orderCards[i].CardStatus == OrderCardStatusSystemReturn {
|
||||
notice, _ := GetOrderNotice()
|
||||
orderCards[i].OverdueNotice = notice
|
||||
}
|
||||
}
|
||||
|
||||
orderCards = OrderCardListSetGameInfo(orderCards)
|
||||
|
||||
return orderCards, totalPage, nil
|
||||
|
|
|
@ -57,6 +57,8 @@ type User struct {
|
|||
UserVm *UserVm `json:"user_vm" gorm:"-"` //
|
||||
InviteTime time.Time `json:"invite_time"` //
|
||||
DepositType uint32 `json:"deposit_type"` // 押金类型: 3-未充值
|
||||
Mark int8 `json:"mark"` // 标记
|
||||
OverdueNotice string `json:"overdue_notice" gorm:"-"` // 超期提示
|
||||
StoreList []StoreInfo `gorm:"-" json:"store_list"` // 有效门店列表
|
||||
RoleId uint32 `json:"role_id" gorm:"-"` // 角色id
|
||||
RoleKey string `json:"role_key" gorm:"-"` // 角色代码
|
||||
|
|
Loading…
Reference in New Issue
Block a user