diff --git a/Modules/Expense/Entities/Expense.php b/Modules/Expense/Entities/Expense.php index 442b68b3..462b9888 100644 --- a/Modules/Expense/Entities/Expense.php +++ b/Modules/Expense/Entities/Expense.php @@ -27,4 +27,8 @@ class Expense extends Model public function getAmountAttribute($value) { return ($value / 100); } + + public function getReferenceAttribute($value) { + return strtoupper($value) . '_' . str_pad($this->attributes['id'], 6, '0', STR_PAD_LEFT ); + } } diff --git a/Modules/Expense/Http/Controllers/ExpenseController.php b/Modules/Expense/Http/Controllers/ExpenseController.php index 375ca35b..945cafb7 100644 --- a/Modules/Expense/Http/Controllers/ExpenseController.php +++ b/Modules/Expense/Http/Controllers/ExpenseController.php @@ -32,7 +32,7 @@ class ExpenseController extends Controller $request->validate([ 'date' => 'required|date', - 'reference' => 'required|string|max:255|unique:expenses,reference', + 'reference' => 'required|string|max:255', 'category_id' => 'required', 'amount' => 'required|numeric|max:2147483647', 'details' => 'nullable|string|max:1000' @@ -64,7 +64,7 @@ class ExpenseController extends Controller $request->validate([ 'date' => 'required|date', - 'reference' => 'required|string|max:255|unique:expenses,reference,' . $expense->id, + 'reference' => 'required|string|max:255', 'category_id' => 'required', 'amount' => 'required|numeric|max:2147483647', 'details' => 'nullable|string|max:1000' diff --git a/Modules/Expense/Resources/views/expenses/create.blade.php b/Modules/Expense/Resources/views/expenses/create.blade.php index ca5a3d96..f0166b1c 100644 --- a/Modules/Expense/Resources/views/expenses/create.blade.php +++ b/Modules/Expense/Resources/views/expenses/create.blade.php @@ -28,7 +28,7 @@