Add Income/Expense type for document transactions

This commit is contained in:
Burak Çakırel
2020-12-25 18:19:16 +03:00
parent 3d1522f545
commit e27ccfa46c
11 changed files with 20 additions and 7 deletions

View File

@ -164,6 +164,7 @@ abstract class PaymentController extends BaseController
$request['amount'] = $invoice->amount;
$request['payment_method'] = $this->alias;
$request['reference'] = $this->getReference($invoice);
$request['type'] = 'income';
event(new PaymentReceived($invoice, $request));
}

View File

@ -48,7 +48,7 @@ class Bills extends BulkAction
$bills = $this->getSelectedRecords($request);
foreach ($bills as $bill) {
$this->dispatch(new CreateBankingDocumentTransaction($bill, []));
$this->dispatch(new CreateBankingDocumentTransaction($bill, ['type' => 'expense']));
}
}

View File

@ -48,7 +48,7 @@ class Invoices extends BulkAction
$invoices = $this->getSelectedRecords($request);
foreach ($invoices as $invoice) {
event(new PaymentReceived($invoice));
event(new PaymentReceived($invoice, ['type' => 'income']));
}
}

View File

@ -308,7 +308,7 @@ class Bills extends Controller
public function markPaid(Document $bill)
{
try {
$this->dispatch(new CreateBankingDocumentTransaction($bill, []));
$this->dispatch(new CreateBankingDocumentTransaction($bill, ['type' => 'expense']));
$message = trans('bills.messages.marked_paid');

View File

@ -358,7 +358,7 @@ class Invoices extends Controller
public function markPaid(Document $invoice)
{
try {
event(new \App\Events\Document\PaymentReceived($invoice));
event(new \App\Events\Document\PaymentReceived($invoice, ['type' => 'income']));
$message = trans('invoices.messages.marked_paid');

View File

@ -73,7 +73,6 @@ class CreateBankingDocumentTransaction extends Job
$this->request['company_id'] = $this->model->company_id;
$this->request['currency_code'] = isset($this->request['currency_code']) ? $this->request['currency_code'] : $this->model->currency_code;
$this->request['type'] = ($this->model->type === Document::INVOICE_TYPE) ? 'income' : 'expense';
$this->request['paid_at'] = isset($this->request['paid_at']) ? $this->request['paid_at'] : Date::now()->format('Y-m-d');
$this->request['currency_rate'] = config('money.' . $this->request['currency_code'] . '.rate');
$this->request['account_id'] = isset($this->request['account_id']) ? $this->request['account_id'] : setting('default.account');

View File

@ -23,7 +23,7 @@ class Document implements Scope
return;
}
$type = request()->get('type') ?: Str::singular(request()->segment(2, ''));
$type = Str::singular(request()->segment(2, ''));
// Apply document scope
$builder->where($model->getTable() . '.type', '=', $type);