fix: self sign team documents

This commit is contained in:
Ephraim Atta-Duncan
2024-11-15 20:25:09 +00:00
parent 21d68f3275
commit 634dc2afd0
5 changed files with 22 additions and 7 deletions

View File

@ -17,8 +17,5 @@
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}

View File

@ -313,6 +313,7 @@ export const EditDocumentForm = ({
if (hasSameOwnerAsRecipient) {
await selfSignDocument({
documentId: document.id,
teamId: team?.id,
});
router.push(`/sign/${recipients[0].token}`);

View File

@ -12,12 +12,14 @@ import { insertFormValuesInPdf } from '../pdf/insert-form-values-in-pdf';
export type SelfSignDocumentOptions = {
documentId: number;
userId: number;
teamId?: number;
requestMetadata?: RequestMetadata;
};
export const selfSignDocument = async ({
documentId,
userId,
teamId,
requestMetadata,
}: SelfSignDocumentOptions) => {
const user = await prisma.user.findFirstOrThrow({
@ -31,11 +33,24 @@ export const selfSignDocument = async ({
},
});
const document = await prisma.document.findFirstOrThrow({
const document = await prisma.document.findUnique({
where: {
id: documentId,
userId,
teamId: null,
...(teamId
? {
team: {
id: teamId,
members: {
some: {
userId,
},
},
},
}
: {
userId,
teamId: null,
}),
},
include: {
Recipient: {

View File

@ -458,11 +458,12 @@ export const documentRouter = router({
.input(ZSelfSignDocumentMutationSchema)
.mutation(async ({ input, ctx }) => {
try {
const { documentId } = input;
const { documentId, teamId } = input;
return await selfSignDocument({
userId: ctx.user.id,
documentId,
teamId,
requestMetadata: extractNextApiRequestMetadata(ctx.req),
});
} catch (err) {

View File

@ -172,6 +172,7 @@ export const ZSendDocumentMutationSchema = z.object({
export const ZSelfSignDocumentMutationSchema = z.object({
documentId: z.number(),
teamId: z.number().optional(),
});
export const ZSetPasswordForDocumentMutationSchema = z.object({