Amélioration enregisytrement doc id
This commit is contained in:
parent
7c24654741
commit
f350b5ff10
@ -196,12 +196,22 @@ class PEPPOL_peppol_controller {
|
||||
$data = is_array($result['data'] ?? null) ? $result['data'] : [];
|
||||
|
||||
// Extraire document_id et peppol_document_id depuis la réponse API
|
||||
$document_id = isset($data['document_id']) ? (string) $data['document_id'] : '';
|
||||
$peppol_document_id = isset($data['peppol_document_id']) ? (string) $data['peppol_document_id'] : '';
|
||||
$status = isset($data['status']) ? (string) $data['status'] : ($result['success'] ? 'created' : 'error');
|
||||
// La réponse API peut avoir la structure : $result['data']['data'] ou $result['data']
|
||||
// On vérifie d'abord si les valeurs sont dans $data['data'], sinon on prend directement $data
|
||||
$inner_data = $data;
|
||||
if (isset($data['data']) && is_array($data['data'])) {
|
||||
// Structure imbriquée : $result['data']['data']
|
||||
$inner_data = $data['data'];
|
||||
}
|
||||
|
||||
$document_id = isset($inner_data['document_id']) ? trim((string) $inner_data['document_id']) : '';
|
||||
$peppol_document_id = isset($inner_data['peppol_document_id']) ? trim((string) $inner_data['peppol_document_id']) : '';
|
||||
$status = isset($inner_data['status']) ? (string) $inner_data['status'] : ($result['success'] ? 'created' : 'error');
|
||||
|
||||
$message = $result['message'];
|
||||
if ($message === '' && isset($data['message'])) {
|
||||
if ($message === '' && isset($inner_data['message'])) {
|
||||
$message = (string) $inner_data['message'];
|
||||
} elseif ($message === '' && isset($data['message'])) {
|
||||
$message = (string) $data['message'];
|
||||
}
|
||||
|
||||
@ -213,17 +223,21 @@ class PEPPOL_peppol_controller {
|
||||
'order_id' => $order_id,
|
||||
'payload_sent' => $payload,
|
||||
'api_result' => $result,
|
||||
'data_extracted' => $data,
|
||||
'inner_data' => $inner_data,
|
||||
'document_id' => $document_id,
|
||||
'peppol_document_id' => $peppol_document_id,
|
||||
'status' => $status,
|
||||
],
|
||||
'INFO'
|
||||
);
|
||||
}
|
||||
|
||||
// Enregistrer ou mettre à jour dans la base de données
|
||||
// On passe $inner_data comme response_data pour conserver la structure complète
|
||||
PEPPOL_Main_model::save_for_order(
|
||||
$order_id,
|
||||
$data,
|
||||
$inner_data,
|
||||
$payload,
|
||||
$document_id,
|
||||
$peppol_document_id,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user