OrgCourseWiseAdmission
OrgCourseWiseAdmissionYash
javascript
20 days ago
6.6 kB
2
Indexable
// export const OrgCourseWiseAdmission = ({ branchData, CourseData, courseWiseStnData }) => { // const tdStyle = { color: 'gray.600' } // const stnData = map(courseWiseStnData, (item) => item?.totalAdmission) // const activeStnData = map(courseWiseStnData, (item) => item?.active) // const inactiveStnData = map(courseWiseStnData, (item) => item?.inactive) // const grpData = useMemo(() => { // const grpedData = {}; // for (let i = 0; i < courseWiseStnData?.length; i++) { // const branch = find(CourseData, cd => cd?._id === courseWiseStnData[i]?.courseId)?.branch?._id; // if (branch) { // if (!grpedData[branch]) { // grpedData[branch] = [courseWiseStnData[i]]; // } else { // grpedData[branch].push(courseWiseStnData[i]); // } // } // } // return grpedData; // }, [courseWiseStnData, CourseData]); // return ( // <VStack align={'stretch'} flex={1}> // <HStack justify={'space-between'}> // <HStack px={4}> // <Text fontWeight={'bold'} fontSize='lg'>Course Wise Admission</Text> // </HStack> // </HStack> // <Box // flex={1} // border={'1px solid'} borderColor='gray.100' // bg={'white'} borderRadius={10} // boxShadow='sm' // maxH={"40vh"} // overflow={"auto"} // className="scrollbar-1" // > // {size(courseWiseStnData) > 0 ? // <Table size={'sm'} variant='simple'> // <Thead> // <Tr // color="#6C757D" // position="sticky" // top="0" // left="0" // bg="gray.100" // zIndex="2" // > // <Th>Courses</Th> // <Th isNumeric>Active</Th> // <Th isNumeric>Inactive</Th> // <Th isNumeric>No. of Students</Th> // </Tr> // </Thead> // <Tbody> // {grpData ? map(Object.entries(grpData), ([branchId, CourseList]) => { // const branchName = find(branchData, bd => bd?._id === branchId)?.name // const totalAddmissionBranchWise = sumBy(CourseList, (item) => item?.totalAdmission) // const totalActiveBranchWise = sumBy(CourseList, (item) => item?.active) // const totalInactiveBranchWise = sumBy(CourseList, (item) => item?.inactive) // return ( // <> // {size(CourseList) > 0 ? <Tr key={branchId} bg="gray.50" position="sticky" top={"20px"} zIndex="3"> // <Td fontWeight="bold"> // {branchName} // </Td> // <Td fontWeight="bold" isNumeric> // {totalActiveBranchWise} // </Td> // <Td fontWeight="bold" isNumeric> // {totalInactiveBranchWise} // </Td> // <Td fontWeight="bold" isNumeric> // {totalAddmissionBranchWise} // </Td> // </Tr> : ""} // { // map(CourseList, (item) => { // const crc = find(CourseData, crc => crc?._id == item?.courseId) // return (<Tr key={crc?._id}> // <Td {...tdStyle}> // <Text>{crc?.name} {crc?.session ? `(${crc?.session})` : ""}</Text> // </Td> // <Td isNumeric>{item?.active ?? 0}</Td> // <Td isNumeric>{item?.inactive ?? 0}</Td> // <Td isNumeric {...tdStyle}> // <Text>{item?.totalAdmission}</Text> // </Td> // </Tr>) // }) // } // </> // ) // }) : "No Data"} // </Tbody> // <Tfoot> // <Tr // color="#6C757D" // position="sticky" // bottom="0" // left="0" // bg="gray.50" // zIndex="4" // > // <Th color={'blue.500'}>Total</Th> // <Th color={'blue.500'} fontSize={'sm'} isNumeric>{sum(activeStnData)}</Th> // <Th color={'blue.500'} fontSize={'sm'} isNumeric>{sum(inactiveStnData)}</Th> // <Th color={'blue.500'} fontSize={'sm'} isNumeric>{sum(stnData)}</Th> // </Tr> // </Tfoot> // </Table> // : // <Text color={'gray.500'}>No Data</Text> // } // </Box> // </VStack> // ) // }
Editor is loading...
Leave a Comment