Untitled
unknown
typescript
7 months ago
1.9 kB
2
Indexable
Never
export const FiscalDocumentRelatedsInvoiceColSchema = new Schema<IFiscalDocumentRelatedInvoiceCol>({ ...FiscalDocumentRelatedInvoiceSchema.obj, ffuid: { type: String, required: true } }); export const FiscalDocumentItemPromotionsCol = new Schema<IFiscalDocumentItemPromotion>({ ...FiscalDocumentItemPromotionSchema.obj, baseAmount: { type: Number, required: true }, }); export const FiscalDocumentItemSchemaColSchema = FiscalDocumentItemSchema.add({ promotions: { type: [FiscalDocumentItemPromotionsCol], default: [] } }) class FiscalDocumentService extends FiscalDocumentCoreService<IFiscalDocument> { customer: { type: CustomerSchema, required: true }, paymentDueDate: { type: Date, required: false }, authorizationDate: { type: Date, required: false }, ffuid: { type: String, required: false }, qr: { type: String, required: false }, authorizationTime: { type: Number, required: false }, authorizationTimeDIAN: { type: Number, required: false }, period: { type: String, required: true }, operator: { type: String, required: true }, /** Flag para proceso de computeFiscalDocuments */ computedIndicators: { type: Boolean, default: false }, /** Pisar items */ items: { type: [FiscalDocumentItemSchemaColSchema], required: true }, /** Pisar relatedInvoices */ relatedInvoices: { type: [FiscalDocumentRelatedsInvoiceColSchema], default: [] }, }, [ // Indice para el proceso de computeFiscalDocuments { fields: { "computedIndicators": 1, "status": "text" } }, // Indice para los indicadores de dashboard { fields: { "period": "text", "companyCode": "text" } }, ]) }