<?php

namespace App\Models\Member;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;


class MemAuth extends Model
{
    protected $table = 'mem_auth';

    // 복합키라 Eloquent 기본 save/update 패턴이 불편함
    // 조회는 모델로 하고, 쓰기(업서트)는 Repository로 통일 권장
    protected $primaryKey = null;
    public $incrementing = false;
    protected $keyType = 'string';
    public $timestamps = false;

    protected $guarded = [];

    public const TYPE_EMAIL = 'email';
    public const TYPE_CELL  = 'cell';
    public const TYPE_ACCOUNT = 'account';
    public const TYPE_OTP   = 'otp';
    public const TYPE_VOW   = 'vow';

    public const STATE_Y = 'Y'; // 완료
    public const STATE_N = 'N'; // 미인증
    public const STATE_P = 'P'; // 처리중
    public const STATE_R = 'R'; // 요청

    public function member(): BelongsTo
    {
        return $this->belongsTo(MemInfo::class, 'mem_no', 'mem_no');
    }
}
