close #252 Fixed: Invoice partial payments are unpredictable

This commit is contained in:
cuneytsenturk
2018-03-13 15:06:28 +03:00
parent 8573232586
commit 83ad45cdfa
11 changed files with 152 additions and 14 deletions

View File

@ -594,13 +594,22 @@ class Bills extends Controller
} elseif ($bill->payments()->count() > 1) {
$bill->bill_status_code = 'partial';
} else {
$bill->bill_status_code = 'draft';
$bill->bill_status_code = 'received';
}
$bill->save();
$payment->delete();
// Add invoice history
BillHistory::create([
'company_id' => $bill->company_id,
'invoice_id' => $bill->id,
'status_code' => 'delete',
'notify' => 0,
'description' => trans('general.delete') . ' ' . $payment->description,
]);
$message = trans('messages.success.deleted', ['type' => trans_choice('general.bills', 1)]);
flash($message)->success();

View File

@ -474,8 +474,20 @@ class Invoices extends Controller
*/
public function markSent(Invoice $invoice)
{
$invoice->invoice_status_code = 'sent';
$invoice->save();
if ($invoice->invoice_status_code != 'partial') {
$invoice->invoice_status_code = 'sent';
$invoice->save();
}
// Add invoice history
InvoiceHistory::create([
'company_id' => $invoice->company_id,
'invoice_id' => $invoice->id,
'status_code' => 'sent',
'notify' => 0,
'description' => trans('invoices.mark_sent'),
]);
flash(trans('invoices.messages.marked_sent'))->success();
@ -522,8 +534,20 @@ class Invoices extends Controller
unset($invoice->pdf_path);
// Mark invoice as sent
$invoice->invoice_status_code = 'sent';
$invoice->save();
if ($invoice->invoice_status_code != 'partial') {
$invoice->invoice_status_code = 'sent';
$invoice->save();
}
// Add invoice history
InvoiceHistory::create([
'company_id' => $invoice->company_id,
'invoice_id' => $invoice->id,
'status_code' => 'sent',
'notify' => 1,
'description' => trans('invoices.send_mail'),
]);
flash(trans('invoices.messages.email_sent'))->success();
@ -705,13 +729,22 @@ class Invoices extends Controller
} elseif ($invoice->payments()->count() > 1) {
$invoice->invoice_status_code = 'partial';
} else {
$invoice->invoice_status_code = 'draft';
$invoice->invoice_status_code = 'sent';
}
$invoice->save();
$payment->delete();
// Add invoice history
InvoiceHistory::create([
'company_id' => $invoice->company_id,
'invoice_id' => $invoice->id,
'status_code' => 'delete',
'notify' => 0,
'description' => trans('general.delete') . ' ' . $payment->description,
]);
$message = trans('messages.success.deleted', ['type' => trans_choice('general.invoices', 1)]);
flash($message)->success();