Files
online.tbbank.gov.tm-larave…/app/Repos/Order/Card/CardOrderRepo.php
2024-05-06 17:13:38 +05:00

39 lines
819 B
PHP

<?php
namespace App\Repos\Order\Card;
use App\Models\Branch\Branch;
use App\Repos\Order\OrderRepo;
use Closure;
class CardOrderRepo
{
/**
* When model is being created
*/
public static function creating(): Closure
{
return function (mixed $model) {
$model->status = $model->status ?: OrderRepo::defaultStatus();
};
}
/**
* When model is created
*/
public static function created(): Closure
{
return function ($model) {
$model->update(['unique_id' => static::fillUniqueId($model)]);
};
}
/**
* Fill unique id
*/
public static function fillUniqueId(mixed $model): string
{
return sprintf('TB%s-%s', Branch::find($model->branch_id)->unique_code ?? uniqid(), $model->id);
}
}