Refactor PPC to pull out reusable componenets.

This commit is contained in:
Patrick Fic
2025-04-04 09:12:38 -07:00
parent 85fcecf856
commit f3adc76574
17 changed files with 957 additions and 451 deletions

View File

@@ -0,0 +1,38 @@
import { DBFFile } from "dbffile";
import { envFieldLineDescriptors } from "../util/ems-interface/fielddescriptors/env-field-descriptor";
import { deleteEmsFileIfExists, generatePpcFilePath } from "../util/ems-util";
import { EmsPartsOrder } from "./ems-parts-order-interfaces";
const EmsPartsOrderGenerateEnvFile = async (
partsOrder: EmsPartsOrder,
): Promise<boolean> => {
const records = [
{
EST_SYSTEM: "C",
RO_ID: partsOrder.job.ro_number,
ESTFILE_ID: partsOrder.job.ciecaid,
STATUS: false,
INCL_ADMIN: true,
INCL_VEH: true,
INCL_EST: true,
INCL_PROFL: true,
INCL_TOTAL: true,
INCL_VENDR: false,
},
];
await deleteEmsFileIfExists(
generatePpcFilePath(`${partsOrder.job.ciecaid}.ENV`),
);
const dbf = await DBFFile.create(
generatePpcFilePath(`${partsOrder.job.ciecaid}.ENV`),
envFieldLineDescriptors,
);
await dbf.appendRecords(records);
console.log(`${records.length} LIN file records added.`);
return true;
};
export default EmsPartsOrderGenerateEnvFile;