@dynamatix/gb-schemas 2.3.305 → 2.3.307
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/dist/applications/application-valuation-report.model.d.ts +24 -24
- package/dist/applications/application-valuation-report.model.js +5 -5
- package/package.json +1 -1
- package/dist/shared/audit-log.model.d.ts +0 -180
- package/dist/shared/audit-log.model.d.ts.map +0 -1
- package/dist/shared/audit-log.model.js +0 -43
- package/dist/shared/document.model.d.ts +0 -180
- package/dist/shared/document.model.d.ts.map +0 -1
- package/dist/shared/document.model.js +0 -40
- package/dist/shared/queue.model.d.ts +0 -180
- package/dist/shared/queue.model.d.ts.map +0 -1
- package/dist/shared/queue.model.js +0 -42
|
@@ -125,9 +125,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
125
125
|
isGoodMarketAppeal: boolean;
|
|
126
126
|
isAverageMarketAppeal: boolean;
|
|
127
127
|
isPoorMarketAppeal: boolean;
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
isOwnerResidential: boolean;
|
|
129
|
+
isResidentialLet: boolean;
|
|
130
|
+
isCommercial: boolean;
|
|
131
131
|
isPricesRising: boolean;
|
|
132
132
|
isPricesStatic: boolean;
|
|
133
133
|
isPricesFalling: boolean;
|
|
@@ -168,7 +168,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
168
168
|
structuralMovementDetails: string;
|
|
169
169
|
isStructuralModifications: boolean;
|
|
170
170
|
structuralModificationsDetails: string;
|
|
171
|
-
communalAreasMaintained:
|
|
171
|
+
communalAreasMaintained: boolean;
|
|
172
172
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
173
173
|
isTreesWithinInfluencingDistance: boolean;
|
|
174
174
|
treesInfluenceDetails: string;
|
|
@@ -342,9 +342,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
342
342
|
isGoodMarketAppeal: boolean;
|
|
343
343
|
isAverageMarketAppeal: boolean;
|
|
344
344
|
isPoorMarketAppeal: boolean;
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
345
|
+
isOwnerResidential: boolean;
|
|
346
|
+
isResidentialLet: boolean;
|
|
347
|
+
isCommercial: boolean;
|
|
348
348
|
isPricesRising: boolean;
|
|
349
349
|
isPricesStatic: boolean;
|
|
350
350
|
isPricesFalling: boolean;
|
|
@@ -385,7 +385,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
385
385
|
structuralMovementDetails: string;
|
|
386
386
|
isStructuralModifications: boolean;
|
|
387
387
|
structuralModificationsDetails: string;
|
|
388
|
-
communalAreasMaintained:
|
|
388
|
+
communalAreasMaintained: boolean;
|
|
389
389
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
390
390
|
isTreesWithinInfluencingDistance: boolean;
|
|
391
391
|
treesInfluenceDetails: string;
|
|
@@ -559,9 +559,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
559
559
|
isGoodMarketAppeal: boolean;
|
|
560
560
|
isAverageMarketAppeal: boolean;
|
|
561
561
|
isPoorMarketAppeal: boolean;
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
562
|
+
isOwnerResidential: boolean;
|
|
563
|
+
isResidentialLet: boolean;
|
|
564
|
+
isCommercial: boolean;
|
|
565
565
|
isPricesRising: boolean;
|
|
566
566
|
isPricesStatic: boolean;
|
|
567
567
|
isPricesFalling: boolean;
|
|
@@ -602,7 +602,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
602
602
|
structuralMovementDetails: string;
|
|
603
603
|
isStructuralModifications: boolean;
|
|
604
604
|
structuralModificationsDetails: string;
|
|
605
|
-
communalAreasMaintained:
|
|
605
|
+
communalAreasMaintained: boolean;
|
|
606
606
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
607
607
|
isTreesWithinInfluencingDistance: boolean;
|
|
608
608
|
treesInfluenceDetails: string;
|
|
@@ -780,9 +780,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
780
780
|
isGoodMarketAppeal: boolean;
|
|
781
781
|
isAverageMarketAppeal: boolean;
|
|
782
782
|
isPoorMarketAppeal: boolean;
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
783
|
+
isOwnerResidential: boolean;
|
|
784
|
+
isResidentialLet: boolean;
|
|
785
|
+
isCommercial: boolean;
|
|
786
786
|
isPricesRising: boolean;
|
|
787
787
|
isPricesStatic: boolean;
|
|
788
788
|
isPricesFalling: boolean;
|
|
@@ -823,7 +823,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
823
823
|
structuralMovementDetails: string;
|
|
824
824
|
isStructuralModifications: boolean;
|
|
825
825
|
structuralModificationsDetails: string;
|
|
826
|
-
communalAreasMaintained:
|
|
826
|
+
communalAreasMaintained: boolean;
|
|
827
827
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
828
828
|
isTreesWithinInfluencingDistance: boolean;
|
|
829
829
|
treesInfluenceDetails: string;
|
|
@@ -997,9 +997,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
997
997
|
isGoodMarketAppeal: boolean;
|
|
998
998
|
isAverageMarketAppeal: boolean;
|
|
999
999
|
isPoorMarketAppeal: boolean;
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1000
|
+
isOwnerResidential: boolean;
|
|
1001
|
+
isResidentialLet: boolean;
|
|
1002
|
+
isCommercial: boolean;
|
|
1003
1003
|
isPricesRising: boolean;
|
|
1004
1004
|
isPricesStatic: boolean;
|
|
1005
1005
|
isPricesFalling: boolean;
|
|
@@ -1040,7 +1040,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
1040
1040
|
structuralMovementDetails: string;
|
|
1041
1041
|
isStructuralModifications: boolean;
|
|
1042
1042
|
structuralModificationsDetails: string;
|
|
1043
|
-
communalAreasMaintained:
|
|
1043
|
+
communalAreasMaintained: boolean;
|
|
1044
1044
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
1045
1045
|
isTreesWithinInfluencingDistance: boolean;
|
|
1046
1046
|
treesInfluenceDetails: string;
|
|
@@ -1214,9 +1214,9 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
1214
1214
|
isGoodMarketAppeal: boolean;
|
|
1215
1215
|
isAverageMarketAppeal: boolean;
|
|
1216
1216
|
isPoorMarketAppeal: boolean;
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1217
|
+
isOwnerResidential: boolean;
|
|
1218
|
+
isResidentialLet: boolean;
|
|
1219
|
+
isCommercial: boolean;
|
|
1220
1220
|
isPricesRising: boolean;
|
|
1221
1221
|
isPricesStatic: boolean;
|
|
1222
1222
|
isPricesFalling: boolean;
|
|
@@ -1257,7 +1257,7 @@ declare const ApplicationValuationReportModel: mongoose.Model<{
|
|
|
1257
1257
|
structuralMovementDetails: string;
|
|
1258
1258
|
isStructuralModifications: boolean;
|
|
1259
1259
|
structuralModificationsDetails: string;
|
|
1260
|
-
communalAreasMaintained:
|
|
1260
|
+
communalAreasMaintained: boolean;
|
|
1261
1261
|
isPlotBoundariesDefinedUnderPointFourHectares: boolean;
|
|
1262
1262
|
isTreesWithinInfluencingDistance: boolean;
|
|
1263
1263
|
treesInfluenceDetails: string;
|
|
@@ -329,16 +329,16 @@ const localityAndDemandSchema = new mongoose.Schema({
|
|
|
329
329
|
type: Boolean,
|
|
330
330
|
default: null
|
|
331
331
|
},
|
|
332
|
-
// Surrounding
|
|
333
|
-
|
|
332
|
+
// Surrounding Property Types - Boolean fields
|
|
333
|
+
isOwnerResidential: {
|
|
334
334
|
type: Boolean,
|
|
335
335
|
default: null
|
|
336
336
|
},
|
|
337
|
-
|
|
337
|
+
isResidentialLet: {
|
|
338
338
|
type: Boolean,
|
|
339
339
|
default: null
|
|
340
340
|
},
|
|
341
|
-
|
|
341
|
+
isCommercial: {
|
|
342
342
|
type: Boolean,
|
|
343
343
|
default: null
|
|
344
344
|
},
|
|
@@ -602,7 +602,7 @@ const conditionsOfPropertySchema = new mongoose.Schema({
|
|
|
602
602
|
default: null
|
|
603
603
|
},
|
|
604
604
|
communalAreasMaintained: {
|
|
605
|
-
type:
|
|
605
|
+
type: Boolean,
|
|
606
606
|
default: null
|
|
607
607
|
},
|
|
608
608
|
propertyProneTo: propertyProneToSchema,
|
package/package.json
CHANGED
|
@@ -1,180 +0,0 @@
|
|
|
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 mongoose from "mongoose";
|
|
30
|
-
declare const AuditLogModel: mongoose.Model<{
|
|
31
|
-
name: string;
|
|
32
|
-
action: "read" | "create" | "update" | "delete";
|
|
33
|
-
timestamp: NativeDate;
|
|
34
|
-
recordId: mongoose.Types.ObjectId;
|
|
35
|
-
isSystemGenerated: boolean;
|
|
36
|
-
metadata?: any;
|
|
37
|
-
source?: string | null | undefined;
|
|
38
|
-
oldValue?: any;
|
|
39
|
-
newValue?: any;
|
|
40
|
-
fieldName?: string | null | undefined;
|
|
41
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
42
|
-
ipAddress?: string | null | undefined;
|
|
43
|
-
userAgent?: string | null | undefined;
|
|
44
|
-
sessionId?: string | null | undefined;
|
|
45
|
-
externalData?: {
|
|
46
|
-
apprivoAuditId?: string | null | undefined;
|
|
47
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
48
|
-
syncedAt?: NativeDate | null | undefined;
|
|
49
|
-
externalSystemId?: string | null | undefined;
|
|
50
|
-
} | null | undefined;
|
|
51
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
52
|
-
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
53
|
-
name: string;
|
|
54
|
-
action: "read" | "create" | "update" | "delete";
|
|
55
|
-
timestamp: NativeDate;
|
|
56
|
-
recordId: mongoose.Types.ObjectId;
|
|
57
|
-
isSystemGenerated: boolean;
|
|
58
|
-
metadata?: any;
|
|
59
|
-
source?: string | null | undefined;
|
|
60
|
-
oldValue?: any;
|
|
61
|
-
newValue?: any;
|
|
62
|
-
fieldName?: string | null | undefined;
|
|
63
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
64
|
-
ipAddress?: string | null | undefined;
|
|
65
|
-
userAgent?: string | null | undefined;
|
|
66
|
-
sessionId?: string | null | undefined;
|
|
67
|
-
externalData?: {
|
|
68
|
-
apprivoAuditId?: string | null | undefined;
|
|
69
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
70
|
-
syncedAt?: NativeDate | null | undefined;
|
|
71
|
-
externalSystemId?: string | null | undefined;
|
|
72
|
-
} | null | undefined;
|
|
73
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
74
|
-
}, {}> & {
|
|
75
|
-
name: string;
|
|
76
|
-
action: "read" | "create" | "update" | "delete";
|
|
77
|
-
timestamp: NativeDate;
|
|
78
|
-
recordId: mongoose.Types.ObjectId;
|
|
79
|
-
isSystemGenerated: boolean;
|
|
80
|
-
metadata?: any;
|
|
81
|
-
source?: string | null | undefined;
|
|
82
|
-
oldValue?: any;
|
|
83
|
-
newValue?: any;
|
|
84
|
-
fieldName?: string | null | undefined;
|
|
85
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
86
|
-
ipAddress?: string | null | undefined;
|
|
87
|
-
userAgent?: string | null | undefined;
|
|
88
|
-
sessionId?: string | null | undefined;
|
|
89
|
-
externalData?: {
|
|
90
|
-
apprivoAuditId?: string | null | undefined;
|
|
91
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
92
|
-
syncedAt?: NativeDate | null | undefined;
|
|
93
|
-
externalSystemId?: string | null | undefined;
|
|
94
|
-
} | null | undefined;
|
|
95
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
96
|
-
} & {
|
|
97
|
-
_id: mongoose.Types.ObjectId;
|
|
98
|
-
} & {
|
|
99
|
-
__v: number;
|
|
100
|
-
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
|
|
101
|
-
timestamps: false;
|
|
102
|
-
toJSON: {
|
|
103
|
-
virtuals: true;
|
|
104
|
-
};
|
|
105
|
-
toObject: {
|
|
106
|
-
virtuals: true;
|
|
107
|
-
};
|
|
108
|
-
}, {
|
|
109
|
-
name: string;
|
|
110
|
-
action: "read" | "create" | "update" | "delete";
|
|
111
|
-
timestamp: NativeDate;
|
|
112
|
-
recordId: mongoose.Types.ObjectId;
|
|
113
|
-
isSystemGenerated: boolean;
|
|
114
|
-
metadata?: any;
|
|
115
|
-
source?: string | null | undefined;
|
|
116
|
-
oldValue?: any;
|
|
117
|
-
newValue?: any;
|
|
118
|
-
fieldName?: string | null | undefined;
|
|
119
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
120
|
-
ipAddress?: string | null | undefined;
|
|
121
|
-
userAgent?: string | null | undefined;
|
|
122
|
-
sessionId?: string | null | undefined;
|
|
123
|
-
externalData?: {
|
|
124
|
-
apprivoAuditId?: string | null | undefined;
|
|
125
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
126
|
-
syncedAt?: NativeDate | null | undefined;
|
|
127
|
-
externalSystemId?: string | null | undefined;
|
|
128
|
-
} | null | undefined;
|
|
129
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
130
|
-
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
131
|
-
name: string;
|
|
132
|
-
action: "read" | "create" | "update" | "delete";
|
|
133
|
-
timestamp: NativeDate;
|
|
134
|
-
recordId: mongoose.Types.ObjectId;
|
|
135
|
-
isSystemGenerated: boolean;
|
|
136
|
-
metadata?: any;
|
|
137
|
-
source?: string | null | undefined;
|
|
138
|
-
oldValue?: any;
|
|
139
|
-
newValue?: any;
|
|
140
|
-
fieldName?: string | null | undefined;
|
|
141
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
142
|
-
ipAddress?: string | null | undefined;
|
|
143
|
-
userAgent?: string | null | undefined;
|
|
144
|
-
sessionId?: string | null | undefined;
|
|
145
|
-
externalData?: {
|
|
146
|
-
apprivoAuditId?: string | null | undefined;
|
|
147
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
148
|
-
syncedAt?: NativeDate | null | undefined;
|
|
149
|
-
externalSystemId?: string | null | undefined;
|
|
150
|
-
} | null | undefined;
|
|
151
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
152
|
-
}>, {}> & mongoose.FlatRecord<{
|
|
153
|
-
name: string;
|
|
154
|
-
action: "read" | "create" | "update" | "delete";
|
|
155
|
-
timestamp: NativeDate;
|
|
156
|
-
recordId: mongoose.Types.ObjectId;
|
|
157
|
-
isSystemGenerated: boolean;
|
|
158
|
-
metadata?: any;
|
|
159
|
-
source?: string | null | undefined;
|
|
160
|
-
oldValue?: any;
|
|
161
|
-
newValue?: any;
|
|
162
|
-
fieldName?: string | null | undefined;
|
|
163
|
-
userId?: mongoose.Types.ObjectId | null | undefined;
|
|
164
|
-
ipAddress?: string | null | undefined;
|
|
165
|
-
userAgent?: string | null | undefined;
|
|
166
|
-
sessionId?: string | null | undefined;
|
|
167
|
-
externalData?: {
|
|
168
|
-
apprivoAuditId?: string | null | undefined;
|
|
169
|
-
syncStatus?: "pending" | "synced" | "failed" | null | undefined;
|
|
170
|
-
syncedAt?: NativeDate | null | undefined;
|
|
171
|
-
externalSystemId?: string | null | undefined;
|
|
172
|
-
} | null | undefined;
|
|
173
|
-
severity?: "low" | "medium" | "high" | "critical" | null | undefined;
|
|
174
|
-
}> & {
|
|
175
|
-
_id: mongoose.Types.ObjectId;
|
|
176
|
-
} & {
|
|
177
|
-
__v: number;
|
|
178
|
-
}>>;
|
|
179
|
-
export default AuditLogModel;
|
|
180
|
-
//# sourceMappingURL=audit-log.model.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"audit-log.model.d.ts","sourceRoot":"","sources":["../../shared/audit-log.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA6ChC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA6C,CAAC;AACjE,eAAe,aAAa,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import mongoose from "mongoose";
|
|
2
|
-
const auditLogSchema = new mongoose.Schema({
|
|
3
|
-
name: { type: String, required: true }, // Collection/model name
|
|
4
|
-
recordId: { type: mongoose.Schema.Types.ObjectId, required: true }, // ID of the record being audited
|
|
5
|
-
action: { type: String, required: true, enum: ['create', 'update', 'delete', 'read'] },
|
|
6
|
-
userId: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: false }, // User who performed the action
|
|
7
|
-
timestamp: { type: Date, default: Date.now, required: true },
|
|
8
|
-
oldValue: { type: mongoose.Schema.Types.Mixed, required: false }, // Previous value
|
|
9
|
-
newValue: { type: mongoose.Schema.Types.Mixed, required: false }, // New value
|
|
10
|
-
fieldName: { type: String, required: false }, // Specific field that changed
|
|
11
|
-
ipAddress: { type: String, required: false },
|
|
12
|
-
userAgent: { type: String, required: false },
|
|
13
|
-
sessionId: { type: String, required: false },
|
|
14
|
-
source: { type: String, required: false, default: 'application' }, // Source of the change
|
|
15
|
-
metadata: { type: mongoose.Schema.Types.Mixed, required: false },
|
|
16
|
-
externalData: {
|
|
17
|
-
apprivoAuditId: { type: String, required: false }, // External system audit ID
|
|
18
|
-
syncStatus: { type: String, required: false, enum: ['pending', 'synced', 'failed'] },
|
|
19
|
-
syncedAt: { type: Date, required: false },
|
|
20
|
-
externalSystemId: { type: String, required: false }
|
|
21
|
-
},
|
|
22
|
-
isSystemGenerated: { type: Boolean, default: false },
|
|
23
|
-
severity: { type: String, required: false, enum: ['low', 'medium', 'high', 'critical'], default: 'low' }
|
|
24
|
-
}, {
|
|
25
|
-
timestamps: false, // We use our own timestamp field
|
|
26
|
-
toJSON: { virtuals: true },
|
|
27
|
-
toObject: { virtuals: true }
|
|
28
|
-
});
|
|
29
|
-
// Virtual for formatted timestamp
|
|
30
|
-
auditLogSchema.virtual('formattedTimestamp').get(function () {
|
|
31
|
-
return this.timestamp ? this.timestamp.toISOString() : null;
|
|
32
|
-
});
|
|
33
|
-
// Add indexes to match database
|
|
34
|
-
auditLogSchema.index({ 'externalData.apprivoAuditId': 1 }); // External audit ID lookup
|
|
35
|
-
auditLogSchema.index({ name: 1, newValue: 1, recordId: 1, timestamp: -1 }); // Complex compound index
|
|
36
|
-
auditLogSchema.index({ name: 1, recordId: 1 }); // Filter by collection and record
|
|
37
|
-
auditLogSchema.index({ recordId: 1, timestamp: -1, _id: -1 }); // Record history with fallback sort
|
|
38
|
-
auditLogSchema.index({ timestamp: -1 }); // Sort by recent changes
|
|
39
|
-
auditLogSchema.index({ userId: 1, timestamp: -1 }); // User activity history
|
|
40
|
-
auditLogSchema.index({ action: 1, timestamp: -1 }); // Filter by action type
|
|
41
|
-
auditLogSchema.index({ name: 1, action: 1, timestamp: -1 }); // Collection-specific action history
|
|
42
|
-
const AuditLogModel = mongoose.model("AuditLog", auditLogSchema);
|
|
43
|
-
export default AuditLogModel;
|
|
@@ -1,180 +0,0 @@
|
|
|
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 mongoose from "mongoose";
|
|
30
|
-
declare const DocumentModel: mongoose.Model<{
|
|
31
|
-
createdAt: NativeDate;
|
|
32
|
-
updatedAt: NativeDate;
|
|
33
|
-
} & {
|
|
34
|
-
isActive: boolean;
|
|
35
|
-
applicationId: mongoose.Types.ObjectId;
|
|
36
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
37
|
-
category: string;
|
|
38
|
-
fileName: string;
|
|
39
|
-
originalName: string;
|
|
40
|
-
mimeType: string;
|
|
41
|
-
fileSize: number;
|
|
42
|
-
filePath: string;
|
|
43
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
44
|
-
tags: string[];
|
|
45
|
-
metadata?: any;
|
|
46
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
47
|
-
rejectionReason?: string | null | undefined;
|
|
48
|
-
subCategory?: string | null | undefined;
|
|
49
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
50
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
51
|
-
expiresAt?: NativeDate | null | undefined;
|
|
52
|
-
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
53
|
-
createdAt: NativeDate;
|
|
54
|
-
updatedAt: NativeDate;
|
|
55
|
-
} & {
|
|
56
|
-
isActive: boolean;
|
|
57
|
-
applicationId: mongoose.Types.ObjectId;
|
|
58
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
59
|
-
category: string;
|
|
60
|
-
fileName: string;
|
|
61
|
-
originalName: string;
|
|
62
|
-
mimeType: string;
|
|
63
|
-
fileSize: number;
|
|
64
|
-
filePath: string;
|
|
65
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
66
|
-
tags: string[];
|
|
67
|
-
metadata?: any;
|
|
68
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
69
|
-
rejectionReason?: string | null | undefined;
|
|
70
|
-
subCategory?: string | null | undefined;
|
|
71
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
72
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
73
|
-
expiresAt?: NativeDate | null | undefined;
|
|
74
|
-
}, {}> & {
|
|
75
|
-
createdAt: NativeDate;
|
|
76
|
-
updatedAt: NativeDate;
|
|
77
|
-
} & {
|
|
78
|
-
isActive: boolean;
|
|
79
|
-
applicationId: mongoose.Types.ObjectId;
|
|
80
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
81
|
-
category: string;
|
|
82
|
-
fileName: string;
|
|
83
|
-
originalName: string;
|
|
84
|
-
mimeType: string;
|
|
85
|
-
fileSize: number;
|
|
86
|
-
filePath: string;
|
|
87
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
88
|
-
tags: string[];
|
|
89
|
-
metadata?: any;
|
|
90
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
91
|
-
rejectionReason?: string | null | undefined;
|
|
92
|
-
subCategory?: string | null | undefined;
|
|
93
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
94
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
95
|
-
expiresAt?: NativeDate | null | undefined;
|
|
96
|
-
} & {
|
|
97
|
-
_id: mongoose.Types.ObjectId;
|
|
98
|
-
} & {
|
|
99
|
-
__v: number;
|
|
100
|
-
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
|
|
101
|
-
timestamps: true;
|
|
102
|
-
toJSON: {
|
|
103
|
-
virtuals: true;
|
|
104
|
-
};
|
|
105
|
-
toObject: {
|
|
106
|
-
virtuals: true;
|
|
107
|
-
};
|
|
108
|
-
}, {
|
|
109
|
-
createdAt: NativeDate;
|
|
110
|
-
updatedAt: NativeDate;
|
|
111
|
-
} & {
|
|
112
|
-
isActive: boolean;
|
|
113
|
-
applicationId: mongoose.Types.ObjectId;
|
|
114
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
115
|
-
category: string;
|
|
116
|
-
fileName: string;
|
|
117
|
-
originalName: string;
|
|
118
|
-
mimeType: string;
|
|
119
|
-
fileSize: number;
|
|
120
|
-
filePath: string;
|
|
121
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
122
|
-
tags: string[];
|
|
123
|
-
metadata?: any;
|
|
124
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
125
|
-
rejectionReason?: string | null | undefined;
|
|
126
|
-
subCategory?: string | null | undefined;
|
|
127
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
128
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
129
|
-
expiresAt?: NativeDate | null | undefined;
|
|
130
|
-
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
131
|
-
createdAt: NativeDate;
|
|
132
|
-
updatedAt: NativeDate;
|
|
133
|
-
} & {
|
|
134
|
-
isActive: boolean;
|
|
135
|
-
applicationId: mongoose.Types.ObjectId;
|
|
136
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
137
|
-
category: string;
|
|
138
|
-
fileName: string;
|
|
139
|
-
originalName: string;
|
|
140
|
-
mimeType: string;
|
|
141
|
-
fileSize: number;
|
|
142
|
-
filePath: string;
|
|
143
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
144
|
-
tags: string[];
|
|
145
|
-
metadata?: any;
|
|
146
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
147
|
-
rejectionReason?: string | null | undefined;
|
|
148
|
-
subCategory?: string | null | undefined;
|
|
149
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
150
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
151
|
-
expiresAt?: NativeDate | null | undefined;
|
|
152
|
-
}>, {}> & mongoose.FlatRecord<{
|
|
153
|
-
createdAt: NativeDate;
|
|
154
|
-
updatedAt: NativeDate;
|
|
155
|
-
} & {
|
|
156
|
-
isActive: boolean;
|
|
157
|
-
applicationId: mongoose.Types.ObjectId;
|
|
158
|
-
status: "pending" | "uploaded" | "verified" | "rejected" | "archived";
|
|
159
|
-
category: string;
|
|
160
|
-
fileName: string;
|
|
161
|
-
originalName: string;
|
|
162
|
-
mimeType: string;
|
|
163
|
-
fileSize: number;
|
|
164
|
-
filePath: string;
|
|
165
|
-
uploadedBy: mongoose.Types.ObjectId;
|
|
166
|
-
tags: string[];
|
|
167
|
-
metadata?: any;
|
|
168
|
-
contextId?: mongoose.Types.ObjectId | null | undefined;
|
|
169
|
-
rejectionReason?: string | null | undefined;
|
|
170
|
-
subCategory?: string | null | undefined;
|
|
171
|
-
verifiedBy?: mongoose.Types.ObjectId | null | undefined;
|
|
172
|
-
verifiedAt?: NativeDate | null | undefined;
|
|
173
|
-
expiresAt?: NativeDate | null | undefined;
|
|
174
|
-
}> & {
|
|
175
|
-
_id: mongoose.Types.ObjectId;
|
|
176
|
-
} & {
|
|
177
|
-
__v: number;
|
|
178
|
-
}>>;
|
|
179
|
-
export default DocumentModel;
|
|
180
|
-
//# sourceMappingURL=document.model.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"document.model.d.ts","sourceRoot":"","sources":["../../shared/document.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA0ChC,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA6C,CAAC;AACjE,eAAe,aAAa,CAAC"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import mongoose from "mongoose";
|
|
2
|
-
import { applyAuditMiddleware } from "@dynamatix/cat-shared/middlewares";
|
|
3
|
-
import { applyWorkflowPlugin } from "./workflow.plugin";
|
|
4
|
-
const documentSchema = new mongoose.Schema({
|
|
5
|
-
applicationId: { type: mongoose.Schema.Types.ObjectId, ref: "Application", required: true },
|
|
6
|
-
contextId: { type: mongoose.Schema.Types.ObjectId, required: false },
|
|
7
|
-
status: { type: String, required: true, enum: ['pending', 'uploaded', 'verified', 'rejected', 'archived'] },
|
|
8
|
-
category: { type: String, required: true },
|
|
9
|
-
subCategory: { type: String, required: false },
|
|
10
|
-
fileName: { type: String, required: true },
|
|
11
|
-
originalName: { type: String, required: true },
|
|
12
|
-
mimeType: { type: String, required: true },
|
|
13
|
-
fileSize: { type: Number, required: true },
|
|
14
|
-
filePath: { type: String, required: true },
|
|
15
|
-
uploadedBy: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: true },
|
|
16
|
-
verifiedBy: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: false },
|
|
17
|
-
verifiedAt: { type: Date, required: false },
|
|
18
|
-
rejectionReason: { type: String, required: false },
|
|
19
|
-
metadata: { type: mongoose.Schema.Types.Mixed, required: false },
|
|
20
|
-
tags: [{ type: String }],
|
|
21
|
-
isActive: { type: Boolean, default: true },
|
|
22
|
-
expiresAt: { type: Date, required: false }
|
|
23
|
-
}, {
|
|
24
|
-
timestamps: true,
|
|
25
|
-
toJSON: { virtuals: true },
|
|
26
|
-
toObject: { virtuals: true }
|
|
27
|
-
});
|
|
28
|
-
applyAuditMiddleware(documentSchema, "Document");
|
|
29
|
-
applyWorkflowPlugin(documentSchema, 'document');
|
|
30
|
-
// Add indexes to match database
|
|
31
|
-
documentSchema.index({ applicationId: 1 }); // Filter by application
|
|
32
|
-
documentSchema.index({ contextId: 1 }); // Filter by context
|
|
33
|
-
documentSchema.index({ status: 1 }); // Filter by status
|
|
34
|
-
documentSchema.index({ category: 1 }); // Filter by category
|
|
35
|
-
documentSchema.index({ subCategory: 1 }); // Filter by subcategory
|
|
36
|
-
documentSchema.index({ applicationId: 1, status: 1 }); // Compound: application + status
|
|
37
|
-
documentSchema.index({ contextId: 1, status: 1 }); // Compound: context + status
|
|
38
|
-
documentSchema.index({ category: 1, status: 1 }); // Compound: category + status
|
|
39
|
-
const DocumentModel = mongoose.model("Document", documentSchema);
|
|
40
|
-
export default DocumentModel;
|
|
@@ -1,180 +0,0 @@
|
|
|
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 mongoose from "mongoose";
|
|
30
|
-
declare const QueueModel: mongoose.Model<{
|
|
31
|
-
createdAt: NativeDate;
|
|
32
|
-
updatedAt: NativeDate;
|
|
33
|
-
} & {
|
|
34
|
-
isActive: boolean;
|
|
35
|
-
name: string;
|
|
36
|
-
retryAttempts: number;
|
|
37
|
-
retryDelay: number;
|
|
38
|
-
priority: number;
|
|
39
|
-
maxConcurrency: number;
|
|
40
|
-
processingTimeout: number;
|
|
41
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
42
|
-
description?: string | null | undefined;
|
|
43
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
44
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
45
|
-
settings?: any;
|
|
46
|
-
statistics?: {
|
|
47
|
-
totalProcessed: number;
|
|
48
|
-
totalFailed: number;
|
|
49
|
-
averageProcessingTime: number;
|
|
50
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
51
|
-
} | null | undefined;
|
|
52
|
-
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
53
|
-
createdAt: NativeDate;
|
|
54
|
-
updatedAt: NativeDate;
|
|
55
|
-
} & {
|
|
56
|
-
isActive: boolean;
|
|
57
|
-
name: string;
|
|
58
|
-
retryAttempts: number;
|
|
59
|
-
retryDelay: number;
|
|
60
|
-
priority: number;
|
|
61
|
-
maxConcurrency: number;
|
|
62
|
-
processingTimeout: number;
|
|
63
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
64
|
-
description?: string | null | undefined;
|
|
65
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
66
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
67
|
-
settings?: any;
|
|
68
|
-
statistics?: {
|
|
69
|
-
totalProcessed: number;
|
|
70
|
-
totalFailed: number;
|
|
71
|
-
averageProcessingTime: number;
|
|
72
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
73
|
-
} | null | undefined;
|
|
74
|
-
}, {}> & {
|
|
75
|
-
createdAt: NativeDate;
|
|
76
|
-
updatedAt: NativeDate;
|
|
77
|
-
} & {
|
|
78
|
-
isActive: boolean;
|
|
79
|
-
name: string;
|
|
80
|
-
retryAttempts: number;
|
|
81
|
-
retryDelay: number;
|
|
82
|
-
priority: number;
|
|
83
|
-
maxConcurrency: number;
|
|
84
|
-
processingTimeout: number;
|
|
85
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
86
|
-
description?: string | null | undefined;
|
|
87
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
88
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
89
|
-
settings?: any;
|
|
90
|
-
statistics?: {
|
|
91
|
-
totalProcessed: number;
|
|
92
|
-
totalFailed: number;
|
|
93
|
-
averageProcessingTime: number;
|
|
94
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
95
|
-
} | null | undefined;
|
|
96
|
-
} & {
|
|
97
|
-
_id: mongoose.Types.ObjectId;
|
|
98
|
-
} & {
|
|
99
|
-
__v: number;
|
|
100
|
-
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
|
|
101
|
-
timestamps: true;
|
|
102
|
-
toJSON: {
|
|
103
|
-
virtuals: true;
|
|
104
|
-
};
|
|
105
|
-
toObject: {
|
|
106
|
-
virtuals: true;
|
|
107
|
-
};
|
|
108
|
-
}, {
|
|
109
|
-
createdAt: NativeDate;
|
|
110
|
-
updatedAt: NativeDate;
|
|
111
|
-
} & {
|
|
112
|
-
isActive: boolean;
|
|
113
|
-
name: string;
|
|
114
|
-
retryAttempts: number;
|
|
115
|
-
retryDelay: number;
|
|
116
|
-
priority: number;
|
|
117
|
-
maxConcurrency: number;
|
|
118
|
-
processingTimeout: number;
|
|
119
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
120
|
-
description?: string | null | undefined;
|
|
121
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
122
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
123
|
-
settings?: any;
|
|
124
|
-
statistics?: {
|
|
125
|
-
totalProcessed: number;
|
|
126
|
-
totalFailed: number;
|
|
127
|
-
averageProcessingTime: number;
|
|
128
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
129
|
-
} | null | undefined;
|
|
130
|
-
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
131
|
-
createdAt: NativeDate;
|
|
132
|
-
updatedAt: NativeDate;
|
|
133
|
-
} & {
|
|
134
|
-
isActive: boolean;
|
|
135
|
-
name: string;
|
|
136
|
-
retryAttempts: number;
|
|
137
|
-
retryDelay: number;
|
|
138
|
-
priority: number;
|
|
139
|
-
maxConcurrency: number;
|
|
140
|
-
processingTimeout: number;
|
|
141
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
142
|
-
description?: string | null | undefined;
|
|
143
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
144
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
145
|
-
settings?: any;
|
|
146
|
-
statistics?: {
|
|
147
|
-
totalProcessed: number;
|
|
148
|
-
totalFailed: number;
|
|
149
|
-
averageProcessingTime: number;
|
|
150
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
151
|
-
} | null | undefined;
|
|
152
|
-
}>, {}> & mongoose.FlatRecord<{
|
|
153
|
-
createdAt: NativeDate;
|
|
154
|
-
updatedAt: NativeDate;
|
|
155
|
-
} & {
|
|
156
|
-
isActive: boolean;
|
|
157
|
-
name: string;
|
|
158
|
-
retryAttempts: number;
|
|
159
|
-
retryDelay: number;
|
|
160
|
-
priority: number;
|
|
161
|
-
maxConcurrency: number;
|
|
162
|
-
processingTimeout: number;
|
|
163
|
-
assignedUsers: mongoose.Types.ObjectId[];
|
|
164
|
-
description?: string | null | undefined;
|
|
165
|
-
departmentId?: mongoose.Types.ObjectId | null | undefined;
|
|
166
|
-
workflowId?: mongoose.Types.ObjectId | null | undefined;
|
|
167
|
-
settings?: any;
|
|
168
|
-
statistics?: {
|
|
169
|
-
totalProcessed: number;
|
|
170
|
-
totalFailed: number;
|
|
171
|
-
averageProcessingTime: number;
|
|
172
|
-
lastProcessedAt?: NativeDate | null | undefined;
|
|
173
|
-
} | null | undefined;
|
|
174
|
-
}> & {
|
|
175
|
-
_id: mongoose.Types.ObjectId;
|
|
176
|
-
} & {
|
|
177
|
-
__v: number;
|
|
178
|
-
}>>;
|
|
179
|
-
export default QueueModel;
|
|
180
|
-
//# sourceMappingURL=queue.model.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"queue.model.d.ts","sourceRoot":"","sources":["../../shared/queue.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AA6ChC,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAuC,CAAC;AACxD,eAAe,UAAU,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import mongoose from "mongoose";
|
|
2
|
-
import { applyAuditMiddleware } from "@dynamatix/cat-shared/middlewares";
|
|
3
|
-
import { applyWorkflowPlugin } from "./workflow.plugin";
|
|
4
|
-
const queueSchema = new mongoose.Schema({
|
|
5
|
-
name: { type: String, required: true, unique: true },
|
|
6
|
-
description: { type: String, required: false },
|
|
7
|
-
isActive: { type: Boolean, default: true },
|
|
8
|
-
priority: { type: Number, default: 0 },
|
|
9
|
-
maxConcurrency: { type: Number, default: 1 },
|
|
10
|
-
retryAttempts: { type: Number, default: 3 },
|
|
11
|
-
retryDelay: { type: Number, default: 5000 }, // milliseconds
|
|
12
|
-
processingTimeout: { type: Number, default: 300000 }, // 5 minutes in milliseconds
|
|
13
|
-
assignedUsers: [{ type: mongoose.Schema.Types.ObjectId, ref: "User" }],
|
|
14
|
-
departmentId: { type: mongoose.Schema.Types.ObjectId, ref: "Department", required: false },
|
|
15
|
-
workflowId: { type: mongoose.Schema.Types.ObjectId, ref: "Workflow", required: false },
|
|
16
|
-
settings: { type: mongoose.Schema.Types.Mixed, required: false },
|
|
17
|
-
statistics: {
|
|
18
|
-
totalProcessed: { type: Number, default: 0 },
|
|
19
|
-
totalFailed: { type: Number, default: 0 },
|
|
20
|
-
averageProcessingTime: { type: Number, default: 0 },
|
|
21
|
-
lastProcessedAt: { type: Date, required: false }
|
|
22
|
-
}
|
|
23
|
-
}, {
|
|
24
|
-
timestamps: true,
|
|
25
|
-
toJSON: { virtuals: true },
|
|
26
|
-
toObject: { virtuals: true }
|
|
27
|
-
});
|
|
28
|
-
// Virtual for current queue size (would need to be populated from related collections)
|
|
29
|
-
queueSchema.virtual('currentSize').get(function () {
|
|
30
|
-
// This would typically be calculated by counting related queue items
|
|
31
|
-
return 0;
|
|
32
|
-
});
|
|
33
|
-
applyAuditMiddleware(queueSchema, "Queue");
|
|
34
|
-
applyWorkflowPlugin(queueSchema, 'queue');
|
|
35
|
-
// Add indexes to match database
|
|
36
|
-
queueSchema.index({ name: 1 }, { unique: true }); // Unique queue name
|
|
37
|
-
queueSchema.index({ isActive: 1 }); // Filter by active status
|
|
38
|
-
queueSchema.index({ priority: -1 }); // Sort by priority (highest first)
|
|
39
|
-
queueSchema.index({ departmentId: 1 }); // Filter by department
|
|
40
|
-
queueSchema.index({ isActive: 1, priority: -1 }); // Compound: active + priority
|
|
41
|
-
const QueueModel = mongoose.model("Queue", queueSchema);
|
|
42
|
-
export default QueueModel;
|