mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2024-11-12 22:22:32 +01:00
fix: mindee taxation transform issue
This commit is contained in:
parent
5c0f228cb7
commit
3f0f5663a9
@ -273,8 +273,6 @@ class PostMarkController extends BaseController
|
||||
|
||||
$input = $request->all();
|
||||
|
||||
nlog($input);
|
||||
|
||||
if (!$request->has('token') || $request->token != config('ninja.inbound_mailbox.inbound_webhook_token'))
|
||||
return response()->json(['message' => 'Unauthorized'], 403);
|
||||
|
||||
@ -282,7 +280,7 @@ class PostMarkController extends BaseController
|
||||
nlog('Failed: Message could not be parsed, because required parameters are missing.');
|
||||
return response()->json(['message' => 'Failed. Missing/Invalid Parameters.'], 400);
|
||||
}
|
||||
|
||||
|
||||
$company = MultiDB::findAndSetDbByExpenseMailbox($input["ToFull"][0]["Email"]);
|
||||
|
||||
if (!$company) {
|
||||
|
@ -47,7 +47,7 @@ class MindeeEDocument extends AbstractService
|
||||
public function run(): Expense
|
||||
{
|
||||
$api_key = config('services.mindee.api_key');
|
||||
|
||||
|
||||
if (!$api_key)
|
||||
throw new Exception('Mindee API key not configured');
|
||||
|
||||
@ -72,22 +72,22 @@ class MindeeEDocument extends AbstractService
|
||||
$country = $prediction->locale->country;
|
||||
|
||||
$expense = Expense::query()
|
||||
->where('company_id', $this->company->id)
|
||||
->where('amount', $grandTotalAmount)
|
||||
->where("transaction_reference", $documentno)
|
||||
->whereDate("date", $documentdate)
|
||||
->first();
|
||||
->where('company_id', $this->company->id)
|
||||
->where('amount', $grandTotalAmount)
|
||||
->where("transaction_reference", $documentno)
|
||||
->whereDate("date", $documentdate)
|
||||
->first();
|
||||
|
||||
if (!$expense) {
|
||||
// The document does not exist as an expense
|
||||
// Handle accordingly
|
||||
|
||||
/** @var \App\Models\Currency $currency */
|
||||
$currency = app('currencies')->first(function ($c) use ($invoiceCurrency){
|
||||
/** @var \App\Models\Currency $c */
|
||||
$currency = app('currencies')->first(function ($c) use ($invoiceCurrency) {
|
||||
/** @var \App\Models\Currency $c */
|
||||
return $c->code == $invoiceCurrency;
|
||||
});
|
||||
|
||||
|
||||
$expense = ExpenseFactory::create($this->company->id, $this->company->owner()->id);
|
||||
$expense->date = $documentdate;
|
||||
$expense->public_notes = $documentno;
|
||||
@ -105,14 +105,14 @@ class MindeeEDocument extends AbstractService
|
||||
$counter = 1;
|
||||
|
||||
foreach ($prediction->taxes as $taxesElem) {
|
||||
$expense->{"tax_amount{$counter}"} = $taxesElem->amount;
|
||||
$expense->{"tax_amount{$counter}"} = $taxesElem->value;
|
||||
$expense->{"tax_rate{$counter}"} = $taxesElem->rate;
|
||||
$counter++;
|
||||
}
|
||||
|
||||
|
||||
/** @var \App\Models\VendorContact $vendor_contact */
|
||||
$vendor_contact = VendorContact::query()->where("company_id", $this->company->id)->where("email", $prediction->supplierEmail)->first();
|
||||
|
||||
|
||||
/** @var \App\Models\Vendor|null $vendor */
|
||||
$vendor = $vendor_contact ? $vendor_contact->vendor : Vendor::query()->where("company_id", $this->company->id)->where("name", $prediction->supplierName)->first();
|
||||
|
||||
|
@ -57,7 +57,6 @@ class ParseEDocument extends AbstractService
|
||||
try {
|
||||
return (new ZugferdEDocument($this->file, $this->company))->run();
|
||||
} catch (Exception $e) {
|
||||
nlog($this->file->get());
|
||||
nlog("Zugferd Exception: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user