Removing project selection at Job Creation.

This commit is contained in:
Kartik Sharma 2025-11-17 15:21:31 +05:30
parent 4f7ad519cf
commit 679ae95b8c

View File

@ -20,8 +20,11 @@ import {
AppFormProvider, AppFormProvider,
useAppForm, useAppForm,
} from "../../hooks/appHooks/useAppForm"; } from "../../hooks/appHooks/useAppForm";
import { useParams } from "react-router-dom";
const ManageJob = ({ Job }) => { const ManageJob = ({ Job }) => {
const { projectId } = useParams();
const methods = useAppForm({ const methods = useAppForm({
resolver: zodResolver(jobSchema), resolver: zodResolver(jobSchema),
defaultValues: defaultJobValue, defaultValues: defaultJobValue,
@ -54,7 +57,6 @@ const ManageJob = ({ Job }) => {
isError: isJobError, isError: isJobError,
error: jobError, error: jobError,
} = useServiceProjectJobDetails(Job); } = useServiceProjectJobDetails(Job);
// const {} = useSer
const { mutate: CreateJob, isPending } = useCreateServiceProjectJob(() => { const { mutate: CreateJob, isPending } = useCreateServiceProjectJob(() => {
reset(); reset();
@ -68,22 +70,33 @@ const ManageJob = ({ Job }) => {
formData.startDate = localToUtc(formData.startDate); formData.startDate = localToUtc(formData.startDate);
formData.dueDate = localToUtc(formData.dueDate); formData.dueDate = localToUtc(formData.dueDate);
formData.projectId = projectId;
CreateJob(formData); CreateJob(formData);
}; };
useEffect(() => { useEffect(() => {
if (!JobData && !Job) {
reset({
...defaultJobValue,
projectId: projectId,
});
return;
}
if (!JobData || !Job) return; if (!JobData || !Job) return;
const assignedEmployees = (JobData.assignees || []).map((e) => e.id); const assignedEmployees = (JobData.assignees || []).map((e) => e.id);
reset({ reset({
title: JobData.title ?? "", title: JobData.title ?? "",
description: JobData.description ?? "", description: JobData.description ?? "",
projectId: JobData.project.id ?? "", projectId: JobData.project?.id ?? projectId,
assignees: assignedEmployees, assignees: assignedEmployees,
startDate: JobData.startDate ?? null, startDate: JobData.startDate ?? null,
dueDate: JobData.dueDate ?? null, dueDate: JobData.dueDate ?? null,
tags: JobData.tags ?? [], tags: JobData.tags ?? [],
}); });
}, [JobData]); }, [JobData, Job, projectId]);
return ( return (
<div className="container"> <div className="container">
@ -97,25 +110,7 @@ const ManageJob = ({ Job }) => {
className="form-control form-control" className="form-control form-control"
/> />
</div> </div>
<div className="col-12 col-md-6 mb-2">
<AppFormController
name="projectId"
control={control}
render={({ field }) => (
<SelectField
label="Status"
options={data?.data}
placeholder="Choose a Status"
required
labelKeyKey="name"
valueKeyKey="id"
value={field.value}
onChange={field.onChange}
isLoading={isProjectLoading}
/>
)}
/>
</div>
<div className="col-12 col-md-6 mb-2 mb-md-4"> <div className="col-12 col-md-6 mb-2 mb-md-4">
<Label required>Start Date</Label> <Label required>Start Date</Label>
<DatePicker <DatePicker
@ -133,7 +128,7 @@ const ManageJob = ({ Job }) => {
minDate={watch("startDate")} minDate={watch("startDate")}
name="dueDate" name="dueDate"
className="w-full" className="w-full"
size="md" size="md"
/> />
</div> </div>
<div className="col-12 col-md-6 mb-2 mb-md-4"> <div className="col-12 col-md-6 mb-2 mb-md-4">