conditional rendering for building/floor/work area dropdowns

This commit is contained in:
Pramod Mahajan 2025-05-04 22:57:27 +05:30
parent 9ef09f9536
commit 498665c811

View File

@ -104,7 +104,8 @@ const TaskModel = ({
}));
};
const onSubmitForm = async (data) => {
const onSubmitForm = async ( data ) =>
{
setIsSubmitting(true);
await onSubmit(data);
setValue("plannedWork", 0);
@ -114,9 +115,9 @@ const TaskModel = ({
const resetForm = () => {
setFormData(defaultModel);
setSelectedBuilding("0");
setSelectedFloor("0");
setSelectedWorkArea("0");
setSelectedBuilding(null); // not "0"
setSelectedFloor(null);
setSelectedWorkArea(null);
setSelectedActivity(null);
reset(defaultModel);
};
@ -255,25 +256,28 @@ const TaskModel = ({
onChange={handleActivityChange}
>
<option value="0">Select Activity</option>
{activityData && activityData.length > 0 ? (
{activityData && activityData.length > 0 && (
activityData
?.slice()
?.sort((a, b) => {
?.sort( ( a, b ) =>
{
const nameA = a?.activityName || "";
const nameB = b?.activityName || "";
return nameA.localeCompare(nameB);
})
?.map((activity) => (
return nameA.localeCompare( nameB );
} )
?.map( ( activity ) => (
<option key={activity.id} value={activity.id}>
{
activity.activityName ||
`Unnamed (id: ${activity.id})`}
`Unnamed (id: ${ activity.id })`}
</option>
))
) : (
) )
) }
{(!loading && activities.length === 0 )&& (
<option disabled>No activities available</option>
)}
{loading && ( <option disabled>Loading...</option>)}
</select>
{errors.activityID && (
@ -337,8 +341,6 @@ const TaskModel = ({
<button type="submit" className="btn btn-sm btn-primary me-3">
{isSubmitting
? "Please Wait.."
: formData.id !== "0" && formData.id !== ""
? "Edit Task"
: "Add Task"}
</button>
<button