59 lines
1.5 KiB
TypeScript
59 lines
1.5 KiB
TypeScript
import { OpenAPIHono } from "@hono/zod-openapi";
|
|
|
|
// routes
|
|
import getInfo from "./route/getInfo.js";
|
|
import postRunningNr from "./route/postRunningNumber.js";
|
|
import pickedup from "./route/pickedUp.js";
|
|
import postsscc from "./route/postSSCC.js";
|
|
import getShipments from "./route/getShipmentPallets.js";
|
|
import cycleCount from "./route/cycleCount.js";
|
|
import { serve } from "@hono/node-server";
|
|
import { createLog } from "../logger/logger.js";
|
|
import { db } from "../../../database/dbclient.js";
|
|
import { settings } from "../../../database/schema/settings.js";
|
|
import manualTrigger from "./route/triggerCamera.js";
|
|
|
|
const app = new OpenAPIHono();
|
|
const port = process.env.OCME_PORT;
|
|
const routes = [
|
|
getInfo,
|
|
postRunningNr,
|
|
postsscc,
|
|
pickedup,
|
|
getShipments,
|
|
cycleCount,
|
|
manualTrigger,
|
|
] as const;
|
|
const setting = await db.select().from(settings);
|
|
|
|
const isActive = setting.filter((n) => n.name === "ocmeService");
|
|
const appRoutes = routes.forEach((route) => {
|
|
app.route("/api/v1", route);
|
|
});
|
|
|
|
app.all("/api/v1/*", (c) => {
|
|
return c.json({
|
|
success: false,
|
|
message: "you have encounted an ocme route that dose not exist.",
|
|
});
|
|
});
|
|
if (port && isActive[0]?.value === "1") {
|
|
serve(
|
|
{
|
|
fetch: app.fetch,
|
|
port: Number(port),
|
|
hostname: "0.0.0.0",
|
|
},
|
|
(info) => {
|
|
createLog(
|
|
"info",
|
|
"LST",
|
|
"server",
|
|
`Ocme section is listening on http://${info.address}:${info.port}`
|
|
);
|
|
}
|
|
);
|
|
}
|
|
|
|
export default app;
|