Compare commits

...

6 Commits

7 changed files with 229 additions and 247 deletions

View File

@@ -207,7 +207,7 @@ export default function TransferToNextLot() {
<span>"EOM Transfer"</span>
<Tooltip>
<TooltipTrigger>
<Info className="h-[16px] w-[16px]" />
<Info className="h-4 w-4" />
</TooltipTrigger>
<TooltipContent>
<p>
@@ -223,7 +223,7 @@ export default function TransferToNextLot() {
<span>"Lot Transfer"</span>
<Tooltip>
<TooltipTrigger>
<Info className="h-[16px] w-[16px]" />
<Info className="h-4 w-4" />
</TooltipTrigger>
<TooltipContent>
<p>

View File

@@ -0,0 +1 @@
export const abbottForecast = async () => {};

View File

@@ -1,13 +1,14 @@
import { addDays } from "date-fns";
import XLSX from "xlsx";
import { db } from "../../../../../../../database/dbclient.js";
import { settings } from "../../../../../../../database/schema/settings.js";
import { tryCatch } from "../../../../../../globalUtils/tryCatch.js";
import XLSX from "xlsx";
import { postForecast } from "../postForecast.js";
import { createLog } from "../../../../../logger/logger.js";
import { sendEmail } from "../../../../../notifications/controller/sendMail.js";
import { query } from "../../../../../sqlServer/prodSqlServer.js";
import { activeArticle } from "../../../../../sqlServer/querys/dataMart/article.js";
import { addDays } from "date-fns";
import { sendEmail } from "../../../../../notifications/controller/sendMail.js";
import { createLog } from "../../../../../logger/logger.js";
import { excelDateStuff } from "../../../../utils/excelDateStuff.js";
import { postForecast } from "../postForecast.js";
export const energizerForecast = async (data: any, user: any) => {
/**
@@ -55,23 +56,29 @@ export const energizerForecast = async (data: any, user: any) => {
for (let j = 1; j < row.length; j++) {
const qty = row[j];
if (qty && qty !== 0) {
if (qty && qty > 0) {
const requirementDate = rows[0][j]; // first row is dates
const date = isNaN(requirementDate)
? new Date(requirementDate)
: excelDateStuff(requirementDate);
console.log(isNaN(requirementDate), requirementDate, date);
posting.push({
customerArticleNo: material,
quantity: qty,
requirementDate: new Date(requirementDate),
requirementDate: date,
});
}
}
}
//console.log(posting);
// the predefined data that will never change
const predefinedObject = {
receivingPlantId: plantToken[0].value,
documentName: `ForecastFromLST-${new Date(Date.now()).toLocaleString(
"en-US"
"en-US",
)}`,
sender: user.username || "lst-system",
customerId: customerId,

View File

@@ -1,11 +1,11 @@
import XLSX from "xlsx";
import { tryCatch } from "../../../../../../globalUtils/tryCatch.js";
import { db } from "../../../../../../../database/dbclient.js";
import { settings } from "../../../../../../../database/schema/settings.js";
import { tryCatch } from "../../../../../../globalUtils/tryCatch.js";
import { query } from "../../../../../sqlServer/prodSqlServer.js";
import { invoiceAddress } from "../../../../../sqlServer/querys/dm/invoiceAddress.js";
import { orderState } from "../../../../../sqlServer/querys/dm/orderState.js";
import { excelDateStuff } from "../../../../utils/excelDateStuff.js";
import { invoiceAddress } from "../../../../../sqlServer/querys/dm/invoiceAddress.js";
import { postOrders } from "../postOrders.js";
export const energizerOrders = async (data: any, user: any) => {
@@ -25,7 +25,7 @@ export const energizerOrders = async (data: any, user: any) => {
// order state
const { data: o, error: oe } = await tryCatch(
query(orderState, "Gets the next 500 orders that have not been started")
query(orderState, "Gets the next 500 orders that have not been started"),
);
const openOrders: any = o?.data;
@@ -40,7 +40,7 @@ export const energizerOrders = async (data: any, user: any) => {
// order state
const { data: invoice, error: ie } = await tryCatch(
query(invoiceAddress, "Gets invoices addresses")
query(invoiceAddress, "Gets invoices addresses"),
);
const i: any = invoice?.data;
@@ -83,11 +83,11 @@ export const energizerOrders = async (data: any, user: any) => {
const predefinedObject = {
receivingPlantId: plantToken[0].value,
documentName: `OrdersFromLST-${new Date(Date.now()).toLocaleString(
"en-US"
"en-US",
)}`,
sender: user.username || "lst-system",
externalRefNo: `OrdersFromLST-${new Date(Date.now()).toLocaleString(
"en-US"
"en-US",
)}`,
orders: [],
};
@@ -97,8 +97,8 @@ export const energizerOrders = async (data: any, user: any) => {
// filter out the orders that have already been started just to reduce the risk of errors.
newOrders.filter((oo: any) =>
openOrders.some(
(o: any) => o.CustomerOrderNumber === oo.CustomerOrderNumber
)
(o: any) => o.CustomerOrderNumber === oo.CustomerOrderNumber,
),
);
// filter out the blanks
@@ -119,7 +119,7 @@ export const energizerOrders = async (data: any, user: any) => {
// // map everything out for each order
const nOrder = newOrders.map((o: any) => {
const invoice = i.filter(
(i: any) => i.deliveryAddress === parseInt(o.CUSTOMERID)
(i: any) => i.deliveryAddress === parseInt(o.CUSTOMERID),
);
if (!invoice) {
return;
@@ -137,7 +137,7 @@ export const energizerOrders = async (data: any, user: any) => {
deliveryDate: o.DELDATE, //excelDateStuff(o.DELDATE),
customerLineItemNo: o.ReleaseNo, // this is how it is currently sent over from abbott
customerReleaseNo: o.ReleaseNo, // same as above
remark: o.remark === "" ? null : o.remark,
remark: o.COMMENTS === "" ? null : o.COMMENTS,
},
],
};

View File

@@ -47,7 +47,7 @@ export const printerDelayByLot = async (lot: any) => {
})
.where(
and(
eq(printerData.humanReadableId, lot[i].printerID),
eq(printerData.humanReadableId, lot[i]?.printerID),
eq(printerData.printDelayOverride, false),
),
),

View File

@@ -46,9 +46,17 @@ app.openapi(
return c.json({ success: false, message: "missing data" }, 400);
}
//console.log(`Tag: ${Buffer.from(body.idHex, "hex").toString("utf-8")}, ${body[key].data.idHex}`);
createLog(
"info",
"rfid-tag",
"rfid",
`Tag Data from ${reader}: ${JSON.stringify(body)}`,
);
for (let i = 0; i < body.length; i++) {
const tag = Buffer.from(body[i].data.idHex, "hex").toString("utf-8");
const tag = Buffer.from(body[i].data.idHex, "hex")
.toString("utf-8")
.replace("\x00\x00", "");
// console.log(
// "Raw value:",
// body[i].data.peakRssi,

View File

@@ -1,34 +0,0 @@
export const planningNumbersByAVDate = `
use AlplaPROD_test1
declare @start_date nvarchar(30) = '[startDate]' --'2025-01-01'
declare @end_date nvarchar(30) = '[endDate]' --'2025-08-09'
/*
articles will need to be passed over as well as the date structure we want to see
*/
select x.IdArtikelvarianten As Article,
ProduktionAlias as Description,
standort as MachineId,
MaschinenBezeichnung as MachineName,
--MaschZyklus as PlanningCycleTime,
x.IdProdPlanung as LotNumber,
FORMAT(ProdTag, 'MM/dd/yyyy') as ProductionDay,
x.planMenge as TotalPlanned,
ProduktionMenge as QTYPerDay,
round(ProduktionMengeVPK, 2) PalDay,
Status as finished
--MaschStdAuslastung as nee
from dbo.V_ProdLosProduktionJeProdTag_PLANNING (nolock) as x
left join
dbo.V_ProdPlanung (nolock) as p on
x.IdProdPlanung = p.IdProdPlanung
where ProdTag between @start_date and @end_date
and p.IdArtikelvarianten in ([articles])
--and V_ProdLosProduktionJeProdTag_PLANNING.IdKunde = 10
--and IdProdPlanung = 18442
order by ProdTag desc
`;