From 0e3abf46248243f5373554674c2259f95170da65 Mon Sep 17 00:00:00 2001 From: chaitanyakole Date: Wed, 5 Feb 2025 16:59:58 +0530 Subject: [PATCH] Bug #234323[Admin] Tenant filter default option is set to "Public Users" instead of "All" in Cohorts List and Learners List. PFA; Bug #234329[Admin- learner list] Showing irrelevant search results when searching learner. PFAi --- src/components/AreaSelection.tsx | 116 --------- src/components/FormControl.tsx | 9 +- src/components/HeaderComponent.tsx | 177 +------------- src/components/UserTable.tsx | 312 ++---------------------- src/pages/cohorts.tsx | 378 +---------------------------- src/pages/learners.tsx | 28 +-- 6 files changed, 31 insertions(+), 989 deletions(-) diff --git a/src/components/AreaSelection.tsx b/src/components/AreaSelection.tsx index f2d1df6..93d65f3 100644 --- a/src/components/AreaSelection.tsx +++ b/src/components/AreaSelection.tsx @@ -35,32 +35,7 @@ interface Cohort { label: string; } interface DropdownBoxProps { - // states: State[]; - // districts: District[]; - // blocks: Block[]; - // allCenters?: Centers[]; - // selectedState: string[]; - // selectedDistrict: string[]; - // selectedBlock: string[]; - // selectedCenter?: any; inModal?: boolean; - // handleStateChangeWrapper: ( - // selectedNames: string[], - // selectedCodes: string[] - // ) => Promise; - // handleDistrictChangeWrapper: ( - // selected: string[], - // selectedCodes: string[] - // ) => Promise; - // handleBlockChangeWrapper: ( - // selected: string[], - // selectedCodes: string[] - // ) => void; - // handleCenterChangeWrapper?: ( - // selected: string[], - // selectedCodes: string[] - // ) => void; - isMobile: boolean; isMediumScreen: boolean; isCenterSelection?: boolean; @@ -82,25 +57,10 @@ interface DropdownBoxProps { } const AreaSelection: React.FC = ({ - // states, - // districts, - // blocks, - // allCenters = [], - // selectedState, - // selectedDistrict, - // selectedBlock, - // selectedCenter = [], - // handleStateChangeWrapper, - // handleDistrictChangeWrapper, - // handleBlockChangeWrapper, isMobile, isMediumScreen, isCenterSelection = false, inModal = false, - // handleCenterChangeWrapper = () => {}, - // stateDefaultValue, - // blockDefaultValue, - // districtDefaultValue, tenants, cohorts, selectedTenant, @@ -116,9 +76,6 @@ const AreaSelection: React.FC = ({ }) => { const { t } = useTranslation(); const theme = useTheme(); - const [singleState, setSingleState] = useState(true); - const [stateValue, setStateValue] = useState(""); - const [stateCode, setStateCode] = useState(""); let isSmallScreen = useMediaQuery((theme: any) => theme.breakpoints.down("sm") ); @@ -239,76 +196,3 @@ const AreaSelection: React.FC = ({ }; export default AreaSelection; - -{ - /* - {shouldRenderSelectCheckmarks && ( - 0 ? blocks.map((block) => block.label) : [] - // blocks.map((block) => block.label) - )} - codes={ - blocks?.length > 0 - ? blocks?.map((block) => block.value) - : [] - // blocks?.map((block) => block.value) - } - tagName={t("FACILITATORS.BLOCK")} - selectedCategories={capitalizeFirstLetterOfEachWordInArray( - selectedBlock - )} - onCategoryChange={handleBlockChangeWrapper} - disabled={ - blocks?.length <= 0 || - selectedDistrict?.length === 0 || - selectedDistrict[0] === t("COMMON.ALL_DISTRICTS") - } - overall={!inModal} - defaultValue={ - selectedDistrict?.length > 0 && blocks?.length === 0 - ? t("COMMON.NO_BLOCKS") - : t("COMMON.ALL_BLOCKS") - } - /> - )} - */ -} -{ - /* {isCenterSelection && ( - - center.name) - )} - codes={allCenters?.map((center) => center.cohortId)} - tagName={t("CENTERS.CENTERS")} - selectedCategories={selectedCenter} - onCategoryChange={handleCenterChangeWrapper} - disabled={ - selectedBlock.length === 0 || - selectedBlock[0] === t("COMMON.ALL_BLOCKS") || - (selectedBlock?.length > 0 && allCenters?.length === 0) - } - overall={!inModal} - defaultValue={ - selectedBlock?.length > 0 && allCenters?.length === 0 - ? t("COMMON.NO_CENTERS") - : t("COMMON.ALL_CENTERS") - } - /> - -)} */ -} diff --git a/src/components/FormControl.tsx b/src/components/FormControl.tsx index 8da7d85..104df70 100644 --- a/src/components/FormControl.tsx +++ b/src/components/FormControl.tsx @@ -74,14 +74,9 @@ const MultipleSelectCheckmarks: React.FC = ({ labelId="multiple-checkbox-label" id="multiple-checkbox" value={ - // If no categories are selected (empty or invalid selection), show default value or the first name from 'names' selectedCategories?.length <= 0 || selectedCategories[0] === "" - ? names?.length >= 1 - ? [names[0]] - : defaultValue - ? [defaultValue] - : [] - : selectedCategories // If categories are selected, use selectedCategories + ? ["All"] + : selectedCategories } onChange={handleChange} // Handle the change event for the selection input={} diff --git a/src/components/HeaderComponent.tsx b/src/components/HeaderComponent.tsx index e80046c..0ff5f10 100644 --- a/src/components/HeaderComponent.tsx +++ b/src/components/HeaderComponent.tsx @@ -5,9 +5,7 @@ import { Button, FormControl, MenuItem, - Typography, useMediaQuery, - Divider, } from "@mui/material"; import Select from "@mui/material/Select"; import { useTheme } from "@mui/material/styles"; @@ -26,7 +24,6 @@ import { useQueryClient } from "@tanstack/react-query"; import { formatedBlocks, formatedDistricts } from "@/services/formatedCohorts"; import { useRouter } from "next/router"; import useSubmittedButtonStore from "@/utils/useSharedState"; -import { userAgent } from "next/server"; interface State { value: string; @@ -53,17 +50,7 @@ const HeaderComponent = ({ children, userType, searchPlaceHolder, - selectedState, - selectedStateCode, - selectedDistrictCode, - selectedBlockCode, - selectedDistrict, - selectedBlock, selectedSort, - selectedFilter, - handleStateChange, - handleDistrictChange, - handleBlockChange, handleSortChange, handleFilterChange, showSort = false, @@ -84,7 +71,6 @@ const HeaderComponent = ({ setSelectedBlockCode, setSelectedBlock, setSelectedCenter, - selectedCenterCode, setSelectedCenterCode, setSelectedStateCode, showTenantCohortDropDown = true, @@ -111,10 +97,6 @@ const HeaderComponent = ({ const [districts, setDistricts] = useState([]); const [stateDefaultValue, setStateDefaultValue] = useState(""); const [allCenters, setAllCenters] = useState([]); - const [initialDistrict, setInitialDistrict] = useState(""); - const [initialBlock, setInitialBlock] = useState(""); - const [initialized, setInitialized] = useState(false); - const [blocks, setBlocks] = useState([]); const selectedBlockStore = useSubmittedButtonStore( (state: any) => state.selectedBlockStore @@ -134,123 +116,6 @@ const HeaderComponent = ({ const setSelectedCenterStore = useSubmittedButtonStore( (state: any) => state.setSelectedCenterStore ); - const handleStateChangeWrapper = async ( - selectedNames: string[], - selectedCodes: string[] - ) => { - if (selectedNames[0] === "") { - // if(districts.length!==0) - // { - // handleDistrictChange([], []); - // handleBlockChange([], []); - // } - } - try { - const response = await queryClient.fetchQuery({ - queryKey: [QueryKeys.FIELD_OPTION_READ, selectedCodes[0], "districts"], - queryFn: () => - getStateBlockDistrictList({ - controllingfieldfk: selectedCodes[0], - fieldName: "districts", - }), - }); - - // const object = { - // controllingfieldfk: selectedCodes[0], - - // fieldName: "districts", - // }; - // const response = await getStateBlockDistrictList(object); - const result = response?.result?.values; - - setDistricts(result); - } catch (error) { - console.log(error); - } - handleStateChange(selectedNames, selectedCodes); - }; - - const handleDistrictChangeWrapper = async ( - selected: string[], - selectedCodes: string[] - ) => { - setBlocks([]); - if (selected[0] === "") { - handleBlockChange([], []); - } - try { - const response = await queryClient.fetchQuery({ - queryKey: [QueryKeys.FIELD_OPTION_READ, selectedCodes[0], "blocks"], - queryFn: () => - getStateBlockDistrictList({ - controllingfieldfk: selectedCodes[0], - fieldName: "blocks", - }), - }); - - // const object = { - // controllingfieldfk: selectedCodes[0], - - // fieldName: "blocks", - // }; - // const response = await getStateBlockDistrictList(object); - const result = response?.result?.values; - const blockResult = await formatedBlocks(selectedCodes[0]); - - setBlocks(blockResult); - } catch (error) { - console.log(error); - } - handleDistrictChange(selected, selectedCodes); - }; - - const handleBlockChangeWrapper = async ( - selected: string[], - selectedCodes: string[] - ) => { - const getCentersObject = { - limit: 0, - offset: 0, - filters: { - // "type":"COHORT", - status: ["active"], - // states: selectedStateCode, - // districts: selectedDistrictCode, - // blocks: selectedCodes[0], - // "name": selected[0] - }, - }; - const response = await queryClient.fetchQuery({ - queryKey: [ - QueryKeys.FIELD_OPTION_READ, - getCentersObject.limit, - getCentersObject.offset, - getCentersObject.filters, - ], - queryFn: () => getCenterList(getCentersObject), - }); - // const response = await getCenterList(getCentersObject); - // setSelectedBlockCohortId( - // response?.result?.results?.cohortDetails[0].cohortId - // ); - // const result = response?.result?.cohortDetails; - const dataArray = response?.result?.results?.cohortDetails; - - const cohortInfo = dataArray - ?.filter((cohort: any) => cohort.type !== "BLOCK") - .map((item: any) => ({ - cohortId: item?.cohortId, - name: item?.name, - })); - setAllCenters(cohortInfo); - handleBlockChange(selected, selectedCodes); - }; - const handleCenterChangeWrapper = ( - selected: string[], - selectedCodes: string[] - ) => { - handleCenterChange(selected, selectedCodes); - }; useEffect(() => { const fetchData = async () => { @@ -436,7 +301,7 @@ const HeaderComponent = ({ } // setStates(result); } catch (error) { - console.log(error); + // console.log(error); } }; @@ -448,22 +313,6 @@ const HeaderComponent = ({ setStatusValue(newValue); }; - // useEffect(() => { - // if (districts && districts.length > 0 && !selectedDistrict.length) { - // const firstDistrictCode = districts?.[0].value; - // setInitialDistrict(firstDistrictCode); - // handleDistrictChangeWrapper([districts?.[0].label], [firstDistrictCode]); - // } - // }, [districts, selectedDistrict, handleDistrictChangeWrapper]); - - // useEffect(() => { - // if (blocks && blocks.length > 0 && !selectedBlock.length) { - // const firstBlockCode = blocks[0].value; - // setInitialBlock(firstBlockCode); - // handleBlockChangeWrapper([blocks[0].label], [firstBlockCode]); - // } - // }, [blocks, selectedBlock, handleBlockChangeWrapper]); - useEffect(() => { const handleRouteparam = async () => { const { state, district, block, center } = router.query; @@ -525,30 +374,6 @@ const HeaderComponent = ({ )} */} - {/* {showStateDropdown && ( - - )} */} {showTenantCohortDropDown && ( = ({ role, userType, searchPlaceholder, handleAddUserClick, - parentState, }) => { const [selectedState, setSelectedState] = React.useState([]); - const [blockMembershipIdList, setBlockMembershipIdList] = React.useState< - string[] - >([]); - const [centerMembershipIdList, setCenterMembershipIdList] = React.useState< - string[] - >([]); const router = useRouter(); - const selectedBlockStore = useSubmittedButtonStore( - (state: any) => state.selectedBlockStore - ); const setSelectedBlockStore = useSubmittedButtonStore( (state: any) => state.setSelectedBlockStore ); - const selectedDistrictStore = useSubmittedButtonStore( - (state: any) => state.selectedDistrictStore - ); const setSelectedDistrictStore = useSubmittedButtonStore( (state: any) => state.setSelectedDistrictStore ); - const selectedCenterStore = useSubmittedButtonStore( - (state: any) => state.selectedCenterStore - ); const setSelectedCenterStore = useSubmittedButtonStore( (state: any) => state.setSelectedCenterStore ); @@ -165,25 +117,8 @@ const UserTable: React.FC = ({ const { t } = useTranslation(); const [pageSize, setPageSize] = React.useState(10); const [sortBy, setSortBy] = useState(["createdAt", "asc"]); - const [sortByForCohortMemberList, setsortByForCohortMemberList] = useState([ - "name", - SORT.ASCENDING, - ]); const [statusValue, setStatusValue] = useState(Status.ACTIVE); const [pageCount, setPageCount] = useState(1); - const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false); - const [isReassignCohortModalOpen, setIsReassignCohortModalOpen] = - useState(false); - const [centers, setCenters] = useState([]); - const [blocks, setBlocks] = useState([]); - const [userCohort, setUserCohorts] = useState(""); - const [assignedCenters, setAssignedCenters] = useState(); - const [selectedUserId, setSelectedUserId] = useState(""); - const [cohortId, setCohortId] = useState([]); - const [block, setBlock] = useState(""); - const [district, setDistrict] = useState(""); - const [blockCode, setBlockCode] = useState(""); - const [districtCode, setDistrictCode] = useState(""); const [deleteUserState, setDeleteUserState] = useState(false); const [editUserState, setEditUserState] = useState(false); const [selectedCenter, setSelectedCenter] = useState([]); @@ -204,7 +139,6 @@ const UserTable: React.FC = ({ const [formData, setFormData] = useState(); const [loading, setLoading] = useState(undefined); - const [openAddLearnerModal, setOpenAddLearnerModal] = React.useState(false); const [userId, setUserId] = useState(); const [submitValue, setSubmitValue] = useState(false); const [isEditForm, setIsEditForm] = useState(false); @@ -243,39 +177,7 @@ const UserTable: React.FC = ({ "ui:options": {}, }, }; - const reassignButtonStatus = useSubmittedButtonStore( - (state: any) => state.reassignButtonStatus - ); - const { - data: teacherFormData, - isLoading: teacherFormDataLoading, - error: teacherFormDataErrror, - } = useQuery({ - queryKey: ["teacherFormData"], - queryFn: () => Promise.resolve([]), - staleTime: apiCatchingDuration.GETREADFORM, - enabled: false, - }); - const { - data: studentFormData, - isLoading: studentFormDataLoading, - error: studentFormDataErrror, - } = useQuery({ - queryKey: ["studentFormData"], - queryFn: () => Promise.resolve([]), - staleTime: apiCatchingDuration.GETREADFORM, - enabled: false, - }); - const { - data: teamLeaderFormData, - isLoading: teamLeaderFormDataLoading, - error: teamLeaderFormDataErrror, - } = useQuery({ - queryKey: ["teamLeaderFormData"], - queryFn: () => Promise.resolve([]), - staleTime: apiCatchingDuration.GETREADFORM, - enabled: false, - }); + const handleOpenAddLearnerModal = () => { setIsEditForm(true); }; @@ -283,13 +185,7 @@ const UserTable: React.FC = ({ setIsEditForm(false); // setFormData({}); }; - const handleModalSubmit = (value: boolean) => { - submitValue ? setSubmitValue(false) : setSubmitValue(true); - }; - const handleCloseAddLearnerModal = () => { - setOpenAddLearnerModal(false); - setUpdateBtnDisabled(true); - }; + const [filters, setFilters] = useState({ role: "learner", status: [statusValue], @@ -316,7 +212,7 @@ const UserTable: React.FC = ({ setListOfCohorts(cohortList?.results); } } catch (error) { - console.error("Error fetching data:", error); + // console.error("Error fetching data:", error); } }; @@ -325,64 +221,6 @@ const UserTable: React.FC = ({ } }, [filters, selectedCohort]); - const handleStateChange = async (selected: string[], code: string[]) => { - const newQuery = { ...router.query }; - - if (newQuery.center) { - delete newQuery.center; - } - if (newQuery.district) { - delete newQuery.district; - } - if (newQuery.block) { - delete newQuery.block; - } - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - state: code?.join(","), - }, - }); - setSelectedCenterCode([]); - - // setEnableCenterFilter(false); - setSelectedDistrict([]); - setSelectedCenter([]); - - setSelectedBlock([]); - setSelectedBlockCode(""); - setSelectedDistrictCode(""); - setSelectedState(selected); - - if (selected[0] === "" || selected[0] === t("COMMON.ALL_STATES")) { - if (filters.status) - setFilters({ - status: [filters.status], - role: "learner", - }); - // else setFilters({ role: role }); - else - setFilters({ - role: "learner", - status: [statusValue], - }); - } else { - const stateCodes = code?.join(","); - setSelectedStateCode(stateCodes); - if (filters.status) - setFilters({ - states: stateCodes, - role: "learner", - status: filters.status, - }); - else - setFilters({ - states: stateCodes, - role: "learner", - }); - } - }; const handleFilterChange = async ( event: React.SyntheticEvent, newValue: any @@ -624,70 +462,6 @@ const UserTable: React.FC = ({ setSelectedSort(event.target.value); }; - const mapFields = (formFields: any, response: any) => { - let initialFormData: any = {}; - formFields.fields.forEach((item: any) => { - const userData = response?.userData; - const customFieldValue = userData?.customFields?.find( - (field: any) => field.fieldId === item.fieldId - ); - - const getValue = (data: any, field: any) => { - if (item.default) { - return item.default; - } - if (item?.isMultiSelect) { - if (data[item.name] && item?.maxSelections > 1) { - return [field?.value]; - } else if (item?.type === "checkbox") { - return String(field?.value).split(","); - } else { - return field?.value?.toLowerCase(); - } - } else { - if (item?.type === "numeric") { - return parseInt(String(field?.value)); - } else if (item?.type === "text") { - return String(field?.value); - } else { - if (field?.value === "FEMALE" || field?.value === "MALE") { - return field?.value?.toLowerCase(); - } - return field?.value?.toLowerCase(); - } - } - }; - - if (item.coreField) { - if (item?.isMultiSelect) { - if (userData[item.name] && item?.maxSelections > 1) { - initialFormData[item.name] = [userData[item.name]]; - } else if (item?.type === "checkbox") { - initialFormData[item.name] = String(userData[item.name]).split(","); - } else { - initialFormData[item.name] = userData[item.name]; - } - } else if (item?.type === "numeric") { - initialFormData[item.name] = Number(userData[item.name]); - } else if (item?.type === "text" && userData[item.name]) { - initialFormData[item.name] = String(userData[item.name]); - } else { - if (userData[item.name]) { - initialFormData[item.name] = userData[item.name]; - } - } - } else { - const fieldValue = getValue(userData, customFieldValue); - - if (fieldValue) { - initialFormData[item.name] = fieldValue; - } - } - }); - - return initialFormData; - }; - // useEffect(() => { // const fetchRoles = async () => { // const obj = { @@ -758,7 +532,6 @@ const UserTable: React.FC = ({ name: keyword, })); }; - useEffect(() => { const fetchUserList = async () => { setLoading(true); @@ -780,6 +553,7 @@ const UserTable: React.FC = ({ filters: { role: filters.role, status: filters.status, + name: filters?.name, }, tenantCohortRoleMapping: { ...(selectedTenantOrNot ? {} : { tenantId: tenantId }), @@ -890,18 +664,16 @@ const UserTable: React.FC = ({ fetchUserList(); }, [ - pageOffset, - submitValue, + // pageOffset, + // submitValue, pageLimit, sortBy, filters, - parentState, - deleteUserState, - reassignButtonStatus, - userType, - editUserState, - selectedTenant, - selectedCohort, + // parentState, + // userType, + // editUserState, + // selectedTenant, + // selectedCohort, ]); const handleTenantChange = ( @@ -912,24 +684,14 @@ const UserTable: React.FC = ({ const tenantId = selectedCodes.join(","); setSelectedTenant(selectedNames); if (selectedNames?.[0] == "All") { - setFilters( - (prevFilter) => ( - console.log({ prevFilter }), - { - ...prevFilter, - } - ) - ); + setFilters((prevFilter) => ({ + ...prevFilter, + })); } else { - setFilters( - (prevFilter) => ( - console.log({ prevFilter }), - { - ...prevFilter, - tenantId: tenantId, - } - ) - ); + setFilters((prevFilter) => ({ + ...prevFilter, + tenantId: tenantId, + })); } } else { console.log("No valid tenants selected"); @@ -1013,14 +775,6 @@ const UserTable: React.FC = ({ } }; - const handleCloseReassignModal = () => { - // setSelectedReason(""); - // setOtherReason(""); - setIsReassignCohortModalOpen(false); - setSelectedUserId(""); - // setConfirmButtonDisable(true); - }; - const extraActions: any = [ { name: "Edit", onClick: handleEdit, icon: EditIcon }, { name: "Delete", onClick: handleDelete, icon: DeleteIcon }, @@ -1098,7 +852,7 @@ const UserTable: React.FC = ({ tenants: listOfTenants, cohorts: listOfCohorts, showAddNew: false, - showSort: true, + showSort: false, userType: userType, searchPlaceHolder: searchPlaceholder, selectedState: selectedState, @@ -1156,7 +910,6 @@ const UserTable: React.FC = ({ getTLTableColumns(t, isMobile, filters) // : getUserTableColumns(t, isMobile) } - // reassignCohort={handleReassignCohort} data={data} limit={pageLimit} offset={pageOffset} @@ -1170,9 +923,7 @@ const UserTable: React.FC = ({ onDelete={handleDelete} pagination={pagination} allowEditIcon={true} - // reassignCohort={reassignCohort} noDataMessage={data?.length === 0 ? t("COMMON.NO_USER_FOUND") : ""} - // reassignType={userType===Role.TEAM_LEADERS? t("COMMON.REASSIGN_BLOCKS"): t("COMMON.REASSIGN_CENTERS")} /> ) : ( loading === false && @@ -1262,21 +1013,6 @@ const UserTable: React.FC = ({ handleCloseModal={() => setConfirmationModalOpen(false)} modalOpen={confirmationModalOpen} /> - {/* - */} ); }; diff --git a/src/pages/cohorts.tsx b/src/pages/cohorts.tsx index 74654e7..a140df3 100644 --- a/src/pages/cohorts.tsx +++ b/src/pages/cohorts.tsx @@ -7,9 +7,7 @@ import Pagination from "@mui/material/Pagination"; import { SelectChangeEvent } from "@mui/material/Select"; import PageSizeSelector from "@/components/PageSelector"; import { - cohortCreate, deleteCohort, - fetchCohortMemberList, getCohortList, getTenantLists, rolesList, @@ -31,21 +29,12 @@ import DeleteIcon from "@mui/icons-material/Delete"; import ConfirmationModal from "@/components/ConfirmationModal"; import { Box, Button, Typography, useMediaQuery } from "@mui/material"; import Loader from "@/components/Loader"; -import { getFormRead } from "@/services/CreateUserService"; -import { - GenerateSchemaAndUiSchema, - customFields, -} from "@/components/GeneratedSchemas"; -import { CustomField } from "@/utils/Interfaces"; +import { customFields } from "@/components/GeneratedSchemas"; import { showToastMessage } from "@/components/Toastify"; import AddNewCenters from "@/components/AddNewTenant"; import { getCohortTableData } from "@/data/tableColumns"; import { Theme } from "@mui/system"; -import { - firstLetterInUpperCase, - mapFields, - transformLabel, -} from "@/utils/Helper"; +import { mapFields, transformLabel } from "@/utils/Helper"; import SimpleModal from "@/components/SimpleModal"; import { IChangeEvent } from "@rjsf/core"; import { RJSFSchema } from "@rjsf/utils"; @@ -70,16 +59,6 @@ type cohortFilterDetails = { archivedMembers?: string; }; -interface centerData { - name?: string; - status?: string; - updatedBy?: string; - createdBy?: string; - createdAt?: string; - updatedAt?: string; - customFieldValues?: string; -} - interface Roles { code: string; roleId: string; @@ -90,7 +69,6 @@ interface RoleList { } const Center: React.FC = () => { // use hooks - const queryClient = useQueryClient(); const router = useRouter(); const { t } = useTranslation(); @@ -150,24 +128,6 @@ const Center: React.FC = () => { const [isCreateCohortAdminModalOpen, setIsCreateCohortAdminModalOpen] = useState(false); - const selectedBlockStore = useSubmittedButtonStore( - (state: any) => state.selectedBlockStore - ); - const setSelectedBlockStore = useSubmittedButtonStore( - (state: any) => state.setSelectedBlockStore - ); - const selectedDistrictStore = useSubmittedButtonStore( - (state: any) => state.selectedDistrictStore - ); - const setSelectedDistrictStore = useSubmittedButtonStore( - (state: any) => state.setSelectedDistrictStore - ); - const selectedCenterStore = useSubmittedButtonStore( - (state: any) => state.selectedCenterStore - ); - const setSelectedCenterStore = useSubmittedButtonStore( - (state: any) => state.setSelectedCenterStore - ); const setSubmittedButtonStatus = useSubmittedButtonStore( (state: any) => state.setSubmittedButtonStatus ); @@ -175,12 +135,6 @@ const Center: React.FC = () => { const createCenterStatus = useSubmittedButtonStore( (state: any) => state.createCenterStatus ); - const setCreateCenterStatus = useSubmittedButtonStore( - (state: any) => state.setCreateCenterStatus - ); - const setAdminInformation = useSubmittedButtonStore( - (state: any) => state.setAdminInformation - ); const uiSchema = { name: { @@ -327,19 +281,6 @@ const Center: React.FC = () => { if (typeof window !== "undefined" && window.localStorage) { const admin = localStorage.getItem("adminInfo"); if (admin) { - // const stateField: any = JSON.parse(admin).customFields.find( - // (field: any) => field.label === "STATES" - // ); - // const object = [ - // { - // value: stateField.code, - // label: stateField.value, - // }, - // ]; - - // setStatesInformation(object); - // setSelectedStateCode(object[0]?.value); - setFilters({ type: "cohort", // states: "", @@ -359,9 +300,6 @@ const Center: React.FC = () => { ); setUserId(getRole?.userId); } - - // getAddCenterFormData(); - // getCohortMemberlistData(); getAdminInformation(); }, []); @@ -457,71 +395,13 @@ const Center: React.FC = () => { setCohortData([]); } } catch (error) { - console.error("Error fetching cohort list:", error); + // console.error("Error fetching cohort list:", error); setCohortData([]); } finally { setLoading(false); } }; - const getCohortMemberlistData = async (cohortId: string) => { - const data = { - limit: 0, - offset: 0, - filters: { - cohortId: cohortId, - }, - }; - const response = await fetchCohortMemberList(data); - // const response = await queryClient.fetchQuery({ - // queryKey: [ - // QueryKeys.GET_COHORT_MEMBER_LIST, - // data.limit, - // data.offset, - // JSON.stringify(data.filters), - // ], - // queryFn: () => fetchCohortMemberList(data), - // }); - - if (response?.result) { - const userDetails = response.result.userDetails; - const getActiveMembers = userDetails?.filter( - (member: any) => - member?.status === Status.ACTIVE && member?.role === Role.STUDENT - ); - const totalActiveMembers = getActiveMembers?.length || 0; - - const getArchivedMembers = userDetails?.filter( - (member: any) => - member?.status === Status.ARCHIVED && member?.role === Role.STUDENT - ); - const totalArchivedMembers = getArchivedMembers?.length || 0; - - return { - totalActiveMembers, - totalArchivedMembers, - }; - } - - return { - totalActiveMembers: 0, - totalArchivedMembers: 0, - }; - }; - - const getAddCenterFormData = async () => { - try { - const response = await getFormRead("cohorts", "cohort"); - if (response) { - const { schema, uiSchema } = GenerateSchemaAndUiSchema(response, t); - } else { - console.log("Unexpected response format"); - } - } catch (error) { - showToastMessage(t("COMMON.ERROR_MESSAGE_SOMETHING_WRONG"), "error"); - } - }; - useEffect(() => { const fetchData = async () => { if ( @@ -587,186 +467,6 @@ const Center: React.FC = () => { ); - const handleStateChange = async (selected: string[], code: string[]) => { - const newQuery = { ...router.query }; - - if (newQuery.center) { - delete newQuery.center; - } - if (newQuery.district) { - delete newQuery.district; - } - if (newQuery.block) { - delete newQuery.block; - } - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - state: "", - }, - }); - // setSelectedDistrict([]); - // setSelectedBlock([]); - // setSelectedState(selected); - - // setSelectedCenterCode([]) - - setSelectedBlockCode(""); - setSelectedDistrictCode(""); - - if (selected[0] === "") { - if (filters.status) - setFilters({ type: "cohort", status: filters.status }); - // else setFilters({ role: role }); - } else { - const stateCodes = code?.join(","); - setSelectedStateCode(stateCodes); - if (filters.status) - setFilters({ - type: "cohort", - states: "", - status: filters.status, - }); - else setFilters({ type: "cohort", states: "" }); - } - }; - - const handleDistrictChange = (selected: string[], code: string[]) => { - const newQuery = { ...router.query }; - if (newQuery.center) { - delete newQuery.center; - } - if (newQuery.block) { - delete newQuery.block; - } - setSelectedBlock([]); - setSelectedDistrict(selected); - setSelectedBlockCode(""); - // localStorage.setItem('selectedDistrict', selected[0]) - - setSelectedDistrictStore(selected[0]); - if (selected[0] === "" || selected[0] === t("COMMON.ALL_DISTRICTS")) { - if (filters.status) { - setFilters({ - states: "", - status: filters.status, - type: "cohort", - }); - } else { - setFilters({ - states: "", - type: "cohort", - }); - } - if (newQuery.district) { - delete newQuery.district; - } - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - state: "", - }, - }); - } else { - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - // state: selectedStateCode, - // district: code?.join(",") - }, - }); - const districts = code?.join(","); - setSelectedDistrictCode(districts); - if (filters.status) { - setFilters({ - states: "", - districts: "", - status: filters.status, - type: "cohort", - }); - } else { - setFilters({ - states: "", - districts: "", - type: "cohort", - }); - } - } - setPageOffset(Numbers.ZERO); - // fetchUserList(); - }; - const handleBlockChange = (selected: string[], code: string[]) => { - setSelectedBlock(selected); - const newQuery = { ...router.query }; - if (newQuery.center) { - delete newQuery.center; - } - if (newQuery.block) { - delete newQuery.block; - } - - localStorage.setItem("selectedBlock", selected[0]); - setSelectedBlockStore(selected[0]); - if (selected[0] === "" || selected[0] === t("COMMON.ALL_BLOCKS")) { - if (newQuery.block) { - delete newQuery.block; - } - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - // state: selectedStateCode, - // district: selectedDistrictCode, - }, - }); - if (filters.status) { - setFilters({ - states: "", - districts: "", - status: filters.status, - type: "cohort", - }); - } else { - setFilters({ - states: "", - districts: "", - type: "cohort", - }); - } - } else { - router.replace({ - pathname: router.pathname, - query: { - ...newQuery, - // state: selectedStateCode, - // district: selectedDistrictCode, - // block: code?.join(",") - }, - }); - // const blocks = code?.join(","); - // setSelectedBlockCode(blocks); - if (filters.status) { - setFilters({ - states: "", - districts: "", - blocks: "", - status: filters.status, - type: "cohort", - }); - } else { - setFilters({ - states: "", - districts: "", - blocks: "", - type: "cohort", - }); - } - } - }; - const handleTenantChange = ( selectedNames: string[], selectedCodes: string[] @@ -978,7 +678,6 @@ const Center: React.FC = () => { setAddBtnDisabled(false); }; const handleError = (error: any) => { - console.log("error", error); setError(error); }; const handleUpdateAction = async ( @@ -1039,62 +738,6 @@ const Center: React.FC = () => { setOpenAddNewCohort(true); }; - // useEffect(() => { - // const fetchData = () => { - // try { - // const object = { - // // "limit": 20, - // // "offset": 0, - // fieldName: "states", - // }; - // // const response = await getStateBlockDistrictList(object); - // // const result = response?.result?.values; - // if (typeof window !== "undefined" && window.localStorage) { - // const admin = localStorage.getItem("adminInfo"); - // if (admin) { - // const stateField = JSON.parse(admin).customFields.find( - // (field: any) => field.label === "STATES" - // ); - // if (!stateField.value.includes(",")) { - // setSelectedState([stateField.value]); - // setSelectedStateCode(stateField.code); - // if ( - // selectedDistrictCode && - // selectedDistrict.length !== 0 && - // selectedDistrict[0] !== t("COMMON.ALL_DISTRICTS") - // ) { - // setFilters({ - // states: "", - // districts: "", - // status: filters.status, - // type: "cohort", - // }); - // } - // if ( - // selectedBlockCode && - // selectedBlock.length !== 0 && - // selectedBlock[0] !== t("COMMON.ALL_BLOCKS") - // ) { - // setFilters({ - // states: "", - // districts: "", - // blocks: "", - // status: filters.status, - // // type: CohortTypes.COHORT, - // type: "cohort", - // }); - // } - // } - // } - // } - // } catch (error) { - // console.log(error); - // } - // }; - - // fetchData(); - // }, [selectedBlockCode, selectedDistrictCode]); - const handleMemberClick = async ( type: "active" | "archived", count: number, @@ -1115,15 +758,6 @@ const Center: React.FC = () => { }; const result = await getCohortList(data); - // const result = await queryClient.fetchQuery({ - // queryKey: [ - // QueryKeys.GET_COHORT_LIST, - // data.limit, - // data.offset, - // data.filters, - // ], - // queryFn: () => getCohortList(data), - // }); if (!result || !result.results || !result.results.cohortDetails) { console.log("Invalid response structure or no cohort details found."); @@ -1328,11 +962,8 @@ const Center: React.FC = () => { searchPlaceHolder: t("COHORTS.SEARCH_COHORT"), showTenantCohortDropDown: true, isTenantShow: true, - // selectedState: selectedState, selectedStateCode: selectedStateCode, selectedDistrict: selectedDistrict, - // selectedDistrictCode: selectedDistrictCode, - // selectedBlockCode: selectedBlockCode, selectedBlock: selectedBlock, selectedSort: selectedSort, selectedFilter: selectedFilter, @@ -1340,9 +971,6 @@ const Center: React.FC = () => { statusInactive: true, selectedTenant: selectedTenant, handleTenantChange: handleTenantChange, - // handleStateChange: handleStateChange, - handleDistrictChange: handleDistrictChange, - handleBlockChange: handleBlockChange, handleSortChange: handleSortChange, handleFilterChange: handleFilterChange, handleSearch: handleSearch, diff --git a/src/pages/learners.tsx b/src/pages/learners.tsx index 16fe32b..0a9c416 100644 --- a/src/pages/learners.tsx +++ b/src/pages/learners.tsx @@ -2,28 +2,15 @@ import React from "react"; import { serverSideTranslations } from "next-i18next/serverSideTranslations"; import UserTable from "@/components/UserTable"; import { useTranslation } from "next-i18next"; -import { Role, FormContextType } from "@/utils/app.constant"; -import CommonUserModal from "@/components/CommonUserModal"; -import useSubmittedButtonStore from "@/utils/useSharedState"; +import { Role } from "@/utils/app.constant"; const Learners: React.FC = () => { const { t } = useTranslation(); const [openAddLearnerModal, setOpenAddLearnerModal] = React.useState(false); - const [submitValue, setSubmitValue] = React.useState(false); - const setSubmittedButtonStatus = useSubmittedButtonStore( - (state: any) => state.setSubmittedButtonStatus - ); const handleOpenAddLearnerModal = () => { setOpenAddLearnerModal(true); }; - const handleModalSubmit = (value: boolean) => { - setSubmitValue(true); - }; - const handleCloseAddLearnerModal = () => { - setSubmittedButtonStatus(false); - setOpenAddLearnerModal(false); - }; const handleAddLearnerClick = () => { handleOpenAddLearnerModal(); }; @@ -34,20 +21,7 @@ const Learners: React.FC = () => { userType={t("SIDEBAR.LEARNERS")} searchPlaceholder={t("LEARNERS.SEARCHBAR_PLACEHOLDER")} handleAddUserClick={handleAddLearnerClick} - parentState={submitValue} /> - {/* */} - {/* */} ); };