upd
This commit is contained in:
@@ -11,6 +11,7 @@ import scheduledSessionsRouter from "./routes/scheduledSessions.js";
|
||||
import usersRouter from "./routes/users.js";
|
||||
import buildsRouter from "./routes/builds.js";
|
||||
import actionsRouter from "./routes/actions.js";
|
||||
import schedulesRouter from "./routes/schedules.js";
|
||||
|
||||
const app = express();
|
||||
const port = process.env.PORT || 3000;
|
||||
@@ -24,6 +25,7 @@ app.use("/login", loginRouter);
|
||||
app.use("/registration", registrationRouter);
|
||||
app.use("/actions", actionsRouter);
|
||||
app.use("/scheduled_sessions", scheduledSessionsRouter);
|
||||
app.use("/schedules", schedulesRouter);
|
||||
app.use("/app", authMiddleware, appRouter);
|
||||
app.use("/companies", authMiddleware, companiesRouter);
|
||||
app.use("/users", authMiddleware, usersRouter);
|
||||
|
||||
@@ -6,6 +6,30 @@ import { addMinutes, endOfDay, parseISO, startOfDay } from "date-fns";
|
||||
|
||||
const scheduledSessionsRouter = Router();
|
||||
|
||||
scheduledSessionsRouter.get("/builds/:buildId", async (req, res) => {
|
||||
if (!req.params.buildId) {
|
||||
res.json({ error: "Parameter `buildId` is required!" });
|
||||
return;
|
||||
}
|
||||
|
||||
if (!req.query.date) {
|
||||
res.json({ error: "Query parameter `date` is required!" });
|
||||
return;
|
||||
}
|
||||
|
||||
const buildId = req.params.buildId;
|
||||
const date = req.query.date as string;
|
||||
const scheduledSessions = await ScheduledSession.find({
|
||||
buildId,
|
||||
startAt: {
|
||||
$gte: startOfDay(parseISO(date)),
|
||||
$lt: endOfDay(parseISO(date)),
|
||||
},
|
||||
});
|
||||
|
||||
res.json(scheduledSessions);
|
||||
});
|
||||
|
||||
scheduledSessionsRouter.get("/:buildId", async (req, res) => {
|
||||
if (!req.params.buildId) {
|
||||
res.json({ error: "Parameter `buildId` is required!" });
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
import { Router } from "express";
|
||||
import Schedule from "../models/Schedule.js";
|
||||
|
||||
const schedulesRouter = Router();
|
||||
|
||||
schedulesRouter.get("/builds/:buildId", async (req, res) => {
|
||||
const buildId = req.params.buildId;
|
||||
const date = new Date();
|
||||
|
||||
const schedules = await Schedule.find({
|
||||
buildId,
|
||||
startDate: { $lte: date },
|
||||
endDate: { $gte: date },
|
||||
});
|
||||
|
||||
if (!schedules.length) {
|
||||
res.json({ error: "No data" });
|
||||
return;
|
||||
}
|
||||
|
||||
if (req.query.date) {
|
||||
const schedule = await Schedule.findOne({
|
||||
buildId,
|
||||
startDate: { $lte: date },
|
||||
endDate: { $gte: date },
|
||||
});
|
||||
|
||||
res.json(schedule);
|
||||
return;
|
||||
}
|
||||
|
||||
res.json(schedules);
|
||||
});
|
||||
|
||||
export default schedulesRouter;
|
||||
Reference in New Issue
Block a user