From 2f9f38aeb5a9a2bba524f987bce0a17b8e57ea2a Mon Sep 17 00:00:00 2001 From: kshitige Date: Tue, 8 Apr 2025 12:52:01 +0530 Subject: [PATCH] Changes in asset and device list --- .../AdminApi/AdminDashboardController.php | 87 ------------------- .../APIS/AdminApi/AlarmController.php | 6 +- .../APIS/AdminApi/AssetadmintController.php | 16 +++- .../APIS/AdminApi/DeviceController.php | 44 +++++++--- 4 files changed, 47 insertions(+), 106 deletions(-) diff --git a/app/Http/Controllers/APIS/AdminApi/AdminDashboardController.php b/app/Http/Controllers/APIS/AdminApi/AdminDashboardController.php index 8be0c29..30c0dbd 100644 --- a/app/Http/Controllers/APIS/AdminApi/AdminDashboardController.php +++ b/app/Http/Controllers/APIS/AdminApi/AdminDashboardController.php @@ -21,92 +21,6 @@ class AdminDashboardController extends Controller } - // public function adminDashboard() - // { - // try { - // $totalCustomers = Customer::count(); - // $totalAssets = Asset::count(); - // $totalDevices = Device::count(); - - - // $customer = Customer:: - // $token = $this->adminService->getToken(); - // $activeDevices = 0; - // $inactiveDevices = 0; - // $activeAlarmsCount = 0; - // $warningAlarmsCount = 0; - // $criticalAlarmsCount = 0; - - // if ($token) { - // $baseUrl = env('THINGSBOARD_URL'); - // $deviceIds = Device::pluck('id')->toArray(); - - // foreach ($deviceIds as $deviceId) { - // $response = Http::withHeaders([ - // 'Authorization' => "Bearer $token", - // 'Accept' => 'application/json', - // ])->get("$baseUrl/api/device/info/{$deviceId}"); - - // if ($response->successful()) { - // $deviceInfo = $response->json(); - // $deviceInfo['active'] ? $activeDevices++ : $inactiveDevices++; - // } else { - // $inactiveDevices++; - // } - // } - - // $alarmsResponse = Http::withHeaders([ - // 'Authorization' => "Bearer $token", - // 'Accept' => 'application/json', - // ])->get("$baseUrl/api/v2/alarms", [ - // 'pageSize' => 1000, // Adjust based on expected alarm count - // 'page' => 0, - // 'status' => 'ACTIVE' - // ]); - - // if ($alarmsResponse->successful()) { - // $alarmsData = $alarmsResponse->json(); - // $activeAlarmsCount = $alarmsData['totalElements'] ?? 0; - - // if (isset($alarmsData['data'])) { - // foreach ($alarmsData['data'] as $alarm) { - // $severity = strtoupper($alarm['severity'] ?? ''); - // if ($severity === 'CRITICAL') { - // $criticalAlarmsCount++; - // } elseif ($severity === 'WARNING') { - // $warningAlarmsCount++; - // } - // } - // } - // } - - // } - - // return response()->json([ - // 'success' => true, - // 'total_customers' => $totalCustomers, - // 'total_assets' => $totalAssets, - // 'devices' => [ - // 'total_devices' => $totalDevices, - // 'active_devices' => $activeDevices, - // 'inactive_devices' => $inactiveDevices, - // ], - // 'alarms' => [ - // 'total_active' => $activeAlarmsCount, - // 'warning' => $warningAlarmsCount, - // 'critical' => $criticalAlarmsCount, - // 'other' => $activeAlarmsCount - ($warningAlarmsCount + $criticalAlarmsCount) - // ] - // ]); - - // } catch (\Exception $e) { - // return response()->json([ - // 'success' => false, - // 'message' => 'Failed to fetch dashboard statistics', - // 'error' => $e->getMessage() - // ], 500); - // } - // } public function adminDashboard() { @@ -115,7 +29,6 @@ class AdminDashboardController extends Controller $totalAssets = Asset::count(); $totalDevices = Device::count(); - // Fetch all customers with specific fields $customers = Customer::select('name', 'country', 'state', 'city')->get(); $token = $this->adminService->getToken(); diff --git a/app/Http/Controllers/APIS/AdminApi/AlarmController.php b/app/Http/Controllers/APIS/AdminApi/AlarmController.php index cd82a4b..1a88878 100644 --- a/app/Http/Controllers/APIS/AdminApi/AlarmController.php +++ b/app/Http/Controllers/APIS/AdminApi/AlarmController.php @@ -26,12 +26,10 @@ class AlarmController extends Controller public function fetchAlarm(Request $request) { try { - // Get parameters from request $severityList = $request->query('severityList', []); $startTime = $request->query('startTime', null); $endTime = $request->query('endTime', null); - // Convert string to array if severityList is a single value if (!is_array($severityList)) { $severityList = explode(',', $severityList); } @@ -92,7 +90,7 @@ class AlarmController extends Controller try { // Get alarmId from request $alarmId = $request->input('alarmId'); - + // Validate alarmId if (!$alarmId) { @@ -141,4 +139,4 @@ class AlarmController extends Controller -} +} \ No newline at end of file diff --git a/app/Http/Controllers/APIS/AdminApi/AssetadmintController.php b/app/Http/Controllers/APIS/AdminApi/AssetadmintController.php index d7ad8f4..daec01a 100644 --- a/app/Http/Controllers/APIS/AdminApi/AssetadmintController.php +++ b/app/Http/Controllers/APIS/AdminApi/AssetadmintController.php @@ -82,9 +82,15 @@ class AssetadmintController extends Controller public function listAssest() { try { - $assests = Asset::all(); - return jsonResponseWithSuccessMessage('Assests fetched successfully', [ - 'assests' => $assests + $assets = Asset::with('customer')->get()->map(function ($asset) { + $assetData = $asset->toArray(); + unset($assetData['customer']); + $assetData['customer_name'] = $asset->customer?->name; + return $assetData; + }); + + return jsonResponseWithSuccessMessage('Assets fetched successfully', [ + 'assests' => $assets ]); } catch (Exception $e) { Log::error("An error occurred: " . $e->getMessage()); @@ -94,6 +100,8 @@ class AssetadmintController extends Controller + + public function deleteAsset(Request $request) { $assetId = $request->input('assetId'); // Fetching ID from request body @@ -217,5 +225,5 @@ class AssetadmintController extends Controller ]); } - + } diff --git a/app/Http/Controllers/APIS/AdminApi/DeviceController.php b/app/Http/Controllers/APIS/AdminApi/DeviceController.php index fc2a0f7..81d4e30 100644 --- a/app/Http/Controllers/APIS/AdminApi/DeviceController.php +++ b/app/Http/Controllers/APIS/AdminApi/DeviceController.php @@ -108,19 +108,41 @@ class DeviceController extends Controller - public function listDevices(Request $request) - { - try { - $devices = Device::all(); + // public function listDevices(Request $request) + // { + // try { + // $devices = Device::with('deviceProfile','customer'); - return jsonResponseWithSuccessMessage('Devices fetched successfully', [ - 'devices' => $devices - ]); - } catch (Exception $e) { - Log::error("An error occurred: " . $e->getMessage()); - return jsonResponseWithErrorMessage($e->getMessage(), 500); - } + // return jsonResponseWithSuccessMessage('Devices fetched successfully', [ + // 'devices' => $devices + // ]); + // } catch (Exception $e) { + // Log::error("An error occurred: " . $e->getMessage()); + // return jsonResponseWithErrorMessage($e->getMessage(), 500); + // } + // } + + public function listDevices(Request $request) +{ + try { + $devices = Device::with('deviceProfile', 'customer')->get()->map(function ($device) { + $deviceData = $device->toArray(); + unset($deviceData['device_profile'], $deviceData['customer']); // remove full relations + + $deviceData['device_profile_name'] = $device->deviceProfile?->name; + $deviceData['customer_name'] = $device->customer?->name; + + return $deviceData; + }); + + return jsonResponseWithSuccessMessage('Devices fetched successfully', [ + 'devices' => $devices + ]); + } catch (Exception $e) { + Log::error("An error occurred: " . $e->getMessage()); + return jsonResponseWithErrorMessage($e->getMessage(), 500); } +} public function deleteDevice(Request $request)