@aldb2b/common 1.0.481 → 1.0.483
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/build/enums/term-type.enum.d.ts +4 -0
- package/build/enums/term-type.enum.js +9 -0
- package/build/enums/term-type.enum.js.map +1 -0
- package/build/events/get-current-term.interface.d.ts +2 -0
- package/build/middlewares/term.middleware.js +26 -11
- package/build/middlewares/term.middleware.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/utils/terms.d.ts +10 -5
- package/build/utils/terms.js +22 -8
- package/build/utils/terms.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TermType = void 0;
|
|
4
|
+
var TermType;
|
|
5
|
+
(function (TermType) {
|
|
6
|
+
TermType["MEETING"] = "Meeting";
|
|
7
|
+
TermType["EVENT"] = "Event";
|
|
8
|
+
})(TermType || (exports.TermType = TermType = {}));
|
|
9
|
+
//# sourceMappingURL=term-type.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"term-type.enum.js","sourceRoot":"","sources":["../../src/enums/term-type.enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,2BAAe,CAAA;AACjB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TermType } from 'src/enums/term-type.enum';
|
|
1
2
|
import { Subjects } from './subjects';
|
|
2
3
|
export declare namespace GetCurrentTermEvent {
|
|
3
4
|
interface Context {
|
|
@@ -5,5 +6,6 @@ export declare namespace GetCurrentTermEvent {
|
|
|
5
6
|
data: Data;
|
|
6
7
|
}
|
|
7
8
|
interface Data {
|
|
9
|
+
termType: TermType;
|
|
8
10
|
}
|
|
9
11
|
}
|
|
@@ -21,6 +21,7 @@ const redis_client_1 = require("../utils/redis-client");
|
|
|
21
21
|
const getHeaderParam_1 = require("../utils/getHeaderParam");
|
|
22
22
|
const common_2 = require("@aldb2b/common");
|
|
23
23
|
const terms_1 = require("../utils/terms");
|
|
24
|
+
const term_type_enum_1 = require("src/enums/term-type.enum");
|
|
24
25
|
let TermMiddleware = class TermMiddleware {
|
|
25
26
|
constructor(client) {
|
|
26
27
|
this.client = client;
|
|
@@ -30,23 +31,37 @@ let TermMiddleware = class TermMiddleware {
|
|
|
30
31
|
async use(request, response, next) {
|
|
31
32
|
let isAccepted = true;
|
|
32
33
|
const userId = (0, getHeaderParam_1.getHeaderParam)(request.headers, 'id');
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
const meetingHubEvent = (0, getHeaderParam_1.getHeaderParam)(request.headers, 'meetingHubEvent');
|
|
35
|
+
const termType = meetingHubEvent == true || meetingHubEvent == 'true'
|
|
36
|
+
? term_type_enum_1.TermType.MEETING
|
|
37
|
+
: term_type_enum_1.TermType.EVENT;
|
|
38
|
+
const userTermKey = terms_1.Terms.userTermKey(userId, termType);
|
|
39
|
+
let currentTermValue = termType === term_type_enum_1.TermType.MEETING
|
|
40
|
+
? await this.cachManager.getData(terms_1.Terms.MeetingTermKey)
|
|
41
|
+
: await this.cachManager.getData(terms_1.Terms.EventTermKey);
|
|
42
|
+
let noTermValue = termType === term_type_enum_1.TermType.MEETING
|
|
43
|
+
? terms_1.Terms.NoMeetingTermValue
|
|
44
|
+
: terms_1.Terms.NoEventTermValue;
|
|
45
|
+
if (currentTermValue == noTermValue) {
|
|
37
46
|
isAccepted = true;
|
|
38
47
|
}
|
|
39
|
-
else if (currentTermValue
|
|
40
|
-
|
|
48
|
+
else if (currentTermValue) {
|
|
49
|
+
let userTermValue = await this.cachManager.getData(userTermKey);
|
|
50
|
+
if (userTermValue !== currentTermValue) {
|
|
51
|
+
isAccepted = await this.isTermAccepted(userId, currentTermValue, userTermKey);
|
|
52
|
+
}
|
|
41
53
|
}
|
|
42
54
|
else if (!currentTermValue) {
|
|
43
|
-
const
|
|
55
|
+
const termKey = termType === term_type_enum_1.TermType.MEETING
|
|
56
|
+
? terms_1.Terms.MeetingTermKey
|
|
57
|
+
: terms_1.Terms.EventTermKey;
|
|
58
|
+
const response = await (0, rxjs_1.firstValueFrom)(this.client.send(subjects_1.Subjects.GetCurrentTerm, { termType: termType }));
|
|
44
59
|
if (response && response._id) {
|
|
45
|
-
await this.cachManager.setData(
|
|
60
|
+
await this.cachManager.setData(termKey, response._id);
|
|
46
61
|
isAccepted = await this.isTermAccepted(userId, response._id, userTermKey);
|
|
47
62
|
}
|
|
48
63
|
else {
|
|
49
|
-
await this.cachManager.setData(
|
|
64
|
+
await this.cachManager.setData(termKey, noTermValue);
|
|
50
65
|
}
|
|
51
66
|
}
|
|
52
67
|
if (isAccepted) {
|
|
@@ -57,10 +72,10 @@ let TermMiddleware = class TermMiddleware {
|
|
|
57
72
|
userId: userId,
|
|
58
73
|
termId: currentTermValue,
|
|
59
74
|
});
|
|
60
|
-
|
|
75
|
+
response.status(common_1.HttpStatus.PRECONDITION_REQUIRED).send({
|
|
61
76
|
termId: currentTermValue,
|
|
62
77
|
userTermToken: userTermToken,
|
|
63
|
-
};
|
|
78
|
+
});
|
|
64
79
|
}
|
|
65
80
|
}
|
|
66
81
|
async isTermAccepted(userId, termId, userTermKey) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"term.middleware.js","sourceRoot":"","sources":["../../src/middlewares/term.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"term.middleware.js","sourceRoot":"","sources":["../../src/middlewares/term.middleware.ts"],"names":[],"mappings":"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"}
|