diff --git a/src/Pages/Dashboard/Dashboard.tsx b/src/Pages/Dashboard/Dashboard.tsx
index 04bcc07..d6da646 100644
--- a/src/Pages/Dashboard/Dashboard.tsx
+++ b/src/Pages/Dashboard/Dashboard.tsx
@@ -168,7 +168,7 @@ const Dashboard = () => {
-
+
Faqs
diff --git a/src/Pages/ManageCMS/FAQ/FaqAddModel.tsx b/src/Pages/ManageCMS/FAQ/FaqAddModel.tsx
index 6da5bfe..1b82a8c 100644
--- a/src/Pages/ManageCMS/FAQ/FaqAddModel.tsx
+++ b/src/Pages/ManageCMS/FAQ/FaqAddModel.tsx
@@ -20,7 +20,7 @@ function FaqAddModel({ refetch }: { refetch: VoidFunction }) {
const [faqAnswer, setFaqAnswer] = useState('');
const [userType, setUserType] = useState("");
const [isOpen, setIsOpen] = useState(false);
- const [createFaqPost] = useCreateFaqPostMutation()
+ const [createFaqPost, { isLoading }] = useCreateFaqPostMutation()
const handleOpenModal = () => {
setIsOpen(true); // Open modal when clicking "Add"
@@ -159,7 +159,7 @@ function FaqAddModel({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/ManageCMS/PrivacyPolicy/PrivacyPolicyAddModel.tsx b/src/Pages/ManageCMS/PrivacyPolicy/PrivacyPolicyAddModel.tsx
index dd80e10..79ff6b7 100644
--- a/src/Pages/ManageCMS/PrivacyPolicy/PrivacyPolicyAddModel.tsx
+++ b/src/Pages/ManageCMS/PrivacyPolicy/PrivacyPolicyAddModel.tsx
@@ -16,7 +16,7 @@ import ReactQuill from "react-quill";
function PrivacyPolicyAddModel({ policyData, refetch }: { policyData: any, refetch: VoidFunction }) {
const [isOpen, setIsOpen] = useState(false);
- const [updatePrivacyPolicy] = useUpdatePrivacyPolicyMutation()
+ const [updatePrivacyPolicy, { isLoading }] = useUpdatePrivacyPolicyMutation()
const {
control,
handleSubmit,
@@ -139,7 +139,7 @@ function PrivacyPolicyAddModel({ policyData, refetch }: { policyData: any, refet
-
+
Save
diff --git a/src/Pages/ManageCMS/TermsAndConditions/TermsAndConditionsAddModel.tsx b/src/Pages/ManageCMS/TermsAndConditions/TermsAndConditionsAddModel.tsx
index f9a8cb4..3ebd129 100644
--- a/src/Pages/ManageCMS/TermsAndConditions/TermsAndConditionsAddModel.tsx
+++ b/src/Pages/ManageCMS/TermsAndConditions/TermsAndConditionsAddModel.tsx
@@ -18,7 +18,7 @@ import { useUpdateTermsMutation } from "../../../Redux/Service/terms.and.conditi
function TermsAndConditionsAddModel({ termsData, refetch }: { termsData: any, refetch: VoidFunction }) {
const [isOpen, setIsOpen] = useState(false);
- const [updateTerms] = useUpdateTermsMutation()
+ const [updateTerms, { isLoading }] = useUpdateTermsMutation()
const {
control,
handleSubmit,
@@ -136,7 +136,7 @@ function TermsAndConditionsAddModel({ termsData, refetch }: { termsData: any, re
-
+
Save
diff --git a/src/Pages/ManageContact/PendingRequests.tsx b/src/Pages/ManageContact/PendingRequests.tsx
index d65c055..4e2aec7 100644
--- a/src/Pages/ManageContact/PendingRequests.tsx
+++ b/src/Pages/ManageContact/PendingRequests.tsx
@@ -21,7 +21,7 @@ function PendingRequests({ data, refetch }: { data: any, refetch: VoidFunction }
message: data.message,
solution: '',
})
- const [pendingRequest] = usePendingRequestMutation()
+ const [pendingRequest, { isLoading }] = usePendingRequestMutation()
const handleOpenModal = () => {
setIsOpen(true);
@@ -56,10 +56,10 @@ function PendingRequests({ data, refetch }: { data: any, refetch: VoidFunction }
type: "error",
});
}
- } catch (error) {
+ } catch (error: any) {
toaster.create({
title: "Error",
- description: "Something went wrong",
+ description: error?.data?.message || "Something went wrong",
type: "error",
});
}
@@ -139,6 +139,7 @@ function PendingRequests({ data, refetch }: { data: any, refetch: VoidFunction }
border="1px solid #02A0A0"
size={"xs"}
onClick={() => handleSubmit('1')}
+ disabled={isLoading}
>
Unresolved
@@ -151,6 +152,7 @@ function PendingRequests({ data, refetch }: { data: any, refetch: VoidFunction }
// colorPalette="#007F33"
size={"xs"}
onClick={() => handleSubmit('0')}
+ disabled={isLoading}
>
Resolved
diff --git a/src/Pages/ManageJobs/ManageJobs.tsx b/src/Pages/ManageJobs/ManageJobs.tsx
index f1a7eb8..7790855 100644
--- a/src/Pages/ManageJobs/ManageJobs.tsx
+++ b/src/Pages/ManageJobs/ManageJobs.tsx
@@ -56,7 +56,7 @@ const ManageJobs = () => {
setLocalData((data as any)?.data?.data || []);
}
}, [data]);
- console.log(data?.data.data);
+ // console.log(data?.data.data);
const handleSearchChange = (value: string) => {
setSearchTerm(value);
diff --git a/src/Pages/ManageJobs/ManageJobsAdd.tsx b/src/Pages/ManageJobs/ManageJobsAdd.tsx
index e2099c6..d58be67 100644
--- a/src/Pages/ManageJobs/ManageJobsAdd.tsx
+++ b/src/Pages/ManageJobs/ManageJobsAdd.tsx
@@ -57,7 +57,7 @@ function ManageJobsAdd({ data, refetch }: { data: JobStatusData, refetch: () =>
const { data: departmentData } = useGetDepartmentQuery({});
const { data: countryData } = useGetCountryQuery({});
const { data: jobTypeData } = useGetManageJobTypeQuery({});
- const [updateJobs] = useUpdateJobsMutation();
+ const [updateJobs, { isLoading}] = useUpdateJobsMutation();
// console.log('Modes:', jobTypeData?.data.data);
const initialState = {
@@ -489,6 +489,7 @@ function ManageJobsAdd({ data, refetch }: { data: JobStatusData, refetch: () =>
fontSize="12px"
height="30px"
onClick={handleSubmit}
+ disabled={isLoading}
>
Save
diff --git a/src/Pages/ManagePost/ManagePost.tsx b/src/Pages/ManagePost/ManagePost.tsx
index 0172443..db9f17c 100644
--- a/src/Pages/ManagePost/ManagePost.tsx
+++ b/src/Pages/ManagePost/ManagePost.tsx
@@ -72,7 +72,7 @@ const tableHeadRow = [
const ManagePost = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, refetch } = useGetManagePostsQuery(currentPage)
+ const { data, refetch, isFetching, isError } = useGetManagePostsQuery(currentPage)
const [localData, setLocalData] = useState([]);
const [searchTerm, setSearchTerm] = useState("");
const [postStatusToggle] = usePostStatusToggleMutation()
@@ -242,6 +242,8 @@ const ManagePost = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
diff --git a/src/Pages/ManageUsers/DeactivatedAccounts/DeactivatedAccounts.tsx b/src/Pages/ManageUsers/DeactivatedAccounts/DeactivatedAccounts.tsx
index 87409d7..37ab4f4 100644
--- a/src/Pages/ManageUsers/DeactivatedAccounts/DeactivatedAccounts.tsx
+++ b/src/Pages/ManageUsers/DeactivatedAccounts/DeactivatedAccounts.tsx
@@ -9,6 +9,8 @@ import { useEffect, useState } from "react";
import { Spinner } from "../../../components/Sipnner/Spinner";
import { useGetDeactivateUserQuery, useUserDeactivateToggleMutation } from "../../../Redux/Service/manage.user";
import SearchComponent from "../../../components/SearchComponent";
+import { Toaster, toaster } from "../../../components/ui/toaster";
+import { delay } from "../../../components/Utils";
const tableHeadRow = [
"Sr. No",
@@ -20,7 +22,7 @@ const tableHeadRow = [
const DeactivatedAccounts = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, isLoading, refetch } = useGetDeactivateUserQuery(currentPage);
+ const { data, isLoading, refetch, isError, isFetching } = useGetDeactivateUserQuery(currentPage);
const [localData, setLocalData] = useState([]);
const [searchTerm, setSearchTerm] = useState("");
const [userDeactivateToggle] = useUserDeactivateToggleMutation()
@@ -54,6 +56,12 @@ const DeactivatedAccounts = () => {
try {
await userDeactivateToggle({ id: agencyId, is_active: newStatus }).unwrap();
+ toaster.create({
+ title: "Success",
+ description: "Status updated successfully",
+ type: "success",
+ });
+ await delay(500);
refetch()
} catch (error) {
console.error("Error updating privacy policy:", error);
@@ -148,8 +156,11 @@ const DeactivatedAccounts = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
+
);
};
diff --git a/src/Pages/ManageUsers/RegisterUsers/EditRegisterUsers.tsx b/src/Pages/ManageUsers/RegisterUsers/EditRegisterUsers.tsx
index 0d5bd36..85ff8e7 100644
--- a/src/Pages/ManageUsers/RegisterUsers/EditRegisterUsers.tsx
+++ b/src/Pages/ManageUsers/RegisterUsers/EditRegisterUsers.tsx
@@ -1,5 +1,5 @@
// import { MdOutlineRemoveRedEye } from "react-icons/md";
-import { Field, Input, Stack } from "@chakra-ui/react";
+import { Box, Field, HStack, Input, Stack } from "@chakra-ui/react";
import {
DialogBody,
DialogCloseTrigger,
@@ -18,21 +18,66 @@ import { UserData, useUpdateUserMutation } from "../../../Redux/Service/manage.u
import { useState } from "react";
import { Toaster, toaster } from "../../../components/ui/toaster";
+interface UserPayload {
+ id: number;
+ principal_type_xid: number;
+ principal_source_xid: number;
+ first_name: string;
+ last_name: string;
+ gender: string;
+ date_of_birth: string | null;
+ language_xid: number[]; // ✅ Always an array
+}
+
+export interface UserFormData {
+ id: number;
+ principal_type_xid: number;
+ first_name: string;
+ last_name: string;
+ phone_number: string;
+ gender: string;
+ date_of_birth: string;
+ is_active: boolean;
+ principal_type: {
+ id: number;
+ principal_type_title: string;
+ };
+ principle_language_linkss: {
+ id?: number;
+ iam_principal_xid?: number;
+ language_xid: number[]; // ✅ Now it's an array
+ };
+}
+
function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => void }) {
const [isOpen, setIsOpen] = useState(false);
- const [formData, setFormData] = useState({
- id: data?.id,
- first_name: data?.first_name || '',
- last_name: data?.last_name || '',
- principal_type_xid: data?.principal_type_xid,
- phone_number: data?.phone_number || '',
- gender: data?.gender || '',
- date_of_birth: data?.date_of_birth || '',
- principal_type: data?.principal_type,
- is_active: data?.is_active ?? true,
- principle_language_linkss: data?.principle_language_linkss ?? [],
+ const transformToFormData = (data: UserData): UserFormData => ({
+ ...data,
+ principle_language_linkss: {
+ ...data.principle_language_linkss,
+ language_xid: [data.principle_language_linkss.language_xid], // wrap in array
+ },
});
- const [updateUser] = useUpdateUserMutation();
+ const [formData, setFormData] = useState(transformToFormData(data));
+ // const [formData, setFormData] = useState({
+ // id: data?.id,
+ // first_name: data?.first_name || '',
+ // last_name: data?.last_name || '',
+ // principal_type_xid: data?.principal_type_xid,
+ // phone_number: data?.phone_number || '',
+ // gender: data?.gender || '',
+ // date_of_birth: data?.date_of_birth || '',
+ // principal_type: data?.principal_type,
+ // is_active: data?.is_active ?? true,
+ // principle_language_linkss: {
+ // ...data?.principle_language_linkss,
+ // language_xid: Array.isArray(data?.principle_language_linkss?.language_xid)
+ // ? data.principle_language_linkss.language_xid
+ // : [data?.principle_language_linkss?.language_xid].filter(Boolean),
+ // },
+ // // principle_language_linkss: data?.principle_language_linkss ?? [],
+ // });
+ const [updateUser, { isLoading }] = useUpdateUserMutation();
const handleOpenModal = () => {
setIsOpen(true);
@@ -49,9 +94,9 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
return;
}
- const languageData = formData?.principle_language_linkss?.language_xid;
+ // const languageData = formData?.principle_language_linkss?.language_xid;
- const payload = {
+ const payload: UserPayload = {
id: formData?.id,
principal_type_xid: formData?.principal_type_xid,
principal_source_xid: formData?.id,
@@ -59,7 +104,11 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
last_name: formData?.last_name,
gender: formData?.gender,
date_of_birth: formData?.date_of_birth,
- language_xid: languageData,
+ // language_xid: languageData,
+ language_xid: Array.isArray(formData.principle_language_linkss?.language_xid)
+ ? formData.principle_language_linkss.language_xid
+ : [formData.principle_language_linkss?.language_xid].filter(Boolean),
+
};
// console.log('payload', payload)
@@ -193,7 +242,7 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
Type Of User
- v
height="30px"
value={formData.principal_type?.principal_type_title || 'N/A'}
onChange={(e) => setFormData({ ...formData, principal_type: { ...formData.principal_type, principal_type_title: e.target.value } })}
- />
+ /> */}
- {/*
- Language
-
- */}
+
+
+
+
+
+ Language
+
+ {/* setFormData({
+ ...formData, principle_language_linkss: {
+ ...formData?.principle_language_linkss, language_xid: e.target.value
+ .split(",")
+ .map(lang => lang.trim())
+ .filter(Boolean)
+ }
+ })}
+ /> */}
+
+
+ {[
+ { id: 1, label: "English" },
+ { id: 2, label: "Hindi" },
+ { id: 4, label: "Other" },
+ ].map((lang) => (
+
+ ))}
+
-
+
Save
-
+
>
);
diff --git a/src/Pages/ManageUsers/RegisterUsers/RegisterUsers.tsx b/src/Pages/ManageUsers/RegisterUsers/RegisterUsers.tsx
index d954cb7..34867ae 100644
--- a/src/Pages/ManageUsers/RegisterUsers/RegisterUsers.tsx
+++ b/src/Pages/ManageUsers/RegisterUsers/RegisterUsers.tsx
@@ -69,7 +69,7 @@ const tableHeadRow = [
const RegisterUsers = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, refetch } = useGetManageUserQuery(currentPage)
+ const { data, refetch, isFetching, isError } = useGetManageUserQuery(currentPage)
const [localData, setLocalData] = useState([]);
const [searchTerm, setSearchTerm] = useState("");
const [userToggle] = useUserToggleMutation()
@@ -165,8 +165,6 @@ const RegisterUsers = () => {
"Action": (
@@ -238,6 +236,8 @@ const RegisterUsers = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
diff --git a/src/Pages/ManageUsers/RegisterUsers/ViewRegisterUsers.tsx b/src/Pages/ManageUsers/RegisterUsers/ViewRegisterUsers.tsx
index 4f900af..f881a8c 100644
--- a/src/Pages/ManageUsers/RegisterUsers/ViewRegisterUsers.tsx
+++ b/src/Pages/ManageUsers/RegisterUsers/ViewRegisterUsers.tsx
@@ -102,12 +102,13 @@ function ViewRegisterUsers({ data }: { data: UserData }) {
value={data?.principal_type?.principal_type_title || 'N/A'}
/>
- {/*
+
Language
*/}
+ value={data?.principle_language_linkss?.language?.language_name || 'N/A'}
+ />
diff --git a/src/Pages/MasterModule/AgencyMaster/EditAgencyMaster.tsx b/src/Pages/MasterModule/AgencyMaster/EditAgencyMaster.tsx
index 4365303..35c839b 100644
--- a/src/Pages/MasterModule/AgencyMaster/EditAgencyMaster.tsx
+++ b/src/Pages/MasterModule/AgencyMaster/EditAgencyMaster.tsx
@@ -52,7 +52,7 @@ function EditAgencyMaster({ editData, refetch }: { edi
const [formData, setFormData] = useState(editData);
const [isOpen, setIsOpen] = useState(false);
- const [updateAgencyMaster] = useUpdateAgencyMasterMutation()
+ const [updateAgencyMaster, { isLoading }] = useUpdateAgencyMasterMutation()
console.log("Edit Data", editData);
@@ -267,6 +267,7 @@ function EditAgencyMaster({ editData, refetch }: { edi
fontSize="12px"
height="30px"
onClick={handleSubmit}
+ disabled={isLoading}
>
Save
diff --git a/src/Pages/MasterModule/Country/CountryAddModel.tsx b/src/Pages/MasterModule/Country/CountryAddModel.tsx
index 030c669..93373c9 100644
--- a/src/Pages/MasterModule/Country/CountryAddModel.tsx
+++ b/src/Pages/MasterModule/Country/CountryAddModel.tsx
@@ -7,7 +7,7 @@ import { PostCountry, useCreateCountryPostMutation } from "../../../Redux/Servic
import { Toaster, toaster } from "../../../components/ui/toaster";
function CountryAddModel({refetch}: { refetch: VoidFunction }) {
- const [createCountryPost] = useCreateCountryPostMutation()
+ const [createCountryPost, { isLoading }] = useCreateCountryPostMutation()
const [isOpen, setIsOpen] = useState(false);
const [countryName, setCountryName] = useState({
en_name: '',
@@ -202,7 +202,7 @@ function CountryAddModel({refetch}: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/Country/EditCountryModel.tsx b/src/Pages/MasterModule/Country/EditCountryModel.tsx
index 2b4f47e..cbf1e80 100644
--- a/src/Pages/MasterModule/Country/EditCountryModel.tsx
+++ b/src/Pages/MasterModule/Country/EditCountryModel.tsx
@@ -36,7 +36,7 @@ export interface EditCountryModelProps {
function EditCountryModel({ rowData, refetch }: { rowData: EditCountryModelProps, refetch: VoidFunction }) {
- const [updateCountry] = useUpdateCountryMutation()
+ const [updateCountry, { isLoading }] = useUpdateCountryMutation()
const [editData, setEditData] = useState(rowData)
const [isOpen, setIsOpen] = useState(false);
@@ -145,7 +145,7 @@ function EditCountryModel({ rowData, refetch }: { rowData: EditCountryModelProps
-
+
Save
diff --git a/src/Pages/MasterModule/DepartmentMaster/AddDepartmentMaster.tsx b/src/Pages/MasterModule/DepartmentMaster/AddDepartmentMaster.tsx
index 741a261..e3b7f06 100644
--- a/src/Pages/MasterModule/DepartmentMaster/AddDepartmentMaster.tsx
+++ b/src/Pages/MasterModule/DepartmentMaster/AddDepartmentMaster.tsx
@@ -9,7 +9,7 @@ import { useCreateDepartmentPostMutation, useGetDepartmentMasterDropDownQuery }
function AddDepartmentMaster({ refetch }: { refetch: VoidFunction }) {
const [jobType, setJobType] = useState("");
const [isOpen, setIsOpen] = useState(false);
- const [createDepartmentPost] = useCreateDepartmentPostMutation()
+ const [createDepartmentPost, { isLoading }] = useCreateDepartmentPostMutation()
const { data } = useGetDepartmentMasterDropDownQuery()
const [selectdDep, setSelectdDep] = useState({
id: '',
@@ -140,7 +140,7 @@ function AddDepartmentMaster({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/DepartmentMaster/EditDepartmentMaster.tsx b/src/Pages/MasterModule/DepartmentMaster/EditDepartmentMaster.tsx
index 0364cec..824cb2b 100644
--- a/src/Pages/MasterModule/DepartmentMaster/EditDepartmentMaster.tsx
+++ b/src/Pages/MasterModule/DepartmentMaster/EditDepartmentMaster.tsx
@@ -17,7 +17,7 @@ import { useGetDepartmentMasterDropDownQuery, useUpdateDepartmentMutation } from
function EditDepartmentMaster({ localData, refetch }: { localData: any, refetch: VoidFunction }) {
const [jobtype, setJobType] = useState("");
- const [updateDepartment] = useUpdateDepartmentMutation()
+ const [updateDepartment, { isLoading }] = useUpdateDepartmentMutation()
const { data } = useGetDepartmentMasterDropDownQuery()
const [isOpen, setIsOpen] = useState(false);
const [selectdDep, setSelectdDep] = useState({
@@ -145,7 +145,7 @@ function EditDepartmentMaster({ localData, refetch }: { localData: any, refetch:
-
+
Save
diff --git a/src/Pages/MasterModule/IndustryMaster/AddIndustryMaster.tsx b/src/Pages/MasterModule/IndustryMaster/AddIndustryMaster.tsx
index 356cce1..6fb8c8f 100644
--- a/src/Pages/MasterModule/IndustryMaster/AddIndustryMaster.tsx
+++ b/src/Pages/MasterModule/IndustryMaster/AddIndustryMaster.tsx
@@ -9,7 +9,7 @@ import { useCreateIndustryMasterPostMutation } from "../../../Redux/Service/indu
function AddIndustryMaster({ refetch }: { refetch: VoidFunction }) {
const [jobType, setJobType] = useState("");
const [isOpen, setIsOpen] = useState(false);
- const [createIndustryMasterPost] = useCreateIndustryMasterPostMutation()
+ const [createIndustryMasterPost, { isLoading }] = useCreateIndustryMasterPostMutation()
const handleOpenModal = () => {
setIsOpen(true); // Open modal when clicking "Add"
@@ -88,7 +88,7 @@ function AddIndustryMaster({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/IndustryMaster/EditIndustryMaster.tsx b/src/Pages/MasterModule/IndustryMaster/EditIndustryMaster.tsx
index 745c9ec..1da2cfd 100644
--- a/src/Pages/MasterModule/IndustryMaster/EditIndustryMaster.tsx
+++ b/src/Pages/MasterModule/IndustryMaster/EditIndustryMaster.tsx
@@ -17,7 +17,7 @@ import { useUpdateIndustryMasterMutation } from "../../../Redux/Service/industry
function EditIndustryMaster({ id, localData, refetch, categories }: { id: number, localData: any, refetch: VoidFunction, categories: any }) {
const [jobtype, setJobType] = useState("");
- const [updateIndustryMaster] = useUpdateIndustryMasterMutation()
+ const [updateIndustryMaster, { isLoading }] = useUpdateIndustryMasterMutation()
const [isOpen, setIsOpen] = useState(false);
const handleOpenModal = () => {
@@ -98,7 +98,7 @@ function EditIndustryMaster({ id, localData, refetch, categories }: { id: number
-
+
Save
diff --git a/src/Pages/MasterModule/JobStatus/EditJobStatusModel.tsx b/src/Pages/MasterModule/JobStatus/EditJobStatusModel.tsx
index f6d0f0a..f64296d 100644
--- a/src/Pages/MasterModule/JobStatus/EditJobStatusModel.tsx
+++ b/src/Pages/MasterModule/JobStatus/EditJobStatusModel.tsx
@@ -9,7 +9,7 @@ import { Toaster, toaster } from "../../../components/ui/toaster";
function EditJobStatusModel({ localData, refetch }: { localData: any, refetch: VoidFunction }) {
- const [updateJobStatus] = useUpdateJobStatusMutation()
+ const [updateJobStatus, { isLoading }] = useUpdateJobStatusMutation()
const [title, setTitle] = useState(localData.translation.title);
const [isOpen, setIsOpen] = useState(false);
@@ -89,7 +89,7 @@ function EditJobStatusModel({ localData, refetch }: { localData: any, refetch: V
-
+
Save
diff --git a/src/Pages/MasterModule/JobStatus/JobStatusAddModel.tsx b/src/Pages/MasterModule/JobStatus/JobStatusAddModel.tsx
index 095b303..52b6b48 100644
--- a/src/Pages/MasterModule/JobStatus/JobStatusAddModel.tsx
+++ b/src/Pages/MasterModule/JobStatus/JobStatusAddModel.tsx
@@ -9,7 +9,7 @@ import { useState } from "react"
function JobStatusAddModel({ refetch }: { refetch: VoidFunction }) {
const [title, setTitle] = useState('')
const [isOpen, setIsOpen] = useState(false);
- const [createJobStatusPost] = useCreateJobStatusPostMutation()
+ const [createJobStatusPost, { isLoading }] = useCreateJobStatusPostMutation()
const handleOpenModal = () => {
setIsOpen(true);
@@ -88,7 +88,7 @@ function JobStatusAddModel({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/JobType/EditJobModel.tsx b/src/Pages/MasterModule/JobType/EditJobModel.tsx
index f5063c7..2285599 100644
--- a/src/Pages/MasterModule/JobType/EditJobModel.tsx
+++ b/src/Pages/MasterModule/JobType/EditJobModel.tsx
@@ -17,7 +17,7 @@ import { toaster } from "../../../components/ui/toaster";
function EditJobeModel({ id, localData, refetch }: { id: number, localData: any, refetch: VoidFunction }) {
const [jobtype, setJobType] = useState("");
- const [updateJobType] = useUpdateJobTypeMutation()
+ const [updateJobType, { isLoading }] = useUpdateJobTypeMutation()
const [isOpen, setIsOpen] = useState(false);
const handleOpenModal = () => {
@@ -97,7 +97,7 @@ function EditJobeModel({ id, localData, refetch }: { id: number, localData: any,
-
+
Save
diff --git a/src/Pages/MasterModule/JobType/JobAddModel.tsx b/src/Pages/MasterModule/JobType/JobAddModel.tsx
index 4f22c51..be29fb0 100644
--- a/src/Pages/MasterModule/JobType/JobAddModel.tsx
+++ b/src/Pages/MasterModule/JobType/JobAddModel.tsx
@@ -9,7 +9,7 @@ import { toaster } from "../../../components/ui/toaster";
function JobAddModel({ refetch }: { refetch: VoidFunction }) {
const [jobType, setJobType] = useState("");
const [isOpen, setIsOpen] = useState(false);
- const [createJobTypePost] = useCreateJobTypePostMutation()
+ const [createJobTypePost, { isLoading }] = useCreateJobTypePostMutation()
const handleOpenModal = () => {
setIsOpen(true); // Open modal when clicking "Add"
@@ -87,7 +87,7 @@ function JobAddModel({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/JobType/JobType.tsx b/src/Pages/MasterModule/JobType/JobType.tsx
index 5ccd1a5..fccc958 100644
--- a/src/Pages/MasterModule/JobType/JobType.tsx
+++ b/src/Pages/MasterModule/JobType/JobType.tsx
@@ -40,7 +40,7 @@ const tableHeadRow = [
const JobType = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, refetch } = useGetJobTypeQuery(currentPage)
+ const { data, refetch, isFetching, isError } = useGetJobTypeQuery(currentPage)
const [localData, setLocalData] = useState([]);
const [searchTerm, setSearchTerm] = useState("");
const [jobTypeToggle] = useJobTypeToggleMutation()
@@ -155,6 +155,8 @@ const JobType = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
diff --git a/src/Pages/MasterModule/TemplateMaster/TemplateMaster.tsx b/src/Pages/MasterModule/TemplateMaster/TemplateMaster.tsx
index 011258c..b12991c 100644
--- a/src/Pages/MasterModule/TemplateMaster/TemplateMaster.tsx
+++ b/src/Pages/MasterModule/TemplateMaster/TemplateMaster.tsx
@@ -49,7 +49,7 @@ const tableHeadRow = [
const TemplateMaster = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, refetch } = useGetTemplateMasterQuery(currentPage)
+ const { data, refetch, isFetching, isError } = useGetTemplateMasterQuery(currentPage)
const [localData, setLocalData] = useState([]);
const [templateMasterToggle] = useTemplateMasterToggleMutation();
const [searchTerm, setSearchTerm] = useState("");
@@ -194,6 +194,8 @@ const TemplateMaster = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
diff --git a/src/Pages/MasterModule/WorkspaceMode/EditWorkModel.tsx b/src/Pages/MasterModule/WorkspaceMode/EditWorkModel.tsx
index a85b43f..c1f2f4f 100644
--- a/src/Pages/MasterModule/WorkspaceMode/EditWorkModel.tsx
+++ b/src/Pages/MasterModule/WorkspaceMode/EditWorkModel.tsx
@@ -24,7 +24,7 @@ import { useUpdateWorkSpaceMutation } from "../../../Redux/Service/workspace.mod
function EditWorkModel({ localData, refetch }: {localData: any, refetch: VoidFunction}) {
const [title, setTitle] = useState(localData?.en_name);
const [isOpen, setIsOpen] = useState(false);
- const [updateWorkSpace] = useUpdateWorkSpaceMutation()
+ const [updateWorkSpace, { isLoading }] = useUpdateWorkSpaceMutation()
console.log("localData", localData)
const handleOpenModal = () => {
@@ -104,7 +104,7 @@ function EditWorkModel({ localData, refetch }: {localData: any, refetch: VoidFun
-
+
Save
diff --git a/src/Pages/MasterModule/WorkspaceMode/WorkAddModel.tsx b/src/Pages/MasterModule/WorkspaceMode/WorkAddModel.tsx
index 0e5ba79..3286cb7 100644
--- a/src/Pages/MasterModule/WorkspaceMode/WorkAddModel.tsx
+++ b/src/Pages/MasterModule/WorkspaceMode/WorkAddModel.tsx
@@ -9,7 +9,7 @@ import { Toaster, toaster } from "../../../components/ui/toaster";
function WorkAddModel({ refetch }: { refetch: VoidFunction }) {
const [title, setTitle] = useState('')
const [isOpen, setIsOpen] = useState(false);
- const [createWorkspacePost] = useCreateWorkspacePostMutation()
+ const [createWorkspacePost, { isLoading }] = useCreateWorkspacePostMutation()
const handleOpenModal = () => {
setIsOpen(true);
@@ -94,7 +94,7 @@ function WorkAddModel({ refetch }: { refetch: VoidFunction }) {
-
+
Save
diff --git a/src/Pages/MasterModule/WorkspaceMode/WorkspaceMode.tsx b/src/Pages/MasterModule/WorkspaceMode/WorkspaceMode.tsx
index df9b8dd..4b27886 100644
--- a/src/Pages/MasterModule/WorkspaceMode/WorkspaceMode.tsx
+++ b/src/Pages/MasterModule/WorkspaceMode/WorkspaceMode.tsx
@@ -37,7 +37,7 @@ const tableHeadRow = [
const WorkspaceMode = () => {
const [currentPage, setCurrentPage] = useState(1);
- const { data, refetch } = useGetWorkSpaceModeQuery(currentPage)
+ const { data, refetch, isError, isFetching } = useGetWorkSpaceModeQuery(currentPage)
const [localData, setLocalData] = useState([]);
const [searchTerm, setSearchTerm] = useState("");
const [workspaceToggle] = useWorkspaceToggleMutation()
@@ -152,6 +152,8 @@ const WorkspaceMode = () => {
total: data?.data.total || 0
}}
onPageChange={handlePageChange}
+ isLoading={isFetching}
+ isError={isError}
/>
diff --git a/src/Pages/SubAdmin/AddModel.tsx b/src/Pages/SubAdmin/AddModel.tsx
index 1dbc025..69989b2 100644
--- a/src/Pages/SubAdmin/AddModel.tsx
+++ b/src/Pages/SubAdmin/AddModel.tsx
@@ -17,12 +17,12 @@ import { toaster, Toaster } from "../../components/ui/toaster";
import { useEffect, useState } from "react";
function AddModel({ refetch, allPermissions }: { refetch: VoidFunction, allPermissions?: PermissionResponse }) {
- const [createSubAdminPost] = useCreateSubAdminPostMutation();
+ const [createSubAdminPost, { isLoading }] = useCreateSubAdminPostMutation();
// State fields
const [firstName, setFirstName] = useState("");
const [lastName, setLastName] = useState("");
- const [userName, setUserName] = useState("");
+ // const [userName, setUserName] = useState("");
const [dateOfBirth, setDateOfBirth] = useState("");
const [gender, setGender] = useState("");
const [email, setEmail] = useState("");
@@ -47,7 +47,7 @@ useEffect(() => {
if (!isOpen) {
setFirstName("");
setLastName("");
- setUserName("");
+ // setUserName("");
setDateOfBirth("");
setGender("");
setEmail("");
@@ -60,7 +60,6 @@ useEffect(() => {
if (
!firstName.trim() ||
!lastName.trim() ||
- !userName.trim() ||
!dateOfBirth.trim() ||
!gender.trim()
) {
@@ -92,7 +91,7 @@ useEffect(() => {
}
const payload = {
- user_name: userName,
+ // user_name: userName,
first_name: firstName,
last_name: lastName,
date_of_birth: dateOfBirth,
@@ -112,10 +111,9 @@ useEffect(() => {
type: "success",
});
refetch();
- // setIsOpen(false);
setFirstName("");
setLastName("");
- setUserName("");
+ // setUserName("");
setDateOfBirth("");
setGender("");
setIsOpen(false);
@@ -192,7 +190,7 @@ useEffect(() => {
onChange={(e) => setLastName(e.target.value)}
/>
-
+ {/*
Username
{
height="30px"
value={userName}
onChange={(e) => setUserName(e.target.value)}
- />
+ /> */}
DOB
@@ -306,6 +304,7 @@ useEffect(() => {
bg="#02A0A0"
color={"#fff"}
onClick={handleSubmit}
+ disabled={isLoading}
>
Save
diff --git a/src/Pages/SubAdmin/EditSubAdmin.tsx b/src/Pages/SubAdmin/EditSubAdmin.tsx
index 329d11b..b925c8c 100644
--- a/src/Pages/SubAdmin/EditSubAdmin.tsx
+++ b/src/Pages/SubAdmin/EditSubAdmin.tsx
@@ -43,7 +43,7 @@ interface ResourceActionLink {
function EditSubAdmin({ id, refetch, allPermissions }: { id: number, refetch: VoidFunction, allPermissions?: PermissionResponse }) {
const [trigger, { data }] = useLazyViewSubAdminQuery();
- const [updateSubAdmin] = useUpdateSubAdminMutation()
+ const [updateSubAdmin, {isLoading}] = useUpdateSubAdminMutation()
const [isOpen, setIsOpen] = useState(false);
const [editData, setEditData] = useState<{
id: string;
@@ -130,7 +130,7 @@ function EditSubAdmin({ id, refetch, allPermissions }: { id: number, refetch: Vo
const payload = {
id: Number(editData.id),
- unique_id: editData.unique_id,
+ // unique_id: editData.unique_id,
first_name: editData.first_name,
last_name: editData.last_name,
date_of_birth: editData.date_of_birth,
@@ -190,7 +190,7 @@ function EditSubAdmin({ id, refetch, allPermissions }: { id: number, refetch: Vo
-
+ {/*
ID
setEditData({ ...editData, unique_id: e.target.value })}
- />
+ /> */}
First Name
@@ -287,7 +287,7 @@ function EditSubAdmin({ id, refetch, allPermissions }: { id: number, refetch: Vo
-
+
Save
diff --git a/src/Redux/Service/manage.subadmin.service.ts b/src/Redux/Service/manage.subadmin.service.ts
index 4ac7b68..89c0bba 100644
--- a/src/Redux/Service/manage.subadmin.service.ts
+++ b/src/Redux/Service/manage.subadmin.service.ts
@@ -103,7 +103,7 @@ interface SubAdminView {
}
interface CreateSubAdminPayload {
- user_name: string;
+ // user_name: string;
first_name: string;
last_name: string;
date_of_birth: string;
diff --git a/src/index.css b/src/index.css
index e4f999d..ede8ad5 100644
--- a/src/index.css
+++ b/src/index.css
@@ -183,4 +183,23 @@ input:focus-visible {
.css-1ilznyv {
border: none;
+}
+
+.custom-checkbox {
+ width: 16px;
+ height: 16px;
+ border: 2px solid black;
+ background-color: white;
+ appearance: none;
+ cursor: pointer;
+ position: relative;
+}
+
+.custom-checkbox:checked::after {
+ content: "✔";
+ color: black;
+ font-size: 16px;
+ position: absolute;
+ top: -2px;
+ left: 0px;
}
\ No newline at end of file