import { createRoute, OpenAPIHono, z } from "@hono/zod-openapi"; import { apiHit } from "../../../globalUtils/apiHits.js"; import { responses } from "../../../globalUtils/routeDefs/responses.js"; import { runGPQuery } from "../../sqlServer/gpSqlServer.js"; import { getProductionConsumption } from "../controller/getProductionConsumption.js"; const app = new OpenAPIHono({ strict: false }); const EomStat = z.object({ plant: z.string().openapi({ example: "Salt Lake City" }), userRan: z.string().openapi({ example: "smith034" }), eomSheetVersion: z.string().openapi({ example: "0.0.223" }), }); app.openapi( createRoute({ tags: ["eom"], summary: "Gets History Data by date.", method: "get", path: "/productionconsumption", responses: responses(), }), async (c) => { //const body = await c.req.json(); // make sure we have a vaid user being accessed thats really logged in const q: any = c.req.queries(); apiHit(c, { endpoint: "/gpData" }); try { const res = await getProductionConsumption({ startDate: q["startDate"] ? q["startDate"][0] : "", endDate: q["endDate"] ? q["endDate"][0] : "", includePlantToken: q["includePlantToken"] ? true : false, }); return c.json( { success: res.success, message: res.message, data: res.data }, 200 ); } catch (error) { return c.json( { success: false, message: "There was an error getting gp data.", data: error, }, 400 ); } } ); export default app;