92 lines
2.7 KiB
TypeScript
92 lines
2.7 KiB
TypeScript
import axios from "axios";
|
|
import { prodEndpointCreation } from "../../../../../globalUtils/createUrl.js";
|
|
import { lstAuth } from "../../../../../index.js";
|
|
import { createLog } from "../../../../logger/logger.js";
|
|
import { db } from "../../../../../../database/dbclient.js";
|
|
import { prodlabels } from "../../../../../../database/schema/prodLabels.js";
|
|
import { eq, sql } from "drizzle-orm";
|
|
|
|
export const delieryInhouse = async (data: any) => {
|
|
// update sscc so we can book in
|
|
const SSCC = data.SSCC.slice(2);
|
|
// api url
|
|
const url = await prodEndpointCreation(
|
|
"/public/v1.0/Warehousing/InhouseDelivery"
|
|
);
|
|
|
|
// create bookin
|
|
const newDelivery = {
|
|
scannerId: 99,
|
|
sscc: SSCC,
|
|
};
|
|
|
|
try {
|
|
const res = await axios.post(url, newDelivery, {
|
|
headers: {
|
|
Authorization: `Basic ${lstAuth}`,
|
|
accept: "text/plain",
|
|
},
|
|
});
|
|
|
|
if (res.data.Result !== 0) {
|
|
createLog(
|
|
"error",
|
|
"labeling",
|
|
"ocp",
|
|
`${data.printer.name}, Error:${res.data.Message}`
|
|
);
|
|
//printerUpdate(data.printer, 7, "Error while deliverying inhouse.");
|
|
|
|
return {
|
|
success: true,
|
|
message: `${data.printer.name} had an error while trying to deliver.`,
|
|
data: res.data,
|
|
};
|
|
} // label was just delivered
|
|
createLog(
|
|
"info",
|
|
"labeling",
|
|
"ocp",
|
|
`${parseInt(data.SSCC.slice(10, -1))}, was just delivered`
|
|
);
|
|
|
|
try {
|
|
await db
|
|
.update(prodlabels)
|
|
.set({
|
|
status: "Delivered",
|
|
upd_date: sql`NOW()`,
|
|
})
|
|
.where(
|
|
eq(prodlabels.runningNr, parseInt(data.SSCC.slice(10, -1)))
|
|
);
|
|
} catch (error) {
|
|
createLog(
|
|
"error",
|
|
"labeling",
|
|
"ocp",
|
|
`Error updating ${parseInt(data.SSCC.slice(10, -1))} in the DB.`
|
|
);
|
|
return {
|
|
success: true,
|
|
message: `Error updating ${parseInt(
|
|
data.SSCC.slice(10, -1)
|
|
)} in the DB.`,
|
|
data: error,
|
|
};
|
|
}
|
|
} catch (error) {
|
|
createLog(
|
|
"error",
|
|
"labeling",
|
|
"ocp",
|
|
`${data.printer.name}, "Error: ${error}`
|
|
);
|
|
return {
|
|
success: true,
|
|
message: `Error deliverying ${parseInt(data.SSCC.slice(10, -1))}.`,
|
|
data: error,
|
|
};
|
|
}
|
|
};
|