['sometimes', 'required', 'string', 'max:100'], 'description' => ['nullable', 'string'], 'process_type' => ['sometimes', 'required', 'string', 'in:생산,검사,포장,조립'], 'department' => ['nullable', 'string', 'max:100'], 'work_log_template' => ['nullable', 'string', 'max:100'], 'required_workers' => ['nullable', 'integer', 'min:1'], 'equipment_info' => ['nullable', 'string', 'max:255'], 'work_steps' => ['nullable'], 'note' => ['nullable', 'string'], 'is_active' => ['nullable', 'boolean'], // 분류 규칙 'classification_rules' => ['nullable', 'array'], 'classification_rules.*.registration_type' => ['nullable', 'string', 'in:pattern,individual'], 'classification_rules.*.rule_type' => ['required_with:classification_rules.*', 'string', 'in:품목코드,품목명,품목구분'], 'classification_rules.*.matching_type' => ['required_with:classification_rules.*', 'string', 'in:startsWith,endsWith,contains,equals'], 'classification_rules.*.condition_value' => ['required_with:classification_rules.*', 'string', 'max:255'], 'classification_rules.*.priority' => ['nullable', 'integer', 'min:0'], 'classification_rules.*.description' => ['nullable', 'string', 'max:255'], 'classification_rules.*.is_active' => ['nullable', 'boolean'], ]; } public function attributes(): array { return [ 'process_name' => '공정명', 'description' => '공정 설명', 'process_type' => '공정구분', 'department' => '담당부서', 'work_log_template' => '작업일지 양식', 'required_workers' => '필요인원', 'equipment_info' => '설비정보', 'work_steps' => '작업단계', 'note' => '비고', ]; } }