diff --git a/app/Model/OrderInquiry.php b/app/Model/OrderInquiry.php index afc2a2a..71b6b35 100644 --- a/app/Model/OrderInquiry.php +++ b/app/Model/OrderInquiry.php @@ -5,7 +5,6 @@ declare(strict_types=1); namespace App\Model; - use Hyperf\Database\Model\Collection; use Hyperf\Database\Model\Relations\HasOne; use Hyperf\Database\Query\Builder; @@ -46,8 +45,8 @@ use Hyperf\Snowflake\Concern\Snowflake; * @property int $patient_age 患者年龄-就诊人 * @property \Carbon\Carbon $created_at 创建时间 * @property \Carbon\Carbon $updated_at 修改时间 - * @property-read OrderInquiryCase $OrderInquiryCase - * @property-read UserDoctor $UserDoctor + * @property-read OrderInquiryCase $OrderInquiryCase + * @property-read UserDoctor $UserDoctor */ class OrderInquiry extends Model { @@ -70,7 +69,7 @@ class OrderInquiry extends Model */ public function UserDoctor(): HasOne { - return $this->hasOne(UserDoctor::class, 'doctor_id','doctor_id'); + return $this->hasOne(UserDoctor::class, 'doctor_id', 'doctor_id'); } /** @@ -78,7 +77,7 @@ class OrderInquiry extends Model */ public function OrderInquiryCase(): HasOne { - return $this->hasOne(OrderInquiryCase::class, 'order_inquiry_id','order_inquiry_id'); + return $this->hasOne(OrderInquiryCase::class, 'order_inquiry_id', 'order_inquiry_id'); } /** @@ -123,6 +122,17 @@ class OrderInquiry extends Model return self::where($params)->count(); } + /** + * 获取某段时间数量 + * @param array $params + * @param array $created_at + * @return int + */ + public static function getDateCount(array $params, array $created_at): int + { + return self::where($params)->whereBetween('created_at', $created_at)->count(); + } + /** * 获取单条,排序 * @param array $params @@ -131,10 +141,11 @@ class OrderInquiry extends Model */ public static function getOrderOne(array $params, array $fields = ['*']): object|null { - return self::where($params)->orderBy('created_at','desc')->first($fields); + return self::where($params)->orderBy('created_at', 'desc')->first($fields); } // public static function + /** * 获取医生某一时间段接诊订单分页数据 * 已结束 @@ -148,7 +159,7 @@ class OrderInquiry extends Model public static function getDoctorDateOrderInquiryPage(array $params, array $reception_time, array $fields = ["*"], int $page = null, ?int $per_page = 10): mixed { $raw = self::where($params) - ->whereBetween('finish_time',$reception_time) + ->whereBetween('finish_time', $reception_time) ->orderBy('finish_time') ->paginate($per_page, $fields, "page", $page); @@ -171,10 +182,10 @@ class OrderInquiry extends Model * @param int|null $per_page * @return int|mixed|string */ - public static function getDoctorOrderInquiryPage(array $params,array $fields = ["*"], int $page = null, ?int $per_page = 10): mixed + public static function getDoctorOrderInquiryPage(array $params, array $fields = ["*"], int $page = null, ?int $per_page = 10): mixed { $raw = self::where($params) - ->orderBy('finish_time','desc') + ->orderBy('finish_time', 'desc') ->paginate($per_page, $fields, "page", $page); $data = array(); @@ -197,8 +208,8 @@ class OrderInquiry extends Model public static function getOrderInquiryBetweenTimeAmountTotalSum(array $params, array $reception_time, array $inquiry_status_params): mixed { return self::where($params) - ->whereIn('inquiry_status',$inquiry_status_params) - ->whereBetween('reception_time',$reception_time) + ->whereIn('inquiry_status', $inquiry_status_params) + ->whereBetween('reception_time', $reception_time) ->orderBy('reception_time') ->sum("amount_total"); } @@ -212,7 +223,7 @@ class OrderInquiry extends Model public static function getOrderInquiryAmountTotalSum(array $params, array $inquiry_status_params): mixed { return self::where($params) - ->whereIn('inquiry_status',$inquiry_status_params) + ->whereIn('inquiry_status', $inquiry_status_params) ->orderBy('reception_time') ->sum("amount_total"); } @@ -227,12 +238,12 @@ class OrderInquiry extends Model public static function getInquiryStatusWithDoctorList(array $params, array $inquiry_status_params, array $fields = ["*"]): Collection|array { return self::with([ - 'UserDoctor' => function ($query){ + 'UserDoctor' => function ($query) { $query->orderBy('is_platform_deep_cooperation', 'desc'); } ]) ->where($params) - ->whereIn('inquiry_status',$inquiry_status_params) + ->whereIn('inquiry_status', $inquiry_status_params) ->get($fields); } @@ -244,16 +255,16 @@ class OrderInquiry extends Model * @param array $fields * @return Collection|array */ - public static function getInquiryStatusWithDoctorNotInList(array $params, array $inquiry_status_params,array $not_in_params, array $fields = ["*"]): Collection|array + public static function getInquiryStatusWithDoctorNotInList(array $params, array $inquiry_status_params, array $not_in_params, array $fields = ["*"]): Collection|array { return self::with([ - 'UserDoctor' => function ($query){ + 'UserDoctor' => function ($query) { $query->orderBy('is_platform_deep_cooperation', 'desc'); } ]) ->where($params) - ->whereIn('inquiry_status',$inquiry_status_params) - ->whereNotIn('doctor_id',$not_in_params) + ->whereIn('inquiry_status', $inquiry_status_params) + ->whereNotIn('doctor_id', $not_in_params) ->get($fields); } @@ -264,10 +275,10 @@ class OrderInquiry extends Model * @param array $fields * @return object|null */ - public static function getInquiryStatusOne(array $params,array $inquiry_status_params,array $fields = ["*"]): object|null + public static function getInquiryStatusOne(array $params, array $inquiry_status_params, array $fields = ["*"]): object|null { return self::where($params) - ->whereIn('inquiry_status',$inquiry_status_params) + ->whereIn('inquiry_status', $inquiry_status_params) ->first($fields); } @@ -292,16 +303,16 @@ class OrderInquiry extends Model * @param int|null $per_page * @return int|mixed|string */ - public static function getPatientOrderInquiryPage(array $params,array $inquiry_status_params ,array $fields = ["*"], int $page = null, ?int $per_page = 10): mixed + public static function getPatientOrderInquiryPage(array $params, array $inquiry_status_params, array $fields = ["*"], int $page = null, ?int $per_page = 10): mixed { $raw = self::with([ 'OrderInquiryCase:inquiry_case_id,order_inquiry_id,disease_desc', ]) ->where($params) ->when($inquiry_status_params, function ($query, $inquiry_status_params) { - $query->whereIn('inquiry_status',$inquiry_status_params); + $query->whereIn('inquiry_status', $inquiry_status_params); }) - ->orderBy('created_at','desc') + ->orderBy('created_at', 'desc') ->paginate($per_page, $fields, "page", $page); $data = array(); @@ -321,9 +332,9 @@ class OrderInquiry extends Model * @param array $fields * @return object|null */ - public static function getInList(array $params, array $in_params,array $fields = ['*']): object|null + public static function getInList(array $params, array $in_params, array $fields = ['*']): object|null { - return self::where($params)->whereIn('order_inquiry_id',$in_params)->get($fields); + return self::where($params)->whereIn('order_inquiry_id', $in_params)->get($fields); } @@ -335,7 +346,7 @@ class OrderInquiry extends Model */ public static function getInquiryStatusCount(array $params, array $inquiry_status_params): int { - return self::where($params)->whereIn("inquiry_status",$inquiry_status_params)->count(); + return self::where($params)->whereIn("inquiry_status", $inquiry_status_params)->count(); } /** @@ -347,11 +358,11 @@ class OrderInquiry extends Model * @param int|null $per_page * @return array */ - public static function getInquiryStatusWithDoctorPage(array $params, array $inquiry_status_params,array $fields = ["*"], int $page = null, ?int $per_page = 10): array + public static function getInquiryStatusWithDoctorPage(array $params, array $inquiry_status_params, array $fields = ["*"], int $page = null, ?int $per_page = 10): array { $raw = self::where($params) - ->whereIn('inquiry_status',$inquiry_status_params) - ->orderBy('complete_time','desc') + ->whereIn('inquiry_status', $inquiry_status_params) + ->orderBy('complete_time', 'desc') ->paginate($per_page, $fields, "page", $page); $data = array(); diff --git a/app/Services/PatientDoctorService.php b/app/Services/PatientDoctorService.php index d5c9ac8..23f6ff7 100644 --- a/app/Services/PatientDoctorService.php +++ b/app/Services/PatientDoctorService.php @@ -258,7 +258,16 @@ class PatientDoctorService extends BaseService $params[] = ['inquiry_type', '=', $value['inquiry_type']]; $params[] = ['inquiry_mode', '=', 1]; $params[] = ['inquiry_refund_status', '=', 0]; - $value['order_inquiry_count'] = OrderInquiry::getCount($params); + + // 获取当天开始时间 + $start_date = date('Y-m-d 00:00:00', time()); + + // 获取当天结束时间 + $end_date = date('Y-m-d 23:59:59', time()); + + $created_at = [$start_date, $end_date]; + + $value['order_inquiry_count'] = OrderInquiry::getDateCount($params,$created_at); // 获取系统问诊配置 $fields = [