prescription

This commit is contained in:
2025-03-24 10:04:02 +07:00
parent b587e53f7a
commit e2c9a4bad0
3 changed files with 36 additions and 5 deletions

View File

@@ -32,8 +32,11 @@ class PrescriptionController extends Controller
'tx_prescriptions.*', 'tx_prescriptions.*',
'tx_prescription_orders.sStatus as status_prescription', 'tx_prescription_orders.sStatus as status_prescription',
'tx_prescription_orders.sAddress as kirim_ke', 'tx_prescription_orders.sAddress as kirim_ke',
'tx_prescription_orders.sDeliveryPrice as ongkir',
'tx_prescription_orders.sDeliveryMethod as delivery', 'tx_prescription_orders.sDeliveryMethod as delivery',
); 'tx_prescription_orders.nIDApotek',
)
->whereNotNull('nIDUser');
if ($request->has('search')) { if ($request->has('search')) {
$search = $request->search; $search = $request->search;
$prescription->where(function ($query) use ($search) { $prescription->where(function ($query) use ($search) {
@@ -164,6 +167,8 @@ class PrescriptionController extends Controller
'Patient', 'Patient',
'Doctor', 'Doctor',
'Status', 'Status',
'Nama Apotek',
'Harga Ongkir',
'Jenis Obat (Drugs)', 'Jenis Obat (Drugs)',
'Jumlah Obat (QTY)', 'Jumlah Obat (QTY)',
'Cara Minum Obat', 'Cara Minum Obat',
@@ -176,7 +181,17 @@ class PrescriptionController extends Controller
// Query prescription data // Query prescription data
$prescriptionQuery = Prescription::query() $prescriptionQuery = Prescription::query()
->with(['livechat', 'user', 'items']); ->with(['livechat', 'user', 'items'])
->join('tx_prescription_orders', 'tx_prescriptions.nID', '=', 'tx_prescription_orders.nIDPrescription')
->select(
'tx_prescriptions.*',
'tx_prescription_orders.sStatus as status_prescription',
'tx_prescription_orders.sAddress as kirim_ke',
'tx_prescription_orders.sDeliveryPrice as ongkir',
'tx_prescription_orders.sDeliveryMethod as delivery',
'tx_prescription_orders.nIDApotek',
)
->whereNotNull('nIDUser');
if ($request->has('search')) { if ($request->has('search')) {
$search = $request->search; $search = $request->search;
@@ -196,13 +211,18 @@ class PrescriptionController extends Controller
if ($prescriptions->isNotEmpty()) { if ($prescriptions->isNotEmpty()) {
$no = 1; $no = 1;
foreach ($prescriptions as $index => $row) { foreach ($prescriptions as $index => $row) {
$patientName = $row->user ? $row->user->sFirstName .' '. $row->user->sLastName : '-';
if ($row->items->isNotEmpty()) { if ($row->items->isNotEmpty()) {
$rowData = [ $rowData = [
$no++, $no++,
$row->sKodeResep ?? '-', $row->sKodeResep ?? '-',
$row->dTanggalResep ? Carbon::parse($row->dTanggalResep)->format('Y-m-d') : '-', $row->dTanggalResep ? Carbon::parse($row->dTanggalResep)->format('Y-m-d') : '-',
$row->user->name ?? '-', $row->user->fullName ?? '-',
$row->sDokterName ?? '-', $row->sDokterName ?? '-',
$row->status_prescription ?? '-',
$row->nIDApotek ? Helper::getOrganization($row->nIDApotek) : '-',
$row->ongkir ?? '-',
$row->sDeliveryPrice ?? '-',
]; ];
// Create a row from the array and add it to the writer // Create a row from the array and add it to the writer
@@ -215,6 +235,9 @@ class PrescriptionController extends Controller
'', '',
'', '',
'', '',
'',
'',
'',
$item->sItemName ?? '-', $item->sItemName ?? '-',
$item->nQty ?? '-', $item->nQty ?? '-',
$item->sSigna ?? '-' $item->sSigna ?? '-'

View File

@@ -1,7 +1,8 @@
<?php <?php
namespace Modules\Internal\Transformers; namespace Modules\Internal\Transformers;
use App\Helpers\Helper;
use Illuminate\Http\Resources\Json\JsonResource; use Illuminate\Http\Resources\Json\JsonResource;
use Carbon\Carbon; use Carbon\Carbon;
@@ -25,7 +26,9 @@ class ReportPrescriptionResource extends JsonResource
'date_consultation' => $this->dTanggalResep ? Carbon::parse($this->dTanggalResep)->format('Y-m-d H:i:s') : null, 'date_consultation' => $this->dTanggalResep ? Carbon::parse($this->dTanggalResep)->format('Y-m-d H:i:s') : null,
'doctor_name' => $this->sDokterName ? $this->sDokterName : '-', 'doctor_name' => $this->sDokterName ? $this->sDokterName : '-',
'items' => $this->items ? $this->items : [], 'items' => $this->items ? $this->items : [],
'status_prescription' => $this->status_prescription 'status_prescription' => $this->status_prescription,
'price_delivery' => $this->ongkir,
'apotek_name' => $this->nIDApotek ? Helper::getOrganization($this->nIDApotek) : '-',
]; ];
return $data; return $data;

View File

@@ -14,6 +14,7 @@ use App\Models\User;
use App\Models\CorporatePolicy; use App\Models\CorporatePolicy;
use App\Models\Service; use App\Models\Service;
use App\Models\Icd; use App\Models\Icd;
use App\Models\Organization;
use DateTime; use DateTime;
class Helper class Helper
@@ -669,5 +670,9 @@ class Helper
return []; return [];
} }
public static function getOrganization($organizationId){
$organization = Organization::where('id', $organizationId)->first();
return $organization->name;
}
} }