mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/exchange-2.0.git
synced 2026-08-25 23:43:58 +00:00
fix bug in function import invoices
This commit is contained in:
@@ -137,16 +137,10 @@ class ImportStatementInvoiceController
|
||||
|
||||
private function mappingExchange(Array $row) {
|
||||
$date = $row['date'];
|
||||
$transactions = Transaction::where('original_amount', $row['net_total'])->whereRaw("DATE(created_at) = '$date'")
|
||||
->whereHas('receiverCompany', function($q) use($row) {
|
||||
$q->where('debtor',$row['debtor_code']);
|
||||
})->get();
|
||||
$transactions = Transaction::getReceiverWithJoinStatementTransactionAndOwner($row)->select('transactions.*')->where('statement_transactions.amount', $row['net_total'])->whereRaw("DATE(posting_date) = '$date'")->get();
|
||||
|
||||
if ($transactions && $transactions->count() == 0) {
|
||||
$transactions = Transaction::where(DB::raw('FLOOR(original_amount)'), floor($row['net_total']))->whereRaw("DATE(created_at) = '$date'")
|
||||
->whereHas('receiverCompany', function($q) use($row) {
|
||||
$q->where('debtor',$row['debtor_code']);
|
||||
})->get();
|
||||
$transactions = Transaction::getReceiverWithJoinStatementTransactionAndOwner($row)->select('transactions.*')->where(DB::raw('FLOOR(statement_transactions.amount)'), floor($row['net_total']))->whereRaw("DATE(posting_date) = '$date'")->get();
|
||||
}
|
||||
|
||||
if ($transactions && $transactions->count() == 1) {
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace App\Models;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\MorphTo;
|
||||
|
||||
class StatementTransactionOwner extends Model
|
||||
{
|
||||
|
||||
@@ -221,6 +221,22 @@ class Transaction extends AbstractModel implements Documentable, Transactionable
|
||||
return $query->whereIn('status', [ApprovalStatus::APPROVED]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Builder $query
|
||||
* @return Builder
|
||||
*/
|
||||
public function scopeGetReceiverWithJoinStatementTransactionAndOwner(Builder $query, Array $row) {
|
||||
$query->join('companies',function($q) use ($row) {
|
||||
$q->on('companies.id','=','transactions.receiver');
|
||||
$q->where('debtor',$row['debtor_code']);
|
||||
})
|
||||
->join('statement_transaction_owners', function ($q) {
|
||||
$q->on('statement_transaction_owners.owner_id','=','transactions.id');
|
||||
$q->where('statement_transaction_owners.owner_type','=',Transaction::class);
|
||||
})
|
||||
->join('statement_transactions','statement_transactions.id','=','statement_transaction_owners.statement_transaction_id');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return MorphMany
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user