@driveup/schema 0.2.5 → 0.2.7
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/addon/addon.entity.d.ts +3 -3
- package/lib/catalog/addon/addon.entity.js +5 -5
- package/lib/catalog/addon/addon.entity.js.map +1 -1
- package/lib/catalog/addon/country.entity.d.ts +3 -3
- package/lib/catalog/addon/country.entity.js +5 -5
- package/lib/catalog/addon/country.entity.js.map +1 -1
- package/lib/catalog/priceplan/priceplan.entity.d.ts +2 -2
- package/lib/catalog/priceplan/priceplan.entity.js +4 -4
- package/lib/catalog/priceplan/priceplan.entity.js.map +1 -1
- package/lib/catalog/product/country.entity.d.ts +4 -4
- package/lib/catalog/product/country.entity.js +9 -9
- package/lib/catalog/product/country.entity.js.map +1 -1
- package/lib/catalog/product/priceplan.entity.d.ts +3 -3
- package/lib/catalog/product/priceplan.entity.js +8 -8
- package/lib/catalog/product/priceplan.entity.js.map +1 -1
- package/lib/catalog/product/product.entity.d.ts +3 -3
- package/lib/catalog/product/product.entity.js +6 -6
- package/lib/catalog/product/product.entity.js.map +1 -1
- package/lib/catalog/program/program.entity.d.ts +1 -1
- package/lib/catalog/program/program.entity.js +5 -5
- package/lib/catalog/program/program.entity.js.map +1 -1
- package/lib/catalog/seed/assets/asset.entity.d.ts +2 -2
- package/lib/catalog/seed/assets/asset.entity.js +4 -4
- package/lib/catalog/seed/assets/asset.entity.js.map +1 -1
- package/lib/catalog/seed/courses/course.entity.d.ts +3 -3
- package/lib/catalog/seed/courses/course.entity.js +7 -7
- package/lib/catalog/seed/courses/course.entity.js.map +1 -1
- package/lib/catalog/seed/courses/lesson.entity.d.ts +2 -2
- package/lib/catalog/seed/courses/lesson.entity.js +5 -5
- package/lib/catalog/seed/courses/lesson.entity.js.map +1 -1
- package/lib/catalog/seed/courses/topic.entity.d.ts +2 -2
- package/lib/catalog/seed/courses/topic.entity.js +5 -5
- package/lib/catalog/seed/courses/topic.entity.js.map +1 -1
- package/lib/catalog/seed/expense/category.entity.d.ts +1 -1
- package/lib/catalog/seed/expense/category.entity.js +4 -4
- package/lib/catalog/seed/expense/category.entity.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/profile/agent/agent.entity.d.ts +12 -4
- package/lib/profile/agent/agent.entity.js +30 -6
- package/lib/profile/agent/agent.entity.js.map +1 -1
- package/lib/profile/agent/asset.entity.d.ts +1 -1
- package/lib/profile/agent/asset.entity.js +2 -2
- package/lib/profile/agent/asset.entity.js.map +1 -1
- package/lib/profile/agent/payout.entity.d.ts +2 -2
- package/lib/profile/agent/payout.entity.js +4 -4
- package/lib/profile/agent/payout.entity.js.map +1 -1
- package/lib/profile/agent/promotion.entity.d.ts +3 -3
- package/lib/profile/agent/promotion.entity.js +6 -6
- package/lib/profile/agent/promotion.entity.js.map +1 -1
- package/lib/profile/company/company.entity.d.ts +39 -8
- package/lib/profile/company/company.entity.js +147 -10
- package/lib/profile/company/company.entity.js.map +1 -1
- package/lib/profile/company/course/course.entity.d.ts +35 -8
- package/lib/profile/company/course/course.entity.js +48 -9
- package/lib/profile/company/course/course.entity.js.map +1 -1
- package/lib/profile/company/course/lesson.entity.d.ts +20 -6
- package/lib/profile/company/course/lesson.entity.js +77 -10
- package/lib/profile/company/course/lesson.entity.js.map +1 -1
- package/lib/profile/company/course/{appointment.entity.d.ts → schedule.entity.d.ts} +78 -8
- package/lib/profile/company/course/{appointment.entity.js → schedule.entity.js} +257 -7
- package/lib/profile/company/course/schedule.entity.js.map +1 -0
- package/lib/profile/company/course/topic.entity.d.ts +6 -2
- package/lib/profile/company/course/topic.entity.js +12 -5
- package/lib/profile/company/course/topic.entity.js.map +1 -1
- package/lib/profile/company/finances/billing/bill.entity.d.ts +3 -3
- package/lib/profile/company/finances/billing/bill.entity.js +5 -5
- package/lib/profile/company/finances/billing/bill.entity.js.map +1 -1
- package/lib/profile/company/finances/billing/item.entity.d.ts +2 -2
- package/lib/profile/company/finances/billing/item.entity.js +5 -5
- package/lib/profile/company/finances/billing/item.entity.js.map +1 -1
- package/lib/profile/company/finances/billing/transaction.entity.d.ts +3 -3
- package/lib/profile/company/finances/billing/transaction.entity.js +6 -6
- package/lib/profile/company/finances/billing/transaction.entity.js.map +1 -1
- package/lib/profile/company/finances/expense/category.entity.d.ts +1 -1
- package/lib/profile/company/finances/expense/category.entity.js +4 -4
- package/lib/profile/company/finances/expense/category.entity.js.map +1 -1
- package/lib/profile/company/finances/expense/expense.entity.d.ts +6 -2
- package/lib/profile/company/finances/expense/expense.entity.js +32 -4
- package/lib/profile/company/finances/expense/expense.entity.js.map +1 -1
- package/lib/profile/company/finances/handover/handover.entity.d.ts +3 -3
- package/lib/profile/company/finances/handover/handover.entity.js +6 -6
- package/lib/profile/company/finances/handover/handover.entity.js.map +1 -1
- package/lib/profile/company/finances/invoice/invoice.entity.d.ts +7 -6
- package/lib/profile/company/finances/invoice/invoice.entity.js +9 -8
- package/lib/profile/company/finances/invoice/invoice.entity.js.map +1 -1
- package/lib/profile/company/finances/invoice/item.entity.d.ts +2 -2
- package/lib/profile/company/finances/invoice/item.entity.js +4 -4
- package/lib/profile/company/finances/invoice/item.entity.js.map +1 -1
- package/lib/profile/company/finances/payment/method.entity.d.ts +10 -4
- package/lib/profile/company/finances/payment/method.entity.js +24 -5
- package/lib/profile/company/finances/payment/method.entity.js.map +1 -1
- package/lib/profile/company/instructor/activity.entity.js.map +1 -1
- package/lib/profile/company/instructor/calendar-state.entity.js.map +1 -1
- package/lib/profile/company/instructor/instructor.entity.d.ts +20 -11
- package/lib/profile/company/instructor/instructor.entity.js +111 -16
- package/lib/profile/company/instructor/instructor.entity.js.map +1 -1
- package/lib/profile/company/instructor/task.entity.d.ts +2 -1
- package/lib/profile/company/instructor/task.entity.js +9 -4
- package/lib/profile/company/instructor/task.entity.js.map +1 -1
- package/lib/profile/company/medical/examination.entity.d.ts +3 -3
- package/lib/profile/company/medical/examination.entity.js +5 -5
- package/lib/profile/company/medical/examination.entity.js.map +1 -1
- package/lib/profile/company/medical/product.entity.d.ts +4 -4
- package/lib/profile/company/medical/product.entity.js +5 -5
- package/lib/profile/company/medical/product.entity.js.map +1 -1
- package/lib/profile/company/product/addon.entity.d.ts +2 -2
- package/lib/profile/company/product/addon.entity.js +5 -5
- package/lib/profile/company/product/addon.entity.js.map +1 -1
- package/lib/profile/company/product/priceplan.entity.d.ts +4 -3
- package/lib/profile/company/product/priceplan.entity.js +9 -4
- package/lib/profile/company/product/priceplan.entity.js.map +1 -1
- package/lib/profile/company/product/product.entity.d.ts +8 -7
- package/lib/profile/company/product/product.entity.js +19 -9
- package/lib/profile/company/product/product.entity.js.map +1 -1
- package/lib/profile/company/product/vehicle.entity.d.ts +2 -2
- package/lib/profile/company/product/vehicle.entity.js +4 -4
- package/lib/profile/company/product/vehicle.entity.js.map +1 -1
- package/lib/profile/instructor/instructor.entity.d.ts +6 -3
- package/lib/profile/instructor/instructor.entity.js +28 -7
- package/lib/profile/instructor/instructor.entity.js.map +1 -1
- package/lib/profile/student/program/licence/licence.entity.d.ts +3 -3
- package/lib/profile/student/program/licence/licence.entity.js +5 -5
- package/lib/profile/student/program/licence/licence.entity.js.map +1 -1
- package/lib/profile/student/program/medical/certificate.entity.d.ts +2 -2
- package/lib/profile/student/program/medical/certificate.entity.js +4 -4
- package/lib/profile/student/program/medical/certificate.entity.js.map +1 -1
- package/lib/profile/student/program/medical/examination.entity.d.ts +3 -3
- package/lib/profile/student/program/medical/examination.entity.js +10 -10
- package/lib/profile/student/program/medical/examination.entity.js.map +1 -1
- package/lib/profile/student/program/program.entity.d.ts +11 -6
- package/lib/profile/student/program/program.entity.js +14 -9
- package/lib/profile/student/program/program.entity.js.map +1 -1
- package/lib/profile/student/program/training/appointment.entity.d.ts +23 -9
- package/lib/profile/student/program/training/appointment.entity.js +115 -13
- package/lib/profile/student/program/training/appointment.entity.js.map +1 -1
- package/lib/profile/student/program/training/exam.entity.d.ts +4 -2
- package/lib/profile/student/program/training/exam.entity.js +12 -4
- package/lib/profile/student/program/training/exam.entity.js.map +1 -1
- package/lib/profile/student/program/training/lesson.entity.d.ts +10 -4
- package/lib/profile/student/program/training/lesson.entity.js +32 -7
- package/lib/profile/student/program/training/lesson.entity.js.map +1 -1
- package/lib/profile/student/program/training/request.entity.d.ts +6 -3
- package/lib/profile/student/program/training/request.entity.js +26 -5
- package/lib/profile/student/program/training/request.entity.js.map +1 -1
- package/lib/profile/student/program/training/topic.entity.d.ts +14 -3
- package/lib/profile/student/program/training/topic.entity.js +29 -5
- package/lib/profile/student/program/training/topic.entity.js.map +1 -1
- package/lib/profile/student/program/training/training.entity.d.ts +76 -8
- package/lib/profile/student/program/training/training.entity.js +226 -9
- package/lib/profile/student/program/training/training.entity.js.map +1 -1
- package/lib/profile/student/program/training/transaction.entity.d.ts +8 -3
- package/lib/profile/student/program/training/transaction.entity.js +41 -4
- package/lib/profile/student/program/training/transaction.entity.js.map +1 -1
- package/lib/profile/student/student.entity.d.ts +11 -6
- package/lib/profile/student/student.entity.js +57 -10
- package/lib/profile/student/student.entity.js.map +1 -1
- package/lib/system/campaign/campaign.entity.d.ts +2 -2
- package/lib/system/campaign/campaign.entity.js +6 -6
- package/lib/system/campaign/campaign.entity.js.map +1 -1
- package/lib/system/campaign/gifcode.entity.d.ts +2 -2
- package/lib/system/campaign/gifcode.entity.js +6 -6
- package/lib/system/campaign/gifcode.entity.js.map +1 -1
- package/lib/system/country/country.entity.d.ts +7 -5
- package/lib/system/country/country.entity.js +15 -9
- package/lib/system/country/country.entity.js.map +1 -1
- package/lib/system/currency/currency.entity.d.ts +1 -1
- package/lib/system/currency/currency.entity.js +4 -4
- package/lib/system/currency/currency.entity.js.map +1 -1
- package/lib/system/driving/category.entity.d.ts +7 -7
- package/lib/system/driving/category.entity.js +12 -12
- package/lib/system/driving/category.entity.js.map +1 -1
- package/lib/system/driving/vehicle.entity.d.ts +2 -2
- package/lib/system/driving/vehicle.entity.js +4 -4
- package/lib/system/driving/vehicle.entity.js.map +1 -1
- package/lib/system/event/event.entity.d.ts +2 -2
- package/lib/system/event/event.entity.js +4 -4
- package/lib/system/event/event.entity.js.map +1 -1
- package/lib/system/event/log.entity.d.ts +2 -2
- package/lib/system/event/log.entity.js +3 -3
- package/lib/system/event/log.entity.js.map +1 -1
- package/lib/system/policy/policy.entity.d.ts +1 -1
- package/lib/system/policy/policy.entity.js +5 -5
- package/lib/system/policy/policy.entity.js.map +1 -1
- package/lib/system/staff/staff.entity.d.ts +1 -1
- package/lib/system/staff/staff.entity.js +3 -3
- package/lib/system/staff/staff.entity.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/user/alert.entity.d.ts +3 -2
- package/lib/user/alert.entity.js +11 -4
- package/lib/user/alert.entity.js.map +1 -1
- package/lib/user/blocked.entity.js +2 -2
- package/lib/user/blocked.entity.js.map +1 -1
- package/lib/user/device.entity.d.ts +15 -0
- package/lib/user/device.entity.js +26 -0
- package/lib/user/device.entity.js.map +1 -1
- package/lib/user/notification.entity.d.ts +2 -2
- package/lib/user/notification.entity.js +4 -4
- package/lib/user/notification.entity.js.map +1 -1
- package/lib/user/ticket.entity.d.ts +8 -3
- package/lib/user/ticket.entity.js +11 -4
- package/lib/user/ticket.entity.js.map +1 -1
- package/lib/user/user.entity.d.ts +91 -82
- package/lib/user/user.entity.js +257 -259
- package/lib/user/user.entity.js.map +1 -1
- package/lib/user/verification.entity.js +2 -2
- package/lib/user/verification.entity.js.map +1 -1
- package/lib/utils/activity.helper.d.ts +2 -2
- package/lib/utils/activity.helper.js.map +1 -1
- package/lib/utils/trackable.d.ts +2 -2
- package/lib/utils/trackable.js.map +1 -1
- package/package.json +2 -2
- package/lib/profile/company/course/appointment.entity.js.map +0 -1
|
@@ -8,26 +8,29 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var CompanyEntity_1;
|
|
11
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
13
|
exports.CompanyEntity = void 0;
|
|
13
|
-
const typeorm_1 = require("typeorm");
|
|
14
|
-
const shared_1 = require("@driveup/shared");
|
|
15
14
|
const common_1 = require("@driveup/common");
|
|
16
15
|
const common_2 = require("@driveup/common");
|
|
16
|
+
const shared_1 = require("@driveup/shared");
|
|
17
|
+
const luxon_1 = require("luxon");
|
|
18
|
+
const typeorm_1 = require("typeorm");
|
|
17
19
|
const country_entity_1 = require("../../system/country/country.entity");
|
|
18
20
|
const log_entity_1 = require("../../system/event/log.entity");
|
|
19
|
-
const
|
|
21
|
+
const activity_helper_1 = require("../../utils/activity.helper");
|
|
22
|
+
const trackable_1 = require("../../utils/trackable");
|
|
23
|
+
const promotion_entity_1 = require("../agent/promotion.entity");
|
|
24
|
+
const bill_entity_1 = require("./finances/billing/bill.entity");
|
|
25
|
+
const transaction_entity_1 = require("./finances/billing/transaction.entity");
|
|
20
26
|
const category_entity_1 = require("./finances/expense/category.entity");
|
|
27
|
+
const expense_entity_1 = require("./finances/expense/expense.entity");
|
|
21
28
|
const handover_entity_1 = require("./finances/handover/handover.entity");
|
|
22
29
|
const invoice_entity_1 = require("./finances/invoice/invoice.entity");
|
|
23
30
|
const method_entity_1 = require("./finances/payment/method.entity");
|
|
24
|
-
const bill_entity_1 = require("./finances/billing/bill.entity");
|
|
25
|
-
const product_entity_1 = require("./product/product.entity");
|
|
26
31
|
const instructor_entity_1 = require("./instructor/instructor.entity");
|
|
27
|
-
const promotion_entity_1 = require("../agent/promotion.entity");
|
|
28
|
-
const trackable_1 = require("../../utils/trackable");
|
|
29
|
-
const activity_helper_1 = require("../../utils/activity.helper");
|
|
30
32
|
const addon_entity_1 = require("./product/addon.entity");
|
|
33
|
+
const product_entity_1 = require("./product/product.entity");
|
|
31
34
|
/**
|
|
32
35
|
* Represents a driving school company in the system.
|
|
33
36
|
* Companies offer training products, manage instructors and students,
|
|
@@ -36,7 +39,7 @@ const addon_entity_1 = require("./product/addon.entity");
|
|
|
36
39
|
*
|
|
37
40
|
* @extends TrackableEntity<Company>
|
|
38
41
|
*/
|
|
39
|
-
let CompanyEntity = class CompanyEntity extends trackable_1.TrackableEntity {
|
|
42
|
+
let CompanyEntity = CompanyEntity_1 = class CompanyEntity extends trackable_1.TrackableEntity {
|
|
40
43
|
/**
|
|
41
44
|
* Creates a new CompanyEntity instance
|
|
42
45
|
* @param props - Partial properties to initialize the entity
|
|
@@ -169,6 +172,111 @@ let CompanyEntity = class CompanyEntity extends trackable_1.TrackableEntity {
|
|
|
169
172
|
const zipCode = this.address?.zipCode || '';
|
|
170
173
|
return `${location}, ${address} - ${zipCode}`.trim();
|
|
171
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* Retrieves the active payment method for the company
|
|
177
|
+
* @returns CompanyPaymentMethodEntity - the active company payment method
|
|
178
|
+
*/
|
|
179
|
+
async getActivePaymentMethod() {
|
|
180
|
+
return await method_entity_1.CompanyPaymentMethodEntity.findOneBy({
|
|
181
|
+
companyId: this.id,
|
|
182
|
+
active: true
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Retrieves the active payment method for the company
|
|
187
|
+
* @returns CompanyPaymentMethodEntity - the active company payment method
|
|
188
|
+
*/
|
|
189
|
+
async getPendingPaymentMethod() {
|
|
190
|
+
// TODO: check with admir if the conditions bellow are correct
|
|
191
|
+
return await method_entity_1.CompanyPaymentMethodEntity.findOne({
|
|
192
|
+
where: {
|
|
193
|
+
companyId: this.id,
|
|
194
|
+
active: false,
|
|
195
|
+
confirmed: false
|
|
196
|
+
},
|
|
197
|
+
order: { createdOn: 'DESC' }
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Finds if there are any failed payments (unpaid bills) for the company
|
|
202
|
+
*/
|
|
203
|
+
async hasFailedTransactions() {
|
|
204
|
+
return await transaction_entity_1.CompanyBillTransactionEntity.createQueryBuilder('ct') // company transaction
|
|
205
|
+
.innerJoin('ct.bill', 'cb') // company bill
|
|
206
|
+
.where('cb.companyId = :companyId', { companyId: this.id })
|
|
207
|
+
.andWhere('cb.status = :unpaidStatus', { unpaidStatus: shared_1.BillStatus.Unpaid })
|
|
208
|
+
.andWhere('ct.status = :failedStatus', { failedStatus: shared_1.StatusType.Failed })
|
|
209
|
+
.getExists();
|
|
210
|
+
}
|
|
211
|
+
getHolidays(period) {
|
|
212
|
+
period.startDate = new Date(period.startDate);
|
|
213
|
+
period.endDate = new Date(period.endDate);
|
|
214
|
+
let companyHolidays = this.holidays || [];
|
|
215
|
+
companyHolidays = companyHolidays.map(i => {
|
|
216
|
+
i.period.startDate = new Date(i.period.startDate);
|
|
217
|
+
i.period.endDate = new Date(i.period.endDate);
|
|
218
|
+
return i;
|
|
219
|
+
});
|
|
220
|
+
const companyHolidaysInPeriod = companyHolidays.filter(i => period.startDate < i.period.endDate && period.endDate > i.period.startDate);
|
|
221
|
+
return companyHolidaysInPeriod;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Check if a given period collides with any of the company's holidays
|
|
225
|
+
* @param Period
|
|
226
|
+
* @returns boolean - true if the period collides with any of the company's holidays
|
|
227
|
+
*/
|
|
228
|
+
collidesWithHolidays(period) {
|
|
229
|
+
if (!this.holidays?.length)
|
|
230
|
+
return false;
|
|
231
|
+
return this.holidays.some(i => period.collidesWith(new common_1.Period({
|
|
232
|
+
startDate: new Date(i.period.startDate),
|
|
233
|
+
endDate: new Date(i.period.endDate)
|
|
234
|
+
})));
|
|
235
|
+
}
|
|
236
|
+
getNonWorkingHours(period) {
|
|
237
|
+
const result = [];
|
|
238
|
+
const periodStart = luxon_1.DateTime.fromJSDate(new Date(period.startDate));
|
|
239
|
+
const periodEnd = luxon_1.DateTime.fromJSDate(new Date(period.endDate));
|
|
240
|
+
let currentDay = periodStart;
|
|
241
|
+
let lastEnd = periodStart;
|
|
242
|
+
while (currentDay < periodEnd) {
|
|
243
|
+
const workdayDefinition = this.workingHours.find(i => common_1.DateHelper.getWeekdayNumber(i.weekday) === currentDay.weekday);
|
|
244
|
+
if (!workdayDefinition?.periods?.length) {
|
|
245
|
+
currentDay = currentDay.plus({ days: 1 }).startOf('day');
|
|
246
|
+
continue;
|
|
247
|
+
}
|
|
248
|
+
const workingHours = workdayDefinition.periods.sort((a, b) => new Date(a.startDate).getTime() - new Date(b.startDate).getTime());
|
|
249
|
+
for (const working of workingHours) {
|
|
250
|
+
const workingStart = luxon_1.DateTime.fromJSDate(new Date(working.startDate)).set({
|
|
251
|
+
year: currentDay.year,
|
|
252
|
+
month: currentDay.month,
|
|
253
|
+
day: currentDay.day
|
|
254
|
+
});
|
|
255
|
+
const workingEnd = luxon_1.DateTime.fromJSDate(new Date(working.endDate)).set({
|
|
256
|
+
year: currentDay.year,
|
|
257
|
+
month: currentDay.month,
|
|
258
|
+
day: currentDay.day
|
|
259
|
+
});
|
|
260
|
+
if (lastEnd < workingStart) {
|
|
261
|
+
const nonWorking = new common_1.Period({
|
|
262
|
+
startDate: lastEnd.toJSDate(),
|
|
263
|
+
endDate: workingStart.toJSDate()
|
|
264
|
+
});
|
|
265
|
+
result.push(nonWorking);
|
|
266
|
+
}
|
|
267
|
+
lastEnd = workingEnd;
|
|
268
|
+
}
|
|
269
|
+
currentDay = currentDay.plus({ days: 1 }).startOf('day');
|
|
270
|
+
}
|
|
271
|
+
if (lastEnd < periodEnd) {
|
|
272
|
+
const nonWorking = new common_1.Period({
|
|
273
|
+
startDate: lastEnd.toJSDate(),
|
|
274
|
+
endDate: periodEnd.toJSDate()
|
|
275
|
+
});
|
|
276
|
+
result.push(nonWorking);
|
|
277
|
+
}
|
|
278
|
+
return result;
|
|
279
|
+
}
|
|
172
280
|
/**
|
|
173
281
|
* Retrieves activity history for this company
|
|
174
282
|
* @returns Promise resolving to array of Activity instances tracking creation, updates, and closure
|
|
@@ -198,6 +306,28 @@ let CompanyEntity = class CompanyEntity extends trackable_1.TrackableEntity {
|
|
|
198
306
|
const addons = await this.addons;
|
|
199
307
|
return addons?.find(i => i.type === type);
|
|
200
308
|
}
|
|
309
|
+
getPreferences() {
|
|
310
|
+
if (!this.preferences)
|
|
311
|
+
return;
|
|
312
|
+
return this.preferences.map(common_2.Preference.toInstance);
|
|
313
|
+
}
|
|
314
|
+
async setPreference(name, value, scope) {
|
|
315
|
+
this.preferences = this.preferences || [];
|
|
316
|
+
this.preferences = this.preferences.filter(p => p.name !== name);
|
|
317
|
+
this.preferences.push(new common_2.Preference({
|
|
318
|
+
scope: scope,
|
|
319
|
+
name: name,
|
|
320
|
+
value: value
|
|
321
|
+
}));
|
|
322
|
+
await CompanyEntity_1.save(this);
|
|
323
|
+
return this.preferences;
|
|
324
|
+
}
|
|
325
|
+
async removePreference(name) {
|
|
326
|
+
this.preferences = this.preferences || [];
|
|
327
|
+
this.preferences = this.preferences.filter(p => p.name !== name);
|
|
328
|
+
await CompanyEntity_1.save(this);
|
|
329
|
+
return this.preferences;
|
|
330
|
+
}
|
|
201
331
|
};
|
|
202
332
|
exports.CompanyEntity = CompanyEntity;
|
|
203
333
|
__decorate([
|
|
@@ -349,6 +479,13 @@ __decorate([
|
|
|
349
479
|
}),
|
|
350
480
|
__metadata("design:type", common_2.Tax)
|
|
351
481
|
], CompanyEntity.prototype, "tax", void 0);
|
|
482
|
+
__decorate([
|
|
483
|
+
(0, typeorm_1.Column)({
|
|
484
|
+
nullable: true,
|
|
485
|
+
default: 0
|
|
486
|
+
}),
|
|
487
|
+
__metadata("design:type", Number)
|
|
488
|
+
], CompanyEntity.prototype, "obligationPeriod", void 0);
|
|
352
489
|
__decorate([
|
|
353
490
|
(0, typeorm_1.Column)({
|
|
354
491
|
type: 'simple-json',
|
|
@@ -425,7 +562,7 @@ __decorate([
|
|
|
425
562
|
(0, typeorm_1.OneToMany)(() => promotion_entity_1.AgentPromotionEntity, promotion => promotion.company),
|
|
426
563
|
__metadata("design:type", Promise)
|
|
427
564
|
], CompanyEntity.prototype, "agentPromotions", void 0);
|
|
428
|
-
exports.CompanyEntity = CompanyEntity = __decorate([
|
|
565
|
+
exports.CompanyEntity = CompanyEntity = CompanyEntity_1 = __decorate([
|
|
429
566
|
(0, typeorm_1.Entity)('companies'),
|
|
430
567
|
__metadata("design:paramtypes", [Object])
|
|
431
568
|
], CompanyEntity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.entity.js","sourceRoot":"","sources":["../../../src/profile/company/company.entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"company.entity.js","sourceRoot":"","sources":["../../../src/profile/company/company.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,4CAAwG;AACxG,4CAA+E;AAC/E,4CAAwJ;AACxJ,iCAAiC;AACjC,qCAA0E;AAE1E,wEAAoE;AACpE,8DAA0D;AAC1D,iEAAyD;AACzD,qDAAwD;AACxD,gEAAiE;AACjE,gEAAmE;AACnE,8EAAqF;AACrF,wEAAkF;AAClF,sEAAyE;AACzE,yEAA4E;AAC5E,sEAAyE;AACzE,oEAA8E;AAC9E,sEAAyE;AACzE,yDAA4D;AAC5D,6DAAgE;AAEhE;;;;;;;GAOG;AAEI,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,2BAAwB;IA2T1D;;;OAGG;IACH,YAAY,KAA8B;QACzC,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,OAAO;QACN,OAAO,IAAI,gBAAO,CAAC;YAClB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS;QACR,OAAO,IAAI,gBAAO,CAAC;YAClB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,kBAAkB;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,OAAO,GAAG,gBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,CAAC,WAAW,GAAG,oBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,GAAG,YAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,qBAAY,CAAC,UAAU,CAAC,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,gBAAO,CAAC,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,gBAAO,CAAC,UAAU,CAAC,CAAC;QAC5D,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,mBAAU,CAAC,UAAU,CAAC,CAAC;QACnE,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,UAAU;QACT,OAAO,IAAI,iBAAQ,CAAC;YACnB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,OAAO,EAAE,gBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YACzC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SACjB,CAAC,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACb,OAAO,MAAM,2CAAuB,CAAC,SAAS,CAAC;YAC9C,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,IAAI,EAAE,aAAI,CAAC,KAAK;SAChB,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,SAAkB,IAAI;QAC1C,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,sBAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,SAAkB,IAAI;QACvC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,CAAC,aAAI,CAAC,KAAK,EAAE,aAAI,CAAC,OAAO,CAAC,CAAC;QAChD,OAAO,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB;QACrB,OAAO,MAAM,0CAA0B,CAAC,SAAS,CAAC;YACjD,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe;QACpB,OAAO,MAAM,+BAAiB,CAAC,GAAG,CAAC,aAAa,EAAE;YACjD,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,MAAM,EAAE,mBAAU,CAAC,IAAI;SACvB,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,cAAc;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC5C,OAAO,GAAG,QAAQ,KAAK,OAAO,MAAM,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,sBAAsB;QAC3B,OAAO,MAAM,0CAA0B,CAAC,SAAS,CAAC;YACjD,SAAS,EAAE,IAAI,CAAC,EAAE;YAClB,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,uBAAuB;QAC5B,8DAA8D;QAC9D,OAAO,MAAM,0CAA0B,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE;gBACN,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,KAAK;aAChB;YACD,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC5B,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QAC1B,OAAO,MAAM,iDAA4B,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,sBAAsB;aACvF,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,eAAe;aAC1C,KAAK,CAAC,2BAA2B,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;aAC1D,QAAQ,CAAC,2BAA2B,EAAE,EAAE,YAAY,EAAE,mBAAU,CAAC,MAAM,EAAE,CAAC;aAC1E,QAAQ,CAAC,2BAA2B,EAAE,EAAE,YAAY,EAAE,mBAAU,CAAC,MAAM,EAAE,CAAC;aAC1E,SAAS,EAAE,CAAC;IACf,CAAC;IAED,WAAW,CAAC,MAAc;QACzB,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC1C,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACzC,CAAC,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClD,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9C,OAAO,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,MAAM,uBAAuB,GAAG,eAAe,CAAC,MAAM,CACrD,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAC/E,CAAC;QACF,OAAO,uBAAuB,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,MAAc;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM;YAAE,OAAO,KAAK,CAAC;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7B,MAAM,CAAC,YAAY,CAClB,IAAI,eAAM,CAAC;YACV,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;YACvC,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;SACnC,CAAC,CACF,CACD,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,MAAc;QAChC,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,MAAM,WAAW,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAEhE,IAAI,UAAU,GAAG,WAAW,CAAC;QAC7B,IAAI,OAAO,GAAa,WAAW,CAAC;QAEpC,OAAO,UAAU,GAAG,SAAS,EAAE,CAAC;YAC/B,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAC/C,CAAC,CAAC,EAAE,CAAC,mBAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,OAAO,CAClE,CAAC;YACF,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBACzC,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACzD,SAAS;YACV,CAAC;YAED,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAC3E,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;gBACpC,MAAM,YAAY,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;oBACzE,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,GAAG,EAAE,UAAU,CAAC,GAAG;iBACnB,CAAC,CAAC;gBACH,MAAM,UAAU,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;oBACrE,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,GAAG,EAAE,UAAU,CAAC,GAAG;iBACnB,CAAC,CAAC;gBAEH,IAAI,OAAO,GAAG,YAAY,EAAE,CAAC;oBAC5B,MAAM,UAAU,GAAG,IAAI,eAAM,CAAC;wBAC7B,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE;wBAC7B,OAAO,EAAE,YAAY,CAAC,QAAQ,EAAE;qBAChC,CAAC,CAAC;oBACH,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACzB,CAAC;gBAED,OAAO,GAAG,UAAU,CAAC;YACtB,CAAC;YAED,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,IAAI,eAAM,CAAC;gBAC7B,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE;gBAC7B,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE;aAC7B,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa;QAClB,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QACxF,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,qBAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QACxF,UAAU,CAAC,IAAI,CAAC,MAAM,IAAA,4BAAU,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,qBAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QACtF,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,KAAa,EAAE,QAAc;QACtC,MAAM,sBAAS,CAAC,IAAI,CAAC;YACpB,IAAI,EAAE,gBAAO,CAAC,OAAO;YACrB,OAAO,EAAE,oBAAW,CAAC,OAAO;YAC5B,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,OAAO,EAAE,sBAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;SACnE,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAe;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QACjC,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAG,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,cAAc;QACb,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC9B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,mBAAU,CAAC,UAAU,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,KAAU,EAAE,KAAsB;QAEnE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAI,IAAI,CAAC,CAAC;QAEhE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,mBAAU,CAAC;YACpC,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK;SACZ,CAAC,CAAC,CAAC;QAEJ,MAAM,eAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAY;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAI,IAAI,CAAC,CAAC;QAChE,MAAM,eAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;CACD,CAAA;AAroBY,sCAAa;AAMzB;IADC,IAAA,gBAAM,GAAE;;gDACS;AAQlB;IAFC,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,mBAAS,EAAC,MAAM,CAAC;;0CACN;AAYZ;IANC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,sBAAa;QACnB,OAAO,EAAE,sBAAa,CAAC,OAAO;QAC9B,QAAQ,EAAE,KAAK;KACf,CAAC;;6CACoB;AAStB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;2CACW;AASb;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;kDACkB;AAYpB;IANC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAQ;QACd,OAAO,EAAE,iBAAQ,CAAC,EAAE;QACpB,QAAQ,EAAE,IAAI;KACd,CAAC;;+CACiB;AAUnB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,eAAe;KACxB,CAAC;;+CACe;AASjB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;8CACc;AAShB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;oDACoB;AAUtB;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;8BACO,gBAAO;8CAAC;AAUjB;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;8BACW,oBAAW;kDAAC;AASzB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;4CACY;AAWd;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;gDACmB;AASrB;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;4CACY;AASd;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;4CACY;AASd;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;+CACe;AAUjB;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;4CACY;AAWd;IANC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,CAAC;KACZ,CAAC;;6CACa;AAef;IAPC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,CAAC;KACV,CAAC;;6CACa;AAUf;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;8BACG,YAAG;0CAAC;AAWT;IAJC,IAAA,gBAAM,EAAC;QACP,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC;KACV,CAAC;;uDACuB;AAUzB;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;mDAC2B;AAU7B;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;+CACkB;AAUpB;IALC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACb,CAAC;;kDACwB;AAM1B;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;+CACzB;AAMjB;IADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8BAChC,IAAI;+CAAC;AAMf;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,8BAAa,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;;8CAC7B;AAMhC;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,qCAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;;+CACxB;AAG1C;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,iCAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;;6CACtB;AAMtC;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,+BAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;;4CACrB;AAMpC;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,0CAA0B,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;;qDAChB;AAMtD;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,2CAAuB,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;;kDAC3B;AAMhD;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,qCAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;;+CACxB;AAM1C;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,8CAA4B,EAAE,eAAe,CAAC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;;wDAC/B;AAM3D;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,uCAAqB,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;;gDACzB;AAM5C;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,qCAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;;+CACxB;AAM1C;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,uCAAoB,EAAE,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;;sDACrB;wBAzTrC,aAAa;IADzB,IAAA,gBAAM,EAAC,WAAW,CAAC;;GACP,aAAa,CAqoBzB"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { CompanyEntity } from '../company.entity';
|
|
4
|
-
import { CompanyProductEntity } from '../product/product.entity';
|
|
1
|
+
import { Activity, AddonUsage, Address, Course } from '@driveup/common';
|
|
2
|
+
import { ColorContext, StatusType } from '@driveup/shared';
|
|
5
3
|
import { DrivingCategoryEntity } from '../../../system/driving/category.entity';
|
|
6
|
-
import {
|
|
7
|
-
import { CompanyInstructorEntity } from '../instructor/instructor.entity';
|
|
8
|
-
import { StudentTrainingEntity } from '../../student/program/training/training.entity';
|
|
4
|
+
import { TrackableEntity } from '../../../utils/trackable';
|
|
9
5
|
import { StudentTrainingRequestEntity } from '../../student/program/training/request.entity';
|
|
6
|
+
import { StudentTrainingEntity } from '../../student/program/training/training.entity';
|
|
7
|
+
import { CompanyEntity } from '../company.entity';
|
|
10
8
|
import { CompanyBillItemEntity } from '../finances/billing/item.entity';
|
|
11
|
-
import {
|
|
9
|
+
import { CompanyInstructorEntity } from '../instructor/instructor.entity';
|
|
10
|
+
import { CompanyProductEntity } from '../product/product.entity';
|
|
11
|
+
import { CompanyCourseLessonEntity } from './lesson.entity';
|
|
12
12
|
/**
|
|
13
13
|
* Represents a company-managed training course.
|
|
14
14
|
* Courses define training programs that can be offered to students,
|
|
@@ -145,6 +145,23 @@ export declare class CompanyCourseEntity extends TrackableEntity<Course> {
|
|
|
145
145
|
* @param props - Partial properties to initialize the entity with
|
|
146
146
|
*/
|
|
147
147
|
constructor(props?: Partial<CompanyCourseEntity>);
|
|
148
|
+
/**
|
|
149
|
+
* Checks if the course is editable (Draft or Active)
|
|
150
|
+
* * Driving course can be Active or Inactive
|
|
151
|
+
* * All other courses can be Draft, Published, or Ended
|
|
152
|
+
* @returns boolean
|
|
153
|
+
*/
|
|
154
|
+
isEditable: () => boolean;
|
|
155
|
+
/**
|
|
156
|
+
* Checks if the course is published
|
|
157
|
+
* @returns boolean
|
|
158
|
+
*/
|
|
159
|
+
isPublished: () => boolean;
|
|
160
|
+
/**
|
|
161
|
+
* Checks if the course has ended
|
|
162
|
+
* @returns boolean
|
|
163
|
+
*/
|
|
164
|
+
isEnded: () => boolean;
|
|
148
165
|
/**
|
|
149
166
|
* Converts the entity to a Course model instance
|
|
150
167
|
* @returns Promise resolving to Course model with category, instructor, and all course details
|
|
@@ -167,6 +184,16 @@ export declare class CompanyCourseEntity extends TrackableEntity<Course> {
|
|
|
167
184
|
*/
|
|
168
185
|
getActivities(): Promise<Activity[]>;
|
|
169
186
|
getCompany(): Promise<CompanyEntity>;
|
|
187
|
+
/**
|
|
188
|
+
* @returns Number of parts
|
|
189
|
+
*/
|
|
190
|
+
getTotalParts(): Promise<number>;
|
|
191
|
+
/**
|
|
192
|
+
* Gets the color context from this course's driving category
|
|
193
|
+
* Will return null if the course isn't related to any driving categories
|
|
194
|
+
* @returns ColorContext - The color context of the course's driving category
|
|
195
|
+
*/
|
|
196
|
+
getColorContext(): Promise<ColorContext>;
|
|
170
197
|
getProduct(): Promise<CompanyProductEntity>;
|
|
171
198
|
getInstructor(): Promise<CompanyInstructorEntity>;
|
|
172
199
|
}
|
|
@@ -11,19 +11,19 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var CompanyCourseEntity_1;
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
exports.CompanyCourseEntity = void 0;
|
|
14
|
-
const typeorm_1 = require("typeorm");
|
|
15
|
-
const shared_1 = require("@driveup/shared");
|
|
16
14
|
const common_1 = require("@driveup/common");
|
|
17
|
-
const
|
|
18
|
-
const
|
|
15
|
+
const shared_1 = require("@driveup/shared");
|
|
16
|
+
const typeorm_1 = require("typeorm");
|
|
19
17
|
const category_entity_1 = require("../../../system/driving/category.entity");
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const training_entity_1 = require("../../student/program/training/training.entity");
|
|
18
|
+
const activity_helper_1 = require("../../../utils/activity.helper");
|
|
19
|
+
const trackable_1 = require("../../../utils/trackable");
|
|
23
20
|
const request_entity_1 = require("../../student/program/training/request.entity");
|
|
21
|
+
const training_entity_1 = require("../../student/program/training/training.entity");
|
|
22
|
+
const company_entity_1 = require("../company.entity");
|
|
24
23
|
const item_entity_1 = require("../finances/billing/item.entity");
|
|
25
|
-
const
|
|
26
|
-
const
|
|
24
|
+
const instructor_entity_1 = require("../instructor/instructor.entity");
|
|
25
|
+
const product_entity_1 = require("../product/product.entity");
|
|
26
|
+
const lesson_entity_1 = require("./lesson.entity");
|
|
27
27
|
/**
|
|
28
28
|
* Represents a company-managed training course.
|
|
29
29
|
* Courses define training programs that can be offered to students,
|
|
@@ -42,6 +42,23 @@ let CompanyCourseEntity = CompanyCourseEntity_1 = class CompanyCourseEntity exte
|
|
|
42
42
|
*/
|
|
43
43
|
constructor(props) {
|
|
44
44
|
super();
|
|
45
|
+
/**
|
|
46
|
+
* Checks if the course is editable (Draft or Active)
|
|
47
|
+
* * Driving course can be Active or Inactive
|
|
48
|
+
* * All other courses can be Draft, Published, or Ended
|
|
49
|
+
* @returns boolean
|
|
50
|
+
*/
|
|
51
|
+
this.isEditable = () => this.status === shared_1.StatusType.Draft || this.status === shared_1.StatusType.Active;
|
|
52
|
+
/**
|
|
53
|
+
* Checks if the course is published
|
|
54
|
+
* @returns boolean
|
|
55
|
+
*/
|
|
56
|
+
this.isPublished = () => this.status === shared_1.StatusType.Published;
|
|
57
|
+
/**
|
|
58
|
+
* Checks if the course has ended
|
|
59
|
+
* @returns boolean
|
|
60
|
+
*/
|
|
61
|
+
this.isEnded = () => this.status === shared_1.StatusType.Ended;
|
|
45
62
|
Object.assign(this, props);
|
|
46
63
|
}
|
|
47
64
|
/**
|
|
@@ -112,6 +129,28 @@ let CompanyCourseEntity = CompanyCourseEntity_1 = class CompanyCourseEntity exte
|
|
|
112
129
|
.where('course.id = :courseId', { courseId: this.id })
|
|
113
130
|
.getOne();
|
|
114
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* @returns Number of parts
|
|
134
|
+
*/
|
|
135
|
+
async getTotalParts() {
|
|
136
|
+
const product = await this.getProduct();
|
|
137
|
+
if (!product || product.catalogType !== shared_1.CatalogType.Preparation) {
|
|
138
|
+
return 0;
|
|
139
|
+
}
|
|
140
|
+
return await lesson_entity_1.CompanyCourseLessonEntity.countBy({
|
|
141
|
+
courseId: this.id,
|
|
142
|
+
canceledOn: (0, typeorm_1.IsNull)()
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Gets the color context from this course's driving category
|
|
147
|
+
* Will return null if the course isn't related to any driving categories
|
|
148
|
+
* @returns ColorContext - The color context of the course's driving category
|
|
149
|
+
*/
|
|
150
|
+
async getColorContext() {
|
|
151
|
+
const category = await this.category;
|
|
152
|
+
return category?.color ?? null;
|
|
153
|
+
}
|
|
115
154
|
async getProduct() {
|
|
116
155
|
return await this.product;
|
|
117
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"course.entity.js","sourceRoot":"","sources":["../../../../src/profile/company/course/course.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"course.entity.js","sourceRoot":"","sources":["../../../../src/profile/company/course/course.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Address,
|
|
1
|
+
import { Activity, Address, Appointment, Lesson, Period, Picture } from '@driveup/common';
|
|
2
|
+
import { TrackableEntity } from '../../../utils/trackable';
|
|
3
|
+
import { StudentTrainingLessonEntity } from '../../student/program/training/lesson.entity';
|
|
4
|
+
import { StudentEntity } from '../../student/student.entity';
|
|
2
5
|
import { CompanyEntity } from '../company.entity';
|
|
6
|
+
import { CompanyInstructorEntity } from '../instructor/instructor.entity';
|
|
3
7
|
import { CompanyProductEntity } from '../product/product.entity';
|
|
4
|
-
import { StudentEntity } from '../../student/student.entity';
|
|
5
8
|
import { CompanyCourseEntity } from './course.entity';
|
|
9
|
+
import { CompanyCourseScheduleEntity } from './schedule.entity';
|
|
6
10
|
import { CompanyCourseTopicEntity } from './topic.entity';
|
|
7
|
-
import { CompanyCourseScheduleEntity } from './appointment.entity';
|
|
8
|
-
import { CompanyInstructorEntity } from '../instructor/instructor.entity';
|
|
9
|
-
import { StudentTrainingLessonEntity } from '../../student/program/training/lesson.entity';
|
|
10
|
-
import { TrackableEntity } from '../../../utils/trackable';
|
|
11
11
|
/**
|
|
12
12
|
* Company Course Lesson Entity
|
|
13
13
|
*
|
|
@@ -129,5 +129,19 @@ export declare class CompanyCourseLessonEntity extends TrackableEntity<Lesson> {
|
|
|
129
129
|
getProduct(): Promise<CompanyProductEntity>;
|
|
130
130
|
getCourse(): Promise<CompanyCourseEntity>;
|
|
131
131
|
getInstructor(): Promise<CompanyInstructorEntity>;
|
|
132
|
+
/**
|
|
133
|
+
* For flexible courses only. data is sorted based on appointment date ascending
|
|
134
|
+
*/
|
|
135
|
+
getAppointments(period: Period, filteredInstructorIds?: number[]): Promise<Appointment[]>;
|
|
132
136
|
getActiveStudentsByAppointments(): Promise<StudentEntity[]>;
|
|
137
|
+
/**
|
|
138
|
+
* For both fixed and flexible courses
|
|
139
|
+
* @param appointment - mandatory for flexible courses. for fixed courses, don't send this argument
|
|
140
|
+
*/
|
|
141
|
+
getTakenSeats(appointment?: Appointment): Promise<number>;
|
|
142
|
+
/**
|
|
143
|
+
* For both fixed and flexible courses
|
|
144
|
+
* * @param appointment - mandatory for flexible courses. for fixed courses, don't send this argument
|
|
145
|
+
*/
|
|
146
|
+
getRemainingSeats(appointment?: Appointment): Promise<number>;
|
|
133
147
|
}
|
|
@@ -11,20 +11,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var CompanyCourseLessonEntity_1;
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
exports.CompanyCourseLessonEntity = void 0;
|
|
14
|
-
const typeorm_1 = require("typeorm");
|
|
15
|
-
const luxon_1 = require("luxon");
|
|
16
|
-
const shared_1 = require("@driveup/shared");
|
|
17
14
|
const common_1 = require("@driveup/common");
|
|
15
|
+
const shared_1 = require("@driveup/shared");
|
|
16
|
+
const luxon_1 = require("luxon");
|
|
17
|
+
const typeorm_1 = require("typeorm");
|
|
18
|
+
const activity_helper_1 = require("../../../utils/activity.helper");
|
|
19
|
+
const trackable_1 = require("../../../utils/trackable");
|
|
20
|
+
const appointment_entity_1 = require("../../student/program/training/appointment.entity");
|
|
21
|
+
const lesson_entity_1 = require("../../student/program/training/lesson.entity");
|
|
22
|
+
const student_entity_1 = require("../../student/student.entity");
|
|
18
23
|
const company_entity_1 = require("../company.entity");
|
|
24
|
+
const instructor_entity_1 = require("../instructor/instructor.entity");
|
|
19
25
|
const product_entity_1 = require("../product/product.entity");
|
|
20
|
-
const student_entity_1 = require("../../student/student.entity");
|
|
21
26
|
const course_entity_1 = require("./course.entity");
|
|
27
|
+
const schedule_entity_1 = require("./schedule.entity");
|
|
22
28
|
const topic_entity_1 = require("./topic.entity");
|
|
23
|
-
const appointment_entity_1 = require("./appointment.entity");
|
|
24
|
-
const instructor_entity_1 = require("../instructor/instructor.entity");
|
|
25
|
-
const lesson_entity_1 = require("../../student/program/training/lesson.entity");
|
|
26
|
-
const trackable_1 = require("../../../utils/trackable");
|
|
27
|
-
const activity_helper_1 = require("../../../utils/activity.helper");
|
|
28
29
|
/**
|
|
29
30
|
* Company Course Lesson Entity
|
|
30
31
|
*
|
|
@@ -112,6 +113,23 @@ let CompanyCourseLessonEntity = CompanyCourseLessonEntity_1 = class CompanyCours
|
|
|
112
113
|
async getInstructor() {
|
|
113
114
|
return await this.instructor;
|
|
114
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* For flexible courses only. data is sorted based on appointment date ascending
|
|
118
|
+
*/
|
|
119
|
+
async getAppointments(period, filteredInstructorIds) {
|
|
120
|
+
const course = await this.course;
|
|
121
|
+
if (course.isFixed)
|
|
122
|
+
return [];
|
|
123
|
+
period.startDate = new Date(period.startDate);
|
|
124
|
+
period.endDate = new Date(period.endDate);
|
|
125
|
+
const schedule = await this.schedule;
|
|
126
|
+
const appointments = [];
|
|
127
|
+
for (const def of schedule) {
|
|
128
|
+
appointments.push(...(await def.getAppointments(period, filteredInstructorIds)));
|
|
129
|
+
}
|
|
130
|
+
appointments.sort((a, b) => (a.startDate > b.startDate ? 1 : -1));
|
|
131
|
+
return appointments;
|
|
132
|
+
}
|
|
115
133
|
async getActiveStudentsByAppointments() {
|
|
116
134
|
return student_entity_1.StudentEntity.createQueryBuilder('student')
|
|
117
135
|
.innerJoin('student.courseAppointments', 'appointment', 'appointment.studentId = student.id')
|
|
@@ -120,6 +138,55 @@ let CompanyCourseLessonEntity = CompanyCourseLessonEntity_1 = class CompanyCours
|
|
|
120
138
|
.andWhere('appointment.startDate > : today', { today: luxon_1.DateTime.now().toJSDate() })
|
|
121
139
|
.getMany();
|
|
122
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* For both fixed and flexible courses
|
|
143
|
+
* @param appointment - mandatory for flexible courses. for fixed courses, don't send this argument
|
|
144
|
+
*/
|
|
145
|
+
async getTakenSeats(appointment) {
|
|
146
|
+
const course = await this.course;
|
|
147
|
+
if (!course.isFixed && !appointment)
|
|
148
|
+
return;
|
|
149
|
+
if (appointment) {
|
|
150
|
+
return await appointment_entity_1.StudentTrainingAppointmentEntity.createQueryBuilder('ta') // training appointment
|
|
151
|
+
.innerJoin('ta.training', 't') // training
|
|
152
|
+
.innerJoin('ta.lesson', 'tal') // training appointment lesson
|
|
153
|
+
.innerJoin('t.course', 'cc') // company course
|
|
154
|
+
.innerJoin('cc.product', 'cp') // company product
|
|
155
|
+
.where('cc.id = :courseId', { courseId: this.courseId })
|
|
156
|
+
.andWhere('cp.catalogType = :preparationCatalog', { preparationCatalog: shared_1.CatalogType.Preparation })
|
|
157
|
+
.andWhere('tal.lessonId = :lessonId', { lessonId: this.id })
|
|
158
|
+
.andWhere('ta.scheduleId = :scheduleId', { scheduleId: appointment.id })
|
|
159
|
+
.andWhere('t.status != :terminatedStatus', { terminatedStatus: shared_1.StatusType.Terminated })
|
|
160
|
+
.andWhere('ta.startDate = :startDate', { startDate: appointment.startDate })
|
|
161
|
+
.getCount();
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
return await appointment_entity_1.StudentTrainingAppointmentEntity.createQueryBuilder('ta') // training appointment
|
|
165
|
+
.innerJoin('ta.training', 't') // training
|
|
166
|
+
.innerJoin('ta.lesson', 'tal') // training appointment lesson
|
|
167
|
+
.innerJoin('t.course', 'cc') // company course
|
|
168
|
+
.innerJoin('cc.product', 'cp') // company product
|
|
169
|
+
.where('cc.id = :courseId', { courseId: this.courseId })
|
|
170
|
+
.andWhere('cp.catalogType = :preparationCatalog', { preparationCatalog: shared_1.CatalogType.Preparation })
|
|
171
|
+
.andWhere('tal.lessonId = :lessonId', { lessonId: this.id })
|
|
172
|
+
.andWhere('t.status != :terminatedStatus', { terminatedStatus: shared_1.StatusType.Terminated })
|
|
173
|
+
.andWhere('ta.startDate = :startDate', { startDate: this.startDate })
|
|
174
|
+
.getCount();
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* For both fixed and flexible courses
|
|
179
|
+
* * @param appointment - mandatory for flexible courses. for fixed courses, don't send this argument
|
|
180
|
+
*/
|
|
181
|
+
async getRemainingSeats(appointment) {
|
|
182
|
+
const course = await this.course;
|
|
183
|
+
if (!course.isFixed && !appointment)
|
|
184
|
+
return;
|
|
185
|
+
if (!course.maxStudents)
|
|
186
|
+
return;
|
|
187
|
+
const takenSeats = await this.getTakenSeats(appointment);
|
|
188
|
+
return +course.maxStudents - (takenSeats || 0);
|
|
189
|
+
}
|
|
123
190
|
};
|
|
124
191
|
exports.CompanyCourseLessonEntity = CompanyCourseLessonEntity;
|
|
125
192
|
__decorate([
|
|
@@ -224,7 +291,7 @@ __decorate([
|
|
|
224
291
|
__metadata("design:type", Promise)
|
|
225
292
|
], CompanyCourseLessonEntity.prototype, "topics", void 0);
|
|
226
293
|
__decorate([
|
|
227
|
-
(0, typeorm_1.OneToMany)(() =>
|
|
294
|
+
(0, typeorm_1.OneToMany)(() => schedule_entity_1.CompanyCourseScheduleEntity, student => student.lesson),
|
|
228
295
|
__metadata("design:type", Promise)
|
|
229
296
|
], CompanyCourseLessonEntity.prototype, "schedule", void 0);
|
|
230
297
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lesson.entity.js","sourceRoot":"","sources":["../../../../src/profile/company/course/lesson.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"lesson.entity.js","sourceRoot":"","sources":["../../../../src/profile/company/course/lesson.entity.ts"],"names":[],"mappings":"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"}
|