|
@@ -33,65 +33,6 @@ import { RouterUtils } from "#utils/router-utils.js";
|
|
|
|
|
|
dayjs.extend(utc);
|
|
dayjs.extend(utc);
|
|
|
|
|
|
-router.post("/get-company-events", async (req, res, next) => {
|
|
|
|
- try {
|
|
|
|
- // валидация запроса
|
|
|
|
- const { companyId } = EventsManagementApi.ZGetCompanyEvents.req.parse(
|
|
|
|
- req.body,
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- // const nowWithUzerTz = dayjs.utc().startOf("day");
|
|
|
|
- const userId = UserUtils.getUserFromReq(req).userId;
|
|
|
|
-
|
|
|
|
- const DbEventsTypes = ZDbShema.events_management.events;
|
|
|
|
- const events = await db.any(
|
|
|
|
- sql.type(
|
|
|
|
- z.object({
|
|
|
|
- event_id: DbEventsTypes.event_id,
|
|
|
|
- local_name: DbEventsTypes.event_id,
|
|
|
|
- timezone: DbEventsTypes.timezone,
|
|
|
|
- dates: z.array(ZDbShema.events_management.event_dates.date),
|
|
|
|
- }),
|
|
|
|
- )`
|
|
|
|
- select
|
|
|
|
- e.event_id,
|
|
|
|
- e.local_name,
|
|
|
|
- e.timezone,
|
|
|
|
- e.company_id,
|
|
|
|
- ARRAY_AGG(ed."date") as dates
|
|
|
|
- from
|
|
|
|
- events_management.events e
|
|
|
|
- join
|
|
|
|
- permissions_management.cached_user_permissions cup
|
|
|
|
- on
|
|
|
|
- e.company_id = cup.entity_id
|
|
|
|
- left join
|
|
|
|
- events_management.event_dates ed
|
|
|
|
- on
|
|
|
|
- e.event_id = ed.event_id
|
|
|
|
- where
|
|
|
|
- e.company_id = ${companyId}
|
|
|
|
- and
|
|
|
|
- cup.user_id = ${userId}
|
|
|
|
- and cup.permission_value_id = 'view_event_true'
|
|
|
|
- group by
|
|
|
|
- e.event_id,
|
|
|
|
- e.local_name,
|
|
|
|
- e.timezone,
|
|
|
|
- e.company_id;
|
|
|
|
- `,
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- RouterUtils.validAndSendResponse(
|
|
|
|
- EventsManagementApi.ZGetCompanyEvents.res,
|
|
|
|
- res,
|
|
|
|
- { code: "success", events: [...events] },
|
|
|
|
- );
|
|
|
|
- } catch (e) {
|
|
|
|
- next(e);
|
|
|
|
- }
|
|
|
|
-});
|
|
|
|
-
|
|
|
|
router.post("/create-event", async (req, res, next) => {
|
|
router.post("/create-event", async (req, res, next) => {
|
|
try {
|
|
try {
|
|
// валидация запроса
|
|
// валидация запроса
|
|
@@ -104,6 +45,7 @@ router.post("/create-event", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
companyId,
|
|
companyId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "create_event",
|
|
"create_event_true",
|
|
"create_event_true",
|
|
);
|
|
);
|
|
|
|
|
|
@@ -114,13 +56,13 @@ router.post("/create-event", async (req, res, next) => {
|
|
await db.one(
|
|
await db.one(
|
|
sql.type(
|
|
sql.type(
|
|
z.object({
|
|
z.object({
|
|
- timezone: ZDbShema.events_management.companies.timezone,
|
|
|
|
|
|
+ timezone: ZDbShema.companies_management.companies.timezone,
|
|
}),
|
|
}),
|
|
)`
|
|
)`
|
|
select
|
|
select
|
|
timezone
|
|
timezone
|
|
from
|
|
from
|
|
- events_management.companies
|
|
|
|
|
|
+ companies_management.companies
|
|
where
|
|
where
|
|
company_id = ${companyId}`,
|
|
company_id = ${companyId}`,
|
|
)
|
|
)
|
|
@@ -193,6 +135,7 @@ router.post("/get-event", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "view_event",
|
|
"view_event_true",
|
|
"view_event_true",
|
|
);
|
|
);
|
|
|
|
|
|
@@ -313,6 +256,7 @@ router.post("/create-program-point", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "create_program_point",
|
|
"create_program_point_true",
|
|
"create_program_point_true",
|
|
);
|
|
);
|
|
|
|
|
|
@@ -351,6 +295,7 @@ router.post("/update-event", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "edit_event_name",
|
|
"edit_event_name_true",
|
|
"edit_event_name_true",
|
|
);
|
|
);
|
|
}
|
|
}
|
|
@@ -360,6 +305,7 @@ router.post("/update-event", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "edit_event_timezone",
|
|
"edit_event_timezone_true",
|
|
"edit_event_timezone_true",
|
|
);
|
|
);
|
|
}
|
|
}
|
|
@@ -390,6 +336,7 @@ router.post("/update-event", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "edit_event_dates",
|
|
"edit_event_dates_true",
|
|
"edit_event_dates_true",
|
|
);
|
|
);
|
|
|
|
|
|
@@ -454,6 +401,7 @@ router.post("/update-program-point", async (req, res, next) => {
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
await CheckPermissionsService.checkEntityPermission(
|
|
eventId,
|
|
eventId,
|
|
userId,
|
|
userId,
|
|
|
|
+ "edit_event_program_points",
|
|
"edit_event_program_points_true",
|
|
"edit_event_program_points_true",
|
|
);
|
|
);
|
|
|
|
|