filter alarm
This commit is contained in:
@@ -62,4 +62,36 @@ class AlarmController extends Controller
|
||||
return jsonResponseWithErrorMessage($e->getMessage(), 500);
|
||||
}
|
||||
}
|
||||
|
||||
public function filterAlarm(Request $request)
|
||||
{
|
||||
try {
|
||||
$alarmData = $request->only([
|
||||
// 'statusList',
|
||||
'severity',
|
||||
// 'type',
|
||||
// 'assigneeId',
|
||||
'pageSize',
|
||||
'page',
|
||||
// 'textSearch',
|
||||
// 'sortProperty',
|
||||
// 'sortOrder',
|
||||
'startTs',
|
||||
'endTs'
|
||||
]);
|
||||
|
||||
$apiResponse = $this->alarmService->filterAlarm($alarmData);
|
||||
|
||||
return jsonResponseWithSuccessMessage('Alarm data retrieved successfully', ['api_response' => $apiResponse]);
|
||||
} catch (Exception $e) {
|
||||
Log::error("Error: " . $e->getMessage());
|
||||
|
||||
$errorResponse = json_decode($e->getMessage(), true);
|
||||
if (json_last_error() === JSON_ERROR_NONE) {
|
||||
return jsonResponseWithErrorMessage($errorResponse['message'] ?? 'Something went wrong', 400, $errorResponse);
|
||||
}
|
||||
|
||||
return jsonResponseWithErrorMessage($e->getMessage(), 500);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,6 +106,41 @@ class AlarmService
|
||||
}
|
||||
|
||||
|
||||
public function filterAlarm(array $data)
|
||||
{
|
||||
$token = $this->getToken();
|
||||
|
||||
$queryParams = array_filter([
|
||||
// 'statusList' => $data['statusList'] ?? null,
|
||||
'severityList' => $data['severity'] ?? null,
|
||||
// 'typeList' => $data['type'] ?? null,
|
||||
// 'assigneeId' => $data['assigneeId'] ?? null,
|
||||
'pageSize' => $data['pageSize'] ?? 10,
|
||||
'page' => $data['page'] ?? 0,
|
||||
// 'textSearch' => $data['textSearch'] ?? null,
|
||||
// 'sortProperty' => $data['sortProperty'] ?? null,
|
||||
// 'sortOrder' => $data['sortOrder'] ?? null,
|
||||
'startTime' => $data['startTs'] ?? null,
|
||||
'endTime' => $data['endTs'] ?? null,
|
||||
], function ($value) {
|
||||
return $value !== null;
|
||||
});
|
||||
|
||||
$url = "{$this->baseUrl}/api/v2/alarms" . (count($queryParams) ? '?' . http_build_query($queryParams) : '');
|
||||
|
||||
$response = Http::withHeaders([
|
||||
'Authorization' => "Bearer $token",
|
||||
'Accept' => 'application/json',
|
||||
])->get($url);
|
||||
|
||||
if (!$response->successful()) {
|
||||
Log::error("API Error Response:", ['body' => $response->body()]);
|
||||
throw new Exception('API Error: ' . $response->body());
|
||||
}
|
||||
|
||||
return $response->json();
|
||||
}
|
||||
|
||||
|
||||
public function deleteDevice(array $data)
|
||||
{
|
||||
|
||||
@@ -63,3 +63,5 @@ Route::post('/update-device-profile-master/{deviceId}', [DeviceProfileMasterCont
|
||||
|
||||
//******************************************************* Alarm API ********************************************************
|
||||
Route::post('/alarm/create-or-update', [AlarmController::class, 'createOrUpdateAlarm'])->name('alarm.create-or-update');
|
||||
Route::post('/alarm/filter', [AlarmController::class, 'filterAlarm'])->name('alarm.filter');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user