<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

/**
 * バッチジョブログモデル - bat_job_logテーブル
 *
 * SHJ-8で使用する旧バッチログテーブル
 * 各バッチ処理の実行ログを記録する
 */
class BatJobLog extends Model
{
    /**
     * テーブル名
     *
     * @var string
     */
    protected $table = 'bat_job_log';

    /**
     * プライマリキー
     *
     * @var string
     */
    protected $primaryKey = 'job_log_id';

    /**
     * 一括代入可能な属性
     *
     * @var array
     */
    protected $fillable = [
        'device_id',        // デバイスID
        'process_name',     // プロセス名
        'job_name',         // ジョブ名
        'status',           // ステータス
        'status_comment',   // ステータスコメント
        'created_at',       // 登録日時
        'updated_at'        // 更新日時
    ];

    /**
     * キャストする属性
     *
     * @var array
     */
    protected $casts = [
        'job_log_id' => 'integer',
        'device_id' => 'integer',
        'created_at' => 'datetime',
        'updated_at' => 'datetime'
    ];

    /**
     * タイムスタンプを使用
     *
     * @var bool
     */
    public $timestamps = true;

    /**
     * deviceとのリレーション
     */
    public function device()
    {
        return $this->belongsTo(Device::class, 'device_id', 'device_id');
    }
}
