73 lines
2.2 KiB
TypeScript
73 lines
2.2 KiB
TypeScript
import { db } from "../../../../../../database/dbclient.js";
|
|
import { settings } from "../../../../../../database/schema/settings.js";
|
|
import { tryCatch } from "../../../../../globalUtils/tryCatch.js";
|
|
import { createLog } from "../../../../logger/logger.js";
|
|
import { query } from "../../../../sqlServer/prodSqlServer.js";
|
|
|
|
export const firstLotLabel = async (lot: any) => {
|
|
/*
|
|
currently this is only requested by slc
|
|
|
|
when a lot is finished and not set to over run we will trigger this function to insert data into the custom T_firstLotLabel table.
|
|
|
|
in nice label we look for unique id to run the process and then if the add date is older than 7 days we delete it for tracablility purpose.
|
|
|
|
we will also only do this for specific customers currently henkel is the requested.
|
|
*/
|
|
|
|
/* work on the server side
|
|
new table created in the _cus db
|
|
CREATE TABLE T_firstLotLabel
|
|
(
|
|
ID INT IDENTITY(1,1) PRIMARY KEY,
|
|
printerName varchar(max),
|
|
add_date datetime
|
|
-- Add other columns here as needed
|
|
);
|
|
the nicelabel trigger to be activated.
|
|
*/
|
|
const { data: settingData, error: settingError } = await tryCatch(
|
|
db.select().from(settings)
|
|
);
|
|
|
|
if (settingError) {
|
|
return {
|
|
success: false,
|
|
message: "There was an error getting the settings.",
|
|
settingError,
|
|
};
|
|
}
|
|
// get the plantToken
|
|
const plantToken = settingData.filter((n) => n.name === "plantToken");
|
|
|
|
createLog(
|
|
"info",
|
|
"ocp",
|
|
"ocp",
|
|
`Checking if we can create the first label lot.`
|
|
);
|
|
|
|
if (plantToken[0].value === "usslc1") {
|
|
const newLabel = `insert into T_firstLotLabel (printerName, add_date) VALUES('${lot.PrinterName}', getdate())`;
|
|
|
|
// if (lot.CustomerId === 40) {
|
|
createLog(
|
|
"info",
|
|
"ocp",
|
|
"ocp",
|
|
`Creating first lot label for ${lot.MachineDescription}`
|
|
);
|
|
await query(newLabel, "newLotLabel");
|
|
|
|
createLog(
|
|
"info",
|
|
"ocp",
|
|
"ocp",
|
|
`Was created for ${lot.MachineDescription}`
|
|
);
|
|
//}
|
|
} else {
|
|
return;
|
|
}
|
|
};
|