krgm.so-manager-dev.com/app/Models/OperatorQue.php
gitadmin 8c44c467d0
All checks were successful
Deploy main / deploy (push) Successful in 21s
更新 app/Models/OperatorQue.php
2025-08-22 23:59:23 +09:00

85 lines
2.0 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class OperatorQue extends Model
{
protected $table = 'operator_que';
protected $primaryKey = 'que_id';
public $timestamps = true;
protected $fillable = [
'que_class',
'user_id',
'contract_id',
'park_id',
'que_comment',
'que_status',
'que_status_comment',
'work_instructions',
'operator_id',
];
// 定数
/** キュー種別 */
public const QueClass = [
1 => '本人確認(社会人)',
2 => '本人確認(学生)',
3 => 'タグ発送',
4 => '予約告知電話',
5 => '定期更新電話',
6 => '返金',
7 => '再発行リミット超過',
8 => '支払い催促',
9 => 'シール発行催促',
10 => 'シール再発行許可',
101 => 'サーバーエラー',
102 => 'プリンタエラー',
103 => 'スキャナーエラー',
104 => 'プリンタ用紙残少警告',
];
/** キューステータス */
public const QueStatus = [
1 => 'キュー発生',
2 => 'キュー作業中',
3 => 'キュー作業済',
4 => '返金済',
];
public function getQueClassLabel(): string
{
return self::QueClass[$this->que_class] ?? (string)$this->que_class;
}
public function getQueStatusLabel(): string
{
return self::QueStatus[$this->que_status] ?? (string)$this->que_status;
}
public function user()
{
return $this->belongsTo(User::class, 'user_id');
}
public function park()
{
return $this->belongsTo(Park::class, 'park_id');
}
public function contract()
{
return $this->belongsTo(Contract::class, 'contract_id');
}
public function operator()
{
return $this->belongsTo(User::class, 'operator_id');
}
public function getUser() { return $this->user; }
public function getPark() { return $this->park; }
}