检测是否可以接诊

This commit is contained in:
2023-02-27 18:02:41 +08:00
parent 9b137d16f5
commit 5825138b7f
12 changed files with 357 additions and 48 deletions
+30 -1
View File
@@ -6,6 +6,8 @@ namespace App\Model;
use Hyperf\Database\Model\Collection;
use Hyperf\Database\Model\Relations\HasOne;
use Hyperf\Snowflake\Concern\Snowflake;
/**
@@ -59,10 +61,18 @@ class OrderInquiry extends Model
/**
* The attributes that should be cast to native types.
*/
protected array $casts = ['order_inquiry_id' => 'integer', 'user_id' => 'integer', 'patient_id' => 'integer', 'doctor_id' => 'integer', 'family_id' => 'integer', 'inquiry_type' => 'integer', 'inquiry_mode' => 'integer', 'inquiry_status' => 'integer', 'is_delete' => 'integer', 'inquiry_refund_status' => 'integer', 'inquiry_pay_channel' => 'integer', 'inquiry_pay_status' => 'integer', 'inquiry_no' => 'integer', 'settlement_status' => 'integer', 'cancel_reason' => 'integer', 'patient_sex' => 'integer', 'patient_age' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
protected array $casts = ['order_inquiry_id' => 'string', 'user_id' => 'string', 'patient_id' => 'string', 'doctor_id' => 'string', 'family_id' => 'string', 'inquiry_type' => 'integer', 'inquiry_mode' => 'integer', 'inquiry_status' => 'integer', 'is_delete' => 'integer', 'inquiry_refund_status' => 'integer', 'inquiry_pay_channel' => 'integer', 'inquiry_pay_status' => 'integer', 'inquiry_no' => 'integer', 'settlement_status' => 'integer', 'cancel_reason' => 'integer', 'patient_sex' => 'integer', 'patient_age' => 'integer', 'created_at' => 'datetime', 'updated_at' => 'datetime'];
protected string $primaryKey = "order_inquiry_id";
/**
* 关联医生表
*/
public function UserDoctor(): HasOne
{
return $this->hasOne(UserDoctor::class, 'doctor_id','doctor_id');
}
/**
* 获取问诊订单-单条
* @param array $params
@@ -172,4 +182,23 @@ class OrderInquiry extends Model
->orderBy('reception_time')
->sum("amount_total");
}
/**
* 获取某种状态的所有订单
* @param array $params
* @param array $inquiry_status_params
* @param array $fields
* @return Collection|array
*/
public static function getInquiryStatusList(array $params,array $inquiry_status_params,array $fields = ["*"]): Collection|array
{
return self::with([
'UserDoctor' => function ($query){
$query->orderBy('is_platform_deep_cooperation', 'desc');
}
])
->where($params)
->whereIn('inquiry_status',$inquiry_status_params)
->get($fields);
}
}
+10
View File
@@ -277,4 +277,14 @@ class UserDoctor extends Model
return $data;
}
/**
* 获取是否存在
* @param array $params
* @return bool
*/
public static function getExists(array $params): bool
{
return self::where($params)->exists();
}
}