图鉴任务

This commit is contained in:
wh_zcy 2023-03-02 16:41:26 +08:00
parent 9fa2855435
commit ee061fa6e0
4 changed files with 48 additions and 16 deletions

View File

@ -56,11 +56,40 @@ func (s *SmithyView) CreateView(t *model.TestCase) fyne.CanvasObject {
return return
} }
} }
//图鉴任务
tujiantask := func() {
if err := service.GetPttService().SendToClient(
t.MainType,
"tasklist",
&pb.SmithyTasklistReq{},
); err != nil {
logrus.Error(err)
return
}
}
//领任务
receiveTask := func() {
if err := service.GetPttService().SendToClient(
t.MainType,
"taskaward",
&pb.SmithyTaskAwardReq{
TaskId: 10001,
},
); err != nil {
logrus.Error(err)
return
}
}
customerBtn := widget.NewButton("顾客", loadCustomer) customerBtn := widget.NewButton("顾客", loadCustomer)
refuseBtn := widget.NewButton("拒绝", refuse) refuseBtn := widget.NewButton("拒绝", refuse)
jiaoyiBtn := widget.NewButton("交易", jiaoyi) jiaoyiBtn := widget.NewButton("交易", jiaoyi)
tujianBtn := widget.NewButton("图鉴任务", tujiantask)
receiveBtn := widget.NewButton("任务奖励", receiveTask)
btns := container.NewHBox(customerBtn, jiaoyiBtn, refuseBtn) btns := container.NewHBox(customerBtn, jiaoyiBtn, refuseBtn, tujianBtn, receiveBtn)
c := container.NewBorder(btns, nil, nil, nil) c := container.NewBorder(btns, nil, nil, nil)
return c return c
} }

View File

@ -4,6 +4,7 @@ import (
"go_dreamfactory/comm" "go_dreamfactory/comm"
"go_dreamfactory/pb" "go_dreamfactory/pb"
"go.mongodb.org/mongo-driver/mongo"
"google.golang.org/protobuf/proto" "google.golang.org/protobuf/proto"
) )
@ -15,15 +16,18 @@ func (a *apiComp) Tasklist(session comm.IUserSession, req *pb.SmithyTasklistReq)
if code = a.TasklistCheck(session, req); code != pb.ErrorCode_Success { if code = a.TasklistCheck(session, req); code != pb.ErrorCode_Success {
return return
} }
resp := &pb.SmithyTasklistResp{}
dt, err := a.module.modelTask.getTaskRecord(session.GetUserId()) dt, err := a.module.modelTask.getTaskRecord(session.GetUserId())
if err != nil { if err != nil {
if err == mongo.ErrNoDocuments {
resp.Tasks = []*pb.TujianTask{}
} else {
code = pb.ErrorCode_DBError code = pb.ErrorCode_DBError
return return
} }
} else {
resp := &pb.SmithyTasklistResp{ resp.Tasks = dt.Tasks
Tasks: dt,
} }
session.SendMsg(string(a.module.GetType()), "tasklist", resp) session.SendMsg(string(a.module.GetType()), "tasklist", resp)

View File

@ -34,19 +34,20 @@ func (this *modelTask) getTaskRecord(uid string) (*pb.DBTujianTask, error) {
} }
func (this *modelTask) updateTaskRecord(uid string, taskId int32) error { func (this *modelTask) updateTaskRecord(uid string, taskId int32) error {
if !this.CheckTaskStatus(uid, taskId) { if !this.checkTaskStatus(uid, taskId) {
return comm.NewCustomError(pb.ErrorCode_SmithyTaskNoFinished) return comm.NewCustomError(pb.ErrorCode_SmithyTaskNoFinished)
} }
dt, err := this.getTaskRecord(uid) dt, err := this.getTaskRecord(uid)
if err != nil { if err != nil {
if err == mongo.ErrNoDocuments {
tj := &pb.DBTujianTask{Uid: uid}
tj.Tasks = append(tj.Tasks, &pb.TujianTask{TaskId: taskId, Received: 2})
return this.Add(uid, tj)
}
return err return err
} }
if dt.Uid == "" { if dt.Uid != "" {
tj := &pb.DBTujianTask{}
tj.Tasks = append(tj.Tasks, &pb.TujianTask{TaskId: taskId, Received: 2})
return this.Add(uid, tj)
} else {
for _, v := range dt.Tasks { for _, v := range dt.Tasks {
if v.TaskId == taskId { if v.TaskId == taskId {
// 已存在 重复领取 // 已存在 重复领取
@ -68,7 +69,7 @@ func (this *modelTask) updateTaskRecord(uid string, taskId int32) error {
} }
// 检查任务状态 // 检查任务状态
func (this *modelTask) CheckTaskStatus(uid string, taskId int32) bool { func (this *modelTask) checkTaskStatus(uid string, taskId int32) bool {
conf := this.module.configure.GetSmithyTask(taskId) conf := this.module.configure.GetSmithyTask(taskId)
if conf == nil { if conf == nil {
return false return false

View File

@ -1,2 +0,0 @@
package worldtask