add company stamp upload functionality for contract signing

- Introduced StampUpload component for uploading company stamp images.
- Integrated stamp upload in contract signing modal, supporting PNG and JPG formats.
- Implemented validation for file type and size (max 5 MB).
- Added visual feedback for drag-and-drop functionality.
- Updated contract-related pages to handle duplicate contract alerts and pricing notices.
- Enhanced contract expiry management with a nightly sweep service.
- Added unit tests for new features and updated existing tests for contract handling.
This commit is contained in:
Marshal
2026-07-25 17:14:58 +00:00
parent 54b5882355
commit fde5e6de4b
68 changed files with 1858 additions and 289 deletions

View File

@@ -184,6 +184,8 @@ export interface IContractSignature {
role: ContractSignatureRole;
signerDisplayName: string;
signatureFileId?: string | null;
/** Company stamp/seal image, required for the CUSTOMER and STAFF parties. */
stampFileId?: string | null;
consentText?: string | null;
signedAt: string;
}