feat: add task_category field to tasks with validation and update related forms

This commit is contained in:
2025-10-07 22:22:10 +02:00
parent 952caf10d1
commit a6ef325813
6 changed files with 72 additions and 13 deletions

View File

@@ -14,6 +14,7 @@ export default function TaskTemplateForm({
const [name, setName] = useState("");
const [max_wait_days, setRequiredWaitDays] = useState("");
const [description, setDescription] = useState("");
const [task_category, setTaskCategory] = useState("design");
const [loading, setLoading] = useState(false);
const [isEditing, setIsEditing] = useState(false);
const router = useRouter();
@@ -26,6 +27,7 @@ export default function TaskTemplateForm({
setName(initialData.name || "");
setRequiredWaitDays(initialData.max_wait_days?.toString() || "");
setDescription(initialData.description || "");
setTaskCategory(initialData.task_category || "design");
}
}
}, [templateId, initialData]);
@@ -45,6 +47,7 @@ export default function TaskTemplateForm({
name,
max_wait_days: parseInt(max_wait_days, 10) || 0,
description: description || null,
task_category,
}),
});
@@ -78,6 +81,21 @@ export default function TaskTemplateForm({
/>
</div>
<div>
<label className="block text-sm font-medium text-gray-700 mb-2">
Kategoria zadania *
</label>
<select
value={task_category}
onChange={(e) => setTaskCategory(e.target.value)}
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
required
>
<option value="design">Zadania projektowe</option>
<option value="construction">Zadania budowlane</option>
</select>
</div>
<div>
<label className="block text-sm font-medium text-gray-700 mb-2">
{t('taskTemplates.estimatedDuration')}