Arkadaşlar Merhabalar,
Günlerdir ara ara baktığım bu sorun canıma tak etti bir çözüm bulamadım 😃
Vue Frontend tarafında Backend kısmına bir get isteği atılıyor.
Bu get isteği gidip Logo apileirne faturaları çekmek için istek atıyor.
istek ilk atıldığı andan itibaren backende'ki fonksiyon düzgün çalışıyor fonksiyonda ki işlem bitiyor,
fakat return yapmadan ne hikmetse anlamadığım bir şekilde fonksiyon tekrar tetikleniyor bu sefer sonuç Sıfır dönüyor.
Log yaptığım yerlerde fonksiyonun bazen 1 bazen 2 defa çalıştığını görüyorum,
Front kısmında yaptığım loglarda sonucun dönmediğini en son sıfır olan değerinin döndüğünü görüyorum.
Halbuki Backendde fonksiyon ilk çalıştığı zaman doğru sonuçlar üretiyor fakat tekrar tetiklendiğinden dolayı sonuç sıfır dönüyor
Front
async invoiceLogoSync() {
this.counter++;
console.log("Counter: " + this.counter);
let self = this;
self.lockLogoSync = true;
self.sweetAlertClose();
self.sweetAlertLoading();
let response = await this.$store.dispatch(GET_ITEMS, {
url: this.logoSyncUrl,
filters: {},
});
if (response) {
this.counter2++;
console.log("Counter2: " + this.counter2);
if (response.status) {
console.log("Message: " + response.data);
self.sweetAlertSuccess(response.data.message);
} else {
this.errorCount++;
console.log("Error Count: " + this.errorCount);
self.lockLogoSync = false;
self.sweetAlertError(response.data);
}
}
self.lockLogoSync = false;
},
},
Backend
try {
if ($lockSyncInvoiceUser->user_id == null && $lockSyncUserWaybill->user_id == null) {
ini_set('max_execution_time', '0'); // for infinite time of execution
$lockSyncInvoiceUser->update(
[
'user_id' => Auth::user()->id,
'level' => 1,
'status' => 1
]
);
$result = General::importInvoices();
$lockSyncInvoiceUser->update(
[
'user_id' => null,
'level' => 0,
'status' => 0
]
);
$message = "<b>" . __("invoice.invoice_count") . " :</b> " . $result['import_invoice_count'] . " <br />";
$message = $message . " <b>" . __("invoice.transfered_invoice_count") . " :</b> " . $result['import_transfered_invoice_count'] . " <br />";
$message = $message . " <b>" . __("invoice.transfer_error_invoice_count") . " :</b> " . $result['import_error_invoice_count'];
$logoSyncInvoiceSessionRecord = array('message' => 'test');
$data = [
'message' => $message
];
Log::channel('custom')->info("Test Count: " . $result['import_invoice_count']);
Log::channel('custom')->info("Get Transfered User: " . Auth::user()->name . ' ' . $message);
return Output::success($data, Response::HTTP_OK);
} else {
$lockSyncInvoiceUser->update(
[
'user_id' => null,
'level' => 0,
'status' => 0
]
);
throw new \Exception("Hata");
}
} catch (\Exception $e) {
$lockSyncInvoiceUser->update(
[
'user_id' => null,
'level' => 0,
'status' => 0
]
);
return Output::error(Response::HTTP_INTERNAL_SERVER_ERROR, $e->getMessage());
}
}