getMessage()); } } /** * 任务详情 * @param Request $request * @return Response */ #[Route(path: "detail",methods: "get")] public function getTaskDetail(Request $request): Response { try { $param = $this->_valid([ "task_sn.require" => trans("empty.require"), "id.require" => trans("empty.require"), ],$request->method()); if (!is_array($param)) return error($param); $data = $this->service->getTaskDetail($param); if (empty($data)) return errorTrans("empty.data"); return success("ok",$data->toArray()); } catch (\Throwable $throwable) { return error($throwable->getMessage()); } } #[Route(path: "sign",methods: "post")] public function taskUserReg(Request $request): Response { try { $param = $this->_valid([ "task_sn.require" => trans("empty.require"), "task_id.require" => trans("empty.require"), "url.require" => trans("empty.require"), "image.require" => trans("empty.require"), ],$request->method()); if (!is_array($param)) return error($param); $task = $this->model->where(['task_sn' => $param['task_sn'],'id' => $param['task_id']])->findOrEmpty(); if ($task->isEmpty()) return errorTrans("empty.data"); $platformUser = (new BlueExpertPlatform)->where(['openid' => $request->user['openid'],"source" => $task['category'],"status" => 1])->findOrEmpty(); if ($platformUser->isEmpty()) return error("请先完成平台绑定"); $taskUser = (new BlueTaskUser)->where(['openid' => $request->user['openid'],'task_sn' => $param['task_sn'],'id' => $param['task_id']])->findOrEmpty(); if (!$taskUser->isEmpty()) return error("请勿重复提交"); $state = $taskUser->insertGetId([ "openid" => $request->user['openid'], "task_id" => $param['task_id'], "task_sn" => $param['task_sn'], "source" => $task['category'], "platform" => json_encode($platformUser->toArray()), "url" => $task['category'], "image" => $task['image'], ]); if (!$state) return errorTrans("error.data"); return successTrans("success.data"); } catch (\Throwable $throwable) { return error($throwable->getMessage()); } } }