form stuff done

This commit is contained in:
denisdulici
2018-04-26 18:40:04 +03:00
parent 1e4d4cf581
commit b5e937b58d
23 changed files with 347 additions and 58 deletions

View File

@ -242,6 +242,20 @@ class Bills extends Controller
'description' => trans('messages.success.added', ['type' => $bill->bill_number]),
]);
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
$bill->recurring()->create([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['billed_at'],
'count' => (int) $request['recurring_count'],
]);
}
// Fire the event to make it extendible
event(new BillCreated($bill));
@ -444,6 +458,28 @@ class Bills extends Controller
$bill->totals()->delete();
$this->addTotals($bill, $request, $taxes, $sub_total, $discount_total, $tax_total);
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
if ($bill->has('recurring')->count()) {
$function = 'update';
} else {
$function = 'create';
}
$bill->recurring()->$function([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['billed_at'],
'count' => (int) $request['recurring_count'],
]);
} else {
$bill->recurring()->delete();
}
// Fire the event to make it extendible
event(new BillUpdated($bill));

View File

@ -96,6 +96,20 @@ class Payments extends Controller
$payment->attachMedia($media, 'attachment');
}
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
$payment->recurring()->create([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['paid_at'],
'count' => (int) $request['recurring_count'],
]);
}
$message = trans('messages.success.added', ['type' => trans_choice('general.payments', 1)]);
flash($message)->success();
@ -195,6 +209,28 @@ class Payments extends Controller
$payment->attachMedia($media, 'attachment');
}
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
if ($payment->has('recurring')->count()) {
$function = 'update';
} else {
$function = 'create';
}
$payment->recurring()->$function([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['paid_at'],
'count' => (int) $request['recurring_count'],
]);
} else {
$payment->recurring()->delete();
}
$message = trans('messages.success.updated', ['type' => trans_choice('general.payments', 1)]);
flash($message)->success();

View File

@ -260,6 +260,20 @@ class Invoices extends Controller
// Update next invoice number
$this->increaseNextInvoiceNumber();
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
$invoice->recurring()->create([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['invoiced_at'],
'count' => (int) $request['recurring_count'],
]);
}
// Fire the event to make it extendible
event(new InvoiceCreated($invoice));
@ -465,6 +479,28 @@ class Invoices extends Controller
$invoice->totals()->delete();
$this->addTotals($invoice, $request, $taxes, $sub_total, $discount_total, $tax_total);
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
if ($invoice->has('recurring')->count()) {
$function = 'update';
} else {
$function = 'create';
}
$invoice->recurring()->$function([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['invoiced_at'],
'count' => (int) $request['recurring_count'],
]);
} else {
$invoice->recurring()->delete();
}
// Fire the event to make it extendible
event(new InvoiceUpdated($invoice));

View File

@ -98,6 +98,20 @@ class Revenues extends Controller
$revenue->attachMedia($media, 'attachment');
}
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
$revenue->recurring()->create([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['paid_at'],
'count' => (int) $request['recurring_count'],
]);
}
$message = trans('messages.success.added', ['type' => trans_choice('general.revenues', 1)]);
flash($message)->success();
@ -197,6 +211,28 @@ class Revenues extends Controller
$revenue->attachMedia($media, 'attachment');
}
// Recurring
if ($request->get('recurring_frequency') != 'no') {
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
$interval = ($request['recurring_frequency'] != 'custom') ? 1 : (int) $request['recurring_interval'];
if ($revenue->has('recurring')->count()) {
$function = 'update';
} else {
$function = 'create';
}
$revenue->recurring()->$function([
'company_id' => session('company_id'),
'frequency' => $frequency,
'interval' => $interval,
'started_at' => $request['paid_at'],
'count' => (int) $request['recurring_count'],
]);
} else {
$revenue->recurring()->delete();
}
$message = trans('messages.success.updated', ['type' => trans_choice('general.revenues', 1)]);
flash($message)->success();