middleware(function ($request, $next) { abort_unless(SystemAccess::canOpenSettings(), 403); return $next($request); }); } public function index() { return view('system_settings.workflow-reviewers.index', [ 'reviewers' => $this->reviewers->settings(), 'history' => $this->reviewers->history(), ]); } public function search(Request $request) { $data = $request->validate(['q' => ['required', 'string', 'min:1', 'max:50']]); try { return response()->json(['people' => $this->reviewers->search(trim($data['q']))])->header('Cache-Control', 'no-store'); } catch (\Throwable $e) { return response()->json(['message' => '钉钉花名册暂时无法查询,请稍后重试。'], 503)->header('Cache-Control', 'no-store'); } } public function update(Request $request) { $data = $request->validate([ 'first' => ['required', 'array', 'min:1', 'max:10'], 'first.*' => ['required', 'string', 'max:100', 'distinct'], 'final' => ['required', 'array', 'min:1', 'max:10'], 'final.*' => ['required', 'string', 'max:100', 'distinct'], ], ['first.required' => '请至少选择一名初审人员。', 'final.required' => '请至少选择一名复审人员。']); $this->reviewers->save($data, user()); return redirect()->route('system-settings.workflow-reviewers.index')->with('success', '审核人员已保存,立即对待审核申请生效。'); } }