"use client"; import { CreateItemInputs } from "@/app/api/settings/item/actions"; import { GridColDef, GridRowModel, GridRenderEditCellParams, GridEditInputCell, GridRowSelectionModel, useGridApiRef, } from "@mui/x-data-grid"; import { MutableRefObject, useCallback, useEffect, useMemo, useState, } from "react"; import { useFormContext } from "react-hook-form"; import { useTranslation } from "react-i18next"; import InputDataGrid, { TableRow } from "../InputDataGrid/InputDataGrid"; import { Box, Grid, Tooltip, Typography } from "@mui/material"; import { ItemQc } from "@/app/api/settings/item"; import { QcChecksInputs } from "@/app/api/settings/qcCheck/actions"; import { GridApiCommunity } from "@mui/x-data-grid/internals"; import { RiceBowl } from "@mui/icons-material"; import EditableSearchResults, { Column, } from "@/components/SearchResults/EditableSearchResults"; import { decimalFormatter } from "@/app/utils/formatUtil"; import { GridRenderCellParams } from "@mui/x-data-grid"; type Props = { apiRef: MutableRefObject; isEdit: boolean; }; type EntryError = | { [field in keyof QcChecksInputs]?: string; } | undefined; export type FGRecord = { id: string | number; code: string; name: string; inStockQty: number; purchaseQty: number; }; export type FGOverallRecord = { id: string | number; code: string; name: string; type: string; inStockQty?: number; purchaseQty?: number; purchaseQty1?: number; purchaseQty2?: number; purchaseQty3?: number; purchaseQty4?: number; purchaseQty5?: number; purchaseQty6?: number; purchaseQty7?: number; overallPurchaseQty?: number; }; const ViewByBomDetails: React.FC = ({ apiRef, isEdit }) => { const { t, i18n: { language }, } = useTranslation("schedule"); const { formState: { errors, defaultValues, touchedFields }, } = useFormContext(); // const apiRef = useGridApiRef(); const dayPeriod = [ "2025-05-11", "2025-05-12", "2025-05-13", "2025-05-14", "2025-05-15", "2025-05-16", "2025-05-17", ]; const fakeRecords = useMemo( () => [ [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty: 972.12, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty: 3175.2, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty: 90, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty: 60.4, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty: 66.45, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty: 78.55, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], ], [], ); // const updatePagingController = (updatedObj: { index: number, pageNum: number, pageSize: number, totalCount: number }) => { // setPagingController((prevState) => { // return prevState.map((item, index) => { // if (index === updatedObj?.index){ // return { // ...item, // pageNum: item.pageNum, // pageSize: item.pageSize, // totalCount: item.totalCount, // }; // } // else // return item // }); // }); // }; const fakeOverallRecords = useMemo( () => [ { id: 1, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 54.44, purchaseQty1: 972.12, purchaseQty2: 972.12, purchaseQty3: 972.12, purchaseQty4: 972.12, purchaseQty5: 972.12, purchaseQty6: 972.12, purchaseQty7: 972.12, overallPurchaseQty: 6804.84, }, { id: 2, code: "GI3236", type: "Material", name: "清水(煮過牛腩)", inStockQty: 317.52, purchaseQty1: 3175.2, purchaseQty2: 3175.2, purchaseQty3: 3175.2, purchaseQty4: 3175.2, purchaseQty5: 3175.2, purchaseQty6: 3175.2, purchaseQty7: 3175.2, overallPurchaseQty: 22226.4, }, { id: 3, code: "MG1700", type: "Material", name: "STERILTOM 意大利茄粒", inStockQty: 9.0, purchaseQty1: 90, purchaseQty2: 90, purchaseQty3: 90, purchaseQty4: 90, purchaseQty5: 90, purchaseQty6: 90, purchaseQty7: 90, overallPurchaseQty: 630, }, { id: 4, code: "FA0533", type: "Material", name: "乾蔥茸", inStockQty: 6.04, purchaseQty1: 60.4, purchaseQty2: 60.4, purchaseQty3: 60.4, purchaseQty4: 60.4, purchaseQty5: 60.4, purchaseQty6: 60.4, purchaseQty7: 60.4, overallPurchaseQty: 422.8, }, { id: 5, code: "FA0210", type: "Material", name: "薑茸", inStockQty: 6.04, purchaseQty1: 66.45, purchaseQty2: 66.45, purchaseQty3: 66.45, purchaseQty4: 66.45, purchaseQty5: 66.45, purchaseQty6: 66.45, purchaseQty7: 66.45, overallPurchaseQty: 465.15, }, { id: 6, code: "FA0608", type: "Material", name: "粗蒜茸", inStockQty: 6.04, purchaseQty1: 78.55, purchaseQty2: 78.55, purchaseQty3: 78.55, purchaseQty4: 78.55, purchaseQty5: 78.55, purchaseQty6: 78.55, purchaseQty7: 78.55, overallPurchaseQty: 549.85, }, { id: 7, code: "FA0056", type: "Material", name: "洋蔥肉", inStockQty: 241.98, purchaseQty: 2419.8, }, { id: 8, code: "PP1188", type: "Material", name: "咖喱膽", inStockQty: 36.0, purchaseQty: 0, }, { id: 9, code: "PP8001", type: "Material", name: "咖哩汁箱料粉", inStockQty: 77.42, purchaseQty: 774.2, }, { id: 10, code: "PP1096", type: "Material", name: "白麵撈", inStockQty: 60.0, purchaseQty: 0, }, { id: 11, code: "NA0476", type: "Material", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.0, purchaseQty: 6000, }, { id: 12, code: "MH0040", type: "Material", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 972.12, }, { id: 13, code: "FA0161", type: "Material", name: "洋蔥粒", inStockQty: 0, purchaseQty: 28.15, }, { id: 14, code: "MG1288", type: "Material", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05, }, { id: 15, code: "MG0066", type: "Material", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98, }, { id: 16, code: "MH0040", type: "Material", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.0, }, ], [], ); const [pagingController, setPagingController] = useState([ { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, { pageNum: 1, pageSize: 10, totalCount: 0, }, ]); const updatePagingController = (updatedObj: any) => { setPagingController((prevState) => { return prevState.map((item, index) => { if (index === updatedObj?.index) { return { ...item, pageNum: item.pageNum, pageSize: item.pageSize, totalCount: item.totalCount, }; } else return item; }); }); }; const overallColumns = useMemo[]>( () => [ { field: "code", label: t("code"), type: "read-only", // editable: true, }, { field: "name", label: t("name"), type: "read-only", }, { field: "type", label: t("type"), type: "read-only", // editable: true, }, { field: "inStockQty", label: t("Available Qty"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.inStockQty == "number") { return decimalFormatter.format(row.inStockQty); } return row.inStockQty; }, // editable: true, }, { field: "overallPurchaseQty", label: t("Total Demand Qty"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.overallPurchaseQty == "number") { return decimalFormatter.format(row.overallPurchaseQty); } return row.overallPurchaseQty; }, }, { field: "purchaseQty1", label: t("Demand Qty (Day1)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty1 == "number") { return decimalFormatter.format(row.purchaseQty1); } return row.purchaseQty1; }, }, { field: "purchaseQty2", label: t("Demand Qty (Day2)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty2 == "number") { return decimalFormatter.format(row.purchaseQty2); } return row.purchaseQty2; }, }, { field: "purchaseQty3", label: t("Demand Qty (Day3)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty3 == "number") { return decimalFormatter.format(row.purchaseQty3); } return row.purchaseQty3; }, }, { field: "purchaseQty4", label: t("Demand Qty (Day4)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty4 == "number") { return decimalFormatter.format(row.purchaseQty4); } return row.purchaseQty4; }, }, { field: "purchaseQty5", label: t("Demand Qty (Day5)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty5 == "number") { return decimalFormatter.format(row.purchaseQty5); } return row.purchaseQty5; }, }, { field: "purchaseQty6", label: t("Demand Qty (Day6)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty6 == "number") { return decimalFormatter.format(row.purchaseQty6); } return row.purchaseQty6; }, }, { field: "purchaseQty7", label: t("Demand Qty (Day7)"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGOverallRecord) => { if (typeof row.purchaseQty7 == "number") { return decimalFormatter.format(row.purchaseQty7); } return row.purchaseQty7; }, }, ], [], ); const columns = useMemo[]>( () => [ { field: "code", label: t("code"), type: "read-only", // editable: true, }, { field: "name", label: t("name"), type: "read-only", }, { field: "type", label: t("type"), type: "read-only", }, { field: "inStockQty", label: t("Available Qty"), type: "read-only", // editable: true, style: { textAlign: "right", }, renderCell: (row: FGRecord) => { if (typeof row.inStockQty == "number") { return decimalFormatter.format(row.inStockQty); } return row.inStockQty; }, }, { field: "purchaseQty", label: t("Demand Qty"), type: "read-only", style: { textAlign: "right", }, renderCell: (row: FGRecord) => { if (typeof row.purchaseQty == "number") { return decimalFormatter.format(row.purchaseQty); } return row.purchaseQty; }, }, ], [], ); return ( {t("Material Demand List (7 Days)")} index={7} items={fakeOverallRecords as FGRecord[]} hasCollapse // isMockUp={true} columns={overallColumns} setPagingController={updatePagingController} pagingController={pagingController[7]} isAutoPaging={true} isEditable={false} isEdit={false} /> {dayPeriod.map((date, index) => ( {`${t("Material Demand Date")}: ${date}`} hasCollapse index={index} items={fakeRecords[index]} // Use the corresponding records for the day columns={columns} setPagingController={updatePagingController} pagingController={pagingController[index]} isAutoPaging={true} isEditable={false} isEdit={isEdit} /> ))} ); }; export default ViewByBomDetails;