model = new OpmMwDepartment; $this->service = new DepartmentService(); $this->repository = DepartmentRepository::new(); } public function index(): Response { return raw_view('department/index'); } public function insert(Request $request): Response { if ($request->method() === 'POST') { return parent::insert($request); } return raw_view('department/insert'); } public function update(Request $request): Response { if ($request->method() === 'POST') { return parent::update($request); } return raw_view('department/update'); } protected function afterQuery($items) { foreach ($items as &$item) { $hospital = OpmMwHospital::find($item->organ_id); $item->hospital_name = $hospital->organ_name ?? '未知'; } return $items; } /** * 获取指定医院下科室选项 */ public function options(Request $request): Response { $hospitalId = (int)$request->get('hospital_id', 0); if ($hospitalId <= 0) { return $this->json(1, '缺少医院ID参数'); } return $this->json(0, 'ok', $this->service->getDepartmentOptions($hospitalId)); } }