diff --git a/controller/account.go b/controller/account.go index e6885e2..5f18413 100644 --- a/controller/account.go +++ b/controller/account.go @@ -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) diff --git a/controller/game_card.go b/controller/game_card.go index 2b632ad..e8d80d3 100644 --- a/controller/game_card.go +++ b/controller/game_card.go @@ -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) diff --git a/controller/order.go b/controller/order.go index 23fd9e5..5a8c9bf 100644 --- a/controller/order.go +++ b/controller/order.go @@ -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 diff --git a/model/autogenerated_user.go b/model/autogenerated_user.go index e632a19..0023a8f 100644 --- a/model/autogenerated_user.go +++ b/model/autogenerated_user.go @@ -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 { diff --git a/model/config.go b/model/config.go index a75b014..ac77911 100644 --- a/model/config.go +++ b/model/config.go @@ -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{ diff --git a/model/order.go b/model/order.go index fa458f9..14a7949 100644 --- a/model/order.go +++ b/model/order.go @@ -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 diff --git a/model/user.go b/model/user.go index 7e0d44f..b9e1af5 100644 --- a/model/user.go +++ b/model/user.go @@ -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:"-"` // 角色代码