74 lines
5.8 KiB
TypeScript
74 lines
5.8 KiB
TypeScript
import express from "express";
|
|
|
|
import ReportingController from "../../controllers/reporting-controller";
|
|
import idParamValidator from "../../middlewares/validators/id-param-validator";
|
|
import safeControllerFunction from "../../shared/safe-controller-function";
|
|
import ReportingOverviewController from "../../controllers/reporting/overview/reporting-overview-controller";
|
|
import ReportingInfoController from "../../controllers/reporting/reporting-info-controller";
|
|
import ReportingAllocationController from "../../controllers/reporting/reporting-allocation-controller";
|
|
import ReportingProjectsController from "../../controllers/reporting/projects/reporting-projects-controller";
|
|
import ReportingMembersController from "../../controllers/reporting/reporting-members-controller";
|
|
|
|
const reportingApiRouter = express.Router();
|
|
|
|
reportingApiRouter.get("/info", safeControllerFunction(ReportingInfoController.getInfo));
|
|
|
|
// Overview
|
|
reportingApiRouter.get("/overview/statistics", safeControllerFunction(ReportingOverviewController.getStatistics));
|
|
reportingApiRouter.get("/overview/teams", safeControllerFunction(ReportingOverviewController.getTeams));
|
|
reportingApiRouter.get("/overview/projects", safeControllerFunction(ReportingOverviewController.getProjects));
|
|
reportingApiRouter.get("/overview/projects/:team_id", safeControllerFunction(ReportingOverviewController.getProjectsByTeamOrMember));
|
|
reportingApiRouter.get("/overview/members/:team_id", safeControllerFunction(ReportingOverviewController.getMembersByTeam));
|
|
reportingApiRouter.get("/overview/team/info/:team_id", safeControllerFunction(ReportingOverviewController.getTeamOverview));
|
|
|
|
reportingApiRouter.get("/overview/project/info/:project_id", safeControllerFunction(ReportingOverviewController.getProjectOverview));
|
|
reportingApiRouter.get("/overview/project/members/:project_id", safeControllerFunction(ReportingOverviewController.getProjectMembers));
|
|
reportingApiRouter.get("/overview/project/tasks/:project_id", safeControllerFunction(ReportingOverviewController.getProjectTasks));
|
|
|
|
reportingApiRouter.get("/overview/member/info", safeControllerFunction(ReportingOverviewController.getMemberOverview));
|
|
reportingApiRouter.get("/overview/team-member/info", safeControllerFunction(ReportingOverviewController.getTeamMemberOverview));
|
|
reportingApiRouter.get("/overview/member/tasks/:team_member_id", safeControllerFunction(ReportingOverviewController.getMemberTasks));
|
|
|
|
// Projects
|
|
reportingApiRouter.get("/projects", safeControllerFunction(ReportingProjectsController.get));
|
|
reportingApiRouter.post("/project-timelogs", safeControllerFunction(ReportingProjectsController.getProjectTimeLogs));
|
|
|
|
// members
|
|
reportingApiRouter.get("/members", safeControllerFunction(ReportingMembersController.getReportingMembers));
|
|
|
|
reportingApiRouter.post("/members/all", safeControllerFunction(ReportingController.getReportingMembers));
|
|
reportingApiRouter.post("/projects-by-member", safeControllerFunction(ReportingController.getProjectsByMember));
|
|
reportingApiRouter.get("/members/unassigned", safeControllerFunction(ReportingController.getUnAssignedUsers));
|
|
reportingApiRouter.get("/members/overdue/:id", idParamValidator, safeControllerFunction(ReportingController.getMembersWithOverDueTasks));
|
|
reportingApiRouter.get("/member/stats/:id", idParamValidator, safeControllerFunction(ReportingController.getReportingMemberStats));
|
|
reportingApiRouter.get("/member/overview/:id", idParamValidator, safeControllerFunction(ReportingController.getReportingMemberOverview));
|
|
reportingApiRouter.get("/member/projects", safeControllerFunction(ReportingController.getMemberProjects));
|
|
|
|
reportingApiRouter.get("/member/project", safeControllerFunction(ReportingController.getTasksByProject));
|
|
reportingApiRouter.get("/member/tasks", safeControllerFunction(ReportingController.getReportingMembersTasks));
|
|
|
|
|
|
reportingApiRouter.post("/", safeControllerFunction(ReportingController.create));
|
|
reportingApiRouter.post("/actual-vs-estimate", safeControllerFunction(ReportingController.getEstimatedVsActualTime));
|
|
reportingApiRouter.post("/allocation", safeControllerFunction(ReportingAllocationController.getAllocation));
|
|
reportingApiRouter.get("/allocation/teams", safeControllerFunction(ReportingController.getMyTeams));
|
|
reportingApiRouter.post("/allocation/categories", safeControllerFunction(ReportingController.getCategoriesByTeams));
|
|
reportingApiRouter.post("/allocation/projects", safeControllerFunction(ReportingController.getProjectsByTeams));
|
|
|
|
reportingApiRouter.get("/overview/export", safeControllerFunction(ReportingController.exportOverviewExcel));
|
|
reportingApiRouter.get("/allocation/export", safeControllerFunction(ReportingController.exportAllocation));
|
|
reportingApiRouter.get("/projects/export", safeControllerFunction(ReportingController.exportProjects));
|
|
reportingApiRouter.get("/members/export", safeControllerFunction(ReportingController.exportMembers));
|
|
reportingApiRouter.get("/members/single-member-task-stats", safeControllerFunction(ReportingMembersController.getMemberTaskStats));
|
|
reportingApiRouter.get("/members/single-member-projects", safeControllerFunction(ReportingMembersController.getSingleMemberProjects));
|
|
|
|
reportingApiRouter.get("/member-projects", safeControllerFunction(ReportingMembersController.getMemberProjects));
|
|
reportingApiRouter.post("/members/single-member-activities", safeControllerFunction(ReportingMembersController.getMemberActivities));
|
|
reportingApiRouter.post("/members/single-member-timelogs", safeControllerFunction(ReportingMembersController.getMemberTimelogs));
|
|
|
|
reportingApiRouter.post("/time-reports/projects", safeControllerFunction(ReportingAllocationController.getProjectTimeSheets));
|
|
reportingApiRouter.post("/time-reports/members", safeControllerFunction(ReportingAllocationController.getMemberTimeSheets));
|
|
reportingApiRouter.post("/time-reports/estimated-vs-actual", safeControllerFunction(ReportingAllocationController.getEstimatedVsActual));
|
|
|
|
export default reportingApiRouter;
|