85 lines
2.3 KiB
PHP
Raw Normal View History

2025-01-03 02:11:09 +03:00
<?php
namespace kernel\app_modules\card\models;
use Illuminate\Database\Eloquent\Model;
use kernel\modules\user\models\User;
// Добавить @property
/**
* @property int $id
* @property int $status
* @property int $balance
* @property int $user_id
* @property int $payment_type
* @property int $bank_id
* @property int $info
* @property int $program
* @property int $cvc
* @property int $pin
* @property int $card_template_id
* @property int $card_file_id
* @property string $username
*/
class Card extends Model
{
const DISABLE_STATUS = 0;
const ACTIVE_STATUS = 1;
protected $table = 'card';
protected $fillable = ['user_id', 'payment_type', 'balance', 'bank_id', 'info', 'program', 'cvc', 'pin', 'username', 'card_template_id', 'card_file_id', 'status'];
public static function labels(): array
{
// Заполнить массив
// Пример: [
// 'label' => 'Заголовок',
// 'entity' => 'Сущность',
// 'slug' => 'Slug',
// 'status' => 'Статус',
// ]
return [
'user_id' => 'ID пользователя',
'payment_type' => 'Платежная система',
'balance' => 'Баланс',
'bank_id' => 'ID банка',
'info' => 'Информация о банке',
'program' => 'Программа',
'cvc' => 'CVC',
'pin' => 'PIN',
'username' => 'Username',
'card_template_id' => 'Шаблон',
'card_file_id' => 'Карта',
'status' => 'Статус',
];
}
/**
* @return string[]
*/
public static function getStatus(): array
{
return [
self::DISABLE_STATUS => "Не активный",
self::ACTIVE_STATUS => "Активный",
];
}
public function cardTemplate(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(CardTemplate::class);
}
public function cardFile(): \Illuminate\Database\Eloquent\Relations\BelongsTo
{
return $this->belongsTo(CardFile::class);
}
// public function user(): \Illuminate\Database\Eloquent\Relations\BelongsTo
// {
// return $this->belongsTo(User::class);
// }
}