Files
bl/logic/controller/task.go
2025-08-28 02:27:14 +00:00

57 lines
1.2 KiB
Go

package controller
import (
"blazing/common/data/entity"
"blazing/common/socket/errorcode"
"blazing/logic/service/task"
"blazing/modules/blazing/model"
"blazing/modules/blazing/service"
)
/**
* 接受任务
*/
func (h Controller) AcceptTask(data *task.AcceptTaskInboundInfo, c *entity.Player) (result *task.AcceptTaskOutboundInfo, err errorcode.ErrorCode) {
result = &task.AcceptTaskOutboundInfo{}
result.TaskId = data.TaskId
service.NewTaskService(c.UserID).Exec(func(ttt map[uint32]model.TaskInfo) bool {
ft, ok := ttt[data.TaskId]
if ok { //如果找到任务
if ft.Status == 0 { //可以接受
ft.Status = 1
return true
} else {
return false
}
} else {
ttt[data.TaskId] = model.TaskInfo{
Status: 1,
}
}
return false
})
return result, 0
}
/**
* 更新任务步骤
*/
func (h Controller) AddTaskBuf(data *task.AddTaskBufInboundInfo, c *entity.Player) (result *task.AddTaskBufOutboundInfo, err errorcode.ErrorCode) {
service.NewTaskService(c.UserID).Exec(func(ttt map[uint32]model.TaskInfo) bool {
if conditions, ok := ttt[data.TaskId]; ok {
conditions.TaskInfo = data.TaskList
ttt[data.TaskId] = conditions
return true
}
return false
})
return &task.AddTaskBufOutboundInfo{}, 0
}