get(); return view('admin.autoact.index', compact('events')); } /** * 保存新事件 */ public function store(Request $request): RedirectResponse { $data = $request->validate([ 'text_body' => 'required|string|max:500', 'event_type' => 'required|in:good,bad,neutral', 'exp_change' => 'required|integer', 'jjb_change' => 'required|integer', ]); $data['enabled'] = true; Autoact::create($data); return redirect()->route('admin.autoact.index')->with('success', '事件添加成功!'); } /** * 更新事件 */ public function update(Request $request, int $id): RedirectResponse { $event = Autoact::findOrFail($id); $data = $request->validate([ 'text_body' => 'required|string|max:500', 'event_type' => 'required|in:good,bad,neutral', 'exp_change' => 'required|integer', 'jjb_change' => 'required|integer', ]); $event->update($data); return redirect()->route('admin.autoact.index')->with('success', '事件修改成功!'); } /** * 切换事件启用/禁用状态 */ public function toggle(int $id): JsonResponse { $event = Autoact::findOrFail($id); $event->enabled = ! $event->enabled; $event->save(); return response()->json([ 'status' => 'success', 'enabled' => $event->enabled, 'message' => $event->enabled ? '已启用' : '已禁用', ]); } /** * 删除事件 */ public function destroy(int $id): RedirectResponse { Autoact::findOrFail($id)->delete(); return redirect()->route('admin.autoact.index')->with('success', '事件已删除!'); } }