57 lines
1.3 KiB
Go
57 lines
1.3 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.NewUserService(c.UserID).TaskExec(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.NewUserService(c.UserID).TaskExec(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
|
|
}
|