mirror of
https://github.com/documenso/documenso.git
synced 2025-11-13 00:03:33 +10:00
fix: missing signing order when using templates (#1425)
This commit is contained in:
@ -10,6 +10,7 @@ import { nanoid } from '@documenso/lib/universal/id';
|
|||||||
import { prisma } from '@documenso/prisma';
|
import { prisma } from '@documenso/prisma';
|
||||||
import type { Field, Signature } from '@documenso/prisma/client';
|
import type { Field, Signature } from '@documenso/prisma/client';
|
||||||
import {
|
import {
|
||||||
|
DocumentSigningOrder,
|
||||||
DocumentSource,
|
DocumentSource,
|
||||||
DocumentStatus,
|
DocumentStatus,
|
||||||
FieldType,
|
FieldType,
|
||||||
@ -142,6 +143,7 @@ export const createDocumentFromDirectTemplate = async ({
|
|||||||
const metaDateFormat = template.templateMeta?.dateFormat || DEFAULT_DOCUMENT_DATE_FORMAT;
|
const metaDateFormat = template.templateMeta?.dateFormat || DEFAULT_DOCUMENT_DATE_FORMAT;
|
||||||
const metaEmailMessage = template.templateMeta?.message || '';
|
const metaEmailMessage = template.templateMeta?.message || '';
|
||||||
const metaEmailSubject = template.templateMeta?.subject || '';
|
const metaEmailSubject = template.templateMeta?.subject || '';
|
||||||
|
const metaSigningOrder = template.templateMeta?.signingOrder || DocumentSigningOrder.PARALLEL;
|
||||||
|
|
||||||
// Associate, validate and map to a query every direct template recipient field with the provided fields.
|
// Associate, validate and map to a query every direct template recipient field with the provided fields.
|
||||||
const createDirectRecipientFieldArgs = await Promise.all(
|
const createDirectRecipientFieldArgs = await Promise.all(
|
||||||
@ -256,6 +258,7 @@ export const createDocumentFromDirectTemplate = async ({
|
|||||||
recipient.role === RecipientRole.CC
|
recipient.role === RecipientRole.CC
|
||||||
? SigningStatus.SIGNED
|
? SigningStatus.SIGNED
|
||||||
: SigningStatus.NOT_SIGNED,
|
: SigningStatus.NOT_SIGNED,
|
||||||
|
signingOrder: recipient.signingOrder,
|
||||||
token: nanoid(),
|
token: nanoid(),
|
||||||
};
|
};
|
||||||
}),
|
}),
|
||||||
@ -267,6 +270,7 @@ export const createDocumentFromDirectTemplate = async ({
|
|||||||
dateFormat: metaDateFormat,
|
dateFormat: metaDateFormat,
|
||||||
message: metaEmailMessage,
|
message: metaEmailMessage,
|
||||||
subject: metaEmailSubject,
|
subject: metaEmailSubject,
|
||||||
|
signingOrder: metaSigningOrder,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -330,6 +334,7 @@ export const createDocumentFromDirectTemplate = async ({
|
|||||||
signingStatus: SigningStatus.SIGNED,
|
signingStatus: SigningStatus.SIGNED,
|
||||||
sendStatus: SendStatus.SENT,
|
sendStatus: SendStatus.SENT,
|
||||||
signedAt: initialRequestTime,
|
signedAt: initialRequestTime,
|
||||||
|
signingOrder: directTemplateRecipient.signingOrder,
|
||||||
Field: {
|
Field: {
|
||||||
createMany: {
|
createMany: {
|
||||||
data: directTemplateNonSignatureFields.map(({ templateField, customText }) => ({
|
data: directTemplateNonSignatureFields.map(({ templateField, customText }) => ({
|
||||||
|
|||||||
@ -24,7 +24,10 @@ import {
|
|||||||
} from '../../utils/document-auth';
|
} from '../../utils/document-auth';
|
||||||
import { triggerWebhook } from '../webhooks/trigger/trigger-webhook';
|
import { triggerWebhook } from '../webhooks/trigger/trigger-webhook';
|
||||||
|
|
||||||
type FinalRecipient = Pick<Recipient, 'name' | 'email' | 'role' | 'authOptions'> & {
|
type FinalRecipient = Pick<
|
||||||
|
Recipient,
|
||||||
|
'name' | 'email' | 'role' | 'authOptions' | 'signingOrder'
|
||||||
|
> & {
|
||||||
templateRecipientId: number;
|
templateRecipientId: number;
|
||||||
fields: Field[];
|
fields: Field[];
|
||||||
};
|
};
|
||||||
@ -197,6 +200,7 @@ export const createDocumentFromTemplate = async ({
|
|||||||
recipient.role === RecipientRole.CC
|
recipient.role === RecipientRole.CC
|
||||||
? SigningStatus.SIGNED
|
? SigningStatus.SIGNED
|
||||||
: SigningStatus.NOT_SIGNED,
|
: SigningStatus.NOT_SIGNED,
|
||||||
|
signingOrder: recipient.signingOrder,
|
||||||
token: nanoid(),
|
token: nanoid(),
|
||||||
};
|
};
|
||||||
}),
|
}),
|
||||||
|
|||||||
Reference in New Issue
Block a user