schema change and base operations

This commit is contained in:
Julian Krauser 2025-07-19 11:02:07 +02:00
parent 799a719012
commit 4d37571cb6
27 changed files with 660 additions and 52 deletions

View file

@ -43,6 +43,7 @@ import inspection from "./unit/inspection";
import inspectionPlan from "./unit/inspectionPlan";
import damageReport from "./unit/damageReport";
import maintenance from "./unit/maintenance";
import repair from "./unit/repair";
var router = express.Router({ mergeParams: true });
@ -283,5 +284,15 @@ router.use(
]),
maintenance
);
router.use(
"/repair",
PermissionHelper.passCheckSomeMiddleware([
{ requiredPermission: "read", section: "unit", module: "repair" },
{ requiredPermission: "read", section: "unit", module: "equipment" },
{ requiredPermission: "read", section: "unit", module: "vehicle" },
{ requiredPermission: "read", section: "unit", module: "wearable" },
]),
repair
);
export default router;

View file

@ -0,0 +1,52 @@
import express, { Request, Response } from "express";
import PermissionHelper from "../../../helpers/permissionHelper";
import {
createRepair,
getAllRepairsByStatus,
getAllRepairsForRelated,
getRepairById,
updateRepairById,
} from "../../../controller/admin/unit/repairController";
var router = express.Router({ mergeParams: true });
router.get("/", async (req: Request, res: Response) => {
await getAllRepairsByStatus(req, res);
});
router.get(
["/vehicle/:relatedId", "/equipment/:relatedId", "/wearable/:relatedId"],
async (req: Request, res: Response) => {
if (req.path.startsWith("/vehicle")) {
req.params.related = "vehicle";
} else if (req.path.startsWith("/equipment")) {
req.params.related = "equipment";
} else {
req.params.related = "wearable";
}
await getAllRepairsForRelated(req, res);
}
);
router.get("/:id", async (req: Request, res: Response) => {
await getRepairById(req, res);
});
router.post(
"/:id",
PermissionHelper.passCheckMiddleware("update", "unit", "inspection"),
async (req: Request, res: Response) => {
await createRepair(req, res);
}
);
router.patch(
"/:id",
PermissionHelper.passCheckMiddleware("update", "unit", "inspection"),
async (req: Request, res: Response) => {
await updateRepairById(req, res);
}
);
export default router;