Профиль хирургии
This commit is contained in:
@@ -59,15 +59,15 @@ class PatientService
|
||||
$query = MisMedicalHistory::whereIn('MedicalHistoryID', $medicalHistoryIds)
|
||||
->with([
|
||||
'surgicalOperations' => function ($q) use ($dateRange) {
|
||||
$q->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
// $q->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
$q->where('Date', '>=', $dateRange->startSql())
|
||||
->where('Date', '<=', $dateRange->endSql());
|
||||
},
|
||||
'migrations' => function ($q) use ($branchId) {
|
||||
$q->where('rf_StationarBranchID', $branchId)
|
||||
->take(1) // берем только одну последнюю
|
||||
->with(['diagnosis' => function ($q) {
|
||||
$q->where('rf_DiagnosTypeID', 3)
|
||||
->take(1)
|
||||
->with('mkb');
|
||||
->with(['mainDiagnosis' => function ($q) {
|
||||
$q->with('mkb');
|
||||
}]);
|
||||
}
|
||||
])
|
||||
@@ -133,7 +133,9 @@ class PatientService
|
||||
|
||||
return MisMedicalHistory::whereIn('MedicalHistoryID', $allIds)
|
||||
->with(['surgicalOperations' => function ($q) use ($dateRange) {
|
||||
$q->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
// $q->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
$q->where('Date', '>=', $dateRange->startSql())
|
||||
->where('Date', '<=', $dateRange->endSql());
|
||||
}])
|
||||
->orderBy('DateRecipient', 'DESC')
|
||||
->get()
|
||||
@@ -161,7 +163,14 @@ class PatientService
|
||||
}
|
||||
|
||||
if ($onlyIds) $patients = $query->pluck('MedicalHistoryID');
|
||||
else $patients = $query->get();
|
||||
else {
|
||||
// Загрузка отношений, необходимых для FormattedPatientResource
|
||||
$query->with([
|
||||
'outcomeMigration.mainDiagnosis.mkb', // mkb через диагноз
|
||||
'surgicalOperations.serviceMedical', // операции с услугами
|
||||
]);
|
||||
$patients = $query->get();
|
||||
}
|
||||
|
||||
return $patients->map(function ($patient) {
|
||||
$patient->comment = $patient->observationPatient
|
||||
@@ -221,7 +230,9 @@ class PatientService
|
||||
bool $countOnly = false
|
||||
) {
|
||||
$query = MisSurgicalOperation::where('rf_StationarBranchID', $branchId)
|
||||
->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('Date', '>=', $dateRange->startSql())
|
||||
->where('Date', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('Date', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
|
||||
if ($type === 'plan') {
|
||||
$query->where('rf_TypeSurgOperationInTimeID', 6);
|
||||
@@ -273,10 +284,14 @@ class PatientService
|
||||
) {
|
||||
if ($isHeadOrAdmin) {
|
||||
$query = MisMigrationPatient::whereInDepartment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
} else {
|
||||
$query = MisMigrationPatient::currentlyInTreatment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
}
|
||||
|
||||
$medicalHistoryIds = $query->pluck('rf_MedicalHistoryID')->toArray();
|
||||
@@ -315,19 +330,27 @@ class PatientService
|
||||
// Заведующий: все поступившие за период
|
||||
if ($fillableAuto) {
|
||||
$query = LifeMisMigrationPatient::whereInDepartment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
} else {
|
||||
$query = MisMigrationPatient::whereInDepartment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
}
|
||||
} else {
|
||||
// Врач: только поступившие за сутки
|
||||
if ($fillableAuto) {
|
||||
$query = LifeMisMigrationPatient::whereInDepartment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
} else {
|
||||
$query = MisMigrationPatient::whereInDepartment($branchId)
|
||||
->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
->where('DateIngoing', '>=', $dateRange->startSql())
|
||||
->where('DateIngoing', '<=', $dateRange->endSql());
|
||||
// ->whereBetween('DateIngoing', [$dateRange->startSql(), $dateRange->endSql()]);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user