*/ use HasFactory, SoftDeletes; protected $guarded = []; protected function casts(): array { return [ 'approved_at' => 'datetime', 'rejected_at' => 'datetime', ]; } public function election(): BelongsTo { return $this->belongsTo(Election::class); } public function pusatMengundi(): BelongsTo { return $this->belongsTo(PusatMengundi::class); } public function selectedKtmAssignment(): BelongsTo { return $this->belongsTo(StaffAssignment::class, 'selected_ktm_assignment_id'); } public function user(): BelongsTo { return $this->belongsTo(User::class); } public function requestedPosition(): BelongsTo { return $this->belongsTo(Position::class, 'requested_position_id'); } public function approvedPosition(): BelongsTo { return $this->belongsTo(Position::class, 'approved_position_id'); } public function documents(): HasMany { return $this->hasMany(ApplicationDocument::class); } public function statusHistories(): HasMany { return $this->hasMany(ApplicationStatusHistory::class); } public function staffAssignments(): HasMany { return $this->hasMany(StaffAssignment::class); } public function bankVerification(): HasOne { return $this->hasOne(BankVerification::class); } }