package controller import ( "blazing/common/data/socket" "blazing/common/socket/errorcode" "blazing/logic/service/task" "blazing/modules/blazing/model" "blazing/modules/blazing/service" ) /** * 接受任务 */ func (h Controller) AcceptTask(data *task.AcceptTaskInboundInfo, c *socket.Player) (result *task.AcceptTaskOutboundInfo, err errorcode.ErrorCode) { if data.Head.CMD == 2201 { //判断不是每日任务 service.NewUserService(c.Info.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 }) } else { service.NewUserService(c.Info.UserID).DailyTaskExec(func(ttt map[uint32]model.DailyTaskInfo) 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.DailyTaskInfo{ Status: 1, } } return false }) } result = &task.AcceptTaskOutboundInfo{} result.TaskId = data.TaskId return result, 0 } /** * 更新任务步骤 */ func (h Controller) AddTaskBuf(data *task.AddTaskBufInboundInfo, c *socket.Player) (result *task.AddTaskBufOutboundInfo, err errorcode.ErrorCode) { if data.Head.CMD == 2204 { //判断不是每日任务 service.NewUserService(c.Info.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 }) } else { service.NewUserService(c.Info.UserID).DailyTaskExec(func(ttt map[uint32]model.DailyTaskInfo) bool { if conditions, ok := ttt[data.TaskId]; ok { conditions.DailyTaskInfo = data.TaskList ttt[data.TaskId] = conditions return true } return false }) } return &task.AddTaskBufOutboundInfo{}, 0 } /** * 完成任务 */ func (h Controller) Complete_Task(data *task.CompleteTaskInboundInfo, c *socket.Player) (result *task.CompleteTaskOutboundInfo, err errorcode.ErrorCode) { if data.Head.CMD == 2202 { //判断不是每日任务 } else { } return &task.CompleteTaskOutboundInfo{}, 0 } /** * 获取任务状态 */ func (h Controller) Get_Task_Buf(data *task.GetTaskBufInboundInfo, c *socket.Player) (result *task.GetTaskBufOutboundInfo, err errorcode.ErrorCode) { if data.Head.CMD == 2203 { //判断不是每日任务 } else { } return &task.GetTaskBufOutboundInfo{}, 0 } /** * 删除任务 */ func (h Controller) Delete_Task(data *task.DeleteTaskInboundInfo, c *socket.Player) (result *task.DeleteTaskOutboundInfo, err errorcode.ErrorCode) { if data.Head.CMD == 2205 { //判断不是每日任务 } else { } return &task.DeleteTaskOutboundInfo{}, 0 }