modified request for manage role.

This commit is contained in:
Pramod Mahajan 2025-04-28 11:36:34 +05:30
parent a84cb355c8
commit d88fd3180f

View File

@ -70,39 +70,55 @@ const ManageRole = ( {employeeId, onClosed} ) =>
}
}, [initialRoles, reset]);
const onSubmit = ( formdata ) =>
{
const onSubmit = (formdata) => {
setIsLoading(true);
const result = [];
for ( const [ roleId, isEnabled ] of Object.entries( formdata.selectedRole ) )
{
if ( isEnabled )
{
const selectedRoles = formdata.selectedRole;
for (const [roleId, isChecked] of Object.entries(selectedRoles)) {
const existingRole = employeeRoles?.find((role) => role.roleId === roleId);
const wasChecked = !!existingRole?.isEnabled;
if (isChecked) {
result.push({
id: existingRole?.id || null,
employeeId: employeeId,
id: existingRole?.id || "00000000-0000-0000-0000-000000000000",
employeeId,
roleId,
isEnabled: true,
roleId: roleId,
});
} else if (wasChecked && !isChecked) {
result.push({
id: existingRole?.id,
employeeId,
roleId,
isEnabled: false,
});
}
}
RolesRepository.createEmployeeRoles(result)
.then((resp) => {
showToast("Role assigned successfully", "success");
if (result.length === 0) {
showToast("No changes made", "info");
setIsLoading(false);
reset()
return;
}
console.log(result)
RolesRepository.createEmployeeRoles(result)
.then(() => {
showToast("Roles updated successfully", "success");
setIsLoading(false);
reset();
onClosed();
})
.catch((err) => {
console.log(err);
setIsLoading(false);
console.error(err);
showToast(err.message, "error");
});
setIsLoading(false);
});
};
return (
<div
className={`modal fade `}
@ -128,7 +144,8 @@ const ManageRole = ( {employeeId, onClosed} ) =>
className="d-flex flex-wrap justify-content-between align-items-center pb-5 "
style={{ maxHeight: "70vh", overflowY: "scroll" }}
>
{(loading || roleLoading) && <p>Loading...</p>}
{roleLoading && <p>Loading...</p>}
{loading && <p>Loading...</p>}
{data &&
data.map((item) => (
<div className="col-md-6 col-lg-4 mb-4" key={item.id}>