@futdevpro/nts-dynamo 1.9.15 → 1.9.16
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/.copilot/patterns.json +7 -7
- package/.github/workflows/main.yml +206 -0
- package/HOWTO.md +15 -15
- package/README.md +140 -140
- package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js +2 -0
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_models/control-models/socket-event.control-model.js +1 -1
- package/build/_services/core/global.service.d.ts.map +1 -1
- package/build/_services/core/global.service.js +1 -0
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/route/routing-module.service.d.ts +1 -0
- package/build/_services/route/routing-module.service.d.ts.map +1 -1
- package/build/_services/route/routing-module.service.js +17 -23
- package/build/_services/route/routing-module.service.js.map +1 -1
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +4 -1
- package/build/_services/server/app.server.js.map +1 -1
- package/build/_services/socket/socket-client.service.d.ts.map +1 -1
- package/build/_services/socket/socket-client.service.js +1 -0
- package/build/_services/socket/socket-client.service.js.map +1 -1
- package/nodemon.json +17 -15
- package/package.json +5 -5
- package/src/_constants/global-settings.const.ts +27 -27
- package/src/_constants/index.ts +2 -2
- package/src/_constants/mocks/app-extended-server.mock.ts +198 -198
- package/src/_constants/mocks/app-params.mock.ts +9 -9
- package/src/_constants/mocks/app-server.mock.ts +185 -185
- package/src/_constants/mocks/auth-service.mock.ts +28 -28
- package/src/_constants/mocks/controller.mock.ts +16 -16
- package/src/_constants/mocks/data-model.mock.ts +83 -83
- package/src/_constants/mocks/email-service-collection.mock.ts +13 -13
- package/src/_constants/mocks/email-service.mock.ts +19 -19
- package/src/_constants/mocks/email-template.mock.html +14 -14
- package/src/_constants/mocks/endpoint.mock.ts +90 -90
- package/src/_constants/mocks/socket-client.mock.ts +43 -43
- package/src/_constants/mocks/socket-server.mock.ts +43 -43
- package/src/_enums/data-model-type.enum.ts +14 -14
- package/src/_enums/data-service-function.enum.ts +15 -15
- package/src/_enums/http/http-call-type.enum.ts +12 -12
- package/src/_enums/http/http-response-type.enum.ts +7 -7
- package/src/_enums/http/socket-event-type.enum.ts +18 -18
- package/src/_enums/index.ts +13 -13
- package/src/_enums/predefined-data-types.enum.ts +27 -27
- package/src/_enums/route-security.enum.ts +12 -12
- package/src/_enums/socket-security.enum.ts +11 -11
- package/src/_models/control-models/api-call-params.control-model.ts +126 -126
- package/src/_models/control-models/app-ext-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/app-params.control-model.ts +45 -45
- package/src/_models/control-models/app-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/endpoint-params.control-model.ts +309 -307
- package/src/_models/control-models/http-settings.control-model.ts +29 -29
- package/src/_models/control-models/index.ts +13 -13
- package/src/_models/control-models/socket-client-service-params.control-model.ts +28 -28
- package/src/_models/control-models/socket-event.control-model.ts +150 -150
- package/src/_models/control-models/socket-presence.control-model.ts +207 -207
- package/src/_models/control-models/socket-server-service-params.control-model.ts +20 -20
- package/src/_models/control-models/system-control.control-model.ts +12 -12
- package/src/_models/index.ts +9 -9
- package/src/_models/interfaces/certification-settings.interface.ts +7 -7
- package/src/_models/interfaces/global-service-settings.interface.ts +45 -45
- package/src/_models/interfaces/global-settings.interface.ts +83 -83
- package/src/_models/interfaces/index.ts +7 -7
- package/src/_models/interfaces/routing-module-settings.interface.ts +20 -20
- package/src/_models/types/db-filter.type.ts +108 -108
- package/src/_models/types/db-update.type.ts +100 -100
- package/src/_models/types/index.ts +5 -5
- package/src/_modules/api-service.index.ts +12 -12
- package/src/_modules/app-extended.index.ts +28 -28
- package/src/_modules/app.index.ts +24 -24
- package/src/_modules/auth.index.ts +7 -7
- package/src/_modules/constants.index.ts +2 -2
- package/src/_modules/controller.index.ts +10 -10
- package/src/_modules/custom-data/custom-data.controller.ts +69 -69
- package/src/_modules/custom-data/custom-data.data-service.ts +20 -20
- package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +23 -23
- package/src/_modules/custom-data/index.ts +6 -6
- package/src/_modules/custom-data-module.index.ts +2 -2
- package/src/_modules/data-service.index.ts +9 -9
- package/src/_modules/email.index.ts +8 -8
- package/src/_modules/enums.index.ts +2 -2
- package/src/_modules/extended.index.ts +8 -8
- package/src/_modules/models.index.ts +2 -2
- package/src/_modules/services.index.ts +2 -2
- package/src/_modules/test/get-test-routing-module.util.ts +23 -23
- package/src/_modules/test/index.ts +5 -5
- package/src/_modules/test/test.controller.ts +115 -115
- package/src/_modules/test-module.index.ts +2 -2
- package/src/_modules/usage/get-usage-routing-module.util.ts +22 -22
- package/src/_modules/usage/index.ts +7 -7
- package/src/_modules/usage/usage.controller.ts +120 -120
- package/src/_modules/usage/usage.data-service.ts +172 -172
- package/src/_modules/usage-module.index.ts +2 -2
- package/src/_services/base/data.service.ts +921 -921
- package/src/_services/base/db.service.spec.ts +32 -32
- package/src/_services/base/db.service.ts +1063 -1063
- package/src/_services/base/singleton.service.ts +21 -21
- package/src/_services/core/api.service.ts +453 -453
- package/src/_services/core/auth.service.ts +172 -172
- package/src/_services/core/email.service.ts +678 -678
- package/src/_services/core/global.service.ts +270 -269
- package/src/_services/core/service-collection.service.ts +5 -5
- package/src/_services/index.ts +23 -23
- package/src/_services/route/controller.service.ts +129 -129
- package/src/_services/route/routing-module.service.ts +293 -273
- package/src/_services/server/app-extended.server.spec.ts +76 -76
- package/src/_services/server/app-extended.server.ts +520 -520
- package/src/_services/server/app.server.spec.ts +67 -67
- package/src/_services/server/app.server.ts +1181 -1179
- package/src/_services/shared.service.spec.ts +19 -19
- package/src/_services/shared.static-service.ts +73 -73
- package/src/_services/socket/socket-client.service.ts +236 -235
- package/src/_services/socket/socket-server.service.spec.ts +11 -11
- package/src/_services/socket/socket-server.service.ts +761 -761
- package/src/index.ts +18 -18
- package/tsconfig.json +41 -41
- package/build/tsconfig.tsbuildinfo +0 -1
|
@@ -1,115 +1,115 @@
|
|
|
1
|
-
|
|
2
|
-
import { Request, Response } from 'express';
|
|
3
|
-
|
|
4
|
-
import { DynamoFM_testModule_settings } from '@futdevpro/fsm-dynamo/test-module';
|
|
5
|
-
|
|
6
|
-
import { DynamoNTS_HttpCallType } from '../../_enums/http/http-call-type.enum';
|
|
7
|
-
import { DynamoNTS_Controller } from '../../_services/route/controller.service';
|
|
8
|
-
import {
|
|
9
|
-
DynamoNTS_Endpoint_Params
|
|
10
|
-
} from '../../_models/control-models/endpoint-params.control-model';
|
|
11
|
-
import { DynamoNTS_GlobalService } from '../../_services/core/global.service';
|
|
12
|
-
|
|
13
|
-
export class DynamoNTS_Test_Controller extends DynamoNTS_Controller {
|
|
14
|
-
|
|
15
|
-
static getInstance(): DynamoNTS_Test_Controller {
|
|
16
|
-
return DynamoNTS_Test_Controller.getSingletonInstance();
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
setupEndpoints(): void {
|
|
20
|
-
this.endpoints = [
|
|
21
|
-
// TESTS
|
|
22
|
-
new DynamoNTS_Endpoint_Params({
|
|
23
|
-
name: 'testGet',
|
|
24
|
-
type: DynamoNTS_HttpCallType.get,
|
|
25
|
-
endpoint: DynamoFM_testModule_settings.endPoints.testGet,
|
|
26
|
-
tasks: [
|
|
27
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
28
|
-
res.send({
|
|
29
|
-
url: req.url,
|
|
30
|
-
result: 'test-get call was successful!',
|
|
31
|
-
request: req.body,
|
|
32
|
-
});
|
|
33
|
-
},
|
|
34
|
-
],
|
|
35
|
-
}),
|
|
36
|
-
|
|
37
|
-
new DynamoNTS_Endpoint_Params({
|
|
38
|
-
name: 'testPost',
|
|
39
|
-
type: DynamoNTS_HttpCallType.post,
|
|
40
|
-
endpoint: DynamoFM_testModule_settings.endPoints.testPost,
|
|
41
|
-
tasks: [
|
|
42
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
43
|
-
res.send({
|
|
44
|
-
url: req.url,
|
|
45
|
-
result: 'test-post call was successful!',
|
|
46
|
-
request: req.body,
|
|
47
|
-
});
|
|
48
|
-
},
|
|
49
|
-
],
|
|
50
|
-
}),
|
|
51
|
-
|
|
52
|
-
/* new DynamoNTS_Endpoint_Params({
|
|
53
|
-
name: 'testPut',
|
|
54
|
-
type: DynamoNTS_HttpCallType.put,
|
|
55
|
-
endpoint: DynamoFM_testModule_settings.endPoints.testPut,
|
|
56
|
-
tasks: [
|
|
57
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
58
|
-
res.send({
|
|
59
|
-
url: req.url,
|
|
60
|
-
result: 'test-put call was successful!',
|
|
61
|
-
request: req.body,
|
|
62
|
-
});
|
|
63
|
-
},
|
|
64
|
-
],
|
|
65
|
-
}), */
|
|
66
|
-
|
|
67
|
-
/* new DynamoNTS_Endpoint_Params({
|
|
68
|
-
name: 'testPatch',
|
|
69
|
-
type: DynamoNTS_HttpCallType.patch,
|
|
70
|
-
endpoint: DynamoFM_testModule_settings.endPoints.testPatch,
|
|
71
|
-
tasks: [
|
|
72
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
73
|
-
res.send({
|
|
74
|
-
url: req.url,
|
|
75
|
-
result: 'test-patch call was successful!',
|
|
76
|
-
request: req.body,
|
|
77
|
-
});
|
|
78
|
-
},
|
|
79
|
-
],
|
|
80
|
-
}), */
|
|
81
|
-
|
|
82
|
-
new DynamoNTS_Endpoint_Params({
|
|
83
|
-
name: 'testDelete',
|
|
84
|
-
type: DynamoNTS_HttpCallType.delete,
|
|
85
|
-
endpoint: DynamoFM_testModule_settings.endPoints.testDelete,
|
|
86
|
-
tasks: [
|
|
87
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
88
|
-
res.send({
|
|
89
|
-
url: req.url,
|
|
90
|
-
result: 'test-delete call was successful!',
|
|
91
|
-
request: req.body,
|
|
92
|
-
});
|
|
93
|
-
},
|
|
94
|
-
],
|
|
95
|
-
}),
|
|
96
|
-
|
|
97
|
-
new DynamoNTS_Endpoint_Params({
|
|
98
|
-
name: 'getServerStatus',
|
|
99
|
-
type: DynamoNTS_HttpCallType.get,
|
|
100
|
-
endpoint: DynamoFM_testModule_settings.endPoints.getServerStatus,
|
|
101
|
-
tasks: [
|
|
102
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
103
|
-
|
|
104
|
-
res.send({
|
|
105
|
-
status: 'ready',
|
|
106
|
-
version: DynamoNTS_GlobalService.params.version,
|
|
107
|
-
upTime: DynamoNTS_GlobalService.upTime,
|
|
108
|
-
});
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
}),
|
|
112
|
-
];
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
|
|
1
|
+
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
|
|
4
|
+
import { DynamoFM_testModule_settings } from '@futdevpro/fsm-dynamo/test-module';
|
|
5
|
+
|
|
6
|
+
import { DynamoNTS_HttpCallType } from '../../_enums/http/http-call-type.enum';
|
|
7
|
+
import { DynamoNTS_Controller } from '../../_services/route/controller.service';
|
|
8
|
+
import {
|
|
9
|
+
DynamoNTS_Endpoint_Params
|
|
10
|
+
} from '../../_models/control-models/endpoint-params.control-model';
|
|
11
|
+
import { DynamoNTS_GlobalService } from '../../_services/core/global.service';
|
|
12
|
+
|
|
13
|
+
export class DynamoNTS_Test_Controller extends DynamoNTS_Controller {
|
|
14
|
+
|
|
15
|
+
static getInstance(): DynamoNTS_Test_Controller {
|
|
16
|
+
return DynamoNTS_Test_Controller.getSingletonInstance();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
setupEndpoints(): void {
|
|
20
|
+
this.endpoints = [
|
|
21
|
+
// TESTS
|
|
22
|
+
new DynamoNTS_Endpoint_Params({
|
|
23
|
+
name: 'testGet',
|
|
24
|
+
type: DynamoNTS_HttpCallType.get,
|
|
25
|
+
endpoint: DynamoFM_testModule_settings.endPoints.testGet,
|
|
26
|
+
tasks: [
|
|
27
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
28
|
+
res.send({
|
|
29
|
+
url: req.url,
|
|
30
|
+
result: 'test-get call was successful!',
|
|
31
|
+
request: req.body,
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
}),
|
|
36
|
+
|
|
37
|
+
new DynamoNTS_Endpoint_Params({
|
|
38
|
+
name: 'testPost',
|
|
39
|
+
type: DynamoNTS_HttpCallType.post,
|
|
40
|
+
endpoint: DynamoFM_testModule_settings.endPoints.testPost,
|
|
41
|
+
tasks: [
|
|
42
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
43
|
+
res.send({
|
|
44
|
+
url: req.url,
|
|
45
|
+
result: 'test-post call was successful!',
|
|
46
|
+
request: req.body,
|
|
47
|
+
});
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
}),
|
|
51
|
+
|
|
52
|
+
/* new DynamoNTS_Endpoint_Params({
|
|
53
|
+
name: 'testPut',
|
|
54
|
+
type: DynamoNTS_HttpCallType.put,
|
|
55
|
+
endpoint: DynamoFM_testModule_settings.endPoints.testPut,
|
|
56
|
+
tasks: [
|
|
57
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
58
|
+
res.send({
|
|
59
|
+
url: req.url,
|
|
60
|
+
result: 'test-put call was successful!',
|
|
61
|
+
request: req.body,
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
],
|
|
65
|
+
}), */
|
|
66
|
+
|
|
67
|
+
/* new DynamoNTS_Endpoint_Params({
|
|
68
|
+
name: 'testPatch',
|
|
69
|
+
type: DynamoNTS_HttpCallType.patch,
|
|
70
|
+
endpoint: DynamoFM_testModule_settings.endPoints.testPatch,
|
|
71
|
+
tasks: [
|
|
72
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
73
|
+
res.send({
|
|
74
|
+
url: req.url,
|
|
75
|
+
result: 'test-patch call was successful!',
|
|
76
|
+
request: req.body,
|
|
77
|
+
});
|
|
78
|
+
},
|
|
79
|
+
],
|
|
80
|
+
}), */
|
|
81
|
+
|
|
82
|
+
new DynamoNTS_Endpoint_Params({
|
|
83
|
+
name: 'testDelete',
|
|
84
|
+
type: DynamoNTS_HttpCallType.delete,
|
|
85
|
+
endpoint: DynamoFM_testModule_settings.endPoints.testDelete,
|
|
86
|
+
tasks: [
|
|
87
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
88
|
+
res.send({
|
|
89
|
+
url: req.url,
|
|
90
|
+
result: 'test-delete call was successful!',
|
|
91
|
+
request: req.body,
|
|
92
|
+
});
|
|
93
|
+
},
|
|
94
|
+
],
|
|
95
|
+
}),
|
|
96
|
+
|
|
97
|
+
new DynamoNTS_Endpoint_Params({
|
|
98
|
+
name: 'getServerStatus',
|
|
99
|
+
type: DynamoNTS_HttpCallType.get,
|
|
100
|
+
endpoint: DynamoFM_testModule_settings.endPoints.getServerStatus,
|
|
101
|
+
tasks: [
|
|
102
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
103
|
+
|
|
104
|
+
res.send({
|
|
105
|
+
status: 'ready',
|
|
106
|
+
version: DynamoNTS_GlobalService.params.version,
|
|
107
|
+
upTime: DynamoNTS_GlobalService.upTime,
|
|
108
|
+
});
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
}),
|
|
112
|
+
];
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export * from './test';
|
|
1
|
+
|
|
2
|
+
export * from './test';
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
import { DynamoFM_usageModule_settings } from '@futdevpro/fsm-dynamo/usage-module';
|
|
3
|
-
import { DynamoNTS_RouteSecurity } from '../../_enums/route-security.enum';
|
|
4
|
-
import {
|
|
5
|
-
DynamoNTS_RoutingModule_Settings
|
|
6
|
-
} from '../../_models/interfaces/routing-module-settings.interface';
|
|
7
|
-
import { DynamoNTS_RoutingModule } from '../../_services/route/routing-module.service';
|
|
8
|
-
import { DynamoNTS_Usage_Controller } from './usage.controller';
|
|
9
|
-
|
|
10
|
-
export function DynamoNTS_getUsageRoutingModule(
|
|
11
|
-
securityOverride?: DynamoNTS_RouteSecurity
|
|
12
|
-
): DynamoNTS_RoutingModule {
|
|
13
|
-
const set: DynamoNTS_RoutingModule_Settings = {
|
|
14
|
-
route: DynamoFM_usageModule_settings.mainRoute,
|
|
15
|
-
controllers: [ DynamoNTS_Usage_Controller.getInstance() ],
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
if (securityOverride) {
|
|
19
|
-
set.securityOverride = securityOverride;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
return new DynamoNTS_RoutingModule(set);
|
|
1
|
+
|
|
2
|
+
import { DynamoFM_usageModule_settings } from '@futdevpro/fsm-dynamo/usage-module';
|
|
3
|
+
import { DynamoNTS_RouteSecurity } from '../../_enums/route-security.enum';
|
|
4
|
+
import {
|
|
5
|
+
DynamoNTS_RoutingModule_Settings
|
|
6
|
+
} from '../../_models/interfaces/routing-module-settings.interface';
|
|
7
|
+
import { DynamoNTS_RoutingModule } from '../../_services/route/routing-module.service';
|
|
8
|
+
import { DynamoNTS_Usage_Controller } from './usage.controller';
|
|
9
|
+
|
|
10
|
+
export function DynamoNTS_getUsageRoutingModule(
|
|
11
|
+
securityOverride?: DynamoNTS_RouteSecurity
|
|
12
|
+
): DynamoNTS_RoutingModule {
|
|
13
|
+
const set: DynamoNTS_RoutingModule_Settings = {
|
|
14
|
+
route: DynamoFM_usageModule_settings.mainRoute,
|
|
15
|
+
controllers: [ DynamoNTS_Usage_Controller.getInstance() ],
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
if (securityOverride) {
|
|
19
|
+
set.securityOverride = securityOverride;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return new DynamoNTS_RoutingModule(set);
|
|
23
23
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
// USAGE MODULE
|
|
3
|
-
export * from './usage.controller';
|
|
4
|
-
export * from './usage.data-service';
|
|
5
|
-
export * from './get-usage-routing-module.util';
|
|
6
|
-
export * from '@futdevpro/fsm-dynamo/usage-module';
|
|
7
|
-
|
|
1
|
+
|
|
2
|
+
// USAGE MODULE
|
|
3
|
+
export * from './usage.controller';
|
|
4
|
+
export * from './usage.data-service';
|
|
5
|
+
export * from './get-usage-routing-module.util';
|
|
6
|
+
export * from '@futdevpro/fsm-dynamo/usage-module';
|
|
7
|
+
|
|
@@ -1,120 +1,120 @@
|
|
|
1
|
-
|
|
2
|
-
import { Request, Response } from 'express';
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
DynamoFM_usageModule_settings, DynamoFM_UsageSession, DynamoFM_RelativeDate
|
|
6
|
-
} from '@futdevpro/fsm-dynamo/usage-module';
|
|
7
|
-
|
|
8
|
-
import { DynamoNTS_HttpCallType } from '../../_enums/http/http-call-type.enum';
|
|
9
|
-
import { DynamoNTS_AuthService } from '../../_services/core/auth.service';
|
|
10
|
-
import { DynamoNTS_Controller } from '../../_services/route/controller.service';
|
|
11
|
-
import { DynamoNTS_GlobalService } from '../../_services/core/global.service';
|
|
12
|
-
import {
|
|
13
|
-
DynamoNTS_Endpoint_Params
|
|
14
|
-
} from '../../_models/control-models/endpoint-params.control-model';
|
|
15
|
-
import { DynamoNTS_Usage_DataService } from './usage.data-service';
|
|
16
|
-
|
|
17
|
-
export class DynamoNTS_Usage_Controller extends DynamoNTS_Controller {
|
|
18
|
-
|
|
19
|
-
static getInstance(): DynamoNTS_Usage_Controller {
|
|
20
|
-
return DynamoNTS_Usage_Controller.getSingletonInstance();
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// SERVICES
|
|
24
|
-
private authService: DynamoNTS_AuthService;
|
|
25
|
-
|
|
26
|
-
setupEndpoints(): void {
|
|
27
|
-
this.authService = DynamoNTS_GlobalService.getAuthService();
|
|
28
|
-
|
|
29
|
-
this.endpoints = [
|
|
30
|
-
new DynamoNTS_Endpoint_Params({
|
|
31
|
-
name: 'newSession',
|
|
32
|
-
type: DynamoNTS_HttpCallType.get,
|
|
33
|
-
endpoint: DynamoFM_usageModule_settings.endPoints.newSession,
|
|
34
|
-
tasks: [
|
|
35
|
-
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
36
|
-
const authService = DynamoNTS_GlobalService.getAuthService();
|
|
37
|
-
const username = authService.getUsernameFromRequest(req);
|
|
38
|
-
const usageService = new DynamoNTS_Usage_DataService({
|
|
39
|
-
usageSession: new DynamoFM_UsageSession({
|
|
40
|
-
sessionStart: new Date(),
|
|
41
|
-
issuer: username,
|
|
42
|
-
}),
|
|
43
|
-
issuer,
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
await usageService.getLocationDataFromRequest(req);
|
|
47
|
-
await usageService.saveData();
|
|
48
|
-
|
|
49
|
-
res.send(
|
|
50
|
-
usageService.data
|
|
51
|
-
);
|
|
52
|
-
},
|
|
53
|
-
],
|
|
54
|
-
}),
|
|
55
|
-
|
|
56
|
-
new DynamoNTS_Endpoint_Params({
|
|
57
|
-
name: 'updateUsage',
|
|
58
|
-
type: DynamoNTS_HttpCallType.post,
|
|
59
|
-
endpoint: DynamoFM_usageModule_settings.endPoints.updateUsage,
|
|
60
|
-
logRequestsContent: false,
|
|
61
|
-
tasks: [
|
|
62
|
-
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
63
|
-
const usageService = new DynamoNTS_Usage_DataService({
|
|
64
|
-
usageSession: { _id: req.params.sessionId },
|
|
65
|
-
usageData: req.body,
|
|
66
|
-
issuer,
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
await usageService.updateUsageData(req);
|
|
70
|
-
|
|
71
|
-
res.send(
|
|
72
|
-
usageService.data
|
|
73
|
-
);
|
|
74
|
-
},
|
|
75
|
-
],
|
|
76
|
-
}),
|
|
77
|
-
|
|
78
|
-
new DynamoNTS_Endpoint_Params({
|
|
79
|
-
name: 'closeSession',
|
|
80
|
-
type: DynamoNTS_HttpCallType.get,
|
|
81
|
-
endpoint: DynamoFM_usageModule_settings.endPoints.closeSession,
|
|
82
|
-
tasks: [
|
|
83
|
-
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
84
|
-
const usageService = new DynamoNTS_Usage_DataService({
|
|
85
|
-
usageSession: { _id: req.params.sessionId },
|
|
86
|
-
issuer,
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
await usageService.closeSession(req);
|
|
90
|
-
|
|
91
|
-
res.send(
|
|
92
|
-
usageService.data
|
|
93
|
-
);
|
|
94
|
-
},
|
|
95
|
-
],
|
|
96
|
-
}),
|
|
97
|
-
|
|
98
|
-
new DynamoNTS_Endpoint_Params({
|
|
99
|
-
name: 'getUsageData',
|
|
100
|
-
type: DynamoNTS_HttpCallType.get,
|
|
101
|
-
endpoint: DynamoFM_usageModule_settings.endPoints.getUsageData,
|
|
102
|
-
preProcesses: [ this.authService.authenticate_tokenPerm_accUsageData ],
|
|
103
|
-
tasks: [
|
|
104
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
105
|
-
const range: DynamoFM_RelativeDate = req.params.range as DynamoFM_RelativeDate;
|
|
106
|
-
|
|
107
|
-
const usageService = new DynamoNTS_Usage_DataService();
|
|
108
|
-
|
|
109
|
-
await usageService.getUsage(range);
|
|
110
|
-
|
|
111
|
-
res.send(
|
|
112
|
-
usageService.simplifiedDailyUsage
|
|
113
|
-
);
|
|
114
|
-
},
|
|
115
|
-
],
|
|
116
|
-
}),
|
|
117
|
-
];
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
|
|
1
|
+
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
DynamoFM_usageModule_settings, DynamoFM_UsageSession, DynamoFM_RelativeDate
|
|
6
|
+
} from '@futdevpro/fsm-dynamo/usage-module';
|
|
7
|
+
|
|
8
|
+
import { DynamoNTS_HttpCallType } from '../../_enums/http/http-call-type.enum';
|
|
9
|
+
import { DynamoNTS_AuthService } from '../../_services/core/auth.service';
|
|
10
|
+
import { DynamoNTS_Controller } from '../../_services/route/controller.service';
|
|
11
|
+
import { DynamoNTS_GlobalService } from '../../_services/core/global.service';
|
|
12
|
+
import {
|
|
13
|
+
DynamoNTS_Endpoint_Params
|
|
14
|
+
} from '../../_models/control-models/endpoint-params.control-model';
|
|
15
|
+
import { DynamoNTS_Usage_DataService } from './usage.data-service';
|
|
16
|
+
|
|
17
|
+
export class DynamoNTS_Usage_Controller extends DynamoNTS_Controller {
|
|
18
|
+
|
|
19
|
+
static getInstance(): DynamoNTS_Usage_Controller {
|
|
20
|
+
return DynamoNTS_Usage_Controller.getSingletonInstance();
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// SERVICES
|
|
24
|
+
private authService: DynamoNTS_AuthService;
|
|
25
|
+
|
|
26
|
+
setupEndpoints(): void {
|
|
27
|
+
this.authService = DynamoNTS_GlobalService.getAuthService();
|
|
28
|
+
|
|
29
|
+
this.endpoints = [
|
|
30
|
+
new DynamoNTS_Endpoint_Params({
|
|
31
|
+
name: 'newSession',
|
|
32
|
+
type: DynamoNTS_HttpCallType.get,
|
|
33
|
+
endpoint: DynamoFM_usageModule_settings.endPoints.newSession,
|
|
34
|
+
tasks: [
|
|
35
|
+
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
36
|
+
const authService = DynamoNTS_GlobalService.getAuthService();
|
|
37
|
+
const username = authService.getUsernameFromRequest(req);
|
|
38
|
+
const usageService = new DynamoNTS_Usage_DataService({
|
|
39
|
+
usageSession: new DynamoFM_UsageSession({
|
|
40
|
+
sessionStart: new Date(),
|
|
41
|
+
issuer: username,
|
|
42
|
+
}),
|
|
43
|
+
issuer,
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
await usageService.getLocationDataFromRequest(req);
|
|
47
|
+
await usageService.saveData();
|
|
48
|
+
|
|
49
|
+
res.send(
|
|
50
|
+
usageService.data
|
|
51
|
+
);
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
}),
|
|
55
|
+
|
|
56
|
+
new DynamoNTS_Endpoint_Params({
|
|
57
|
+
name: 'updateUsage',
|
|
58
|
+
type: DynamoNTS_HttpCallType.post,
|
|
59
|
+
endpoint: DynamoFM_usageModule_settings.endPoints.updateUsage,
|
|
60
|
+
logRequestsContent: false,
|
|
61
|
+
tasks: [
|
|
62
|
+
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
63
|
+
const usageService = new DynamoNTS_Usage_DataService({
|
|
64
|
+
usageSession: { _id: req.params.sessionId },
|
|
65
|
+
usageData: req.body,
|
|
66
|
+
issuer,
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
await usageService.updateUsageData(req);
|
|
70
|
+
|
|
71
|
+
res.send(
|
|
72
|
+
usageService.data
|
|
73
|
+
);
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
}),
|
|
77
|
+
|
|
78
|
+
new DynamoNTS_Endpoint_Params({
|
|
79
|
+
name: 'closeSession',
|
|
80
|
+
type: DynamoNTS_HttpCallType.get,
|
|
81
|
+
endpoint: DynamoFM_usageModule_settings.endPoints.closeSession,
|
|
82
|
+
tasks: [
|
|
83
|
+
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
84
|
+
const usageService = new DynamoNTS_Usage_DataService({
|
|
85
|
+
usageSession: { _id: req.params.sessionId },
|
|
86
|
+
issuer,
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
await usageService.closeSession(req);
|
|
90
|
+
|
|
91
|
+
res.send(
|
|
92
|
+
usageService.data
|
|
93
|
+
);
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
}),
|
|
97
|
+
|
|
98
|
+
new DynamoNTS_Endpoint_Params({
|
|
99
|
+
name: 'getUsageData',
|
|
100
|
+
type: DynamoNTS_HttpCallType.get,
|
|
101
|
+
endpoint: DynamoFM_usageModule_settings.endPoints.getUsageData,
|
|
102
|
+
preProcesses: [ this.authService.authenticate_tokenPerm_accUsageData ],
|
|
103
|
+
tasks: [
|
|
104
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
105
|
+
const range: DynamoFM_RelativeDate = req.params.range as DynamoFM_RelativeDate;
|
|
106
|
+
|
|
107
|
+
const usageService = new DynamoNTS_Usage_DataService();
|
|
108
|
+
|
|
109
|
+
await usageService.getUsage(range);
|
|
110
|
+
|
|
111
|
+
res.send(
|
|
112
|
+
usageService.simplifiedDailyUsage
|
|
113
|
+
);
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
}),
|
|
117
|
+
];
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|