tychat-contracts 1.6.62 → 1.6.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,8 @@ export declare const SIGNATURE_PRINTED_EMIT = "signature.printed.emit";
10
10
  export declare const SIGNATURE_PRINTED_CONFIRM_UPLOAD = "signature.printed.confirmUpload";
11
11
  export declare const SIGNATURE_PRINTED_CANCEL = "signature.printed.cancel";
12
12
  export declare const SIGNATURE_PRINTED_SUMMARY_BY_IDS = "signature.printed.summaryByIds";
13
+ /** RPC: objectKey do scan assinado (status signed) para presign de download. */
14
+ export declare const SIGNATURE_PRINTED_SIGNED_SCAN_OBJECT_KEY = "signature.printed.signedScanObjectKey";
13
15
  /** @deprecated Use SIGNATURE_PRINTED_EMIT */
14
16
  export declare const SIGNATURE_LEGAL_ENVELOPE_CREATE = "signature.legalEnvelope.create";
15
17
  /** @deprecated Use SIGNATURE_PRINTED_SUMMARY_BY_IDS */
@@ -1 +1 @@
1
- {"version":3,"file":"legal-term-rmq-patterns.d.ts","sourceRoot":"","sources":["../../src/legal-terms/legal-term-rmq-patterns.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,mCAAmC,qCAAqC,CAAC;AACtF,uFAAuF;AACvF,eAAO,MAAM,iCAAiC,oCAAoC,CAAC;AAEnF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,gCAAgC,oCAAoC,CAAC;AAClF,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,eAAO,MAAM,gCAAgC,mCAAmC,CAAC;AAEjF,6CAA6C;AAC7C,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAChF,uDAAuD;AACvD,eAAO,MAAM,kCAAkC,qCAAqC,CAAC"}
1
+ {"version":3,"file":"legal-term-rmq-patterns.d.ts","sourceRoot":"","sources":["../../src/legal-terms/legal-term-rmq-patterns.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAChE,eAAO,MAAM,mCAAmC,qCAAqC,CAAC;AACtF,uFAAuF;AACvF,eAAO,MAAM,iCAAiC,oCAAoC,CAAC;AAEnF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,gCAAgC,oCAAoC,CAAC;AAClF,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,eAAO,MAAM,gCAAgC,mCAAmC,CAAC;AACjF,gFAAgF;AAChF,eAAO,MAAM,wCAAwC,0CACZ,CAAC;AAE1C,6CAA6C;AAC7C,eAAO,MAAM,+BAA+B,mCAAmC,CAAC;AAChF,uDAAuD;AACvD,eAAO,MAAM,kCAAkC,qCAAqC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SIGNATURE_DOCUMENTS_SUMMARY_BY_IDS = exports.SIGNATURE_LEGAL_ENVELOPE_CREATE = exports.SIGNATURE_PRINTED_SUMMARY_BY_IDS = exports.SIGNATURE_PRINTED_CANCEL = exports.SIGNATURE_PRINTED_CONFIRM_UPLOAD = exports.SIGNATURE_PRINTED_EMIT = exports.LEGAL_TERM_DISPATCH_COUNT_MONTHLY = exports.LEGAL_TERM_DISPATCH_LIST_BY_PATIENT = exports.LEGAL_TERM_DISPATCH_GET = exports.LEGAL_TERM_DISPATCH_UPDATE = exports.LEGAL_TERM_DISPATCH_CREATE = exports.LEGAL_TERM_TEMPLATE_UPSERT = exports.LEGAL_TERM_TEMPLATE_GET = void 0;
3
+ exports.SIGNATURE_DOCUMENTS_SUMMARY_BY_IDS = exports.SIGNATURE_LEGAL_ENVELOPE_CREATE = exports.SIGNATURE_PRINTED_SIGNED_SCAN_OBJECT_KEY = exports.SIGNATURE_PRINTED_SUMMARY_BY_IDS = exports.SIGNATURE_PRINTED_CANCEL = exports.SIGNATURE_PRINTED_CONFIRM_UPLOAD = exports.SIGNATURE_PRINTED_EMIT = exports.LEGAL_TERM_DISPATCH_COUNT_MONTHLY = exports.LEGAL_TERM_DISPATCH_LIST_BY_PATIENT = exports.LEGAL_TERM_DISPATCH_GET = exports.LEGAL_TERM_DISPATCH_UPDATE = exports.LEGAL_TERM_DISPATCH_CREATE = exports.LEGAL_TERM_TEMPLATE_UPSERT = exports.LEGAL_TERM_TEMPLATE_GET = void 0;
4
4
  exports.LEGAL_TERM_TEMPLATE_GET = 'legalTerm.template.get';
5
5
  exports.LEGAL_TERM_TEMPLATE_UPSERT = 'legalTerm.template.upsert';
6
6
  exports.LEGAL_TERM_DISPATCH_CREATE = 'legalTerm.dispatch.create';
@@ -13,6 +13,8 @@ exports.SIGNATURE_PRINTED_EMIT = 'signature.printed.emit';
13
13
  exports.SIGNATURE_PRINTED_CONFIRM_UPLOAD = 'signature.printed.confirmUpload';
14
14
  exports.SIGNATURE_PRINTED_CANCEL = 'signature.printed.cancel';
15
15
  exports.SIGNATURE_PRINTED_SUMMARY_BY_IDS = 'signature.printed.summaryByIds';
16
+ /** RPC: objectKey do scan assinado (status signed) para presign de download. */
17
+ exports.SIGNATURE_PRINTED_SIGNED_SCAN_OBJECT_KEY = 'signature.printed.signedScanObjectKey';
16
18
  /** @deprecated Use SIGNATURE_PRINTED_EMIT */
17
19
  exports.SIGNATURE_LEGAL_ENVELOPE_CREATE = 'signature.legalEnvelope.create';
18
20
  /** @deprecated Use SIGNATURE_PRINTED_SUMMARY_BY_IDS */
@@ -32,4 +32,13 @@ export type PrintedSignatureSummaryItemDto = {
32
32
  signature_status: PrintedSignatureStatusValue;
33
33
  signed_at: string | null;
34
34
  };
35
+ /** RPC: obter chave S3 do scan assinado para download. */
36
+ export declare class PrintedSignatureSignedScanObjectKeyRpcDto {
37
+ tenant: string;
38
+ signatureId: string;
39
+ patientId: string;
40
+ }
41
+ export type PrintedSignatureSignedScanObjectKeyRpcResultDto = {
42
+ objectKey: string;
43
+ };
35
44
  //# sourceMappingURL=legal-term-signature-rpc.dto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"legal-term-signature-rpc.dto.d.ts","sourceRoot":"","sources":["../../src/legal-terms/legal-term-signature-rpc.dto.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB,sBAAuB,CAAC;AACtD,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,eAAO,MAAM,0BAA0B,oDAI7B,CAAC;AACX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,8DAA8D;AAC9D,qBAAa,0BAA0B;IAKrC,MAAM,EAAE,MAAM,CAAC;IAIf,SAAS,EAAE,MAAM,CAAC;IAIlB,mBAAmB,EAAE,MAAM,CAAC;IAI5B,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED,qBAAa,gCAAgC;IAE3C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,uDAAuD;AACvD,qBAAa,mCAAmC;IAK9C,MAAM,EAAE,MAAM,CAAC;IAIf,WAAW,EAAE,MAAM,CAAC;IAIpB,mBAAmB,EAAE,MAAM,CAAC;IAM5B,aAAa,EAAE,MAAM,CAAC;IAKtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,kDAAkD;AAClD,qBAAa,4BAA4B;IAKvC,MAAM,EAAE,MAAM,CAAC;IAIf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qDAAqD;AACrD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,oBAAoB,CAAC;IAC7B,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"legal-term-signature-rpc.dto.d.ts","sourceRoot":"","sources":["../../src/legal-terms/legal-term-signature-rpc.dto.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB,sBAAuB,CAAC;AACtD,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,eAAO,MAAM,0BAA0B,oDAI7B,CAAC;AACX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,8DAA8D;AAC9D,qBAAa,0BAA0B;IAKrC,MAAM,EAAE,MAAM,CAAC;IAIf,SAAS,EAAE,MAAM,CAAC;IAIlB,mBAAmB,EAAE,MAAM,CAAC;IAI5B,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED,qBAAa,gCAAgC;IAE3C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,uDAAuD;AACvD,qBAAa,mCAAmC;IAK9C,MAAM,EAAE,MAAM,CAAC;IAIf,WAAW,EAAE,MAAM,CAAC;IAIpB,mBAAmB,EAAE,MAAM,CAAC;IAM5B,aAAa,EAAE,MAAM,CAAC;IAKtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,kDAAkD;AAClD,qBAAa,4BAA4B;IAKvC,MAAM,EAAE,MAAM,CAAC;IAIf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qDAAqD;AACrD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,oBAAoB,CAAC;IAC7B,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,0DAA0D;AAC1D,qBAAa,yCAAyC;IAKpD,MAAM,EAAE,MAAM,CAAC;IAIf,WAAW,EAAE,MAAM,CAAC;IAIpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,+CAA+C,GAAG;IAC5D,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC"}
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.PrintedSignatureCancelRpcDto = exports.PrintedSignatureConfirmUploadRpcDto = exports.PrintedSignatureEmitRpcResultDto = exports.PrintedSignatureEmitRpcDto = exports.PRINTED_SIGNATURE_STATUSES = exports.SIGNATURE_METHODS = void 0;
12
+ exports.PrintedSignatureSignedScanObjectKeyRpcDto = exports.PrintedSignatureCancelRpcDto = exports.PrintedSignatureConfirmUploadRpcDto = exports.PrintedSignatureEmitRpcResultDto = exports.PrintedSignatureEmitRpcDto = exports.PRINTED_SIGNATURE_STATUSES = exports.SIGNATURE_METHODS = void 0;
13
13
  const swagger_1 = require("@nestjs/swagger");
14
14
  const class_validator_1 = require("class-validator");
15
15
  exports.SIGNATURE_METHODS = ['printed'];
@@ -113,3 +113,27 @@ __decorate([
113
113
  (0, class_validator_1.IsUUID)('4'),
114
114
  __metadata("design:type", String)
115
115
  ], PrintedSignatureCancelRpcDto.prototype, "signatureId", void 0);
116
+ /** RPC: obter chave S3 do scan assinado para download. */
117
+ class PrintedSignatureSignedScanObjectKeyRpcDto {
118
+ tenant;
119
+ signatureId;
120
+ patientId;
121
+ }
122
+ exports.PrintedSignatureSignedScanObjectKeyRpcDto = PrintedSignatureSignedScanObjectKeyRpcDto;
123
+ __decorate([
124
+ (0, swagger_1.ApiProperty)(),
125
+ (0, class_validator_1.IsString)(),
126
+ (0, class_validator_1.MinLength)(1),
127
+ (0, class_validator_1.MaxLength)(128),
128
+ __metadata("design:type", String)
129
+ ], PrintedSignatureSignedScanObjectKeyRpcDto.prototype, "tenant", void 0);
130
+ __decorate([
131
+ (0, swagger_1.ApiProperty)({ format: 'uuid' }),
132
+ (0, class_validator_1.IsUUID)('4'),
133
+ __metadata("design:type", String)
134
+ ], PrintedSignatureSignedScanObjectKeyRpcDto.prototype, "signatureId", void 0);
135
+ __decorate([
136
+ (0, swagger_1.ApiProperty)({ format: 'uuid' }),
137
+ (0, class_validator_1.IsUUID)('4'),
138
+ __metadata("design:type", String)
139
+ ], PrintedSignatureSignedScanObjectKeyRpcDto.prototype, "patientId", void 0);
@@ -8,6 +8,14 @@ export declare class CreatePatientDto {
8
8
  gender?: string | null;
9
9
  address?: string | null;
10
10
  emergencyContact?: string | null;
11
+ cns?: string | null;
12
+ heightCm?: number | null;
13
+ weightKg?: number | null;
14
+ maritalStatus?: string | null;
15
+ secondaryPhone?: string | null;
16
+ bloodType?: string | null;
17
+ rhFactor?: string | null;
18
+ allergies?: string | null;
11
19
  hasDisability: boolean;
12
20
  disabilityDescription?: string | null;
13
21
  initialObservation?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"create-patient.dto.d.ts","sourceRoot":"","sources":["../../src/patients/create-patient.dto.ts"],"names":[],"mappings":"AAaA,qBAAa,gBAAgB;IAS3B,IAAI,EAAE,MAAM,CAAC;IAUb,GAAG,EAAE,MAAM,CAAC;IAOZ,SAAS,EAAE,MAAM,CAAC;IAUlB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOjC,aAAa,EAAE,OAAO,CAAC;IAWvB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAYnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"}
1
+ {"version":3,"file":"create-patient.dto.d.ts","sourceRoot":"","sources":["../../src/patients/create-patient.dto.ts"],"names":[],"mappings":"AAcA,qBAAa,gBAAgB;IAS3B,IAAI,EAAE,MAAM,CAAC;IAUb,GAAG,EAAE,MAAM,CAAC;IAOZ,SAAS,EAAE,MAAM,CAAC;IAUlB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUvB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUjC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAQpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAQzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAS9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAS/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAS1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IASzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO1B,aAAa,EAAE,OAAO,CAAC;IAWvB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAUtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAYnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"}
@@ -23,6 +23,14 @@ class CreatePatientDto {
23
23
  gender;
24
24
  address;
25
25
  emergencyContact;
26
+ cns;
27
+ heightCm;
28
+ weightKg;
29
+ maritalStatus;
30
+ secondaryPhone;
31
+ bloodType;
32
+ rhFactor;
33
+ allergies;
26
34
  hasDisability;
27
35
  disabilityDescription;
28
36
  initialObservation;
@@ -125,6 +133,86 @@ __decorate([
125
133
  (0, class_validator_1.MaxLength)(30),
126
134
  __metadata("design:type", Object)
127
135
  ], CreatePatientDto.prototype, "emergencyContact", void 0);
136
+ __decorate([
137
+ (0, swagger_1.ApiPropertyOptional)({
138
+ description: 'Cartão Nacional de Saúde (15 dígitos)',
139
+ example: '123456789012345',
140
+ maxLength: 15,
141
+ }),
142
+ (0, class_validator_1.IsString)(),
143
+ (0, class_validator_1.IsOptional)(),
144
+ (0, class_validator_1.MaxLength)(15),
145
+ __metadata("design:type", Object)
146
+ ], CreatePatientDto.prototype, "cns", void 0);
147
+ __decorate([
148
+ (0, swagger_1.ApiPropertyOptional)({
149
+ description: 'Altura em centímetros',
150
+ example: 170.5,
151
+ }),
152
+ (0, class_validator_1.IsOptional)(),
153
+ (0, class_validator_1.IsNumber)(),
154
+ __metadata("design:type", Object)
155
+ ], CreatePatientDto.prototype, "heightCm", void 0);
156
+ __decorate([
157
+ (0, swagger_1.ApiPropertyOptional)({
158
+ description: 'Peso em quilogramas',
159
+ example: 72.4,
160
+ }),
161
+ (0, class_validator_1.IsOptional)(),
162
+ (0, class_validator_1.IsNumber)(),
163
+ __metadata("design:type", Object)
164
+ ], CreatePatientDto.prototype, "weightKg", void 0);
165
+ __decorate([
166
+ (0, swagger_1.ApiPropertyOptional)({
167
+ description: 'Estado civil',
168
+ example: 'casado',
169
+ maxLength: 50,
170
+ }),
171
+ (0, class_validator_1.IsString)(),
172
+ (0, class_validator_1.IsOptional)(),
173
+ (0, class_validator_1.MaxLength)(50),
174
+ __metadata("design:type", Object)
175
+ ], CreatePatientDto.prototype, "maritalStatus", void 0);
176
+ __decorate([
177
+ (0, swagger_1.ApiPropertyOptional)({
178
+ description: 'Telefone secundário ou de emergência adicional',
179
+ maxLength: 30,
180
+ }),
181
+ (0, class_validator_1.IsString)(),
182
+ (0, class_validator_1.IsOptional)(),
183
+ (0, class_validator_1.MaxLength)(30),
184
+ __metadata("design:type", Object)
185
+ ], CreatePatientDto.prototype, "secondaryPhone", void 0);
186
+ __decorate([
187
+ (0, swagger_1.ApiPropertyOptional)({
188
+ description: 'Tipo sanguíneo (A, B, AB, O)',
189
+ maxLength: 10,
190
+ }),
191
+ (0, class_validator_1.IsString)(),
192
+ (0, class_validator_1.IsOptional)(),
193
+ (0, class_validator_1.MaxLength)(10),
194
+ __metadata("design:type", Object)
195
+ ], CreatePatientDto.prototype, "bloodType", void 0);
196
+ __decorate([
197
+ (0, swagger_1.ApiPropertyOptional)({
198
+ description: 'Fator RH (positivo ou negativo)',
199
+ maxLength: 20,
200
+ }),
201
+ (0, class_validator_1.IsString)(),
202
+ (0, class_validator_1.IsOptional)(),
203
+ (0, class_validator_1.MaxLength)(20),
204
+ __metadata("design:type", Object)
205
+ ], CreatePatientDto.prototype, "rhFactor", void 0);
206
+ __decorate([
207
+ (0, swagger_1.ApiPropertyOptional)({
208
+ description: 'Alergias conhecidas',
209
+ maxLength: 1000,
210
+ }),
211
+ (0, class_validator_1.IsString)(),
212
+ (0, class_validator_1.IsOptional)(),
213
+ (0, class_validator_1.MaxLength)(1000),
214
+ __metadata("design:type", Object)
215
+ ], CreatePatientDto.prototype, "allergies", void 0);
128
216
  __decorate([
129
217
  (0, swagger_1.ApiProperty)({
130
218
  description: 'Indica se o paciente possui alguma deficiência',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tychat-contracts",
3
- "version": "1.6.62",
3
+ "version": "1.6.64",
4
4
  "description": "DTOs compartilhados com class-validator (API e microserviços)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -11,6 +11,9 @@ export const SIGNATURE_PRINTED_EMIT = 'signature.printed.emit';
11
11
  export const SIGNATURE_PRINTED_CONFIRM_UPLOAD = 'signature.printed.confirmUpload';
12
12
  export const SIGNATURE_PRINTED_CANCEL = 'signature.printed.cancel';
13
13
  export const SIGNATURE_PRINTED_SUMMARY_BY_IDS = 'signature.printed.summaryByIds';
14
+ /** RPC: objectKey do scan assinado (status signed) para presign de download. */
15
+ export const SIGNATURE_PRINTED_SIGNED_SCAN_OBJECT_KEY =
16
+ 'signature.printed.signedScanObjectKey';
14
17
 
15
18
  /** @deprecated Use SIGNATURE_PRINTED_EMIT */
16
19
  export const SIGNATURE_LEGAL_ENVELOPE_CREATE = 'signature.legalEnvelope.create';
@@ -86,3 +86,24 @@ export type PrintedSignatureSummaryItemDto = {
86
86
  signature_status: PrintedSignatureStatusValue;
87
87
  signed_at: string | null;
88
88
  };
89
+
90
+ /** RPC: obter chave S3 do scan assinado para download. */
91
+ export class PrintedSignatureSignedScanObjectKeyRpcDto {
92
+ @ApiProperty()
93
+ @IsString()
94
+ @MinLength(1)
95
+ @MaxLength(128)
96
+ tenant: string;
97
+
98
+ @ApiProperty({ format: 'uuid' })
99
+ @IsUUID('4')
100
+ signatureId: string;
101
+
102
+ @ApiProperty({ format: 'uuid' })
103
+ @IsUUID('4')
104
+ patientId: string;
105
+ }
106
+
107
+ export type PrintedSignatureSignedScanObjectKeyRpcResultDto = {
108
+ objectKey: string;
109
+ };
@@ -4,6 +4,7 @@ import {
4
4
  IsDateString,
5
5
  IsEmail,
6
6
  IsNotEmpty,
7
+ IsNumber,
7
8
  IsOptional,
8
9
  IsString,
9
10
  Length,
@@ -99,6 +100,78 @@ export class CreatePatientDto {
99
100
  @MaxLength(30)
100
101
  emergencyContact?: string | null;
101
102
 
103
+ @ApiPropertyOptional({
104
+ description: 'Cartão Nacional de Saúde (15 dígitos)',
105
+ example: '123456789012345',
106
+ maxLength: 15,
107
+ })
108
+ @IsString()
109
+ @IsOptional()
110
+ @MaxLength(15)
111
+ cns?: string | null;
112
+
113
+ @ApiPropertyOptional({
114
+ description: 'Altura em centímetros',
115
+ example: 170.5,
116
+ })
117
+ @IsOptional()
118
+ @IsNumber()
119
+ heightCm?: number | null;
120
+
121
+ @ApiPropertyOptional({
122
+ description: 'Peso em quilogramas',
123
+ example: 72.4,
124
+ })
125
+ @IsOptional()
126
+ @IsNumber()
127
+ weightKg?: number | null;
128
+
129
+ @ApiPropertyOptional({
130
+ description: 'Estado civil',
131
+ example: 'casado',
132
+ maxLength: 50,
133
+ })
134
+ @IsString()
135
+ @IsOptional()
136
+ @MaxLength(50)
137
+ maritalStatus?: string | null;
138
+
139
+ @ApiPropertyOptional({
140
+ description: 'Telefone secundário ou de emergência adicional',
141
+ maxLength: 30,
142
+ })
143
+ @IsString()
144
+ @IsOptional()
145
+ @MaxLength(30)
146
+ secondaryPhone?: string | null;
147
+
148
+ @ApiPropertyOptional({
149
+ description: 'Tipo sanguíneo (A, B, AB, O)',
150
+ maxLength: 10,
151
+ })
152
+ @IsString()
153
+ @IsOptional()
154
+ @MaxLength(10)
155
+ bloodType?: string | null;
156
+
157
+ @ApiPropertyOptional({
158
+ description: 'Fator RH (positivo ou negativo)',
159
+ maxLength: 20,
160
+ })
161
+ @IsString()
162
+ @IsOptional()
163
+ @MaxLength(20)
164
+ rhFactor?: string | null;
165
+
166
+ @ApiPropertyOptional({
167
+ description: 'Alergias conhecidas',
168
+ maxLength: 1000,
169
+ })
170
+ @IsString()
171
+ @IsOptional()
172
+ @MaxLength(1000)
173
+ allergies?: string | null;
174
+
102
175
  @ApiProperty({
103
176
  description: 'Indica se o paciente possui alguma deficiência',
104
177
  example: true,