diff --git a/Modules/Internal/Http/Controllers/Api/Linksehat/PrescriptionController.php b/Modules/Internal/Http/Controllers/Api/Linksehat/PrescriptionController.php
old mode 100644
new mode 100755
index 9b96b3e7..9af48110
--- a/Modules/Internal/Http/Controllers/Api/Linksehat/PrescriptionController.php
+++ b/Modules/Internal/Http/Controllers/Api/Linksehat/PrescriptionController.php
@@ -32,8 +32,11 @@ class PrescriptionController extends Controller
'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')) {
$search = $request->search;
$prescription->where(function ($query) use ($search) {
@@ -164,6 +167,8 @@ class PrescriptionController extends Controller
'Patient',
'Doctor',
'Status',
+ 'Nama Apotek',
+ 'Harga Ongkir',
'Jenis Obat (Drugs)',
'Jumlah Obat (QTY)',
'Cara Minum Obat',
@@ -176,7 +181,17 @@ class PrescriptionController extends Controller
// Query prescription data
$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')) {
$search = $request->search;
@@ -196,13 +211,18 @@ class PrescriptionController extends Controller
if ($prescriptions->isNotEmpty()) {
$no = 1;
foreach ($prescriptions as $index => $row) {
+ $patientName = $row->user ? $row->user->sFirstName .' '. $row->user->sLastName : '-';
if ($row->items->isNotEmpty()) {
$rowData = [
$no++,
$row->sKodeResep ?? '-',
$row->dTanggalResep ? Carbon::parse($row->dTanggalResep)->format('Y-m-d') : '-',
- $row->user->name ?? '-',
+ $row->user->fullName ?? '-',
$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
@@ -215,6 +235,9 @@ class PrescriptionController extends Controller
'',
'',
'',
+ '',
+ '',
+ '',
$item->sItemName ?? '-',
$item->nQty ?? '-',
$item->sSigna ?? '-'
diff --git a/Modules/Internal/Transformers/ReportPrescriptionResource.php b/Modules/Internal/Transformers/ReportPrescriptionResource.php
old mode 100644
new mode 100755
index e72099ef..e57ef80c
--- a/Modules/Internal/Transformers/ReportPrescriptionResource.php
+++ b/Modules/Internal/Transformers/ReportPrescriptionResource.php
@@ -1,7 +1,8 @@
$this->dTanggalResep ? Carbon::parse($this->dTanggalResep)->format('Y-m-d H:i:s') : null,
'doctor_name' => $this->sDokterName ? $this->sDokterName : '-',
'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;
diff --git a/app/Helpers/Helper.php b/app/Helpers/Helper.php
index 01a10913..8530c8be 100755
--- a/app/Helpers/Helper.php
+++ b/app/Helpers/Helper.php
@@ -14,6 +14,7 @@ use App\Models\User;
use App\Models\CorporatePolicy;
use App\Models\Service;
use App\Models\Icd;
+use App\Models\Organization;
use DateTime;
class Helper
@@ -669,5 +670,9 @@ class Helper
return [];
}
+ public static function getOrganization($organizationId){
+ $organization = Organization::where('id', $organizationId)->first();
+ return $organization->name;
+ }
}
diff --git a/database/seeders/NavigationSeeder.php b/database/seeders/NavigationSeeder.php
index 80409594..2b045c0c 100755
--- a/database/seeders/NavigationSeeder.php
+++ b/database/seeders/NavigationSeeder.php
@@ -185,7 +185,11 @@ class NavigationSeeder extends Seeder
'path' => '/report/linksehat-payments',
'permission' => 'report-livechat-payment'
],
- // ['title' => 'Prescription', 'path' => '/report/prescription'],
+ [
+ 'title' => 'Prescription',
+ 'path' => '/report/prescription',
+ 'permission' => 'report-prescription'
+ ],
[
'title' => 'Doctor Rating',
'path' => '/report/doctor-rating',
diff --git a/database/seeders/PermissionTableSeeder.php b/database/seeders/PermissionTableSeeder.php
index 8c666750..0013f925 100755
--- a/database/seeders/PermissionTableSeeder.php
+++ b/database/seeders/PermissionTableSeeder.php
@@ -71,6 +71,7 @@ class PermissionTableSeeder extends Seeder
'report-livechat-payment',
'report-doctor-rating',
'report-doctor-online',
+ 'report-prescription',
'user-role-list',
'user-access-list',
'report-katalog-dokter',
diff --git a/frontend/dashboard/src/pages/Dashboard.tsx b/frontend/dashboard/src/pages/Dashboard.tsx
index 07dfcb8d..17af6e3d 100755
--- a/frontend/dashboard/src/pages/Dashboard.tsx
+++ b/frontend/dashboard/src/pages/Dashboard.tsx
@@ -113,6 +113,7 @@ const transaksiDataDefault = [
const [transaksiData, setTransaksiData] = useState(transaksiDataDefault);
const [transaksiDataBar, setTransaksiDataBar] = useState([]);
const [type, setType] = useState(0);
+ const [typeDokter, setTypeDokter] = useState(0);
const [status, setStatus] = useState(0);
const [statusDokter, setStatusDokter] = useState(0);
const [view, setView] = useState(["day", "month", "year"]);
@@ -173,7 +174,7 @@ const transaksiDataDefault = [
params: {
start_date: startDateDokter,
end_date: endDateDokter,
- type,
+ typeDokter,
statusDokter,
nIDDokter: selectedDoctors
}
@@ -208,7 +209,7 @@ const transaksiDataDefault = [
// Fetch
useEffect(() => {
fetchListPerfomaDokter();
- }, [selectedDoctors, startDateDokter, endDateDokter])
+ }, [selectedDoctors, startDateDokter, typeDokter, endDateDokter])
useEffect(() => {
fetchListDokter();
@@ -298,11 +299,11 @@ const transaksiDataDefault = [
- {doctor.online === 1 ? "🟢 Online" : "🔴 Offline"}
+ {doctor.online == 1 ? "🟢 Online" : "🔴 Offline"}
@@ -464,8 +465,8 @@ const transaksiDataDefault = [
Tipe