๐Ÿš— Test Customer Asset API Integration

Tanggal Test: 16/08/2026 12:03:00

Status: API INTEGRATION UPDATE

โœ… 1. PHP 5.6 Compatibility Fixes

Issue Before (PHP 7+) After (PHP 5.6+) Status
Null Coalescing Operator $_SESSION['userGroupID'] ?? '' isset($_SESSION['userGroupID']) ? $_SESSION['userGroupID'] : '' โœ… FIXED
Array Syntax echo json_encode([...]); echo json_encode(array(...)); โœ… FIXED
Session Access $_SESSION['license'] ?? [] isset($_SESSION['license']) ? $_SESSION['license'] : array() โœ… FIXED

๐Ÿ”ง 2. API maps_kendaraan.php Updates

New SQL Query with Groups:

SELECT -- Existing fields... ISNULL(tbLicenseTran.tid, '') AS groups FROM dbo.tblatestlocation LEFT JOIN dtKendaraan ON tblatestlocation.license = dtKendaraan.License LEFT JOIN dtProduk ON dtProduk.produk = dtKendaraan.Produk LEFT JOIN tbLicenseTran ON tblatestlocation.license = tbLicenseTran.license AND tbLicenseTran.customerID BETWEEN (SELECT MinNo FROM tbUserGroup WHERE userGroupID = '{$userGroupID}') AND (SELECT MaxNo FROM tbUserGroup WHERE userGroupID = '{$userGroupID}') WHERE tblatestlocation.License IN ({$lics}) ORDER BY LastRcvTime DESC

Updated Response Fields:

Field Type Description Source
License string Nomor plat kendaraan tblatestlocation.license
StatusMesin string Status mesin (Hidup/Mati) Calculated from IgnitionOn
jenis string Jenis kendaraan dtKendaraan.Jenis_Kendaraan
groups string Group/TID dari tbLicenseTran tbLicenseTran.tid
tahun string Tahun kendaraan dtKendaraan.Tahun
muatan string Jenis muatan/produk dtKendaraan.Produk
warna string Warna untuk muatan (RGBA) dtProduk.warna
Waktu string Waktu terima data ReceiveTime + GMT
Kecepatan number Kecepatan kendaraan tblatestlocation.speed
Arah string Arah mata angin Calculated from Course
WaktuGPS string Waktu GPS Time + GMT

๐ŸŽจ 3. CustomerAssetPage.vue Updates

Field Mapping Changes:

Old Field New Field Description Status
vehicle.plate vehicle.License Nomor plat kendaraan โœ… UPDATED
vehicle.status vehicle.StatusMesin Status mesin (Hidup/Mati) โœ… UPDATED
vehicle.type vehicle.jenis Jenis kendaraan โœ… UPDATED
vehicle.driver vehicle.groups Group/TID kendaraan โœ… UPDATED

New Features Added:

Status Color Mapping:

Status Color Description
Hidup positive (green) Mesin hidup
Mati negative (red) Mesin mati
Maintenance warning (yellow) Dalam perawatan

๐Ÿงช 4. Testing Scenarios

Test Case 1: API Endpoint Test

  1. Login: Login API
  2. Test API: Maps Kendaraan API
  3. Expected: JSON response dengan field baru (groups, tahun, muatan, warna)

Test Case 2: Frontend Integration

  1. Start Servers:
    # Backend php -S localhost:8000 -t public # Frontend cd frontend && npm run dev
  2. Login: Frontend Login
  3. Customer Asset: Customer Asset Page
  4. Expected: Cards menampilkan data dari API dengan field baru

Test Case 3: Field Verification

Field What to Check Expected
License Card title Nomor plat kendaraan
StatusMesin Status chip color Green (Hidup) / Red (Mati)
jenis Vehicle type text Jenis kendaraan dari database
groups Driver field TID dari tbLicenseTran
tahun Vehicle details Tahun kendaraan
muatan + warna Muatan with color box Produk dengan indikator warna
Waktu Time display Format Indonesia dd/mm/yyyy H:i:s
Kecepatan Speed display Angka + "km/h"
Arah Direction display Mata angin (Utara, Selatan, dll)
WaktuGPS Card hover title Tooltip saat hover card

๐ŸŽฏ 5. Expected Results

Component What You Should See Status
API Response JSON dengan field groups, tahun, muatan, warna โœ… Should Work
Vehicle Cards Cards dengan data real dari database โœ… Should Work
Status Colors Green untuk Hidup, Red untuk Mati โœ… Should Work
Muatan Colors Color box sesuai field warna dari database โœ… Should Work
Hover Title Tooltip WaktuGPS saat hover card โœ… Should Work
Loading State Spinner saat memuat data โœ… Should Work
Error Handling Error message jika API gagal โœ… Should Work

โš ๏ธ 6. Troubleshooting

API Issues:

Problem Possible Cause Solution
403 Forbidden No license data in session Check login process and session data
Empty groups field tbLicenseTran data missing Check database tbLicenseTran table
PHP 5.6 syntax error Modern PHP syntax used All fixed to PHP 5.6 compatibility

Frontend Issues:

Problem Possible Cause Solution
Loading forever API endpoint not responding Check backend server and API endpoint
No color box warna field empty or invalid Check dtProduk.warna data format
No hover title WaktuGPS field missing Check API response structure

๐Ÿš€ 7. Next Actions

Test API Test Frontend Login First

Checklist Verification:


Generated by: test_customer_asset_api_integration.php | Author: Rodhi | Date: 16/08/2026 12:03:00

Status: READY FOR TESTING