@dynamatix/gb-schemas 2.3.237 → 2.3.239
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.
- package/README.md +309 -0
- package/dist/applicants/applicant-additional-income.model.d.ts +13 -12
- package/dist/applicants/applicant-additional-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-additional-income.model.js +3 -0
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts +19 -18
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-creditCard.model.js +3 -0
- package/dist/applicants/applicant-commitment-loan.model.d.ts +19 -18
- package/dist/applicants/applicant-commitment-loan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-loan.model.js +3 -0
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts +19 -18
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-mortgage.model.js +3 -0
- package/dist/applicants/applicant-commitment-residence.model.d.ts +31 -30
- package/dist/applicants/applicant-commitment-residence.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-residence.model.js +3 -0
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts +19 -18
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-secureLoan.model.js +3 -0
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts +19 -18
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.js +3 -0
- package/dist/applicants/applicant-credit-data.model.d.ts +3 -3
- package/dist/applicants/applicant-credit-report.model.d.ts +3754 -0
- package/dist/applicants/{applicant-income.model.d.ts.map → applicant-credit-report.model.d.ts.map} +1 -1
- package/dist/applicants/applicant-credit-report.model.js +116 -0
- package/dist/applicants/applicant-credit-report.type.d.ts +140 -0
- package/dist/applicants/applicant-credit-report.type.d.ts.map +1 -0
- package/dist/applicants/applicant-credit-report.type.js +1 -0
- package/dist/applicants/applicant-employment-income.model.d.ts +7 -6
- package/dist/applicants/applicant-employment-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-employment-income.model.js +3 -0
- package/dist/applicants/applicant-employment.model.d.ts +88 -87
- package/dist/applicants/applicant-employment.model.d.ts.map +1 -1
- package/dist/applicants/applicant-employment.model.js +19 -19
- package/dist/applicants/applicant-expenditure.model.d.ts +7 -0
- package/dist/applicants/applicant-expenditure.model.d.ts.map +1 -1
- package/dist/applicants/applicant-expenditure.model.js +77 -0
- package/dist/applicants/applicant-expenditure.type.d.ts +42 -0
- package/dist/applicants/applicant-expenditure.type.d.ts.map +1 -0
- package/dist/applicants/applicant-expenditure.type.js +1 -0
- package/dist/applicants/applicant-income-settings.model.d.ts.map +1 -1
- package/dist/applicants/applicant-income-settings.model.js +3 -0
- package/dist/applicants/applicant-income-settings.type.d.ts +40 -0
- package/dist/applicants/applicant-income-settings.type.d.ts.map +1 -0
- package/dist/applicants/applicant-income-settings.type.js +1 -0
- package/dist/applicants/applicant-income-summary.model.d.ts +73 -72
- package/dist/applicants/applicant-income-summary.model.d.ts.map +1 -1
- package/dist/applicants/applicant-income-summary.model.js +3 -0
- package/dist/applicants/applicant-income-summary.type.d.ts +60 -0
- package/dist/applicants/applicant-income-summary.type.d.ts.map +1 -0
- package/dist/applicants/applicant-income-summary.type.js +1 -0
- package/dist/applicants/applicant-pension-income.model.d.ts +19 -18
- package/dist/applicants/applicant-pension-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-pension-income.model.js +3 -0
- package/dist/applicants/applicant-pension-income.type.d.ts +40 -0
- package/dist/applicants/applicant-pension-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-pension-income.type.js +1 -0
- package/dist/applicants/applicant-property-income.model.d.ts +37 -36
- package/dist/applicants/applicant-property-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-property-income.model.js +3 -0
- package/dist/applicants/applicant-self-employed-income.model.d.ts +7 -6
- package/dist/applicants/applicant-self-employed-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-self-employed-income.model.js +3 -0
- package/dist/applicants/applicant-self-employed-income.type.d.ts +37 -0
- package/dist/applicants/applicant-self-employed-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-self-employed-income.type.js +1 -0
- package/dist/applicants/applicant-self-employment.model.d.ts +6 -6
- package/dist/applicants/applicant-self-employment.model.d.ts.map +1 -1
- package/dist/applicants/applicant-self-employment.model.js +4 -1
- package/dist/applicants/applicant-sole-trader-income.model.d.ts +7 -6
- package/dist/applicants/applicant-sole-trader-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-sole-trader-income.model.js +3 -0
- package/dist/applicants/applicant-sole-trader-income.type.d.ts +37 -0
- package/dist/applicants/applicant-sole-trader-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-sole-trader-income.type.js +1 -0
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts +19 -18
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts.map +1 -1
- package/dist/applicants/applicant-uk-tax-credits.model.js +3 -0
- package/dist/applicants/applicant-uk-tax-credits.type.d.ts +39 -0
- package/dist/applicants/applicant-uk-tax-credits.type.d.ts.map +1 -0
- package/dist/applicants/applicant-uk-tax-credits.type.js +1 -0
- package/dist/applicants/applicant-welcome-call.model.d.ts +288 -0
- package/dist/applicants/applicant-welcome-call.model.d.ts.map +1 -0
- package/dist/applicants/applicant-welcome-call.model.js +263 -0
- package/dist/applicants/applicant-welcome-call.type.d.ts +66 -0
- package/dist/applicants/applicant-welcome-call.type.d.ts.map +1 -0
- package/dist/applicants/applicant-welcome-call.type.js +1 -0
- package/dist/applicants/applicant.model.d.ts +49 -42
- package/dist/applicants/applicant.model.d.ts.map +1 -1
- package/dist/applicants/applicant.model.js +5 -1
- package/dist/applicants/applicant.type.d.ts +158 -0
- package/dist/applicants/applicant.type.d.ts.map +1 -0
- package/dist/applicants/applicant.type.js +1 -0
- package/dist/applicants/index.d.ts +14 -0
- package/dist/applicants/index.d.ts.map +1 -1
- package/dist/applicants/index.js +2 -0
- package/dist/applications/application-audit.model.d.ts +6 -6
- package/dist/applications/application-audit.model.d.ts.map +1 -1
- package/dist/applications/application-audit.model.js +3 -0
- package/dist/applications/application-checklist-Item.model.d.ts +6 -0
- package/dist/applications/application-checklist-Item.model.d.ts.map +1 -1
- package/dist/applications/application-checklist-Item.model.js +4 -0
- package/dist/applications/application-company-model.d.ts +64 -57
- package/dist/applications/application-company-model.d.ts.map +1 -1
- package/dist/applications/application-company-model.js +1 -0
- package/dist/applications/application-direct-debit.model.d.ts +29 -27
- package/dist/applications/application-direct-debit.model.d.ts.map +1 -1
- package/dist/applications/application-direct-debit.model.js +3 -0
- package/dist/applications/application-euc.model.d.ts.map +1 -1
- package/dist/applications/application-euc.model.js +3 -0
- package/dist/applications/application-fieldconfig.model.d.ts.map +1 -1
- package/dist/applications/application-fieldconfig.model.js +3 -0
- package/dist/applications/application-legal.model.d.ts.map +1 -1
- package/dist/applications/application-legal.model.js +3 -0
- package/dist/applications/application-mortgage.model.d.ts +1 -0
- package/dist/applications/application-mortgage.model.d.ts.map +1 -1
- package/dist/applications/application-mortgage.model.js +3 -0
- package/dist/applications/application-mortgage.type.d.ts +76 -0
- package/dist/applications/application-mortgage.type.d.ts.map +1 -0
- package/dist/applications/application-mortgage.type.js +1 -0
- package/dist/applications/application-note.model.d.ts +36 -24
- package/dist/applications/application-note.model.d.ts.map +1 -1
- package/dist/applications/application-note.model.js +12 -3
- package/dist/applications/application-note.type.d.ts +55 -0
- package/dist/applications/application-note.type.d.ts.map +1 -0
- package/dist/applications/application-note.type.js +1 -0
- package/dist/applications/application-offer.model.d.ts.map +1 -1
- package/dist/applications/application-offer.model.js +3 -0
- package/dist/applications/application-onboarding.model.d.ts.map +1 -1
- package/dist/applications/application-onboarding.model.js +3 -0
- package/dist/applications/application-product.model.d.ts +77 -13
- package/dist/applications/application-product.model.d.ts.map +1 -1
- package/dist/applications/application-product.model.js +16 -3
- package/dist/applications/application-product.type.d.ts +58 -0
- package/dist/applications/application-product.type.d.ts.map +1 -0
- package/dist/applications/application-product.type.js +1 -0
- package/dist/applications/application-productfeatures.model.d.ts +12 -6
- package/dist/applications/application-productfeatures.model.d.ts.map +1 -1
- package/dist/applications/application-productfeatures.model.js +5 -1
- package/dist/applications/application-productfeatures.type.d.ts +125 -0
- package/dist/applications/application-productfeatures.type.d.ts.map +1 -0
- package/dist/applications/application-productfeatures.type.js +1 -0
- package/dist/applications/application-rationale.model.d.ts +6 -12
- package/dist/applications/application-rationale.model.d.ts.map +1 -1
- package/dist/applications/application-rationale.model.js +11 -20
- package/dist/applications/application-rationale.type.d.ts +7 -7
- package/dist/applications/application-rationale.type.d.ts.map +1 -1
- package/dist/applications/application-risk-narrative.model.d.ts.map +1 -1
- package/dist/applications/application-risk-narrative.model.js +3 -0
- package/dist/applications/application-valuation-report.model.d.ts +1246 -0
- package/dist/applications/application-valuation-report.model.d.ts.map +1 -0
- package/dist/applications/application-valuation-report.model.js +269 -0
- package/dist/applications/application-valuation-report.type.d.ts +108 -0
- package/dist/applications/application-valuation-report.type.d.ts.map +1 -0
- package/dist/applications/application-valuation-report.type.js +1 -0
- package/dist/applications/application-valuation.model.d.ts +695 -18
- package/dist/applications/application-valuation.model.d.ts.map +1 -1
- package/dist/applications/application-valuation.model.js +33 -7
- package/dist/applications/application-valuation.type.d.ts +54 -0
- package/dist/applications/application-valuation.type.d.ts.map +1 -0
- package/dist/applications/application-valuation.type.js +1 -0
- package/dist/applications/application.model.d.ts +36 -30
- package/dist/applications/application.model.d.ts.map +1 -1
- package/dist/applications/application.model.js +17 -4
- package/dist/applications/applications-task.model.d.ts +171 -67
- package/dist/applications/applications-task.model.d.ts.map +1 -1
- package/dist/applications/applications-task.model.js +36 -45
- package/dist/applications/applications-task.type.d.ts +57 -0
- package/dist/applications/applications-task.type.d.ts.map +1 -0
- package/dist/applications/applications-task.type.js +1 -0
- package/dist/applications/broker.model.d.ts.map +1 -1
- package/dist/applications/broker.model.js +3 -0
- package/dist/applications/index.d.ts +10 -3
- package/dist/applications/index.d.ts.map +1 -1
- package/dist/applications/index.js +2 -3
- package/dist/applications/solicitor.model.d.ts +2 -0
- package/dist/applications/solicitor.model.d.ts.map +1 -1
- package/dist/applications/solicitor.model.js +3 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/product-catalogues/index.d.ts +3 -0
- package/dist/product-catalogues/index.d.ts.map +1 -1
- package/dist/product-catalogues/product-catalogue.type.d.ts +15 -0
- package/dist/product-catalogues/product-catalogue.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-catalogue.type.js +1 -0
- package/dist/product-catalogues/product-definitions.type.d.ts +53 -0
- package/dist/product-catalogues/product-definitions.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-definitions.type.js +1 -0
- package/dist/product-catalogues/product-variant.type.d.ts +38 -0
- package/dist/product-catalogues/product-variant.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-variant.type.js +1 -0
- package/dist/properties/property.model.d.ts +52 -51
- package/dist/properties/property.model.d.ts.map +1 -1
- package/dist/properties/property.model.js +1 -2
- package/dist/properties/security.model.d.ts +6 -0
- package/dist/properties/security.model.d.ts.map +1 -1
- package/dist/properties/security.model.js +1 -0
- package/dist/shared/alert.model.d.ts +12 -12
- package/dist/shared/api-log.model.d.ts +118 -0
- package/dist/shared/api-log.model.d.ts.map +1 -0
- package/dist/shared/api-log.model.js +21 -0
- package/dist/shared/apprivo-sync-journey.model.d.ts +6 -6
- package/dist/shared/checklist.model.d.ts +6 -6
- package/dist/shared/index.d.ts +5 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +4 -1
- package/dist/shared/job-setting.model.d.ts +6 -6
- package/dist/shared/lookup-group.model.d.ts +25 -25
- package/dist/shared/lookup-group.model.d.ts.map +1 -1
- package/dist/shared/lookup-group.model.js +3 -0
- package/dist/shared/schema-doc.model.d.ts +6 -6
- package/dist/shared/system-parameter.model.d.ts +6 -6
- package/dist/shared/task-document.model.d.ts +6 -6
- package/dist/shared/task.model.d.ts +6 -6
- package/dist/shared/{document-type-model.d.ts → webhook-event.model.d.ts} +6 -45
- package/dist/shared/webhook-event.model.d.ts.map +1 -0
- package/dist/shared/webhook-event.model.js +53 -0
- package/dist/shared/webhook-event.type.d.ts +15 -0
- package/dist/shared/webhook-event.type.d.ts.map +1 -0
- package/dist/shared/webhook-event.type.js +1 -0
- package/dist/shared/workflow-trigger.model.d.ts +32 -0
- package/dist/shared/workflow-trigger.model.d.ts.map +1 -0
- package/dist/shared/workflow-trigger.model.js +45 -0
- package/dist/shared/workflow-trigger.type.d.ts +59 -0
- package/dist/shared/workflow-trigger.type.d.ts.map +1 -0
- package/dist/shared/workflow-trigger.type.js +1 -0
- package/dist/shared/workflow.init.d.ts +21 -0
- package/dist/shared/workflow.init.d.ts.map +1 -0
- package/dist/shared/workflow.init.js +41 -0
- package/dist/shared/workflow.middleware.d.ts +107 -0
- package/dist/shared/workflow.middleware.d.ts.map +1 -0
- package/dist/shared/workflow.middleware.js +230 -0
- package/dist/shared/workflow.plugin.d.ts +46 -0
- package/dist/shared/workflow.plugin.d.ts.map +1 -0
- package/dist/shared/workflow.plugin.js +102 -0
- package/dist/shared/workflow.service.d.ts +39 -0
- package/dist/shared/workflow.service.d.ts.map +1 -0
- package/dist/shared/workflow.service.js +115 -0
- package/dist/value-objects/pound.d.ts.map +1 -1
- package/package.json +14 -3
- package/dist/applicants/applicant-income.model.d.ts +0 -2558
- package/dist/applicants/applicant-income.model.js +0 -82
- package/dist/applications/application-document.model.d.ts +0 -186
- package/dist/applications/application-document.model.d.ts.map +0 -1
- package/dist/applications/application-document.model.js +0 -35
- package/dist/applications/document.model.d.ts +0 -186
- package/dist/applications/document.model.d.ts.map +0 -1
- package/dist/applications/document.model.js +0 -35
- package/dist/shared/document-type-model.d.ts.map +0 -1
- package/dist/shared/document-type-model.js +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-valuation.model.d.ts","sourceRoot":"","sources":["../../applications/application-valuation.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,QAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"application-valuation.model.d.ts","sourceRoot":"","sources":["../../applications/application-valuation.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAe,KAAK,EAAE,MAAM,wBAAwB,CAAC;AA4C5D,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA0D,CAAC;AAC1F,eAAe,yBAAyB,CAAC"}
|
|
@@ -1,15 +1,41 @@
|
|
|
1
1
|
import mongoose from "mongoose";
|
|
2
|
+
import { applyWorkflowPlugin } from "../shared/workflow.plugin";
|
|
3
|
+
import { formatPound, Pound } from "../value-objects/pound";
|
|
4
|
+
import { applyAuditMiddleware } from "@dynamatix/cat-shared/middlewares";
|
|
2
5
|
const valuationSchema = new mongoose.Schema({
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
applicationId: { type: mongoose.Schema.Types.ObjectId, ref: "Application", required: true },
|
|
7
|
+
amount: { type: Pound, default: 0.00, get: formatPound },
|
|
8
|
+
epcRatingLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", },
|
|
9
|
+
epcScore: { type: Number },
|
|
10
|
+
estimatedRentalValue: { type: Pound, default: 0.00, get: formatPound },
|
|
7
11
|
instructionId: { type: String, default: "" },
|
|
8
12
|
instructionStatus: { type: String, default: "" },
|
|
9
13
|
instructionStatusComment: { type: String, default: "" },
|
|
10
|
-
isManual: { type:
|
|
14
|
+
isManual: { type: Boolean, default: false },
|
|
11
15
|
squareMetres: { type: String },
|
|
12
16
|
valuerNotes: { type: String, default: "" },
|
|
13
|
-
version: { type: String, default: "" }
|
|
17
|
+
version: { type: String, default: "" },
|
|
18
|
+
pvqRaisedDate: { type: String, default: null },
|
|
19
|
+
pvqClosedDate: { type: String, default: null },
|
|
20
|
+
inspectionDate: { type: String, default: null },
|
|
21
|
+
valuationRequestedDate: { type: String, default: null },
|
|
22
|
+
valuationScheduledDate: { type: String, default: null },
|
|
23
|
+
valuationSurveyorDetails: { type: String, default: "" },
|
|
24
|
+
dateOfValuationReceived: { type: String, default: null },
|
|
25
|
+
ninetyDaysValuationAmount: { type: Pound, default: 0.00, get: formatPound },
|
|
26
|
+
reinstatementAmount: { type: Pound, default: 0.00, get: formatPound },
|
|
27
|
+
valuationNotes: { type: String, default: "" },
|
|
28
|
+
valuationAccepted: { type: String, default: null }
|
|
14
29
|
});
|
|
15
|
-
|
|
30
|
+
// virtual property 'lendingType'
|
|
31
|
+
valuationSchema.virtual("lendingType").get(function () {
|
|
32
|
+
return this.applicationId?.lendingTypeLid instanceof
|
|
33
|
+
mongoose.Types.ObjectId
|
|
34
|
+
? null
|
|
35
|
+
: this.applicationId?.lendingTypeLid?.text || null;
|
|
36
|
+
});
|
|
37
|
+
applyAuditMiddleware(valuationSchema, "ApplicationValuation");
|
|
38
|
+
// Apply workflow plugin to the schema
|
|
39
|
+
applyWorkflowPlugin(valuationSchema, 'applicationvaluation');
|
|
40
|
+
const ApplicationValuationModel = mongoose.model("ApplicationValuation", valuationSchema);
|
|
41
|
+
export default ApplicationValuationModel;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/// <reference path="../value-objects/pound.d.ts" />
|
|
2
|
+
/// <reference path="../value-objects/account-number.d.ts" />
|
|
3
|
+
/// <reference path="../value-objects/sort-code.d.ts" />
|
|
4
|
+
/// <reference types="mongoose/types/aggregate" />
|
|
5
|
+
/// <reference types="mongoose/types/callback" />
|
|
6
|
+
/// <reference types="mongoose/types/collection" />
|
|
7
|
+
/// <reference types="mongoose/types/connection" />
|
|
8
|
+
/// <reference types="mongoose/types/cursor" />
|
|
9
|
+
/// <reference types="mongoose/types/document" />
|
|
10
|
+
/// <reference types="mongoose/types/error" />
|
|
11
|
+
/// <reference types="mongoose/types/expressions" />
|
|
12
|
+
/// <reference types="mongoose/types/helpers" />
|
|
13
|
+
/// <reference types="mongoose/types/middlewares" />
|
|
14
|
+
/// <reference types="mongoose/types/indexes" />
|
|
15
|
+
/// <reference types="mongoose/types/models" />
|
|
16
|
+
/// <reference types="mongoose/types/mongooseoptions" />
|
|
17
|
+
/// <reference types="mongoose/types/pipelinestage" />
|
|
18
|
+
/// <reference types="mongoose/types/populate" />
|
|
19
|
+
/// <reference types="mongoose/types/query" />
|
|
20
|
+
/// <reference types="mongoose/types/schemaoptions" />
|
|
21
|
+
/// <reference types="mongoose/types/session" />
|
|
22
|
+
/// <reference types="mongoose/types/types" />
|
|
23
|
+
/// <reference types="mongoose/types/utility" />
|
|
24
|
+
/// <reference types="mongoose/types/validation" />
|
|
25
|
+
/// <reference types="mongoose/types/virtuals" />
|
|
26
|
+
/// <reference types="mongoose/types/schematypes" />
|
|
27
|
+
/// <reference types="mongoose/types/inferschematype" />
|
|
28
|
+
/// <reference types="mongoose/types/inferrawdoctype" />
|
|
29
|
+
import { Types } from "mongoose";
|
|
30
|
+
import { IBaseType } from "../types/base.types";
|
|
31
|
+
export default interface IApplicationValuation extends IBaseType {
|
|
32
|
+
applicationId: Types.ObjectId;
|
|
33
|
+
amount: number;
|
|
34
|
+
epcRatingLid?: Types.ObjectId | null;
|
|
35
|
+
epcScore?: number;
|
|
36
|
+
estimatedRentalValue: number;
|
|
37
|
+
instructionId: string;
|
|
38
|
+
instructionStatus: string;
|
|
39
|
+
instructionStatusComment: string;
|
|
40
|
+
isManual: boolean;
|
|
41
|
+
squareMetres?: string;
|
|
42
|
+
valuerNotes: string;
|
|
43
|
+
version: string;
|
|
44
|
+
valuationRequestedDate?: string | null;
|
|
45
|
+
valuationScheduledDate?: string | null;
|
|
46
|
+
valuationSurveyorDetails: string;
|
|
47
|
+
dateOfValuationReceived?: string | null;
|
|
48
|
+
ninetyDaysValuationAmount: number;
|
|
49
|
+
reinstatementAmount: number;
|
|
50
|
+
valuationNotes: string;
|
|
51
|
+
valuationAccepted?: string | null;
|
|
52
|
+
lendingType?: string | null;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=application-valuation.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"application-valuation.type.d.ts","sourceRoot":"","sources":["../../applications/application-valuation.type.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,CAAC,OAAO,WAAW,qBAAsB,SAAQ,SAAS;IAC9D,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,wBAAwB,EAAE,MAAM,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,wBAAwB,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,yBAAyB,EAAE,MAAM,CAAC;IAClC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGlC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -31,6 +31,7 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
31
31
|
createdAt: NativeDate;
|
|
32
32
|
updatedAt: NativeDate;
|
|
33
33
|
} & {
|
|
34
|
+
isActive: string;
|
|
34
35
|
applicationId: string;
|
|
35
36
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
36
37
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -59,19 +60,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
59
60
|
submitReason: string;
|
|
60
61
|
underwriter: string;
|
|
61
62
|
isValuationFeePaid: string;
|
|
62
|
-
|
|
63
|
-
withdrawalReasonCode: string;
|
|
63
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
64
64
|
securityId: mongoose.Types.ObjectId;
|
|
65
65
|
solicitorId: mongoose.Types.ObjectId;
|
|
66
|
-
isActive: string;
|
|
67
|
-
isUkResident: string;
|
|
68
66
|
newAuditRecordsCount: number;
|
|
69
67
|
propertyIds: mongoose.Types.ObjectId[];
|
|
70
68
|
brokerTaskCount: number;
|
|
71
69
|
lenderTaskCount: number;
|
|
72
70
|
pendingTaskCountForUser: number;
|
|
73
71
|
applicationFormSignedDate: NativeDate;
|
|
72
|
+
isUkResident: boolean;
|
|
73
|
+
creditReportId: string;
|
|
74
74
|
selectedProduct?: string | null | undefined;
|
|
75
|
+
product?: string | null | undefined;
|
|
75
76
|
riskRating?: string | null | undefined;
|
|
76
77
|
creditProfile?: {
|
|
77
78
|
companyBankruptcyYes: string;
|
|
@@ -88,14 +89,15 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
88
89
|
lastUpdated?: string | null | undefined;
|
|
89
90
|
submittedDate?: string | null | undefined;
|
|
90
91
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
91
|
-
product?: string | null | undefined;
|
|
92
92
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
93
93
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
94
94
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
95
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
95
96
|
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
96
97
|
createdAt: NativeDate;
|
|
97
98
|
updatedAt: NativeDate;
|
|
98
99
|
} & {
|
|
100
|
+
isActive: string;
|
|
99
101
|
applicationId: string;
|
|
100
102
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
101
103
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -124,19 +126,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
124
126
|
submitReason: string;
|
|
125
127
|
underwriter: string;
|
|
126
128
|
isValuationFeePaid: string;
|
|
127
|
-
|
|
128
|
-
withdrawalReasonCode: string;
|
|
129
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
129
130
|
securityId: mongoose.Types.ObjectId;
|
|
130
131
|
solicitorId: mongoose.Types.ObjectId;
|
|
131
|
-
isActive: string;
|
|
132
|
-
isUkResident: string;
|
|
133
132
|
newAuditRecordsCount: number;
|
|
134
133
|
propertyIds: mongoose.Types.ObjectId[];
|
|
135
134
|
brokerTaskCount: number;
|
|
136
135
|
lenderTaskCount: number;
|
|
137
136
|
pendingTaskCountForUser: number;
|
|
138
137
|
applicationFormSignedDate: NativeDate;
|
|
138
|
+
isUkResident: boolean;
|
|
139
|
+
creditReportId: string;
|
|
139
140
|
selectedProduct?: string | null | undefined;
|
|
141
|
+
product?: string | null | undefined;
|
|
140
142
|
riskRating?: string | null | undefined;
|
|
141
143
|
creditProfile?: {
|
|
142
144
|
companyBankruptcyYes: string;
|
|
@@ -153,14 +155,15 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
153
155
|
lastUpdated?: string | null | undefined;
|
|
154
156
|
submittedDate?: string | null | undefined;
|
|
155
157
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
156
|
-
product?: string | null | undefined;
|
|
157
158
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
158
159
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
159
160
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
161
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
160
162
|
}, {}> & {
|
|
161
163
|
createdAt: NativeDate;
|
|
162
164
|
updatedAt: NativeDate;
|
|
163
165
|
} & {
|
|
166
|
+
isActive: string;
|
|
164
167
|
applicationId: string;
|
|
165
168
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
166
169
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -189,19 +192,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
189
192
|
submitReason: string;
|
|
190
193
|
underwriter: string;
|
|
191
194
|
isValuationFeePaid: string;
|
|
192
|
-
|
|
193
|
-
withdrawalReasonCode: string;
|
|
195
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
194
196
|
securityId: mongoose.Types.ObjectId;
|
|
195
197
|
solicitorId: mongoose.Types.ObjectId;
|
|
196
|
-
isActive: string;
|
|
197
|
-
isUkResident: string;
|
|
198
198
|
newAuditRecordsCount: number;
|
|
199
199
|
propertyIds: mongoose.Types.ObjectId[];
|
|
200
200
|
brokerTaskCount: number;
|
|
201
201
|
lenderTaskCount: number;
|
|
202
202
|
pendingTaskCountForUser: number;
|
|
203
203
|
applicationFormSignedDate: NativeDate;
|
|
204
|
+
isUkResident: boolean;
|
|
205
|
+
creditReportId: string;
|
|
204
206
|
selectedProduct?: string | null | undefined;
|
|
207
|
+
product?: string | null | undefined;
|
|
205
208
|
riskRating?: string | null | undefined;
|
|
206
209
|
creditProfile?: {
|
|
207
210
|
companyBankruptcyYes: string;
|
|
@@ -218,10 +221,10 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
218
221
|
lastUpdated?: string | null | undefined;
|
|
219
222
|
submittedDate?: string | null | undefined;
|
|
220
223
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
221
|
-
product?: string | null | undefined;
|
|
222
224
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
223
225
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
224
226
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
227
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
225
228
|
} & {
|
|
226
229
|
_id: mongoose.Types.ObjectId;
|
|
227
230
|
} & {
|
|
@@ -238,6 +241,7 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
238
241
|
createdAt: NativeDate;
|
|
239
242
|
updatedAt: NativeDate;
|
|
240
243
|
} & {
|
|
244
|
+
isActive: string;
|
|
241
245
|
applicationId: string;
|
|
242
246
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
243
247
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -266,19 +270,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
266
270
|
submitReason: string;
|
|
267
271
|
underwriter: string;
|
|
268
272
|
isValuationFeePaid: string;
|
|
269
|
-
|
|
270
|
-
withdrawalReasonCode: string;
|
|
273
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
271
274
|
securityId: mongoose.Types.ObjectId;
|
|
272
275
|
solicitorId: mongoose.Types.ObjectId;
|
|
273
|
-
isActive: string;
|
|
274
|
-
isUkResident: string;
|
|
275
276
|
newAuditRecordsCount: number;
|
|
276
277
|
propertyIds: mongoose.Types.ObjectId[];
|
|
277
278
|
brokerTaskCount: number;
|
|
278
279
|
lenderTaskCount: number;
|
|
279
280
|
pendingTaskCountForUser: number;
|
|
280
281
|
applicationFormSignedDate: NativeDate;
|
|
282
|
+
isUkResident: boolean;
|
|
283
|
+
creditReportId: string;
|
|
281
284
|
selectedProduct?: string | null | undefined;
|
|
285
|
+
product?: string | null | undefined;
|
|
282
286
|
riskRating?: string | null | undefined;
|
|
283
287
|
creditProfile?: {
|
|
284
288
|
companyBankruptcyYes: string;
|
|
@@ -295,14 +299,15 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
295
299
|
lastUpdated?: string | null | undefined;
|
|
296
300
|
submittedDate?: string | null | undefined;
|
|
297
301
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
298
|
-
product?: string | null | undefined;
|
|
299
302
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
300
303
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
301
304
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
305
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
302
306
|
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
303
307
|
createdAt: NativeDate;
|
|
304
308
|
updatedAt: NativeDate;
|
|
305
309
|
} & {
|
|
310
|
+
isActive: string;
|
|
306
311
|
applicationId: string;
|
|
307
312
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
308
313
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -331,19 +336,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
331
336
|
submitReason: string;
|
|
332
337
|
underwriter: string;
|
|
333
338
|
isValuationFeePaid: string;
|
|
334
|
-
|
|
335
|
-
withdrawalReasonCode: string;
|
|
339
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
336
340
|
securityId: mongoose.Types.ObjectId;
|
|
337
341
|
solicitorId: mongoose.Types.ObjectId;
|
|
338
|
-
isActive: string;
|
|
339
|
-
isUkResident: string;
|
|
340
342
|
newAuditRecordsCount: number;
|
|
341
343
|
propertyIds: mongoose.Types.ObjectId[];
|
|
342
344
|
brokerTaskCount: number;
|
|
343
345
|
lenderTaskCount: number;
|
|
344
346
|
pendingTaskCountForUser: number;
|
|
345
347
|
applicationFormSignedDate: NativeDate;
|
|
348
|
+
isUkResident: boolean;
|
|
349
|
+
creditReportId: string;
|
|
346
350
|
selectedProduct?: string | null | undefined;
|
|
351
|
+
product?: string | null | undefined;
|
|
347
352
|
riskRating?: string | null | undefined;
|
|
348
353
|
creditProfile?: {
|
|
349
354
|
companyBankruptcyYes: string;
|
|
@@ -360,14 +365,15 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
360
365
|
lastUpdated?: string | null | undefined;
|
|
361
366
|
submittedDate?: string | null | undefined;
|
|
362
367
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
363
|
-
product?: string | null | undefined;
|
|
364
368
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
365
369
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
366
370
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
371
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
367
372
|
}>, {}> & mongoose.FlatRecord<{
|
|
368
373
|
createdAt: NativeDate;
|
|
369
374
|
updatedAt: NativeDate;
|
|
370
375
|
} & {
|
|
376
|
+
isActive: string;
|
|
371
377
|
applicationId: string;
|
|
372
378
|
applicationTypeLid: mongoose.Types.ObjectId;
|
|
373
379
|
applicants: mongoose.Types.ObjectId[];
|
|
@@ -396,19 +402,19 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
396
402
|
submitReason: string;
|
|
397
403
|
underwriter: string;
|
|
398
404
|
isValuationFeePaid: string;
|
|
399
|
-
|
|
400
|
-
withdrawalReasonCode: string;
|
|
405
|
+
withdrawalReasonLid: mongoose.Types.ObjectId;
|
|
401
406
|
securityId: mongoose.Types.ObjectId;
|
|
402
407
|
solicitorId: mongoose.Types.ObjectId;
|
|
403
|
-
isActive: string;
|
|
404
|
-
isUkResident: string;
|
|
405
408
|
newAuditRecordsCount: number;
|
|
406
409
|
propertyIds: mongoose.Types.ObjectId[];
|
|
407
410
|
brokerTaskCount: number;
|
|
408
411
|
lenderTaskCount: number;
|
|
409
412
|
pendingTaskCountForUser: number;
|
|
410
413
|
applicationFormSignedDate: NativeDate;
|
|
414
|
+
isUkResident: boolean;
|
|
415
|
+
creditReportId: string;
|
|
411
416
|
selectedProduct?: string | null | undefined;
|
|
417
|
+
product?: string | null | undefined;
|
|
412
418
|
riskRating?: string | null | undefined;
|
|
413
419
|
creditProfile?: {
|
|
414
420
|
companyBankruptcyYes: string;
|
|
@@ -425,10 +431,10 @@ declare const ApplicationModel: mongoose.Model<{
|
|
|
425
431
|
lastUpdated?: string | null | undefined;
|
|
426
432
|
submittedDate?: string | null | undefined;
|
|
427
433
|
productId?: mongoose.Types.ObjectId | null | undefined;
|
|
428
|
-
product?: string | null | undefined;
|
|
429
434
|
directDebitId?: mongoose.Types.ObjectId | null | undefined;
|
|
430
435
|
mortgageId?: mongoose.Types.ObjectId | null | undefined;
|
|
431
436
|
companyId?: mongoose.Types.ObjectId | null | undefined;
|
|
437
|
+
valuationId?: mongoose.Types.ObjectId | null | undefined;
|
|
432
438
|
}> & {
|
|
433
439
|
_id: mongoose.Types.ObjectId;
|
|
434
440
|
} & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.model.d.ts","sourceRoot":"","sources":["../../applications/application.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"application.model.d.ts","sourceRoot":"","sources":["../../applications/application.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAgOhC,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmD,CAAC;AAC1E,eAAe,gBAAgB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import mongoose from "mongoose";
|
|
2
2
|
import creditProfileSchema from "./application-credit-profile.model";
|
|
3
|
+
import { applyWorkflowPlugin } from "../shared/workflow.plugin";
|
|
3
4
|
const applicationSchema = new mongoose.Schema({
|
|
4
5
|
queueId: [{
|
|
5
6
|
type: mongoose.Schema.Types.ObjectId,
|
|
@@ -36,8 +37,7 @@ const applicationSchema = new mongoose.Schema({
|
|
|
36
37
|
submittedDate: { type: String },
|
|
37
38
|
underwriter: { type: String, default: "" },
|
|
38
39
|
isValuationFeePaid: { type: String, required: true },
|
|
39
|
-
|
|
40
|
-
withdrawalReasonCode: { type: String, default: "" },
|
|
40
|
+
withdrawalReasonLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", default: null },
|
|
41
41
|
productId: { type: mongoose.Schema.Types.ObjectId, ref: "Product", required: false },
|
|
42
42
|
product: { type: String },
|
|
43
43
|
securityId: { type: mongoose.Schema.Types.ObjectId, ref: "Security", required: true },
|
|
@@ -46,7 +46,6 @@ const applicationSchema = new mongoose.Schema({
|
|
|
46
46
|
{ type: mongoose.Schema.Types.ObjectId, ref: "Applicant" }
|
|
47
47
|
],
|
|
48
48
|
isActive: { type: String, default: false },
|
|
49
|
-
isUkResident: { type: String, default: true },
|
|
50
49
|
riskRating: { type: String },
|
|
51
50
|
directDebitId: { type: mongoose.Schema.Types.ObjectId, ref: "Application_DirectDebit" },
|
|
52
51
|
creditProfile: creditProfileSchema,
|
|
@@ -55,6 +54,7 @@ const applicationSchema = new mongoose.Schema({
|
|
|
55
54
|
newAuditRecordsCount: { type: Number, default: 0 }, // Ensure it is a Number
|
|
56
55
|
currentApprivoAuditId: Number,
|
|
57
56
|
propertyIds: [{ type: mongoose.Schema.Types.ObjectId, ref: "Property" }],
|
|
57
|
+
valuationId: { type: mongoose.Schema.Types.ObjectId, ref: "ApplicationValuation" },
|
|
58
58
|
brokerTaskCount: {
|
|
59
59
|
type: Number,
|
|
60
60
|
default: 0
|
|
@@ -71,11 +71,18 @@ const applicationSchema = new mongoose.Schema({
|
|
|
71
71
|
type: Date, // Stores as ISODate in MongoDB (e.g., "2023-11-15T12:30:45.123Z")
|
|
72
72
|
default: null
|
|
73
73
|
},
|
|
74
|
+
isUkResident: {
|
|
75
|
+
type: Boolean,
|
|
76
|
+
default: false
|
|
77
|
+
},
|
|
78
|
+
creditReportId: { type: String, default: null },
|
|
74
79
|
}, {
|
|
75
80
|
timestamps: true,
|
|
76
81
|
toJSON: { virtuals: true },
|
|
77
82
|
toObject: { virtuals: true }
|
|
78
83
|
});
|
|
84
|
+
// Apply workflow plugin to the schema
|
|
85
|
+
applyWorkflowPlugin(applicationSchema, 'application');
|
|
79
86
|
// Virtual property 'noOfApplicants'
|
|
80
87
|
applicationSchema.virtual('noOfApplicants').get(function () {
|
|
81
88
|
return this.applicants ? this.applicants.length : 0;
|
|
@@ -162,9 +169,15 @@ applicationSchema.virtual('solicitorPhone').get(function () {
|
|
|
162
169
|
applicationSchema.virtual('pendingDays').get(function () {
|
|
163
170
|
if (!this.applicationFormSignedDate)
|
|
164
171
|
return null;
|
|
172
|
+
// Get current date at midnight (ignoring time)
|
|
165
173
|
const now = new Date();
|
|
174
|
+
const todayMidnight = new Date(now.getFullYear(), now.getMonth(), now.getDate());
|
|
175
|
+
// Get signed date at midnight (ignoring time)
|
|
166
176
|
const signedDate = new Date(this.applicationFormSignedDate);
|
|
167
|
-
const
|
|
177
|
+
const signedMidnight = new Date(signedDate.getFullYear(), signedDate.getMonth(), signedDate.getDate());
|
|
178
|
+
// Calculate difference in just date
|
|
179
|
+
const diffTime = todayMidnight.getTime() - signedMidnight.getTime();
|
|
180
|
+
// Convert to days
|
|
168
181
|
const diffDays = Math.floor(diffTime / (1000 * 60 * 60 * 24));
|
|
169
182
|
return diffDays;
|
|
170
183
|
});
|