Merge remote-tracking branch 'origin/staging' into origin/production

This commit is contained in:
Server D3 Linksehat
2025-03-24 13:19:45 +07:00
6 changed files with 50 additions and 6 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) {
@@ -163,6 +166,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',
@@ -175,7 +180,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;
@@ -195,13 +210,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
@@ -214,6 +234,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;
@@ -24,7 +25,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;
}
} }

View File

@@ -199,7 +199,11 @@ class NavigationSeeder extends Seeder
'path' => '/report/linksehat-payments', 'path' => '/report/linksehat-payments',
'permission' => 'report-livechat-payment' 'permission' => 'report-livechat-payment'
], ],
// ['title' => 'Prescription', 'path' => '/report/prescription'], [
'title' => 'Prescription',
'path' => '/report/prescription',
'permission' => 'report-prescription'
],
[ [
'title' => 'Doctor Rating', 'title' => 'Doctor Rating',
'path' => '/report/doctor-rating', 'path' => '/report/doctor-rating',

View File

@@ -71,6 +71,7 @@ class PermissionTableSeeder extends Seeder
'report-livechat-payment', 'report-livechat-payment',
'report-doctor-rating', 'report-doctor-rating',
'report-doctor-online', 'report-doctor-online',
'report-prescription',
'user-role-list', 'user-role-list',
'user-access-list', 'user-access-list',
'report-katalog-dokter', 'report-katalog-dokter',

View File

@@ -336,6 +336,8 @@ export default function List() {
<TableCell align="left">{row.date_consultation ? fDateTime(row.date_consultation) : '-'}</TableCell> <TableCell align="left">{row.date_consultation ? fDateTime(row.date_consultation) : '-'}</TableCell>
<TableCell align="left">{row.patient_name ?? '-'}</TableCell> <TableCell align="left">{row.patient_name ?? '-'}</TableCell>
<TableCell align="left">{row.doctor_name ?? '-'}</TableCell> <TableCell align="left">{row.doctor_name ?? '-'}</TableCell>
<TableCell align="left">{row.apotek_name ?? '-'}</TableCell>
<TableCell align="left">{row.price_delivery ?? '-'}</TableCell>
<TableCell align="left">{row.status_prescription ?? '-'}</TableCell> <TableCell align="left">{row.status_prescription ?? '-'}</TableCell>
{/* <TableCell align="center"> {/* <TableCell align="center">
<ButtonGroup variant="text" aria-label="text button group"> <ButtonGroup variant="text" aria-label="text button group">
@@ -542,6 +544,12 @@ export default function List() {
<TableCell style={headStyle} align="left"> <TableCell style={headStyle} align="left">
Doctor Doctor
</TableCell> </TableCell>
<TableCell style={headStyle} align="left">
Nama Apotek
</TableCell>
<TableCell style={headStyle} align="left">
Harga Ongkos Kirim
</TableCell>
<TableCell style={headStyle} align="left"> <TableCell style={headStyle} align="left">
Status Status
</TableCell> </TableCell>