getModelFilter(); $query = $this->query(); if ($this->withRelationships) { $query->with($this->withRelationships); } if ($filter) { $query->filter(request()->input(), $filter); } return $query->sort(); } /** * 处理表单数据 * * @param array $data * @return array */ public function resloveData($data, $model = null) { if ($images = data_get($data, 'images')) { $data['images'] = is_array($images) ? $images : explode(',', $images); } return $data; } /** * 表单验证 * * @param array $data * @param mixed $model 空: 添加, 非空: 修改 * @return mixed true: 验证通过, string: 错误提示 */ public function validate($data, $model = null) { if (!$model) { $validator = Validator::make($data, [ 'name' => ['required'], ]); if ($validator->fails()) { return $validator->errors()->first(); } } return true; } /** * 删除的前置方法 * * @param array $ids 主键id * @return mixed true: 继续后续操作, string: 中断操作, 返回错误提示 */ public function preDelete(array $ids) { // 删除就诊记录 PatientRecord::whereIn('patient_id', $ids)->delete(); return true; } }