Skip to content

Commit f77ed1c

Browse files
committed
fix: correzioni nuova api per la gestione dei token fcm
1 parent 8bbe8a8 commit f77ed1c

1 file changed

Lines changed: 48 additions & 44 deletions

File tree

src/API/App/v1/FcmTokens.php

Lines changed: 48 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -20,65 +20,69 @@
2020

2121
namespace API\App\v1;
2222

23-
use API\Interfaces\CreateInterface;
24-
use API\Interfaces\UpdateInterface;
25-
use API\Resource;
26-
use API\Response;
23+
use API\App\AppResource;
2724

2825
/**
2926
* Risorsa API per la gestione dei token FCM (Firebase Cloud Messaging) dei dispositivi.
3027
* Permette all'app di salvare e aggiornare i token FCM per l'invio di notifiche push.
3128
*/
32-
class FcmTokens extends Resource implements CreateInterface, UpdateInterface
29+
class FcmTokens extends AppResource
3330
{
3431

35-
public function create($request)
32+
public function getCleanupData($last_sync_at)
33+
{
34+
return [];
35+
}
36+
37+
public function getModifiedRecords($last_sync_at)
38+
{
39+
return [];
40+
}
41+
42+
public function retrieveRecord($id)
43+
{
44+
return [];
45+
}
46+
47+
public function createRecord($data)
3648
{
3749
$database = database();
3850
$user = $this->getUser();
3951

40-
$fcm_token = $request['token'];
41-
$platform = $request['platform'] ?? null;
42-
$device_info = $request['device_info'] ?? null;
52+
$fcm_token = $data['token'];
53+
$platform = $data['platform'] ?? null;
54+
$device_info = $data['device_info'] ?? null;
4355
$user_id = $user['id'];
4456

45-
try {
46-
// Verifica se esiste già un token per questo utente
47-
$existing_token = $database->fetchOne('SELECT * FROM `zz_app_tokens` WHERE `id_user` = :user_id', [
48-
':user_id' => $user_id,
49-
]);
50-
51-
if ($existing_token) {
52-
// Aggiorna il token esistente
53-
$database->update('zz_app_tokens', [
54-
'token' => $fcm_token,
55-
'platform' => $platform,
56-
'device_info' => $device_info ? json_encode($device_info) : null,
57-
], ['id' => $existing_token['id']]);
57+
// Verifica se esiste già un token per questo utente
58+
$existing_token = $database->fetchOne('SELECT * FROM `zz_app_tokens` WHERE `id_user` = :user_id', [
59+
':user_id' => $user_id,
60+
]);
5861

59-
$token_id = $existing_token['id'];
60-
} else {
61-
// Crea un nuovo record
62-
$database->insert('zz_app_tokens', [
63-
'id_user' => $user_id,
64-
'token' => $fcm_token,
65-
'platform' => $platform,
66-
'device_info' => $device_info ? json_encode($device_info) : null,
67-
]);
62+
if ($existing_token) {
63+
// Aggiorna il token esistente
64+
$database->update('zz_app_tokens', [
65+
'token' => $fcm_token,
66+
'platform' => $platform,
67+
'device_info' => $device_info ? json_encode($device_info) : null,
68+
], ['id' => $existing_token['id']]);
6869

69-
$token_id = $database->lastInsertedID();
70-
}
71-
72-
return [
73-
'id' => $token_id
74-
];
70+
$token_id = $existing_token['id'];
71+
} else {
72+
// Crea un nuovo record
73+
$database->insert('zz_app_tokens', [
74+
'id_user' => $user_id,
75+
'token' => $fcm_token,
76+
'platform' => $platform,
77+
'device_info' => $device_info ? json_encode($device_info) : null,
78+
]);
7579

76-
} catch (\Exception $e) {
77-
return [
78-
'status' => Response::getStatus()['internal_error']['code'],
79-
'message' => 'Errore durante il salvataggio del token',
80-
];
80+
$token_id = $database->lastInsertedID();
8181
}
82+
83+
return [
84+
'id' => $token_id
85+
];
8286
}
8387

8488
/**
@@ -88,10 +92,10 @@ public function create($request)
8892
*
8993
* @return array Risposta dell'operazione
9094
*/
91-
public function update($request)
95+
public function updateRecord($data)
9296
{
9397
// Per i token FCM, l'operazione di update è identica a create
9498
// poiché gestiamo automaticamente la creazione o l'aggiornamento
95-
return $this->create($request);
99+
return $this->create($data);
96100
}
97101
}

0 commit comments

Comments
 (0)