package schedule import ( "net/http" "github.com/zeromicro/go-zero/rest/httpx" "gitlink.org.cn/JointCloud/pcm-coordinator/internal/logic/schedule" "gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc" "gitlink.org.cn/JointCloud/pcm-coordinator/internal/types" "gitlink.org.cn/JointCloud/pcm-coordinator/pkg/repository/result" "gitlink.org.cn/JointCloud/pcm-coordinator/pkg/utils" ) func ScheduleCreateTaskHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { var req types.CreateTaskReq if err := httpx.Parse(r, &req); err != nil { result.ParamErrorResult(r, w, err) return } // 获取ip信息 ip := utils.GetClientIP(r) req.UserIp = ip // 获取token信息 token := r.Header.Get("Authorization") req.Token = token jccUserInfo, err := utils.ParseTokenWithoutVerify(token) if err != nil { result.ParamErrorResult(r, w, err) return } req.UserId = jccUserInfo.Id req.UserName = jccUserInfo.UserName l := schedule.NewScheduleCreateTaskLogic(r.Context(), svcCtx) resp, err := l.ScheduleCreateTask(&req) result.HttpResult(r, w, resp, err) } }