新增医生当日问诊数量问题
This commit is contained in:
parent
bcbd632895
commit
3e09cdad05
@ -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();
|
||||
|
||||
@ -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 = [
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user