ope_pass; } /** * passwordフィールドアクセサー(読み取り用) * Laravel 12対応:Laravel認証システムがpasswordフィールドを読み取る際にope_passの値を返す * Laravel 5.7との差異:旧システムでは不要だった仮想フィールド対応 * * @return string|null */ public function getPasswordAttribute() { // データベースのope_passフィールドの値を返す return $this->attributes['ope_pass'] ?? null; } /** * passwordフィールドミューテータ(書き込み用) * Laravel 12対応:Laravel認証システムがpasswordフィールドを更新する際にope_passフィールドに保存 * Laravel 5.7との差異:旧システムでは不要だった仮想フィールド対応 * * @param string $value パスワード値 * @return void */ public function setPasswordAttribute($value) { // passwordフィールドへの書き込みをope_passフィールドにリダイレクト $this->attributes['ope_pass'] = $value; } /** * 属性設定のオーバーライド * Remember Tokenの設定を無効化(旧システムでは使用していない) * * @param string $key * @param mixed $value */ public function setAttribute($key, $value) { $isRememberTokenAttribute = $key == $this->getRememberTokenName(); if (!$isRememberTokenAttribute) { parent::setAttribute($key, $value); } } /** * オペレータ検索機能 * Laravel 5.7から継承したメソッド(検索・ソート・ページネーション) * * @param array $inputs * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator|\Illuminate\Database\Eloquent\Collection */ public static function search($inputs) { $list = self::query(); // POST検索条件の処理 if ($inputs['isMethodPost']) { // 検索条件があればここに追加 } // ソート処理 if ($inputs['sort']) { $list->orderBy($inputs['sort'], $inputs['sort_type']); } // エクスポート用かページネーション用かの判定 if ($inputs['isExport']) { $list = $list->get(); } else { $list = $list->paginate(Utils::item_per_page); } return $list; } /** * プライマリキーでオペレータを取得 * * @param mixed $pk * @return \App\Models\Ope|null */ public static function getByPk($pk) { return self::find($pk); } /** * プライマリキーでオペレータを削除 * * @param array $arr * @return int */ public static function deleteByPk($arr) { return self::whereIn('ope_id', $arr)->delete(); } /** * オペレータのリストを取得(セレクトボックス用) * Laravel 5.7から継承したメソッド * * @return \Illuminate\Support\Collection */ public static function getList() { return self::pluck('ope_name', 'ope_id'); } }