hasOne(BasicBank::class, 'bank_id', 'bank_id'); } /** * 获取信息-单条 * @param array $params * @param array $fields * @return object|null */ public static function getOne(array $params, array $fields = ['*']): object|null { return self::where($params)->first($fields); } /** * 获取某个时间区间信息-单条 * @param array $params * @param array $fields * @param array $created_at 时间区间 * @return object|null */ public static function getOneLatestTime(array $params,array $created_at, array $fields = ['*']): object|null { return self::where($params) ->whereBetween('created_at',$created_at) ->latest() ->first($fields); } /** * 获取信息-多条 * @param array $params * @param array $fields * @return object|null */ public static function getList(array $params, array $fields = ['*']): object|null { return self::where($params)->get($fields); } /** * 获取某一时间区间分页数据 * @param array $params * @param array $created_at_params * @param array $fields * @param int|null $page * @param int|null $per_page * @return array */ public static function getDatePage(array $params,array $created_at_params, array $fields = ['*'], int $page = null, ?int $per_page = 10): array { $raw = self::with([ 'BasicBank' ]) ->where($params) ->whereBetween('created_at',$created_at_params) ->paginate($per_page, $fields, "page", $page); $data = array(); $data['current_page'] = $raw->currentPage();// 当前页码 $data['total'] = $raw->total();//数据总数 $data['data'] = $raw->items();//数据 $data['per_page'] = $raw->perPage();//每页个数 $data['last_page'] = $raw->lastPage();//最后一页 return $data; } /** * 新增 * @param array $data * @return DoctorWithdrawal|\Hyperf\Database\Model\Model */ public static function addDoctorWithdrawal(array $data): \Hyperf\Database\Model\Model|DoctorWithdrawal { return self::create($data); } }