Compare commits

...

3 Commits

Author SHA1 Message Date
Pramod Mahajan
f84d04efd5 hide unusefull header for masters 2025-06-20 12:45:10 +05:30
Pramod Mahajan
0dc79f8dfa added loading behaviour for submitting form 2025-06-20 12:37:21 +05:30
Pramod Mahajan
0fad5a0276 missing assign task api integration during updation, It Added. 2025-06-20 12:36:49 +05:30
9 changed files with 377 additions and 382 deletions

View File

@ -168,7 +168,7 @@ const SubTask = ({ activity, onClose }) => {
<input
type="number"
className="form-control form-control-sm"
{...register("plannedWork")}
{...register("plannedWork", { valueAsNumber: true })}
/>
{errors.plannedWork && (
<div className="danger-text">{errors.plannedWork.message}</div>

View File

@ -33,7 +33,6 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
.int()
.positive({ message: "Planned task must be a positive number" })
.max(maxPlanned, {
message: `Planned task cannot exceed ${maxPlanned}`,
})
),
@ -42,6 +41,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
const [isHelpVisibleTarget, setIsHelpVisibleTarget] = useState(false);
const helpPopupRefTarget = useRef(null);
const [isHelpVisible, setIsHelpVisible] = useState(false);
const [isSubmitting, setIsSubmitting] = useState(false);
// Refs for Bootstrap Popovers
const infoRef = useRef(null);
@ -151,7 +151,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
// Form submission handler
const onSubmit = async (data) => {
const selectedEmployeeIds = data.selectedEmployees;
setIsSubmitting(true);
// Prepare taskTeam data (only IDs are needed for the backend based on previous context)
const taskTeamWithDetails = selectedEmployeeIds
.map((empId) => {
@ -169,10 +169,11 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
};
try {
// Call API to assign task
// Close the modal
await TasksRepository.assignTask(formattedData);
setIsSubmitting(false);
closedModel();
} catch (error) {
console.error("Error assigning task:", error);
setIsSubmitting(false);
showToast("Something went wrong. Please try again.", "error");
}
};
@ -183,7 +184,6 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
onClose();
};
return (
<div className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">
<p className="align-items-center flex-wrap m-0 ">Assign Task</p>
<div className="container my-3">
@ -195,8 +195,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
assignData?.building?.name,
assignData?.floor?.floorName,
assignData?.workArea?.areaName,
assignData?.workItem?.workItem?.activityMaster
?.activityName,
assignData?.workItem?.workItem?.activityMaster?.activityName,
]
.filter(Boolean) // Filter out any undefined/null values
.map((item, index, array) => (
@ -288,9 +287,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
type="checkbox"
id={`employee-${emp?.id}`}
value={emp.id}
checked={field.value?.includes(
emp.id
)}
checked={field.value?.includes(emp.id)}
onChange={(e) => {
handleCheckboxChange(e, emp);
}}
@ -341,9 +338,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
<div className="mt-1">
<div className="text-start px-2">
{watch("selectedEmployees")?.map((empId) => {
const emp = employees.find(
(emp) => emp.id === empId
);
const emp = employees.find((emp) => emp.id === empId);
return (
emp && (
<span
@ -407,9 +402,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
}
</u>
</label>
<div
style={{ display: "flex", alignItems: "center" }}
>
<div style={{ display: "flex", alignItems: "center" }}>
<div
ref={infoRef}
tabIndex="0"
@ -544,16 +537,18 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
)}
/>
{errors.description && (
<div className="danger-text">
{errors.description.message}
</div>
<div className="danger-text">{errors.description.message}</div>
)}
</div>
{/* Submit and Cancel buttons */}
<div className="col-12 d-flex justify-content-center align-items-center gap-sm-6 gap-8 text-center mt-1">
<button type="submit" className="btn btn-sm btn-primary ">
Submit
<button
type="submit"
className="btn btn-sm btn-primary "
disabled={(isSubmitting, loading)}
>
{isSubmitting ? "Please Wait" : "Submit"}
</button>
<button
type="reset"
@ -561,6 +556,7 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
data-bs-dismiss="modal"
aria-label="Close"
onClick={closedModel}
disabled={isSubmitting || loading}
>
Cancel
</button>
@ -569,7 +565,6 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
</div>
</div>
</div>
);
};

View File

@ -120,7 +120,7 @@ const CreateActivity = ({ onClose }) => {
}, []);
return (
<form onSubmit={handleSubmit(onSubmit)}>
<h6>Create Activity</h6>
{/* <h6>Create Activity</h6> */}
<div className="row">
<div className="col-6">
<label className="form-label">Activity</label>

View File

@ -70,9 +70,9 @@ const CreateJobRole = ({onClose}) => {
const maxDescriptionLength = 255;
return (<>
<form className="row g-2" onSubmit={handleSubmit(onSubmit)}>
<div className="col-12 col-md-12">
{/* <div className="col-12 col-md-12">
<label className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">Create Job Role</label>
</div>
</div> */}
<div className="col-12 col-md-12">
<label className="form-label">Role</label>
<input type="text"

View File

@ -96,10 +96,10 @@ const CreateRole = ({ modalType, onClose }) => {
return (
<form className="row g-2" onSubmit={handleSubmit(onSubmit)}>
<div className="col-12 col-md-12">
{/* <div className="col-12 col-md-12">
<label className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">Create Application Role</label>
</div>
</div> */}
<div className="col-12 col-md-12">
<label className="form-label">Role</label>
<input type="text"

View File

@ -131,7 +131,7 @@ const UpdateActivity = ({ activityData, onClose }) => {
return (
<form onSubmit={handleSubmit(onSubmit)}>
<h6>Update Activity</h6>
{/* <h6>Update Activity</h6> */}
<div className="row">
{/* Activity Name */}
<div className="col-md-6">

View File

@ -77,9 +77,9 @@ const EditJobRole = ({data,onClose}) => {
return (<>
<form className="row g-2" onSubmit={handleSubmit(onSubmit)}>
<div className="col-12 col-md-12">
{/* <div className="col-12 col-md-12">
<label className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">Edit Job Role</label>
</div>
</div> */}
<div className="col-12 col-md-12">
<label className="form-label">Role</label>
<input type="text"

View File

@ -146,9 +146,9 @@ const EditMaster = ({ master, onClose }) => {
return (
<form className="row g-2 " onSubmit={handleSubmit(onSubmit)}>
<div className="col-12 col-md-12">
{/* <div className="col-12 col-md-12">
<label className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">Edit Application Role</label>
</div>
</div> */}
<div className="col-12 col-md-12">
<label className="form-label">Role</label>
<input type="text"

View File

@ -77,10 +77,10 @@ const EditWorkCategory = ({data,onClose}) => {
return (<>
<form className="row g-2" onSubmit={handleSubmit(onSubmit)}>
<div className="col-12 col-md-12">
{/* <div className="col-12 col-md-12">
<label className="fs-5 text-dark text-center d-flex align-items-center justify-content-center flex-wrap">Edit Work Category</label>
</div>
*/}
<div className="col-12 col-md-12">
<label className="form-label">Category Name</label>
<input type="text"