// ✨ 오류 검사 - 가공된 데이터 기준 export const isInvalidNumber = (val: any) => { return val !== undefined && val !== null && val !== "" && isNaN(Number(val)); }; export const isInvalidDate = (val: any) => { //yyyymmdd 즉 20201212 이런형식만 허용 return !(typeof val === "string" && /^\d{8}$/.test(val.trim())); }; export const parseRawValue = (val: any): number | string => { if (val === "" || val === undefined || val === null) return 0; if (typeof val === "string" && ["보류", "N/A"].includes(val.trim())) return val; return !isNaN(val) && val !== " " ? Number(val.replaceAll(',','')) : val; }; export const parseCommaRawValue = (val: any): number | string => { if (val === "" || val === undefined || val === null) return 0; // 문자열이고 "보류"나 "N/A"면 그대로 반환 if (typeof val === "string" && ["보류", "N/A"].includes(val.trim())) { return val; } // 문자열에 쉼표가 있으면 제거 if (typeof val === "string" && val.includes(",")) { val = val.replace(/,/g, ""); } // 숫자로 변환 가능하면 숫자로, 아니면 그대로 return !isNaN(val) && val !== " " ? Number(val) : val; };