package allhelp import ( "yunyan/comm" "yunyan/pb" ) // AddTask 添加任务 // @Summary 添加任务 // @Description 创建一个新的定时任务 // @Tags Allhelp // @Accept json // @Produce json // @Security BearerAuth // @Param user body pb.AllhelpAddTaskReq true "请求数据" // @Success 200 {object} comm.HttpResult{data=pb.AllhelpAddTaskResp} "响应数据" // @Router /api/home/allhelp_addtask [post] func (this *apiComp) AddTask(session comm.IUserSession, req *pb.AllhelpAddTaskReq) (resp *pb.AllhelpAddTaskResp, errdata *pb.ErrorData) { uid := session.GetUserId() if uid == "" { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Message: "用户未登录", } return } if req.TaskName == "" { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Message: "任务名称不能为空", } return } if req.TriggerTime == "" { errdata = &pb.ErrorData{ Code: pb.ErrorCode_ReqParameterError, Message: "触发时间无效", } return } task := &pb.DBTask{ Uid: uid, TaskName: req.TaskName, TaskDesc: req.TaskDesc, TaskType: pb.TaskType(req.TaskType), TriggerTime: req.TriggerTime, CronExpr: req.CronExpr, Extra: req.Extra, } if err := this.module.model.addTask(task); err != nil { this.module.Errorln("AddTask error:", err) errdata = &pb.ErrorData{ Code: pb.ErrorCode_DBError, Message: "创建任务失败", } return } resp = &pb.AllhelpAddTaskResp{ Task: task, } return }