From 2feef8151625d9ba5d9c8b1850679b7fe84af809 Mon Sep 17 00:00:00 2001 From: syuilo Date: Thu, 13 Feb 2020 02:17:54 +0900 Subject: グループ招待の通知とか MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Resolve #5880 Resolve #5927 --- src/server/api/endpoints/users/groups/invite.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src/server/api/endpoints/users/groups/invite.ts') diff --git a/src/server/api/endpoints/users/groups/invite.ts b/src/server/api/endpoints/users/groups/invite.ts index 503184a92f..bd32b00a63 100644 --- a/src/server/api/endpoints/users/groups/invite.ts +++ b/src/server/api/endpoints/users/groups/invite.ts @@ -3,9 +3,10 @@ import { ID } from '../../../../../misc/cafy-id'; import define from '../../../define'; import { ApiError } from '../../../error'; import { getUser } from '../../../common/getters'; -import { UserGroups, UserGroupJoinings, UserGroupInvites } from '../../../../../models'; +import { UserGroups, UserGroupJoinings, UserGroupInvitations } from '../../../../../models'; import { genId } from '../../../../../misc/gen-id'; -import { UserGroupInvite } from '../../../../../models/entities/user-group-invite'; +import { UserGroupInvitation } from '../../../../../models/entities/user-group-invitation'; +import { createNotification } from '../../../../../services/create-notification'; export const meta = { desc: { @@ -86,19 +87,24 @@ export default define(meta, async (ps, me) => { throw new ApiError(meta.errors.alreadyAdded); } - const invite = await UserGroupInvites.findOne({ + const existInvitation = await UserGroupInvitations.findOne({ userGroupId: userGroup.id, userId: user.id }); - if (invite) { + if (existInvitation) { throw new ApiError(meta.errors.alreadyInvited); } - await UserGroupInvites.save({ + const invitation = await UserGroupInvitations.save({ id: genId(), createdAt: new Date(), userId: user.id, userGroupId: userGroup.id - } as UserGroupInvite); + } as UserGroupInvitation); + + // 通知を作成 + createNotification(user.id, me.id, 'groupInvited', { + userGroupInvitationId: invitation.id + }); }); -- cgit v1.2.3-freya