|
@@ -335,6 +335,27 @@ router.post("/get-event", async (req, res, next) => {
|
|
`,
|
|
`,
|
|
);
|
|
);
|
|
|
|
|
|
|
|
+ const roles = await db.any(
|
|
|
|
+ sql.type(
|
|
|
|
+ z.object({
|
|
|
|
+ role_id: ZDbShema.permissions_management.roles.role_id,
|
|
|
|
+ name: ZDbShema.permissions_management.roles.name,
|
|
|
|
+ description: ZDbShema.permissions_management.roles.description,
|
|
|
|
+ is_system: ZDbShema.permissions_management.roles.is_system,
|
|
|
|
+ }),
|
|
|
|
+ )`
|
|
|
|
+ select
|
|
|
|
+ r.role_id,
|
|
|
|
+ r.name,
|
|
|
|
+ r.description,
|
|
|
|
+ r.is_system
|
|
|
|
+ from
|
|
|
|
+ permissions_management.roles r
|
|
|
|
+ where
|
|
|
|
+ entity_type_id = 'event' and (is_system or entity_id = ${eventId})
|
|
|
|
+ `,
|
|
|
|
+ );
|
|
|
|
+
|
|
// res
|
|
// res
|
|
RouterUtils.validAndSendResponse(EventsManagementApi.ZGetEvent.res, res, {
|
|
RouterUtils.validAndSendResponse(EventsManagementApi.ZGetEvent.res, res, {
|
|
code: "success",
|
|
code: "success",
|
|
@@ -344,6 +365,7 @@ router.post("/get-event", async (req, res, next) => {
|
|
rooms: [...rooms],
|
|
rooms: [...rooms],
|
|
taskBlocks: [...taskBlocks],
|
|
taskBlocks: [...taskBlocks],
|
|
staff: [...staff],
|
|
staff: [...staff],
|
|
|
|
+ roles: [...roles],
|
|
},
|
|
},
|
|
});
|
|
});
|
|
} catch (e) {
|
|
} catch (e) {
|
|
@@ -375,7 +397,7 @@ router.post("/create-program-point", async (req, res, next) => {
|
|
insert into events_management.program_points
|
|
insert into events_management.program_points
|
|
(program_point_id, name, start_date, end_date, room_id, event_id, is_internal)
|
|
(program_point_id, name, start_date, end_date, room_id, event_id, is_internal)
|
|
values
|
|
values
|
|
- (${programPointId}, ${name}, ${startDate}, ${endDate}, ${roomId || null}, ${eventId}, ${isInternal})
|
|
|
|
|
|
+ (${programPointId}, ${name}, ${startDate}, ${endDate}, ${roomId}, ${eventId}, ${isInternal})
|
|
`,
|
|
`,
|
|
);
|
|
);
|
|
|
|
|
|
@@ -392,7 +414,7 @@ router.post("/create-program-point", async (req, res, next) => {
|
|
router.post("/update-event", async (req, res, next) => {
|
|
router.post("/update-event", async (req, res, next) => {
|
|
try {
|
|
try {
|
|
// валидация запроса
|
|
// валидация запроса
|
|
- const { eventId, localName, dates, timezone } =
|
|
|
|
|
|
+ const { eventId, localName, dates, timezone, programPoint } =
|
|
EventsManagementApi.ZUpdateEvent.req.parse(req.body);
|
|
EventsManagementApi.ZUpdateEvent.req.parse(req.body);
|
|
|
|
|
|
const userId = UserUtils.getUserFromReq(req).userId;
|
|
const userId = UserUtils.getUserFromReq(req).userId;
|
|
@@ -445,68 +467,22 @@ router.post("/update-event", async (req, res, next) => {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- RouterUtils.validAndSendResponse(
|
|
|
|
- EventsManagementApi.ZUpdateEvent.res,
|
|
|
|
- res,
|
|
|
|
- {
|
|
|
|
- code: "success",
|
|
|
|
- },
|
|
|
|
- );
|
|
|
|
- } catch (e) {
|
|
|
|
- next(e);
|
|
|
|
- }
|
|
|
|
-});
|
|
|
|
-
|
|
|
|
-router.post("/update-program-point", async (req, res, next) => {
|
|
|
|
- try {
|
|
|
|
- // валидация запроса
|
|
|
|
- const { programPointId, name, startDate, endDate, roomId } =
|
|
|
|
- EventsManagementApi.ZUpdateProgramPoint.req.parse(req.body);
|
|
|
|
-
|
|
|
|
- const userId = UserUtils.getUserFromReq(req).userId;
|
|
|
|
-
|
|
|
|
- const eventId = await db.maybeOneFirst(
|
|
|
|
- sql.type(
|
|
|
|
- z.object({
|
|
|
|
- event_id: ZDbShema.events_management.events.event_id,
|
|
|
|
- }),
|
|
|
|
- )`
|
|
|
|
- select
|
|
|
|
- event_id
|
|
|
|
- from
|
|
|
|
- events_management.program_points
|
|
|
|
- where
|
|
|
|
- program_point_id = ${programPointId}
|
|
|
|
- `,
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- if (!eventId) {
|
|
|
|
- throw ApiError.BadRequest("Point not found", "Point not found");
|
|
|
|
|
|
+ if (programPoint) {
|
|
|
|
+ await db.query(
|
|
|
|
+ sql.unsafe`
|
|
|
|
+ update events_management.program_points
|
|
|
|
+ set
|
|
|
|
+ name = ${programPoint.name},
|
|
|
|
+ start_date = ${programPoint.startDate},
|
|
|
|
+ end_date = ${programPoint.endDate},
|
|
|
|
+ room_id = ${programPoint.roomId}
|
|
|
|
+ where
|
|
|
|
+ program_point_id = ${programPoint.programPointId}`,
|
|
|
|
+ );
|
|
}
|
|
}
|
|
|
|
|
|
- // проверка прав
|
|
|
|
- await CheckPermissionsService.checkEntityPermission(
|
|
|
|
- eventId,
|
|
|
|
- userId,
|
|
|
|
- "edit_event",
|
|
|
|
- "edit_event_true",
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- // point
|
|
|
|
- await db.query(
|
|
|
|
- sql.unsafe`
|
|
|
|
- update events_management.program_points
|
|
|
|
- set
|
|
|
|
- name = ${name},
|
|
|
|
- start_date = ${startDate},
|
|
|
|
- end_date = ${endDate},
|
|
|
|
- room_id = ${roomId || null}
|
|
|
|
- where
|
|
|
|
- program_point_id = ${programPointId}`,
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
RouterUtils.validAndSendResponse(
|
|
RouterUtils.validAndSendResponse(
|
|
- EventsManagementApi.ZUpdateProgramPoint.res,
|
|
|
|
|
|
+ EventsManagementApi.ZUpdateEvent.res,
|
|
res,
|
|
res,
|
|
{
|
|
{
|
|
code: "success",
|
|
code: "success",
|