['required', 'string', 'max:10'], 'bank_name' => ['required', 'string', 'max:50'], 'account_number' => ['required', 'string', 'max:30', 'regex:/^[\d-]+$/'], 'account_holder' => ['required', 'string', 'max:50'], 'account_name' => ['required', 'string', 'max:100'], 'status' => ['nullable', 'string', 'in:active,inactive'], 'assigned_user_id' => ['nullable', 'integer', 'exists:users,id'], 'is_primary' => ['nullable', 'boolean'], ]; } public function messages(): array { return [ 'bank_code.required' => __('validation.required', ['attribute' => __('validation.attributes.bank_code')]), 'bank_name.required' => __('validation.required', ['attribute' => __('validation.attributes.bank_name')]), 'account_number.required' => __('validation.required', ['attribute' => __('validation.attributes.account_number')]), 'account_number.regex' => __('validation.account_number_format'), 'account_holder.required' => __('validation.required', ['attribute' => __('validation.attributes.account_holder')]), 'account_name.required' => __('validation.required', ['attribute' => __('validation.attributes.account_name')]), ]; } public function attributes(): array { return [ 'bank_code' => __('validation.attributes.bank_code'), 'bank_name' => __('validation.attributes.bank_name'), 'account_number' => __('validation.attributes.account_number'), 'account_holder' => __('validation.attributes.account_holder'), 'account_name' => __('validation.attributes.account_name'), 'status' => __('validation.attributes.status'), 'assigned_user_id' => __('validation.attributes.assigned_user_id'), 'is_primary' => __('validation.attributes.is_primary'), ]; } }