added source feature
This commit is contained in:
@ -18,6 +18,8 @@ trait Recurring
|
||||
$frequency = ($request['recurring_frequency'] != 'custom') ? $request['recurring_frequency'] : $request['recurring_custom_frequency'];
|
||||
$interval = (($request['recurring_frequency'] != 'custom') || ($request['recurring_interval'] < 1)) ? 1 : (int) $request['recurring_interval'];
|
||||
$started_at = !empty($request['paid_at']) ? $request['paid_at'] : $request['issued_at'];
|
||||
$source = !empty($request['created_from']) ? $request['created_from'] : source_name();
|
||||
$owner = !empty($request['created_by']) ? $request['created_by'] : user_id();
|
||||
|
||||
$this->recurring()->create([
|
||||
'company_id' => $this->company_id,
|
||||
@ -25,6 +27,8 @@ trait Recurring
|
||||
'interval' => $interval,
|
||||
'started_at' => $started_at,
|
||||
'count' => (int) $request['recurring_count'],
|
||||
'created_from' => $source,
|
||||
'created_by' => $owner,
|
||||
]);
|
||||
}
|
||||
|
||||
@ -40,16 +44,27 @@ trait Recurring
|
||||
$started_at = !empty($request['paid_at']) ? $request['paid_at'] : $request['issued_at'];
|
||||
|
||||
$recurring = $this->recurring();
|
||||
$model_exists = $recurring->count();
|
||||
|
||||
$function = $recurring->count() ? 'update' : 'create';
|
||||
|
||||
$recurring->$function([
|
||||
$data = [
|
||||
'company_id' => $this->company_id,
|
||||
'frequency' => $frequency,
|
||||
'interval' => $interval,
|
||||
'started_at' => $started_at,
|
||||
'count' => (int) $request['recurring_count'],
|
||||
]);
|
||||
];
|
||||
|
||||
if ($model_exists) {
|
||||
$recurring->update($data);
|
||||
} else {
|
||||
$source = !empty($request['created_from']) ? $request['created_from'] : source_name();
|
||||
$owner = !empty($request['created_by']) ? $request['created_by'] : user_id();
|
||||
|
||||
$recurring->create(array_merge($data, [
|
||||
'created_from' => $source,
|
||||
'created_by' => $owner,
|
||||
]));
|
||||
}
|
||||
}
|
||||
|
||||
public function getRecurringSchedule($set_until_date = true)
|
||||
|
Reference in New Issue
Block a user