diff --git a/public/locales/en/common.json b/public/locales/en/common.json index fbc4327c..a1a0141a 100644 --- a/public/locales/en/common.json +++ b/public/locales/en/common.json @@ -81,7 +81,7 @@ "DASHBOARD": "Dashboard", "MANAGE_USERS": "Manage Users", "COURSE_PLANNER": "Course Planner", - "CENTER": "Center", + "CENTER": "Centers", "FACILITATORS": "Facilitators", "LEARNERS": "Learners", "TEAM_LEADERS": "Team Leaders", @@ -176,7 +176,7 @@ "RENAME": "Rename", "CENTER_RENAMED": "Center Renamed Successfully!", "SEND_REQUEST": "Send Request", - "SURE_DELETE_CENTER": "Are you sure you want to Delete Center ?", + "SURE_DELETE_CENTER": "Are you sure you want to Delete Center?", "CENTER_UPDATE_SUCCESSFULLY": "Center has been Successfully Updated", "CENTER_DELETE_SUCCESSFULLY": "Center has been Successfully Deleted", "CENTER_CREATED_SUCCESSFULLY": "Center Created Successfully", @@ -245,7 +245,7 @@ "DESIGNATION": "Designation", "REGULAR": "Regular", "REMOTE": "Remote", - "NOTE_THIS_WILL_BE_CENTER_NAME": "Note : This Will Be Center Name", + "NOTE_THIS_WILL_BE_CENTER_NAME": "Note : This will be center name", "STATE": "State", "DISTRICT": "District", "BLOCK": "Block", @@ -254,6 +254,7 @@ "NAME": "Name", "MOBILE_NUMBER": "Mobile Number", "CENTER": "Center" + }, "FORM_ERROR_MESSAGES": { "INVALID_INPUT": "Invalid Input.", diff --git a/src/data/tableColumns.ts b/src/data/tableColumns.ts index 8acf77ad..e54d4ebc 100644 --- a/src/data/tableColumns.ts +++ b/src/data/tableColumns.ts @@ -181,6 +181,13 @@ export const getCenterTableData = (t: any, isMobile: any) => { width: isMobile ? 95 : "", }, + { + key: "customFieldValues", + title: t("FORM.TYPE_OF_COHORT"), + dataType: DataType.String, + sortDirection: SortDirection.Ascend, + width: isMobile ? 95 : "", + }, { key: "actions", title: t("TABLE_TITLE.ACTIONS"), diff --git a/src/pages/centers.tsx b/src/pages/centers.tsx index 7f33a6be..b7006506 100644 --- a/src/pages/centers.tsx +++ b/src/pages/centers.tsx @@ -1,4 +1,4 @@ -import React, { ChangeEvent, useState, useEffect } from "react"; +import React, { ChangeEvent, useState, useEffect, useCallback } from "react"; import KaTableComponent from "../components/KaTableComponent"; import { DataType, SortDirection } from "ka-table/enums"; import { serverSideTranslations } from "next-i18next/serverSideTranslations"; @@ -25,6 +25,7 @@ import { showToastMessage } from "@/components/Toastify"; import AddNewCenters from "@/components/AddNewCenters"; import { getCenterTableData } from "@/data/tableColumns"; import { Theme } from "@mui/system"; +import { debounce, firstLetterInUpperCase } from "@/utils/Helper"; type cohortFilterDetails = { type?: string; @@ -32,8 +33,18 @@ type cohortFilterDetails = { states?: string; districts?: string; blocks?: string; + name?:string }; +interface centerData { + name?: string; + status?: string; + updatedBy?: string; + createdBy?: string; + createdAt?: string; + updatedAt?: string; + customFieldValues?: string; +} interface CohortDetails { name?: string; type?: string; @@ -79,6 +90,7 @@ const Center: React.FC = () => { const [selectedDistrictCode, setSelectedDistrictCode] = useState(""); const [selectedBlockCode, setSelectedBlockCode] = useState(""); const [formdata, setFormData] = useState(); + const [totalCount,setTotalCound] = useState(0) const handleCloseAddLearnerModal = () => { setOpenAddNewCohort(false); }; @@ -111,9 +123,26 @@ const Center: React.FC = () => { const resp = await getCohortList(data); if (resp) { const result = resp?.results?.cohortDetails; - setCohortData(result); + const resultData:centerData[] = [] + result?.forEach((item:any)=>{ + const cohortType = item?.customFields?.map((field:any) => firstLetterInUpperCase(field?.value)) + const requiredData = { + name:item?.name, + status:item?.status, + updatedBy: item?.updatedBy, + createdBy: item?.createdBy, + createdAt: item?.createdAt, + updatedAt: item?.updatedAt, + customFieldValues:cohortType || "" + } + resultData?.push(requiredData) + }) + setCohortData(resultData); const totalCount = resp?.count; - if (totalCount >= 15) { + setTotalCound(totalCount) + if (totalCount >= 20) { + setPageSizeArray([5, 10, 15,20]); + }else if (totalCount >= 15) { setPageSizeArray([5, 10, 15]); } else if (totalCount >= 10) { setPageSizeArray([5, 10]); @@ -504,7 +533,7 @@ const Center: React.FC = () => { data={cohortData} limit={pageLimit} offset={pageOffset} - paginationEnable={true} + paginationEnable={totalCount > 5 } PagesSelector={PagesSelector} PageSizeSelector={PageSizeSelectorFunction} pageSizes={pageSizeArray}