hrms-report-template/app.ts
2025-02-28 11:43:17 +07:00

35 lines
1.6 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* Report Server
* Web API สำหรับสร้างรายงาน กำหนด Path และเพิ่มฟีเจอร์ได้
* จะใช้ Node.js เป็น reverse proxy ไปหา pandoc ที่ swan ขึ้นมา
* demo frontent อยู่ในโฟลเดอร์ public
*/
import cors from "cors"
import swaggerspecs from "./libs/swagger-specs.json"
import swaggerUi from "swagger-ui-express"
import express, { Express, Request, Response } from "express"
import { docxTemplateRoute } from "./libs/docx-templates-lib"
import { xlsxTemplateRoute } from "./libs/xlsx-template-lib"
import { htmlTemplateRoute } from "./libs/html-templates-lib"
import { convertTemplateRoute } from "./libs/convert-libs"
const app: Express = express()
const port: number = Number(process.env.PORT) || 80
app.use(cors())
app.use(express.json({ limit: "200mb" })) //application/json
app.use(express.raw({ limit: "200mb" })) //application/octet-stream
app.use(express.urlencoded({ extended: true, limit: "200mb" }))
app.use(
"/swagger",
swaggerUi.serve,
swaggerUi.setup(swaggerspecs, { explorer: true })
)
app.get("/", (req: Request, res: Response) => {
res.json({
message: "Hello report-template API !!",
})
})
app.use("/api/v1/report-template/docx", docxTemplateRoute)
app.use("/api/v1/report-template/xlsx", xlsxTemplateRoute)
app.use("/api/v1/report-template/html", htmlTemplateRoute)
app.use("/api/v1/report-template/convert", convertTemplateRoute)
app.listen(port, () => console.log(`Application is running on port ${port}`))