FPSMS-frontend
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

598 lines
34 KiB

  1. "use client";
  2. import { CreateItemInputs } from "@/app/api/settings/item/actions";
  3. import {
  4. GridColDef,
  5. GridRowModel,
  6. GridRenderEditCellParams,
  7. GridEditInputCell,
  8. GridRowSelectionModel,
  9. useGridApiRef,
  10. } from "@mui/x-data-grid";
  11. import {MutableRefObject, useCallback, useMemo, useState} from "react";
  12. import { useFormContext } from "react-hook-form";
  13. import { useTranslation } from "react-i18next";
  14. import InputDataGrid, { TableRow } from "../InputDataGrid/InputDataGrid";
  15. import {Box, Grid, Tooltip, Typography} from "@mui/material";
  16. import { ItemQc } from "@/app/api/settings/item";
  17. import { QcChecksInputs } from "@/app/api/settings/qcCheck/actions";
  18. import { GridApiCommunity } from "@mui/x-data-grid/internals";
  19. import { RiceBowl } from "@mui/icons-material";
  20. import EditableSearchResults, {Column} from "@/components/SearchResults/EditableSearchResults";
  21. type Props = {
  22. apiRef: MutableRefObject<GridApiCommunity>
  23. isEdit: Boolean
  24. };
  25. type EntryError =
  26. | {
  27. [field in keyof QcChecksInputs]?: string;
  28. }
  29. | undefined;
  30. export type FGRecord = {
  31. id: string | number
  32. code: string;
  33. name: string;
  34. inStockQty: number;
  35. productionQty?: number;
  36. purchaseQty?: number
  37. }
  38. const ViewByFGDetails: React.FC<Props> = ({ apiRef, isEdit }) => {
  39. const {
  40. t,
  41. i18n: { language },
  42. } = useTranslation();
  43. const {
  44. formState: { errors, defaultValues, touchedFields },
  45. } = useFormContext<CreateItemInputs>();
  46. // const apiRef = useGridApiRef();
  47. const dayPeriod = [
  48. '2025-05-11',
  49. '2025-05-12',
  50. '2025-05-13',
  51. '2025-05-14',
  52. '2025-05-15',
  53. '2025-05-16',
  54. '2025-05-17',
  55. ];
  56. const fakeRecordLine = useMemo<FGRecord[][]>(
  57. () => [
  58. [
  59. { id: 1, code: "mt1", name: "material 1", inStockQty: 10, purchaseQty: 1 },
  60. { id: 2, code: "mt2", name: "material 2", inStockQty: 20, purchaseQty: 199 },
  61. ],
  62. [
  63. { id: 3, code: "mt3", name: "material 3", inStockQty: 30, purchaseQty: 3 },
  64. { id: 4, code: "mt4", name: "material 4", inStockQty: 40, purchaseQty: 499 },
  65. ],
  66. [
  67. { id: 5, code: "mt5", name: "material 5", inStockQty: 50, purchaseQty: 5 },
  68. { id: 6, code: "mt6", name: "material 6", inStockQty: 60, purchaseQty: 699 },
  69. ],
  70. [
  71. { id: 7, code: "mt7", name: "material 7", inStockQty: 70, purchaseQty: 7 },
  72. { id: 8, code: "mt8", name: "material 8", inStockQty: 80, purchaseQty: 899 },
  73. ],
  74. [
  75. { id: 9, code: "mt9", name: "material 9", inStockQty: 90, purchaseQty: 9 },
  76. { id: 10, code: "mt10", name: "material 10", inStockQty: 100, purchaseQty: 999 },
  77. ],
  78. [
  79. { id: 11, code: "mt11", name: "material 11", inStockQty: 110, purchaseQty: 11 },
  80. { id: 12, code: "mt12", name: "material 12", inStockQty: 120, purchaseQty: 1299 },
  81. ],
  82. [
  83. { id: 13, code: "mt13", name: "material 13", inStockQty: 130, purchaseQty: 13 },
  84. { id: 14, code: "mt14", name: "material 14", inStockQty: 140, purchaseQty: 1499 },
  85. ],
  86. ],
  87. []
  88. );
  89. const fakeRecords = useMemo<FGRecord[][]>(
  90. () => [
  91. [
  92. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  93. lines: [
  94. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  95. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  96. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  97. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  98. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  99. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  100. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  101. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  102. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  103. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  104. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  105. ]
  106. },
  107. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  108. lines: [
  109. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  110. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  111. ]
  112. },
  113. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  114. lines: [
  115. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  116. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  117. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  118. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  119. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  120. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  121. ]
  122. },
  123. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  124. lines: [
  125. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  126. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  127. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  128. ]
  129. },
  130. ],
  131. [
  132. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  133. lines: [
  134. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  135. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  136. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  137. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  138. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  139. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  140. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  141. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  142. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  143. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  144. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  145. ]
  146. },
  147. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  148. lines: [
  149. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  150. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  151. ]
  152. },
  153. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  154. lines: [
  155. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  156. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  157. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  158. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  159. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  160. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  161. ]
  162. },
  163. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  164. lines: [
  165. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  166. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  167. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  168. ]
  169. },
  170. ],
  171. [
  172. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  173. lines: [
  174. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  175. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  176. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  177. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  178. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  179. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  180. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  181. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  182. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  183. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  184. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  185. ]
  186. },
  187. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  188. lines: [
  189. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  190. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  191. ]
  192. },
  193. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  194. lines: [
  195. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  196. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  197. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  198. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  199. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  200. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  201. ]
  202. },
  203. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  204. lines: [
  205. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  206. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  207. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  208. ]
  209. },
  210. ],
  211. [
  212. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  213. lines: [
  214. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  215. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  216. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  217. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  218. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  219. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  220. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  221. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  222. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  223. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  224. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  225. ]
  226. },
  227. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  228. lines: [
  229. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  230. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  231. ]
  232. },
  233. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  234. lines: [
  235. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  236. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  237. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  238. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  239. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  240. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  241. ]
  242. },
  243. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  244. lines: [
  245. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  246. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  247. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  248. ]
  249. },
  250. ],
  251. [
  252. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  253. lines: [
  254. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  255. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  256. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  257. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  258. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  259. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  260. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  261. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  262. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  263. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  264. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.00 },
  265. ]
  266. },
  267. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  268. lines: [
  269. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  270. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  271. ]
  272. },
  273. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  274. lines: [
  275. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  276. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  277. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  278. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  279. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  280. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  281. ]
  282. },
  283. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  284. lines: [
  285. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  286. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  287. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  288. ]
  289. },
  290. ],
  291. [
  292. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  293. lines: [
  294. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  295. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  296. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  297. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  298. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  299. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  300. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  301. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  302. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  303. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  304. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  305. ]
  306. },
  307. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  308. lines: [
  309. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  310. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  311. ]
  312. },
  313. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  314. lines: [
  315. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  316. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  317. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  318. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  319. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  320. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  321. ]
  322. },
  323. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  324. lines: [
  325. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  326. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  327. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  328. ]
  329. },
  330. ],
  331. [
  332. { id: 1, code: "PP1080", name: "咖哩汁", inStockQty: 2400, productionQty: 1200.0,
  333. lines: [
  334. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0 , purchaseQty: 108.88 },
  335. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 635.04 },
  336. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 18.00 },
  337. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 12.08 },
  338. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 12.08 },
  339. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 0 , purchaseQty: 12.08 },
  340. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 483.96 },
  341. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 72.00 },
  342. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 154.84 },
  343. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 120.00 },
  344. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 200.0 },
  345. ]
  346. },
  347. { id: 2, code: "PP1193", name: "蔥油(1磅) ", inStockQty: 1322, productionQty: 661,
  348. lines: [
  349. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  350. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  351. ]
  352. },
  353. { id: 3, code: " PP1188", name: "咖喱膽", inStockQty: 1016.2, productionQty: 508.1,
  354. lines: [
  355. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  356. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  357. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  358. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  359. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  360. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  361. ]
  362. },
  363. { id: 4, code: " PP1096", name: "白麵撈", inStockQty: 1040, productionQty: 520,
  364. lines: [
  365. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  366. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  367. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  368. ]
  369. },
  370. ],
  371. ],
  372. []
  373. );
  374. const [pagingController, setPagingController] = useState([
  375. {
  376. pageNum: 1,
  377. pageSize: 10,
  378. totalCount: 0,
  379. },
  380. {
  381. pageNum: 1,
  382. pageSize: 10,
  383. totalCount: 0,
  384. },
  385. {
  386. pageNum: 1,
  387. pageSize: 10,
  388. totalCount: 0,
  389. },
  390. {
  391. pageNum: 1,
  392. pageSize: 10,
  393. totalCount: 0,
  394. },
  395. {
  396. pageNum: 1,
  397. pageSize: 10,
  398. totalCount: 0,
  399. },
  400. {
  401. pageNum: 1,
  402. pageSize: 10,
  403. totalCount: 0,
  404. },
  405. {
  406. pageNum: 1,
  407. pageSize: 10,
  408. totalCount: 0,
  409. },
  410. {
  411. pageNum: 1,
  412. pageSize: 10,
  413. totalCount: 0,
  414. },
  415. ])
  416. const updatePagingController = (updatedObj) => {
  417. setPagingController((prevState) => {
  418. return prevState.map((item, index) => {
  419. if (index === updatedObj?.index){
  420. return {
  421. ...item,
  422. pageNum: item.pageNum,
  423. pageSize: item.pageSize,
  424. totalCount: item.totalCount,
  425. };
  426. }
  427. else
  428. return item
  429. });
  430. });
  431. };
  432. const columns = useMemo<Column<any>[]>(
  433. () => [
  434. {
  435. field: "name",
  436. label: "name",
  437. type: 'read-only',
  438. },
  439. {
  440. field: "code",
  441. label: "code",
  442. type: 'read-only',
  443. // editable: true,
  444. },
  445. {
  446. field: "inStockQty",
  447. label: "In Stock Amount",
  448. type: 'read-only',
  449. // editable: true,
  450. },
  451. {
  452. field: "productionQty",
  453. label: "Production Qty",
  454. type: 'input',
  455. },
  456. ],
  457. []
  458. );
  459. const overallColumns = useMemo<Column<any>[]>(
  460. () => [
  461. {
  462. field: "name",
  463. label: "name",
  464. type: 'read-only',
  465. },
  466. {
  467. field: "code",
  468. label: "code",
  469. type: 'read-only',
  470. // editable: true,
  471. },
  472. {
  473. field: "lastMonthAvgStock",
  474. label: "Last Month Average Stock",
  475. type: 'read-only',
  476. // editable: true,
  477. },
  478. {
  479. field: "safetyStock",
  480. label: "Safety Stock",
  481. type: 'read-only',
  482. // editable: true,
  483. },
  484. {
  485. field: "inStockQty",
  486. label: "In Stock Amount",
  487. type: 'read-only',
  488. // editable: true,
  489. },
  490. {
  491. field: "productionQty",
  492. label: "Production Qty",
  493. type: 'input',
  494. },
  495. ],
  496. []
  497. );
  498. const fakeOverallRecords = useMemo<FGRecord[]>(
  499. () => [
  500. { id: 1, code: "PP1080", name: "咖哩汁", lastMonthAvgStock: 2400, safetyStock: 2400, inStockQty: 2400, productionQty: 8400.0,
  501. lines: [
  502. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 54.44 , purchaseQty: 544.4 },
  503. { id: 2, code: "GI3236", name: "清水(煮過牛腩)", inStockQty: 317.52 , purchaseQty: 3175.2 },
  504. { id: 3, code: "MG1700", name: "STERILTOM 意大利茄粒", inStockQty: 9.00 , purchaseQty: 90 },
  505. { id: 4, code: "FA0533", name: "乾蔥茸", inStockQty: 6.04 , purchaseQty: 60.4 },
  506. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 6.04 , purchaseQty: 60.4 },
  507. { id: 6, code: "FA0608", name: "粗蒜茸", inStockQty: 6.04 , purchaseQty: 60.4 },
  508. { id: 7, code: "FA0056", name: "洋蔥肉", inStockQty: 241.98 , purchaseQty: 2419.8 },
  509. { id: 8, code: "PP1188", name: "咖喱膽", inStockQty: 36.00 , purchaseQty: 360 },
  510. { id: 9, code: "PP8001", name: "咖哩汁箱料粉", inStockQty: 77.42 , purchaseQty: 774.2 },
  511. { id: 10, code: "PP1096", name: "白麵撈", inStockQty: 60.00 , purchaseQty: 600 },
  512. { id: 10, code: "NA0476", name: "2磅份量三邊覆合袋 (0.1x225x260mm)個計", inStockQty: 600.00 , purchaseQty: 6000 },
  513. ]
  514. },
  515. { id: 2, code: "PP1193", name: "蔥油(1磅) ", lastMonthAvgStock: 1320, safetyStock: 1322, inStockQty: 1322, productionQty: 4627,
  516. lines: [
  517. { id: 2, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 20 },
  518. { id: 3, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 10 }
  519. ]
  520. },
  521. { id: 3, code: " PP1188", name: "咖喱膽", lastMonthAvgStock: 1017, safetyStock: 1017, inStockQty: 1016.2, productionQty: 3556.7,
  522. lines: [
  523. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 217.72 },
  524. { id: 2, code: "FA0161", name: "洋蔥粒", inStockQty: 0, purchaseQty: 18.15 },
  525. { id: 3, code: "FA0608", name: "粗蒜茸", inStockQty: 0, purchaseQty: 18.15 },
  526. { id: 4, code: "MG1288", name: "炸紅蔥頭", inStockQty: 0, purchaseQty: 6.05 },
  527. { id: 5, code: "FA0210", name: "薑茸", inStockQty: 0, purchaseQty: 6.05 },
  528. { id: 6, code: "MG0066", name: "咖哩料(5斤x16包+2斤/包)", inStockQty: 0, purchaseQty: 241.98 },
  529. ]
  530. },
  531. { id: 4, code: " PP1096", name: "白麵撈", lastMonthAvgStock: 1040, safetyStock: 1040, inStockQty: 1040, productionQty: 3640,
  532. lines: [
  533. { id: 1, code: "MH0040", name: "大豆油(1噸/桶)", inStockQty: 0, purchaseQty: 190.00 },
  534. { id: 1, code: "MH0040", name: "星加坡綠富貴花牌幼白麵粉 (50磅/包)", inStockQty: 0, purchaseQty: 250.00 },
  535. { id: 2, code: "FA0161", name: "蔥油", inStockQty: 1322, purchaseQty: 0 },
  536. ]
  537. },
  538. ],
  539. []
  540. );
  541. return (
  542. <Grid container spacing={2}>
  543. <Grid item xs={12} key={"all"}>
  544. <Typography variant="overline" display="block" marginBlockEnd={1}>
  545. Overall
  546. </Typography>
  547. <EditableSearchResults<FGRecord>
  548. index={7}
  549. items={fakeOverallRecords}
  550. isMockUp={true}
  551. columns={overallColumns}
  552. setPagingController={updatePagingController}
  553. pagingController={pagingController[7]}
  554. isAutoPaging={false}
  555. isHideButton={true}
  556. isEdit={isEdit}
  557. hasCollapse={true}
  558. />
  559. </Grid>
  560. {dayPeriod.map((date, index) => (
  561. <Grid item xs={12} key={index}>
  562. <Typography variant="overline" display="block" marginBlockEnd={1}>
  563. {date}
  564. </Typography>
  565. <EditableSearchResults<FGRecord>
  566. items={fakeRecords[index]} // Use the corresponding records for the day
  567. isMockUp={true}
  568. columns={columns}
  569. setPagingController={updatePagingController}
  570. pagingController={pagingController[index]}
  571. isAutoPaging={false}
  572. isHideButton={false}
  573. isEdit={isEdit}
  574. hasCollapse={true}
  575. />
  576. </Grid>
  577. ))}
  578. </Grid>
  579. );
  580. };
  581. export default ViewByFGDetails;