@driveup/schema 0.2.0 → 0.2.2
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/lib/catalog/priceplan/priceplan.entity.js +1 -1
- package/lib/catalog/priceplan/priceplan.entity.js.map +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/profile/agent/agent.entity.d.ts +27 -0
- package/lib/profile/agent/agent.entity.js +59 -2
- package/lib/profile/agent/agent.entity.js.map +1 -1
- package/lib/profile/company/company.entity.d.ts +7 -0
- package/lib/profile/company/company.entity.js +16 -0
- package/lib/profile/company/company.entity.js.map +1 -1
- package/lib/profile/company/course/lesson.entity.js +2 -2
- package/lib/profile/company/course/lesson.entity.js.map +1 -1
- package/lib/profile/company/instructor/instructor.entity.d.ts +33 -1
- package/lib/profile/company/instructor/instructor.entity.js +66 -0
- package/lib/profile/company/instructor/instructor.entity.js.map +1 -1
- package/lib/profile/instructor/instructor.entity.d.ts +26 -4
- package/lib/profile/instructor/instructor.entity.js +57 -9
- package/lib/profile/instructor/instructor.entity.js.map +1 -1
- package/lib/profile/student/program/licence/licence.entity.js +1 -1
- package/lib/profile/student/program/licence/licence.entity.js.map +1 -1
- package/lib/profile/student/program/program.entity.js +1 -1
- package/lib/profile/student/program/program.entity.js.map +1 -1
- package/lib/profile/student/program/training/lesson.entity.js +2 -2
- package/lib/profile/student/program/training/lesson.entity.js.map +1 -1
- package/lib/profile/student/student.entity.d.ts +26 -0
- package/lib/profile/student/student.entity.js +57 -0
- package/lib/profile/student/student.entity.js.map +1 -1
- package/lib/system/campaign/campaign.entity.d.ts +69 -0
- package/lib/system/campaign/campaign.entity.js +153 -0
- package/lib/system/campaign/campaign.entity.js.map +1 -0
- package/lib/system/campaign/gifcode.entity.d.ts +54 -0
- package/lib/system/campaign/gifcode.entity.js +102 -0
- package/lib/system/campaign/gifcode.entity.js.map +1 -0
- package/lib/system/event/event.entity.d.ts +83 -0
- package/lib/system/event/event.entity.js +136 -0
- package/lib/system/event/event.entity.js.map +1 -0
- package/lib/system/event/log.entity.d.ts +27 -5
- package/lib/system/event/log.entity.js +43 -6
- package/lib/system/event/log.entity.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/user/device.entity.js +2 -1
- package/lib/user/device.entity.js.map +1 -1
- package/lib/user/user.entity.d.ts +16 -0
- package/lib/user/user.entity.js +48 -0
- package/lib/user/user.entity.js.map +1 -1
- package/package.json +1 -1
|
@@ -14,6 +14,7 @@ const typeorm_1 = require("typeorm");
|
|
|
14
14
|
const common_1 = require("@driveup/common");
|
|
15
15
|
const common_2 = require("@driveup/common");
|
|
16
16
|
const user_entity_1 = require("../../user/user.entity");
|
|
17
|
+
const log_entity_1 = require("../../system/event/log.entity");
|
|
17
18
|
const instructor_entity_1 = require("../company/instructor/instructor.entity");
|
|
18
19
|
const trackable_1 = require("../../utils/trackable");
|
|
19
20
|
const activity_helper_1 = require("../../utils/activity.helper");
|
|
@@ -70,15 +71,6 @@ let InstructorEntity = class InstructorEntity extends trackable_1.TrackableEntit
|
|
|
70
71
|
email: user.email
|
|
71
72
|
});
|
|
72
73
|
}
|
|
73
|
-
/**
|
|
74
|
-
* Retrieves notification preferences as typed Preference instances
|
|
75
|
-
* @returns Array of Preference objects or undefined if not set
|
|
76
|
-
*/
|
|
77
|
-
getPreferences() {
|
|
78
|
-
if (!this.preferences)
|
|
79
|
-
return;
|
|
80
|
-
return this.preferences.map(common_1.Preference.toInstance);
|
|
81
|
-
}
|
|
82
74
|
/**
|
|
83
75
|
* Retrieves all activity records for this instructor
|
|
84
76
|
* Includes creation and update actions
|
|
@@ -92,6 +84,62 @@ let InstructorEntity = class InstructorEntity extends trackable_1.TrackableEntit
|
|
|
92
84
|
activities.push(await (0, activity_helper_1.toActivity)(this.updatedOn, common_2.ActivityType.updatedOn));
|
|
93
85
|
return activities.filter(a => a);
|
|
94
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Log instructor event
|
|
89
|
+
* @param event Event type
|
|
90
|
+
* @param metadata Content render data (in instructor language)
|
|
91
|
+
* @param entityId Optional related entity ID
|
|
92
|
+
*/
|
|
93
|
+
async log(event, metadata, entityId) {
|
|
94
|
+
if (!this.id)
|
|
95
|
+
return;
|
|
96
|
+
await log_entity_1.LogEntity.from({
|
|
97
|
+
type: common_1.LogType.Instructor,
|
|
98
|
+
event: event,
|
|
99
|
+
entityId: entityId,
|
|
100
|
+
profile: { type: common_1.ProfileType.Company, id: this.id },
|
|
101
|
+
content: log_entity_1.LogEntity.toInstructorContent(event, this.language, metadata)
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Log event from authoring perspective.
|
|
106
|
+
* Author logs are used to capture actions taken by the instructor themselves
|
|
107
|
+
* @param event Event type
|
|
108
|
+
* @param metadata Content render data (in instructor language)
|
|
109
|
+
* @param entityId Optional related entity ID
|
|
110
|
+
*/
|
|
111
|
+
async logAsAuthor(event, metadata, entityId) {
|
|
112
|
+
if (!this.id)
|
|
113
|
+
return;
|
|
114
|
+
await log_entity_1.LogEntity.from({
|
|
115
|
+
type: common_1.LogType.Instructor,
|
|
116
|
+
event: event,
|
|
117
|
+
entityId: entityId,
|
|
118
|
+
profile: { type: common_1.ProfileType.Company, id: this.id },
|
|
119
|
+
content: log_entity_1.LogEntity.toAuthorContent(event, this.language, metadata)
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Retrieves notification preferences as typed Preference instances
|
|
124
|
+
* @returns Array of Preference objects or undefined if not set
|
|
125
|
+
*/
|
|
126
|
+
getPreferences() {
|
|
127
|
+
if (!this.preferences)
|
|
128
|
+
return;
|
|
129
|
+
return this.preferences.map(common_1.Preference.toInstance);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Checks if notifications are enabled for a specific event
|
|
133
|
+
* @param event Event name to check
|
|
134
|
+
* @returns True if notifications are enabled, false otherwise
|
|
135
|
+
*/
|
|
136
|
+
isNotificationEnabled(event) {
|
|
137
|
+
const preferences = this.getPreferences();
|
|
138
|
+
if (!preferences)
|
|
139
|
+
return true;
|
|
140
|
+
const eventPref = preferences.find(p => p.name === event && p.scope === common_1.PreferenceScope.Notification);
|
|
141
|
+
return eventPref.value === true;
|
|
142
|
+
}
|
|
95
143
|
};
|
|
96
144
|
exports.InstructorEntity = InstructorEntity;
|
|
97
145
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instructor.entity.js","sourceRoot":"","sources":["../../../src/profile/instructor/instructor.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"instructor.entity.js","sourceRoot":"","sources":["../../../src/profile/instructor/instructor.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,7 +66,7 @@ __decorate([
|
|
|
66
66
|
common_1.ProductType.LicenceProbationary,
|
|
67
67
|
common_1.ProductType.LicencePermanent
|
|
68
68
|
],
|
|
69
|
-
default: common_1.ProductType.
|
|
69
|
+
default: common_1.ProductType.LicenceStudent,
|
|
70
70
|
nullable: false
|
|
71
71
|
}),
|
|
72
72
|
__metadata("design:type", String)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"licence.entity.js","sourceRoot":"","sources":["../../../../../src/profile/student/program/licence/licence.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAgE;AAChE,4CAA0F;AAC1F,yDAAqD;AACrD,gFAAmF;AACnF,sDAAyD;AACzD,2DAA8D;AAC9D,uEAA+D;AAAA,CAAC;AAGzD,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,2BAAwB;IA6GjE,YAAY,KAAqC;QAChD,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO;QACN,OAAO,IAAI,gBAAO,CAAC;YAClB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAS,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;SAC9D,CAAC,CAAC;IACJ,CAAC;IAED,SAAS;QACR,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;CACD,CAAA;AA5IY,oDAAoB;AAMhC;IADC,IAAA,gBAAM,GAAE;;uDACS;AAMlB;IADC,IAAA,gBAAM,GAAE;;wDACU;AAiBnB;IAXC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE;YACL,oBAAW,CAAC,cAAc;YAC1B,oBAAW,CAAC,mBAAmB;YAC/B,oBAAW,CAAC,gBAAgB;SAC5B;QACD,OAAO,EAAE,oBAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"licence.entity.js","sourceRoot":"","sources":["../../../../../src/profile/student/program/licence/licence.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program.entity.js","sourceRoot":"","sources":["../../../../src/profile/student/program/program.entity.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"program.entity.js","sourceRoot":"","sources":["../../../../src/profile/student/program/program.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -117,11 +117,11 @@ __decorate([
|
|
|
117
117
|
__metadata("design:type", Number)
|
|
118
118
|
], StudentTrainingLessonEntity.prototype, "sort", void 0);
|
|
119
119
|
__decorate([
|
|
120
|
-
(0, typeorm_1.Column)({ nullable:
|
|
120
|
+
(0, typeorm_1.Column)({ nullable: true, default: null }),
|
|
121
121
|
__metadata("design:type", Date)
|
|
122
122
|
], StudentTrainingLessonEntity.prototype, "canceledOn", void 0);
|
|
123
123
|
__decorate([
|
|
124
|
-
(0, typeorm_1.Column)({ nullable:
|
|
124
|
+
(0, typeorm_1.Column)({ nullable: true, default: null }),
|
|
125
125
|
__metadata("design:type", Number)
|
|
126
126
|
], StudentTrainingLessonEntity.prototype, "canceledBy", void 0);
|
|
127
127
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lesson.entity.js","sourceRoot":"","sources":["../../../../../src/profile/student/program/training/lesson.entity.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lesson.entity.js","sourceRoot":"","sources":["../../../../../src/profile/student/program/training/lesson.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,4 +86,30 @@ export declare class StudentEntity extends TrackableEntity<Student> {
|
|
|
86
86
|
* @returns Array of Activity objects
|
|
87
87
|
*/
|
|
88
88
|
getActivities(): Promise<Activity[]>;
|
|
89
|
+
/**
|
|
90
|
+
* Log student event
|
|
91
|
+
* @param event Event type
|
|
92
|
+
* @param metadata Content render data (in student language)
|
|
93
|
+
* @param entityId Optional related entity ID
|
|
94
|
+
*/
|
|
95
|
+
log(event: string, metadata?: any, entityId?: number): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Log student from author perspective.
|
|
98
|
+
* Author logs are used to capture actions taken by the student themselves
|
|
99
|
+
* @param event Event type
|
|
100
|
+
* @param metadata Content render data (in student language)
|
|
101
|
+
* @param entityId Optional related entity ID
|
|
102
|
+
*/
|
|
103
|
+
logAsAuthor(event: string, metadata?: any, entityId?: number): Promise<void>;
|
|
104
|
+
/**
|
|
105
|
+
* Retrieves notification preferences as typed Preference instances
|
|
106
|
+
* @returns Array of Preference objects or undefined if not set
|
|
107
|
+
*/
|
|
108
|
+
getPreferences(): Preference<boolean>[];
|
|
109
|
+
/**
|
|
110
|
+
* Checks if notifications are enabled for a specific event
|
|
111
|
+
* @param event Event name to check
|
|
112
|
+
* @returns True if notifications are enabled, false otherwise
|
|
113
|
+
*/
|
|
114
|
+
isNotificationEnabled(event: string): boolean;
|
|
89
115
|
}
|
|
@@ -13,6 +13,7 @@ exports.StudentEntity = void 0;
|
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
14
|
const common_1 = require("@driveup/common");
|
|
15
15
|
const user_entity_1 = require("../../user/user.entity");
|
|
16
|
+
const log_entity_1 = require("../../system/event/log.entity");
|
|
16
17
|
const licence_entity_1 = require("./program/licence/licence.entity");
|
|
17
18
|
const examination_entity_1 = require("./program/medical/examination.entity");
|
|
18
19
|
const program_entity_1 = require("./program/program.entity");
|
|
@@ -63,6 +64,62 @@ let StudentEntity = class StudentEntity extends trackable_1.TrackableEntity {
|
|
|
63
64
|
activities.push(await (0, activity_helper_1.toActivity)(this.updatedOn, common_1.ActivityType.updatedOn));
|
|
64
65
|
return activities.filter(a => a);
|
|
65
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Log student event
|
|
69
|
+
* @param event Event type
|
|
70
|
+
* @param metadata Content render data (in student language)
|
|
71
|
+
* @param entityId Optional related entity ID
|
|
72
|
+
*/
|
|
73
|
+
async log(event, metadata, entityId) {
|
|
74
|
+
if (!this.id)
|
|
75
|
+
return;
|
|
76
|
+
await log_entity_1.LogEntity.from({
|
|
77
|
+
type: common_1.LogType.Student,
|
|
78
|
+
event: event,
|
|
79
|
+
entityId: entityId,
|
|
80
|
+
profile: { type: common_1.ProfileType.Student, id: this.id },
|
|
81
|
+
content: log_entity_1.LogEntity.toStudentContent(event, this.language, metadata)
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Log student from author perspective.
|
|
86
|
+
* Author logs are used to capture actions taken by the student themselves
|
|
87
|
+
* @param event Event type
|
|
88
|
+
* @param metadata Content render data (in student language)
|
|
89
|
+
* @param entityId Optional related entity ID
|
|
90
|
+
*/
|
|
91
|
+
async logAsAuthor(event, metadata, entityId) {
|
|
92
|
+
if (!this.id)
|
|
93
|
+
return;
|
|
94
|
+
await log_entity_1.LogEntity.from({
|
|
95
|
+
type: common_1.LogType.Student,
|
|
96
|
+
event: event,
|
|
97
|
+
entityId: entityId,
|
|
98
|
+
profile: { type: common_1.ProfileType.Student, id: this.id },
|
|
99
|
+
content: log_entity_1.LogEntity.toAuthorContent(event, this.language, metadata)
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Retrieves notification preferences as typed Preference instances
|
|
104
|
+
* @returns Array of Preference objects or undefined if not set
|
|
105
|
+
*/
|
|
106
|
+
getPreferences() {
|
|
107
|
+
if (!this.preferences)
|
|
108
|
+
return;
|
|
109
|
+
return this.preferences.map(common_1.Preference.toInstance);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Checks if notifications are enabled for a specific event
|
|
113
|
+
* @param event Event name to check
|
|
114
|
+
* @returns True if notifications are enabled, false otherwise
|
|
115
|
+
*/
|
|
116
|
+
isNotificationEnabled(event) {
|
|
117
|
+
const preferences = this.getPreferences();
|
|
118
|
+
if (!preferences)
|
|
119
|
+
return true;
|
|
120
|
+
const eventPref = preferences.find(p => p.name === event && p.scope === common_1.PreferenceScope.Notification);
|
|
121
|
+
return eventPref ? eventPref.value : true;
|
|
122
|
+
}
|
|
66
123
|
};
|
|
67
124
|
exports.StudentEntity = StudentEntity;
|
|
68
125
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"student.entity.js","sourceRoot":"","sources":["../../../src/profile/student/student.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"student.entity.js","sourceRoot":"","sources":["../../../src/profile/student/student.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Activity, Campaigne, Content, Language } from '@driveup/common';
|
|
2
|
+
import { ProductType } from '@driveup/common';
|
|
3
|
+
import { CampaignGiftCodeEntity } from './gifcode.entity';
|
|
4
|
+
import { TrackableEntity } from '../../utils/trackable';
|
|
5
|
+
/**
|
|
6
|
+
* Represents a marketing campaign in the system.
|
|
7
|
+
* Campaigns offer promotional discounts through gift codes that users can redeem.
|
|
8
|
+
* Each campaign targets specific products and has an expiration date.
|
|
9
|
+
* Gift amounts are credited to the user's product wallet upon redemption.
|
|
10
|
+
*
|
|
11
|
+
* @extends TrackableEntity
|
|
12
|
+
*/
|
|
13
|
+
export declare class CampaignEntity extends TrackableEntity<Campaigne> {
|
|
14
|
+
/**
|
|
15
|
+
* Product types this campaign applies to
|
|
16
|
+
* @default []
|
|
17
|
+
*/
|
|
18
|
+
products: ProductType[];
|
|
19
|
+
/**
|
|
20
|
+
* Localized content for the campaign (title, description, etc.)
|
|
21
|
+
*/
|
|
22
|
+
translations: Content[];
|
|
23
|
+
/**
|
|
24
|
+
* URL to the campaign's promotional image
|
|
25
|
+
*/
|
|
26
|
+
imageUrl: string;
|
|
27
|
+
/**
|
|
28
|
+
* Campaign discount amount
|
|
29
|
+
* This amount will be stored on product credit
|
|
30
|
+
*/
|
|
31
|
+
giftAmount: number;
|
|
32
|
+
/**
|
|
33
|
+
* Campaign expiration date - after this date, codes cannot be redeemed
|
|
34
|
+
*/
|
|
35
|
+
exipryDate: Date;
|
|
36
|
+
/**
|
|
37
|
+
* Gift codes associated with this campaign
|
|
38
|
+
*/
|
|
39
|
+
giftCodes: Promise<CampaignGiftCodeEntity[]>;
|
|
40
|
+
/**
|
|
41
|
+
* Creates a new CampaignEntity instance
|
|
42
|
+
* @param props - Partial properties to initialize the entity
|
|
43
|
+
*/
|
|
44
|
+
constructor(props?: Partial<CampaignEntity>);
|
|
45
|
+
/**
|
|
46
|
+
* Converts the entity to a Campaigne model instance
|
|
47
|
+
* @param lang - Optional language for translations
|
|
48
|
+
* @returns Campaigne model with localized content
|
|
49
|
+
*/
|
|
50
|
+
toModel(lang?: Language): Campaigne;
|
|
51
|
+
toSummary(lang?: Language): Campaigne;
|
|
52
|
+
/**
|
|
53
|
+
* Retrieves all gift codes for this campaign
|
|
54
|
+
* @returns Promise resolving to array of GiftCode models
|
|
55
|
+
*/
|
|
56
|
+
getCodes(): Promise<import("@driveup/common").GiftCode[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Gets the localized translation for the campaign
|
|
59
|
+
* @param lang - Optional language code; defaults to current i18n context
|
|
60
|
+
* @returns Content instance with translated title and description
|
|
61
|
+
*/
|
|
62
|
+
getTranslation(lang?: Language): Content;
|
|
63
|
+
/**
|
|
64
|
+
* Gets all available translations for the campaign
|
|
65
|
+
* @returns Array of Content instances for all languages
|
|
66
|
+
*/
|
|
67
|
+
getTranslations(): Content[];
|
|
68
|
+
getActivities(): Promise<Activity[]>;
|
|
69
|
+
}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.CampaignEntity = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const nestjs_i18n_1 = require("nestjs-i18n");
|
|
15
|
+
const common_1 = require("@driveup/common");
|
|
16
|
+
const common_2 = require("@driveup/common");
|
|
17
|
+
const gifcode_entity_1 = require("./gifcode.entity");
|
|
18
|
+
const staff_entity_1 = require("../staff/staff.entity");
|
|
19
|
+
const trackable_1 = require("../../utils/trackable");
|
|
20
|
+
const activity_helper_1 = require("../../utils/activity.helper");
|
|
21
|
+
/**
|
|
22
|
+
* Represents a marketing campaign in the system.
|
|
23
|
+
* Campaigns offer promotional discounts through gift codes that users can redeem.
|
|
24
|
+
* Each campaign targets specific products and has an expiration date.
|
|
25
|
+
* Gift amounts are credited to the user's product wallet upon redemption.
|
|
26
|
+
*
|
|
27
|
+
* @extends TrackableEntity
|
|
28
|
+
*/
|
|
29
|
+
let CampaignEntity = class CampaignEntity extends trackable_1.TrackableEntity {
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new CampaignEntity instance
|
|
32
|
+
* @param props - Partial properties to initialize the entity
|
|
33
|
+
*/
|
|
34
|
+
constructor(props) {
|
|
35
|
+
super();
|
|
36
|
+
Object.assign(this, props);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Converts the entity to a Campaigne model instance
|
|
40
|
+
* @param lang - Optional language for translations
|
|
41
|
+
* @returns Campaigne model with localized content
|
|
42
|
+
*/
|
|
43
|
+
toModel(lang) {
|
|
44
|
+
const transaltion = this.getTranslation(lang);
|
|
45
|
+
return new common_1.Campaigne({
|
|
46
|
+
id: this.id,
|
|
47
|
+
title: transaltion.title,
|
|
48
|
+
description: transaltion.description,
|
|
49
|
+
giftAmount: this.giftAmount,
|
|
50
|
+
imageUrl: transaltion.imageUrl || this.imageUrl,
|
|
51
|
+
exipryDate: this.exipryDate,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
toSummary(lang) {
|
|
55
|
+
return this.toModel(lang);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Retrieves all gift codes for this campaign
|
|
59
|
+
* @returns Promise resolving to array of GiftCode models
|
|
60
|
+
*/
|
|
61
|
+
async getCodes() {
|
|
62
|
+
return await Promise.all((await this.giftCodes).map(async (codeEntity) => codeEntity.toModel()));
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Gets the localized translation for the campaign
|
|
66
|
+
* @param lang - Optional language code; defaults to current i18n context
|
|
67
|
+
* @returns Content instance with translated title and description
|
|
68
|
+
*/
|
|
69
|
+
getTranslation(lang) {
|
|
70
|
+
const language = lang || nestjs_i18n_1.I18nContext.current()?.lang;
|
|
71
|
+
const translation = this.translations?.find(t => t.language === language);
|
|
72
|
+
return new common_1.Content({
|
|
73
|
+
title: translation?.title,
|
|
74
|
+
description: translation?.description,
|
|
75
|
+
content: translation?.content,
|
|
76
|
+
imageUrl: translation?.imageUrl,
|
|
77
|
+
link: translation?.link,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Gets all available translations for the campaign
|
|
82
|
+
* @returns Array of Content instances for all languages
|
|
83
|
+
*/
|
|
84
|
+
getTranslations() {
|
|
85
|
+
return this.translations?.map(t => new common_1.Content({
|
|
86
|
+
title: t.title,
|
|
87
|
+
description: t.description,
|
|
88
|
+
content: t.content,
|
|
89
|
+
imageUrl: t.imageUrl,
|
|
90
|
+
link: t.link,
|
|
91
|
+
language: t.language
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
async getActivities() {
|
|
95
|
+
const activities = [];
|
|
96
|
+
activities.push(await (0, activity_helper_1.toActivity)(this.createdBy, common_1.ActivityType.createdBy, staff_entity_1.StaffEntity));
|
|
97
|
+
activities.push(await (0, activity_helper_1.toActivity)(this.createdOn, common_1.ActivityType.createdOn));
|
|
98
|
+
activities.push(await (0, activity_helper_1.toActivity)(this.updatedBy, common_1.ActivityType.updatedBy, staff_entity_1.StaffEntity));
|
|
99
|
+
activities.push(await (0, activity_helper_1.toActivity)(this.updatedOn, common_1.ActivityType.updatedOn));
|
|
100
|
+
return activities.filter(a => a);
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
exports.CampaignEntity = CampaignEntity;
|
|
104
|
+
__decorate([
|
|
105
|
+
(0, typeorm_1.Column)({
|
|
106
|
+
type: 'set',
|
|
107
|
+
enum: common_2.ProductType,
|
|
108
|
+
default: [],
|
|
109
|
+
nullable: false
|
|
110
|
+
}),
|
|
111
|
+
__metadata("design:type", Array)
|
|
112
|
+
], CampaignEntity.prototype, "products", void 0);
|
|
113
|
+
__decorate([
|
|
114
|
+
(0, typeorm_1.Column)({
|
|
115
|
+
type: 'simple-json',
|
|
116
|
+
nullable: true,
|
|
117
|
+
default: null
|
|
118
|
+
}),
|
|
119
|
+
__metadata("design:type", Array)
|
|
120
|
+
], CampaignEntity.prototype, "translations", void 0);
|
|
121
|
+
__decorate([
|
|
122
|
+
(0, typeorm_1.Column)({
|
|
123
|
+
nullable: true,
|
|
124
|
+
default: null
|
|
125
|
+
}),
|
|
126
|
+
__metadata("design:type", String)
|
|
127
|
+
], CampaignEntity.prototype, "imageUrl", void 0);
|
|
128
|
+
__decorate([
|
|
129
|
+
(0, typeorm_1.Column)({
|
|
130
|
+
type: 'decimal',
|
|
131
|
+
precision: 10,
|
|
132
|
+
scale: 2,
|
|
133
|
+
nullable: false,
|
|
134
|
+
default: 0
|
|
135
|
+
}),
|
|
136
|
+
__metadata("design:type", Number)
|
|
137
|
+
], CampaignEntity.prototype, "giftAmount", void 0);
|
|
138
|
+
__decorate([
|
|
139
|
+
(0, typeorm_1.Column)({
|
|
140
|
+
nullable: true,
|
|
141
|
+
default: null
|
|
142
|
+
}),
|
|
143
|
+
__metadata("design:type", Date)
|
|
144
|
+
], CampaignEntity.prototype, "exipryDate", void 0);
|
|
145
|
+
__decorate([
|
|
146
|
+
(0, typeorm_1.OneToMany)(() => gifcode_entity_1.CampaignGiftCodeEntity, giftCode => giftCode.campaign),
|
|
147
|
+
__metadata("design:type", Promise)
|
|
148
|
+
], CampaignEntity.prototype, "giftCodes", void 0);
|
|
149
|
+
exports.CampaignEntity = CampaignEntity = __decorate([
|
|
150
|
+
(0, typeorm_1.Entity)('systemCampaigns'),
|
|
151
|
+
__metadata("design:paramtypes", [Object])
|
|
152
|
+
], CampaignEntity);
|
|
153
|
+
//# sourceMappingURL=campaign.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign.entity.js","sourceRoot":"","sources":["../../../src/system/campaign/campaign.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Activity, GiftCode, ProfileType } from '@driveup/common';
|
|
2
|
+
import { CampaignEntity } from './campaign.entity';
|
|
3
|
+
import { TrackableEntity } from '../../utils/trackable';
|
|
4
|
+
/**
|
|
5
|
+
* Campaign gift code entity representing promotional codes for campaigns.
|
|
6
|
+
* Extends TrackableEntity to track creation and update information.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CampaignGiftCodeEntity extends TrackableEntity<GiftCode> {
|
|
9
|
+
/**
|
|
10
|
+
* The ID of the campaign this gift code belongs to
|
|
11
|
+
*/
|
|
12
|
+
campaignId: number;
|
|
13
|
+
/**
|
|
14
|
+
* Unique 8-character gift code
|
|
15
|
+
*/
|
|
16
|
+
code: string;
|
|
17
|
+
/**
|
|
18
|
+
* Profile type that can use this gift code (Company, Student, Agent)
|
|
19
|
+
*/
|
|
20
|
+
profile: ProfileType;
|
|
21
|
+
/**
|
|
22
|
+
* ID of the user who registered/used this gift code
|
|
23
|
+
*/
|
|
24
|
+
registredBy: number;
|
|
25
|
+
/**
|
|
26
|
+
* Timestamp when this gift code was registered/used
|
|
27
|
+
*/
|
|
28
|
+
registredOn: Date;
|
|
29
|
+
/**
|
|
30
|
+
* The campaign associated with this gift code
|
|
31
|
+
*/
|
|
32
|
+
campaign: CampaignEntity;
|
|
33
|
+
/**
|
|
34
|
+
* Creates a new CampaigneGiftCodeEntity instance
|
|
35
|
+
* @param props - Partial properties to initialize the entity with
|
|
36
|
+
*/
|
|
37
|
+
constructor(props?: Partial<CampaignGiftCodeEntity>);
|
|
38
|
+
/**
|
|
39
|
+
* Converts the entity to a GiftCode model instance
|
|
40
|
+
* @returns GiftCode model with basic gift code information
|
|
41
|
+
*/
|
|
42
|
+
toModel(): GiftCode;
|
|
43
|
+
/**
|
|
44
|
+
* Returns a summary representation of the gift code
|
|
45
|
+
* @returns GiftCode model instance (same as toModel())
|
|
46
|
+
*/
|
|
47
|
+
toSummary(): GiftCode;
|
|
48
|
+
/**
|
|
49
|
+
* Retrieves all tracked activities for this gift code
|
|
50
|
+
* Includes creation, registration timestamps and associated staff members
|
|
51
|
+
* @returns Array of Activity objects
|
|
52
|
+
*/
|
|
53
|
+
getActivities(): Promise<Activity[]>;
|
|
54
|
+
}
|