This commit is contained in:
liwei1dao 2022-11-07 10:16:49 +08:00
commit 62b2f74a84
5 changed files with 51 additions and 6 deletions

View File

@ -235,5 +235,7 @@ type (
CreatePrivilegeCard(session IUserSession, cid int32) (data *pb.DBPrivilege, code pb.ErrorCode)
// 续费特权卡
RenewPrivilegeCard(session IUserSession, cid int32) (data *pb.DBPrivilege, code pb.ErrorCode)
// 检查特权
CheckPrivilege(session IUserSession)
}
)

View File

@ -25,9 +25,6 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
this.LoadConfigure(game_privilegecard, cfg.NewGamePrivilegeCard)
this.LoadConfigure(game_privilege, cfg.NewGamePrivilege)
// _d, err := this.GetPrivilegeCard(1)
// _d1, err := this.GetPrivilegeData(10003)
// fmt.Errorf("%v,%v", _d, _d1)
return
}
@ -49,6 +46,7 @@ func (this *configureComp) GetPrivilegeCard(id int32) (configure *cfg.GamePrivil
return
}
// 获取指定特权配置
func (this *configureComp) GetPrivilegeData(id int32) (result *cfg.GamePrivilegeData, err error) {
var (
v interface{}

View File

@ -5,6 +5,7 @@ import (
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"go_dreamfactory/sys/db"
"time"
@ -68,7 +69,7 @@ func (this *Privilege) CreatePrivilegeCard(session comm.IUserSession, cid int32)
data.PrivilegeID = append(data.PrivilegeID, v)
}
this.modelPrivilege.addNewPrivilegeData(session.GetUserId(), data)
code = this.DispenseRes(session, []*cfg.Gameatn{conf.DisposableReward}, true)
// 推送
session.SendMsg(string(this.GetType()), PrivilegeGetListResp, &pb.PrivilegeGetListResp{Data: []*pb.DBPrivilege{data}})
return
@ -93,6 +94,9 @@ func (this *Privilege) RenewPrivilegeCard(session comm.IUserSession, cid int32)
mapData := make(map[string]interface{}, 0)
mapData["eTime"] = v.ETime
this.modelPrivilege.modifyPrivilegeData(session.GetUserId(), v.Id, mapData)
// 发放奖励
code = this.DispenseRes(session, []*cfg.Gameatn{conf.DisposableReward}, true)
data = v
session.SendMsg(string(this.GetType()), PrivilegeGetListResp, &pb.PrivilegeGetListResp{Data: []*pb.DBPrivilege{v}})
return
@ -107,3 +111,19 @@ func (this *Privilege) RenewPrivilegeCard(session comm.IUserSession, cid int32)
data = nil
return
}
// 清除到期的特权
func (this *Privilege) CheckPrivilege(session comm.IUserSession) {
list, err := this.modelPrivilege.getPrivilegeList(session.GetUserId())
if err != nil {
return
}
for _, v := range list {
if v.ETime > time.Now().Unix() {
if err := this.modelPrivilege.DelListlds(session.GetUserId(), v.Id); err != nil {
this.Errorf("delete privilege failed:%v", err)
}
}
}
return
}

View File

@ -7,6 +7,7 @@ import (
"go_dreamfactory/utils"
"time"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"google.golang.org/protobuf/proto"
)
@ -143,6 +144,31 @@ func (this *apiComp) Login(session comm.IUserSession, req *pb.UserLoginReq) (cod
//推送登录公告
this.chat.SendSysChatToUser(session, comm.UserLoginNotice, 0)
mail := &pb.DBMailData{
ObjId: primitive.NewObjectID().Hex(),
Uid: user.Uid,
Title: "system mail",
Contex: "Congratulations on getting a login exclusive gift pack",
CreateTime: uint64(time.Now().Unix()),
DueTime: uint64(time.Now().Unix()) + 30*24*3600, // 30天需要走配置文件
Check: false,
Reward: false,
}
fj := make([]*pb.UserAssets, 0)
atn1 := &pb.UserAssets{
A: "hero",
T: "25001",
N: 1,
}
atn2 := &pb.UserAssets{
A: "attr",
T: "gold",
N: 10000,
}
fj = append(fj, atn1)
fj = append(fj, atn2)
mail.Items = fj
this.mail.CreateNewMail(session, mail)
return
}

View File

@ -25,7 +25,6 @@ import (
"go_dreamfactory/modules/notify"
"go_dreamfactory/modules/pagoda"
"go_dreamfactory/modules/pay"
"go_dreamfactory/modules/privilege"
"go_dreamfactory/modules/rtask"
"go_dreamfactory/modules/shop"
"go_dreamfactory/modules/smithy"
@ -99,7 +98,7 @@ func main() {
sociaty.NewModule(),
horoscope.NewModule(),
pay.NewModule(),
privilege.NewModule(),
//privilege.NewModule(),
)
}