@platform-modules/foreign-ministry 1.0.9 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/models/FinancialGradeModel.js +1 -1
- package/dist/models/HajjLeaveDatesModel.d.ts +3 -2
- package/dist/models/HajjLeaveDatesModel.js +9 -3
- package/dist/models/LeaveApprovalDetailsModel.d.ts +8 -0
- package/dist/models/LeaveApprovalDetailsModel.js +45 -0
- package/dist/models/LeaveApprovalMatrixModel.d.ts +7 -0
- package/dist/models/LeaveApprovalMatrixModel.js +40 -0
- package/dist/models/LeaveRequestModel.d.ts +25 -24
- package/dist/models/LeaveRequestModel.js +53 -25
- package/dist/models/LeaveTypesModel.d.ts +5 -5
- package/dist/models/LeaveTypesModel.js +10 -10
- package/dist/models/MounringLeaveRelationModel.d.ts +2 -1
- package/dist/models/MounringLeaveRelationModel.js +7 -2
- package/dist/models/StudyLeaveDegreesModel.d.ts +2 -1
- package/dist/models/StudyLeaveDegreesModel.js +7 -2
- package/dist/models/UnpaidLeaveCatgoriesModel.d.ts +2 -1
- package/dist/models/UnpaidLeaveCatgoriesModel.js +7 -2
- package/package.json +1 -1
- package/src/models/FinancialGradeModel.ts +1 -1
- package/src/models/HajjLeaveDatesModel.ts +9 -3
- package/src/models/LeaveApprovalDetailsModel.ts +25 -0
- package/src/models/LeaveApprovalMatrixModel.ts +21 -0
- package/src/models/LeaveRequestModel.ts +54 -25
- package/src/models/LeaveTypesModel.ts +7 -7
- package/src/models/MounringLeaveRelationModel.ts +7 -2
- package/src/models/StudyLeaveDegreesModel.ts +7 -2
- package/src/models/UnpaidLeaveCatgoriesModel.ts +7 -2
|
@@ -35,6 +35,6 @@ __decorate([
|
|
|
35
35
|
__metadata("design:type", Number)
|
|
36
36
|
], FinancialGrade.prototype, "annual_leave", void 0);
|
|
37
37
|
exports.FinancialGrade = FinancialGrade = __decorate([
|
|
38
|
-
(0, typeorm_1.Entity)({ name: '
|
|
38
|
+
(0, typeorm_1.Entity)({ name: 'financial_grade' }),
|
|
39
39
|
__metadata("design:paramtypes", [String, String, Number])
|
|
40
40
|
], FinancialGrade);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BaseModel } from './BaseModel';
|
|
2
2
|
export declare class HajjLeaveDates extends BaseModel {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
hajj_leave_start_date: Date;
|
|
4
|
+
hajj_leave_end_date: Date;
|
|
5
|
+
constructor(hajj_leave_start_date: Date, hajj_leave_end_date: Date);
|
|
5
6
|
}
|
|
@@ -14,16 +14,22 @@ const typeorm_1 = require("typeorm");
|
|
|
14
14
|
const BaseModel_1 = require("./BaseModel");
|
|
15
15
|
//This model is used to store the Hajj Leave Dates declaration on the Admin Side
|
|
16
16
|
let HajjLeaveDates = class HajjLeaveDates extends BaseModel_1.BaseModel {
|
|
17
|
+
constructor(hajj_leave_start_date, hajj_leave_end_date) {
|
|
18
|
+
super();
|
|
19
|
+
this.hajj_leave_start_date = hajj_leave_start_date;
|
|
20
|
+
this.hajj_leave_end_date = hajj_leave_end_date;
|
|
21
|
+
}
|
|
17
22
|
};
|
|
18
23
|
exports.HajjLeaveDates = HajjLeaveDates;
|
|
19
24
|
__decorate([
|
|
20
25
|
(0, typeorm_1.Column)({ type: 'date', nullable: false }),
|
|
21
26
|
__metadata("design:type", Date)
|
|
22
|
-
], HajjLeaveDates.prototype, "
|
|
27
|
+
], HajjLeaveDates.prototype, "hajj_leave_start_date", void 0);
|
|
23
28
|
__decorate([
|
|
24
29
|
(0, typeorm_1.Column)({ type: 'date', nullable: false }),
|
|
25
30
|
__metadata("design:type", Date)
|
|
26
|
-
], HajjLeaveDates.prototype, "
|
|
31
|
+
], HajjLeaveDates.prototype, "hajj_leave_end_date", void 0);
|
|
27
32
|
exports.HajjLeaveDates = HajjLeaveDates = __decorate([
|
|
28
|
-
(0, typeorm_1.Entity)({ name: '
|
|
33
|
+
(0, typeorm_1.Entity)({ name: 'hajj_leave_dates' }),
|
|
34
|
+
__metadata("design:paramtypes", [Date, Date])
|
|
29
35
|
], HajjLeaveDates);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseModel } from './BaseModel';
|
|
2
|
+
export declare class LeaveApprovalDetails extends BaseModel {
|
|
3
|
+
leave_request_id: number;
|
|
4
|
+
level: number;
|
|
5
|
+
approver_id: number;
|
|
6
|
+
approval_status: number;
|
|
7
|
+
constructor(leave_request_id: number, approver_id: number, approval_status: number, level: number);
|
|
8
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
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.LeaveApprovalDetails = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const BaseModel_1 = require("./BaseModel");
|
|
15
|
+
//This model is used to store the store the leave apporval details of the user for the leave request
|
|
16
|
+
let LeaveApprovalDetails = class LeaveApprovalDetails extends BaseModel_1.BaseModel {
|
|
17
|
+
constructor(leave_request_id, approver_id, approval_status, level) {
|
|
18
|
+
super();
|
|
19
|
+
this.leave_request_id = leave_request_id;
|
|
20
|
+
this.approver_id = approver_id;
|
|
21
|
+
this.approval_status = approval_status;
|
|
22
|
+
this.level = level;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
exports.LeaveApprovalDetails = LeaveApprovalDetails;
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
28
|
+
__metadata("design:type", Number)
|
|
29
|
+
], LeaveApprovalDetails.prototype, "leave_request_id", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
32
|
+
__metadata("design:type", Number)
|
|
33
|
+
], LeaveApprovalDetails.prototype, "level", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
36
|
+
__metadata("design:type", Number)
|
|
37
|
+
], LeaveApprovalDetails.prototype, "approver_id", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
40
|
+
__metadata("design:type", Number)
|
|
41
|
+
], LeaveApprovalDetails.prototype, "approval_status", void 0);
|
|
42
|
+
exports.LeaveApprovalDetails = LeaveApprovalDetails = __decorate([
|
|
43
|
+
(0, typeorm_1.Entity)({ name: 'leave_approval_details' }),
|
|
44
|
+
__metadata("design:paramtypes", [Number, Number, Number, Number])
|
|
45
|
+
], LeaveApprovalDetails);
|
|
@@ -0,0 +1,40 @@
|
|
|
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.LeaveApprovalMatrix = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const BaseModel_1 = require("./BaseModel");
|
|
15
|
+
//This model is used to store the store the leave apporval matrix based on leave type along with the levels
|
|
16
|
+
let LeaveApprovalMatrix = class LeaveApprovalMatrix extends BaseModel_1.BaseModel {
|
|
17
|
+
constructor(leave_type, level, approval_matrix) {
|
|
18
|
+
super();
|
|
19
|
+
this.leave_type = leave_type;
|
|
20
|
+
this.level = level;
|
|
21
|
+
this.approval_matrix = approval_matrix;
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.LeaveApprovalMatrix = LeaveApprovalMatrix;
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
27
|
+
__metadata("design:type", Number)
|
|
28
|
+
], LeaveApprovalMatrix.prototype, "leave_type", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
31
|
+
__metadata("design:type", Number)
|
|
32
|
+
], LeaveApprovalMatrix.prototype, "level", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, typeorm_1.Column)({ type: 'int', nullable: false }),
|
|
35
|
+
__metadata("design:type", Number)
|
|
36
|
+
], LeaveApprovalMatrix.prototype, "approval_matrix", void 0);
|
|
37
|
+
exports.LeaveApprovalMatrix = LeaveApprovalMatrix = __decorate([
|
|
38
|
+
(0, typeorm_1.Entity)({ name: 'leave_approval_matrix' }),
|
|
39
|
+
__metadata("design:paramtypes", [Number, Number, Number])
|
|
40
|
+
], LeaveApprovalMatrix);
|
|
@@ -9,28 +9,29 @@ export declare enum status {
|
|
|
9
9
|
REJECTED = "Rejected"
|
|
10
10
|
}
|
|
11
11
|
export declare class LeaveRequests extends BaseModel {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
12
|
+
user_id: string;
|
|
13
|
+
leave_for: Leave_For;
|
|
14
|
+
leave_type: number;
|
|
15
|
+
department: string;
|
|
16
|
+
status: status;
|
|
17
|
+
leave_start_date: Date;
|
|
18
|
+
leave_end_date: Date;
|
|
19
|
+
leave_duration: number;
|
|
20
|
+
remaining_leave_balance: number;
|
|
21
|
+
contact_number_during_leave: string;
|
|
22
|
+
address_during_leave: string;
|
|
23
|
+
notes: string;
|
|
24
|
+
delegated_to: string;
|
|
25
|
+
number_of_escort_instances_per_year: number;
|
|
26
|
+
accompanying_the_patient: boolean;
|
|
27
|
+
treatment_place: string;
|
|
28
|
+
emergency_leaves_available: number;
|
|
29
|
+
unpaid_leave_type: string;
|
|
30
|
+
country_or_state_being_visited: string;
|
|
31
|
+
leave_balance_summary: string;
|
|
32
|
+
representation: string;
|
|
33
|
+
activity_title: string;
|
|
34
|
+
relationship: string;
|
|
35
|
+
mounring_leave_relation: number;
|
|
36
|
+
constructor(user_id: string, leave_for: Leave_For, leave_type: number, department: string, status: status, leave_start_date: Date, leave_end_date: Date, leave_duration: number, remaining_leave_balance: number, contact_number_during_leave: string, address_during_leave: string, notes: string, delegated_to: string, number_of_escort_instances_per_year: number, accompanying_the_patient: boolean, treatment_place: string, emergency_leaves_available: number, unpaid_leave_type: string, country_or_state_being_visited: string, leave_balance_summary: string, representation: string, activity_title: string, relationship: string, mounring_leave_relation: number);
|
|
36
37
|
}
|
|
@@ -25,104 +25,132 @@ var status;
|
|
|
25
25
|
status["REJECTED"] = "Rejected";
|
|
26
26
|
})(status || (exports.status = status = {}));
|
|
27
27
|
let LeaveRequests = class LeaveRequests extends BaseModel_1.BaseModel {
|
|
28
|
+
constructor(user_id, leave_for, leave_type, department, status, leave_start_date, leave_end_date, leave_duration, remaining_leave_balance, contact_number_during_leave, address_during_leave, notes, delegated_to, number_of_escort_instances_per_year, accompanying_the_patient, treatment_place, emergency_leaves_available, unpaid_leave_type, country_or_state_being_visited, leave_balance_summary, representation, activity_title, relationship, mounring_leave_relation) {
|
|
29
|
+
super();
|
|
30
|
+
this.user_id = user_id;
|
|
31
|
+
this.leave_for = leave_for;
|
|
32
|
+
this.leave_type = leave_type;
|
|
33
|
+
this.department = department;
|
|
34
|
+
this.status = status;
|
|
35
|
+
this.leave_start_date = leave_start_date;
|
|
36
|
+
this.leave_end_date = leave_end_date;
|
|
37
|
+
this.leave_duration = leave_duration;
|
|
38
|
+
this.remaining_leave_balance = remaining_leave_balance;
|
|
39
|
+
this.contact_number_during_leave = contact_number_during_leave;
|
|
40
|
+
this.address_during_leave = address_during_leave;
|
|
41
|
+
this.notes = notes;
|
|
42
|
+
this.delegated_to = delegated_to;
|
|
43
|
+
this.number_of_escort_instances_per_year = number_of_escort_instances_per_year;
|
|
44
|
+
this.accompanying_the_patient = accompanying_the_patient;
|
|
45
|
+
this.treatment_place = treatment_place;
|
|
46
|
+
this.emergency_leaves_available = emergency_leaves_available;
|
|
47
|
+
this.unpaid_leave_type = unpaid_leave_type;
|
|
48
|
+
this.country_or_state_being_visited = country_or_state_being_visited;
|
|
49
|
+
this.leave_balance_summary = leave_balance_summary;
|
|
50
|
+
this.representation = representation;
|
|
51
|
+
this.activity_title = activity_title;
|
|
52
|
+
this.relationship = relationship;
|
|
53
|
+
this.mounring_leave_relation = mounring_leave_relation;
|
|
54
|
+
}
|
|
28
55
|
};
|
|
29
56
|
exports.LeaveRequests = LeaveRequests;
|
|
30
57
|
__decorate([
|
|
31
58
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
32
59
|
__metadata("design:type", String)
|
|
33
|
-
], LeaveRequests.prototype, "
|
|
60
|
+
], LeaveRequests.prototype, "user_id", void 0);
|
|
34
61
|
__decorate([
|
|
35
62
|
(0, typeorm_1.Column)({ type: "enum", enum: Leave_For, default: Leave_For.SELF, nullable: true }),
|
|
36
63
|
__metadata("design:type", String)
|
|
37
|
-
], LeaveRequests.prototype, "
|
|
64
|
+
], LeaveRequests.prototype, "leave_for", void 0);
|
|
38
65
|
__decorate([
|
|
39
66
|
(0, typeorm_1.Column)({ type: 'int', nullable: true }),
|
|
40
67
|
__metadata("design:type", Number)
|
|
41
|
-
], LeaveRequests.prototype, "
|
|
68
|
+
], LeaveRequests.prototype, "leave_type", void 0);
|
|
42
69
|
__decorate([
|
|
43
70
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
44
71
|
__metadata("design:type", String)
|
|
45
|
-
], LeaveRequests.prototype, "
|
|
72
|
+
], LeaveRequests.prototype, "department", void 0);
|
|
46
73
|
__decorate([
|
|
47
74
|
(0, typeorm_1.Column)({ type: "enum", enum: status, default: status.PENDING, nullable: true }),
|
|
48
75
|
__metadata("design:type", String)
|
|
49
|
-
], LeaveRequests.prototype, "
|
|
76
|
+
], LeaveRequests.prototype, "status", void 0);
|
|
50
77
|
__decorate([
|
|
51
78
|
(0, typeorm_1.Column)({ type: 'date', nullable: true }),
|
|
52
79
|
__metadata("design:type", Date)
|
|
53
|
-
], LeaveRequests.prototype, "
|
|
80
|
+
], LeaveRequests.prototype, "leave_start_date", void 0);
|
|
54
81
|
__decorate([
|
|
55
82
|
(0, typeorm_1.Column)({ type: 'date', nullable: true }),
|
|
56
83
|
__metadata("design:type", Date)
|
|
57
|
-
], LeaveRequests.prototype, "
|
|
84
|
+
], LeaveRequests.prototype, "leave_end_date", void 0);
|
|
58
85
|
__decorate([
|
|
59
86
|
(0, typeorm_1.Column)({ type: 'float', nullable: true }),
|
|
60
87
|
__metadata("design:type", Number)
|
|
61
|
-
], LeaveRequests.prototype, "
|
|
88
|
+
], LeaveRequests.prototype, "leave_duration", void 0);
|
|
62
89
|
__decorate([
|
|
63
90
|
(0, typeorm_1.Column)({ type: 'float', nullable: true }),
|
|
64
91
|
__metadata("design:type", Number)
|
|
65
|
-
], LeaveRequests.prototype, "
|
|
92
|
+
], LeaveRequests.prototype, "remaining_leave_balance", void 0);
|
|
66
93
|
__decorate([
|
|
67
94
|
(0, typeorm_1.Column)({ type: 'varchar', length: 20, nullable: true }),
|
|
68
95
|
__metadata("design:type", String)
|
|
69
|
-
], LeaveRequests.prototype, "
|
|
96
|
+
], LeaveRequests.prototype, "contact_number_during_leave", void 0);
|
|
70
97
|
__decorate([
|
|
71
98
|
(0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
|
|
72
99
|
__metadata("design:type", String)
|
|
73
|
-
], LeaveRequests.prototype, "
|
|
100
|
+
], LeaveRequests.prototype, "address_during_leave", void 0);
|
|
74
101
|
__decorate([
|
|
75
102
|
(0, typeorm_1.Column)({ type: 'text', nullable: true }),
|
|
76
103
|
__metadata("design:type", String)
|
|
77
|
-
], LeaveRequests.prototype, "
|
|
104
|
+
], LeaveRequests.prototype, "notes", void 0);
|
|
78
105
|
__decorate([
|
|
79
106
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
80
107
|
__metadata("design:type", String)
|
|
81
|
-
], LeaveRequests.prototype, "
|
|
108
|
+
], LeaveRequests.prototype, "delegated_to", void 0);
|
|
82
109
|
__decorate([
|
|
83
110
|
(0, typeorm_1.Column)({ type: 'int', nullable: true }),
|
|
84
111
|
__metadata("design:type", Number)
|
|
85
|
-
], LeaveRequests.prototype, "
|
|
112
|
+
], LeaveRequests.prototype, "number_of_escort_instances_per_year", void 0);
|
|
86
113
|
__decorate([
|
|
87
114
|
(0, typeorm_1.Column)({ type: 'boolean', nullable: true }),
|
|
88
115
|
__metadata("design:type", Boolean)
|
|
89
|
-
], LeaveRequests.prototype, "
|
|
116
|
+
], LeaveRequests.prototype, "accompanying_the_patient", void 0);
|
|
90
117
|
__decorate([
|
|
91
118
|
(0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
|
|
92
119
|
__metadata("design:type", String)
|
|
93
|
-
], LeaveRequests.prototype, "
|
|
120
|
+
], LeaveRequests.prototype, "treatment_place", void 0);
|
|
94
121
|
__decorate([
|
|
95
122
|
(0, typeorm_1.Column)({ type: 'int', nullable: true }),
|
|
96
123
|
__metadata("design:type", Number)
|
|
97
|
-
], LeaveRequests.prototype, "
|
|
124
|
+
], LeaveRequests.prototype, "emergency_leaves_available", void 0);
|
|
98
125
|
__decorate([
|
|
99
126
|
(0, typeorm_1.Column)({ type: 'varchar', length: 50, nullable: true }),
|
|
100
127
|
__metadata("design:type", String)
|
|
101
|
-
], LeaveRequests.prototype, "
|
|
128
|
+
], LeaveRequests.prototype, "unpaid_leave_type", void 0);
|
|
102
129
|
__decorate([
|
|
103
130
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
104
131
|
__metadata("design:type", String)
|
|
105
|
-
], LeaveRequests.prototype, "
|
|
132
|
+
], LeaveRequests.prototype, "country_or_state_being_visited", void 0);
|
|
106
133
|
__decorate([
|
|
107
134
|
(0, typeorm_1.Column)({ type: 'text', nullable: true }),
|
|
108
135
|
__metadata("design:type", String)
|
|
109
|
-
], LeaveRequests.prototype, "
|
|
136
|
+
], LeaveRequests.prototype, "leave_balance_summary", void 0);
|
|
110
137
|
__decorate([
|
|
111
138
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
112
139
|
__metadata("design:type", String)
|
|
113
|
-
], LeaveRequests.prototype, "
|
|
140
|
+
], LeaveRequests.prototype, "representation", void 0);
|
|
114
141
|
__decorate([
|
|
115
142
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
|
|
116
143
|
__metadata("design:type", String)
|
|
117
|
-
], LeaveRequests.prototype, "
|
|
144
|
+
], LeaveRequests.prototype, "activity_title", void 0);
|
|
118
145
|
__decorate([
|
|
119
146
|
(0, typeorm_1.Column)({ type: 'varchar', length: 50, nullable: true }),
|
|
120
147
|
__metadata("design:type", String)
|
|
121
|
-
], LeaveRequests.prototype, "
|
|
148
|
+
], LeaveRequests.prototype, "relationship", void 0);
|
|
122
149
|
__decorate([
|
|
123
150
|
(0, typeorm_1.Column)({ type: 'int', nullable: true }),
|
|
124
151
|
__metadata("design:type", Number)
|
|
125
|
-
], LeaveRequests.prototype, "
|
|
152
|
+
], LeaveRequests.prototype, "mounring_leave_relation", void 0);
|
|
126
153
|
exports.LeaveRequests = LeaveRequests = __decorate([
|
|
127
|
-
(0, typeorm_1.Entity)({ name: '
|
|
154
|
+
(0, typeorm_1.Entity)({ name: 'leave_requests' }),
|
|
155
|
+
__metadata("design:paramtypes", [String, String, Number, String, String, Date, Date, Number, Number, String, String, String, String, Number, Boolean, String, Number, String, String, String, String, String, String, Number])
|
|
128
156
|
], LeaveRequests);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BaseModel } from './BaseModel';
|
|
2
2
|
export declare class LeaveTypes extends BaseModel {
|
|
3
3
|
name: string;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
constructor(name: string,
|
|
4
|
+
name_in_arabic: string;
|
|
5
|
+
omani_only?: boolean;
|
|
6
|
+
non_omani_muslim?: boolean;
|
|
7
|
+
non_omani_non_muslim?: boolean;
|
|
8
|
+
constructor(name: string, name_in_arabic: string);
|
|
9
9
|
}
|
|
@@ -13,13 +13,13 @@ exports.LeaveTypes = void 0;
|
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
14
|
const BaseModel_1 = require("./BaseModel");
|
|
15
15
|
let LeaveTypes = class LeaveTypes extends BaseModel_1.BaseModel {
|
|
16
|
-
constructor(name,
|
|
16
|
+
constructor(name, name_in_arabic) {
|
|
17
17
|
super();
|
|
18
|
-
this.
|
|
19
|
-
this.
|
|
20
|
-
this.
|
|
18
|
+
this.omani_only = false;
|
|
19
|
+
this.non_omani_muslim = false;
|
|
20
|
+
this.non_omani_non_muslim = false;
|
|
21
21
|
this.name = name;
|
|
22
|
-
this.
|
|
22
|
+
this.name_in_arabic = name_in_arabic;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
25
|
exports.LeaveTypes = LeaveTypes;
|
|
@@ -30,20 +30,20 @@ __decorate([
|
|
|
30
30
|
__decorate([
|
|
31
31
|
(0, typeorm_1.Column)({ nullable: true }),
|
|
32
32
|
__metadata("design:type", String)
|
|
33
|
-
], LeaveTypes.prototype, "
|
|
33
|
+
], LeaveTypes.prototype, "name_in_arabic", void 0);
|
|
34
34
|
__decorate([
|
|
35
35
|
(0, typeorm_1.Column)({ nullable: true, default: false }),
|
|
36
36
|
__metadata("design:type", Boolean)
|
|
37
|
-
], LeaveTypes.prototype, "
|
|
37
|
+
], LeaveTypes.prototype, "omani_only", void 0);
|
|
38
38
|
__decorate([
|
|
39
39
|
(0, typeorm_1.Column)({ nullable: true, default: false }),
|
|
40
40
|
__metadata("design:type", Boolean)
|
|
41
|
-
], LeaveTypes.prototype, "
|
|
41
|
+
], LeaveTypes.prototype, "non_omani_muslim", void 0);
|
|
42
42
|
__decorate([
|
|
43
43
|
(0, typeorm_1.Column)({ nullable: true, default: false }),
|
|
44
44
|
__metadata("design:type", Boolean)
|
|
45
|
-
], LeaveTypes.prototype, "
|
|
45
|
+
], LeaveTypes.prototype, "non_omani_non_muslim", void 0);
|
|
46
46
|
exports.LeaveTypes = LeaveTypes = __decorate([
|
|
47
|
-
(0, typeorm_1.Entity)({ name: '
|
|
47
|
+
(0, typeorm_1.Entity)({ name: 'leave_types' }),
|
|
48
48
|
__metadata("design:paramtypes", [String, String])
|
|
49
49
|
], LeaveTypes);
|
|
@@ -13,12 +13,17 @@ exports.MounringLeaveRelations = void 0;
|
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
14
|
const BaseModel_1 = require("./BaseModel");
|
|
15
15
|
let MounringLeaveRelations = class MounringLeaveRelations extends BaseModel_1.BaseModel {
|
|
16
|
+
constructor(mounring_leave_relation) {
|
|
17
|
+
super();
|
|
18
|
+
this.mounring_leave_relation = mounring_leave_relation;
|
|
19
|
+
}
|
|
16
20
|
};
|
|
17
21
|
exports.MounringLeaveRelations = MounringLeaveRelations;
|
|
18
22
|
__decorate([
|
|
19
23
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
|
|
20
24
|
__metadata("design:type", String)
|
|
21
|
-
], MounringLeaveRelations.prototype, "
|
|
25
|
+
], MounringLeaveRelations.prototype, "mounring_leave_relation", void 0);
|
|
22
26
|
exports.MounringLeaveRelations = MounringLeaveRelations = __decorate([
|
|
23
|
-
(0, typeorm_1.Entity)({ name: '
|
|
27
|
+
(0, typeorm_1.Entity)({ name: 'mounring_leave_relations' }),
|
|
28
|
+
__metadata("design:paramtypes", [String])
|
|
24
29
|
], MounringLeaveRelations);
|
|
@@ -14,12 +14,17 @@ const typeorm_1 = require("typeorm");
|
|
|
14
14
|
const BaseModel_1 = require("./BaseModel");
|
|
15
15
|
//This model is used to store the Study Leave Degrees Master Data
|
|
16
16
|
let StudyLeaveDegrees = class StudyLeaveDegrees extends BaseModel_1.BaseModel {
|
|
17
|
+
constructor(study_leave_degree) {
|
|
18
|
+
super();
|
|
19
|
+
this.study_leave_degree = study_leave_degree;
|
|
20
|
+
}
|
|
17
21
|
};
|
|
18
22
|
exports.StudyLeaveDegrees = StudyLeaveDegrees;
|
|
19
23
|
__decorate([
|
|
20
24
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
|
|
21
25
|
__metadata("design:type", String)
|
|
22
|
-
], StudyLeaveDegrees.prototype, "
|
|
26
|
+
], StudyLeaveDegrees.prototype, "study_leave_degree", void 0);
|
|
23
27
|
exports.StudyLeaveDegrees = StudyLeaveDegrees = __decorate([
|
|
24
|
-
(0, typeorm_1.Entity)({ name: '
|
|
28
|
+
(0, typeorm_1.Entity)({ name: 'study_leave_degrees' }),
|
|
29
|
+
__metadata("design:paramtypes", [String])
|
|
25
30
|
], StudyLeaveDegrees);
|
|
@@ -14,12 +14,17 @@ const typeorm_1 = require("typeorm");
|
|
|
14
14
|
const BaseModel_1 = require("./BaseModel");
|
|
15
15
|
//This model is used to store the Unpaid Leave Categories Master Data
|
|
16
16
|
let UnpaidLeaveCategories = class UnpaidLeaveCategories extends BaseModel_1.BaseModel {
|
|
17
|
+
constructor(unpaid_leave_category) {
|
|
18
|
+
super();
|
|
19
|
+
this.unpaid_leave_category = unpaid_leave_category;
|
|
20
|
+
}
|
|
17
21
|
};
|
|
18
22
|
exports.UnpaidLeaveCategories = UnpaidLeaveCategories;
|
|
19
23
|
__decorate([
|
|
20
24
|
(0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
|
|
21
25
|
__metadata("design:type", String)
|
|
22
|
-
], UnpaidLeaveCategories.prototype, "
|
|
26
|
+
], UnpaidLeaveCategories.prototype, "unpaid_leave_category", void 0);
|
|
23
27
|
exports.UnpaidLeaveCategories = UnpaidLeaveCategories = __decorate([
|
|
24
|
-
(0, typeorm_1.Entity)({ name: '
|
|
28
|
+
(0, typeorm_1.Entity)({ name: 'unpaid_leave_categories' }),
|
|
29
|
+
__metadata("design:paramtypes", [String])
|
|
25
30
|
], UnpaidLeaveCategories);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
//This model is used to store the Financial Grade declaration on the Admin Side
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'financial_grade' })
|
|
5
5
|
export class FinancialGrade extends BaseModel {
|
|
6
6
|
|
|
7
7
|
@Column({ nullable: false })
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
//This model is used to store the Hajj Leave Dates declaration on the Admin Side
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'hajj_leave_dates' })
|
|
5
5
|
export class HajjLeaveDates extends BaseModel {
|
|
6
6
|
@Column({ type: 'date', nullable: false })
|
|
7
|
-
|
|
7
|
+
hajj_leave_start_date: Date;
|
|
8
8
|
|
|
9
9
|
@Column({ type: 'date', nullable: false })
|
|
10
|
-
|
|
10
|
+
hajj_leave_end_date: Date;
|
|
11
|
+
|
|
12
|
+
constructor(hajj_leave_start_date: Date, hajj_leave_end_date: Date) {
|
|
13
|
+
super();
|
|
14
|
+
this.hajj_leave_start_date = hajj_leave_start_date;
|
|
15
|
+
this.hajj_leave_end_date = hajj_leave_end_date;
|
|
16
|
+
}
|
|
11
17
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Column, Entity } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
//This model is used to store the store the leave apporval details of the user for the leave request
|
|
4
|
+
@Entity({ name: 'leave_approval_details' })
|
|
5
|
+
export class LeaveApprovalDetails extends BaseModel {
|
|
6
|
+
@Column({ type: 'int', nullable: false })
|
|
7
|
+
leave_request_id: number;
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'int', nullable: false })
|
|
10
|
+
level: number;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'int', nullable: false })
|
|
13
|
+
approver_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({ type: 'int', nullable: false })
|
|
16
|
+
approval_status: number;
|
|
17
|
+
|
|
18
|
+
constructor(leave_request_id: number, approver_id: number, approval_status: number, level: number) {
|
|
19
|
+
super();
|
|
20
|
+
this.leave_request_id = leave_request_id;
|
|
21
|
+
this.approver_id = approver_id;
|
|
22
|
+
this.approval_status = approval_status;
|
|
23
|
+
this.level = level;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Column, Entity } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
//This model is used to store the store the leave apporval matrix based on leave type along with the levels
|
|
4
|
+
@Entity({ name: 'leave_approval_matrix' })
|
|
5
|
+
export class LeaveApprovalMatrix extends BaseModel {
|
|
6
|
+
@Column({ type: 'int', nullable: false })
|
|
7
|
+
leave_type: number;
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'int', nullable: false })
|
|
10
|
+
level: number;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'int', nullable: false })
|
|
13
|
+
approval_matrix: number;
|
|
14
|
+
|
|
15
|
+
constructor(leave_type: number, level: number, approval_matrix: number) {
|
|
16
|
+
super();
|
|
17
|
+
this.leave_type = leave_type;
|
|
18
|
+
this.level = level;
|
|
19
|
+
this.approval_matrix = approval_matrix;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -11,77 +11,106 @@ export enum status {
|
|
|
11
11
|
APPROVED = "Approved",
|
|
12
12
|
REJECTED = "Rejected"
|
|
13
13
|
}
|
|
14
|
-
@Entity({ name: '
|
|
14
|
+
@Entity({ name: 'leave_requests' })
|
|
15
15
|
export class LeaveRequests extends BaseModel {
|
|
16
16
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
17
|
-
|
|
17
|
+
user_id: string;
|
|
18
18
|
|
|
19
19
|
@Column({ type: "enum", enum: Leave_For, default: Leave_For.SELF, nullable: true })
|
|
20
|
-
|
|
20
|
+
leave_for: Leave_For;
|
|
21
21
|
|
|
22
22
|
@Column({ type: 'int', nullable: true })
|
|
23
|
-
|
|
23
|
+
leave_type: number;
|
|
24
24
|
|
|
25
25
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
26
|
-
|
|
26
|
+
department: string;
|
|
27
27
|
|
|
28
28
|
@Column({ type: "enum", enum: status, default: status.PENDING, nullable: true })
|
|
29
|
-
|
|
29
|
+
status: status;
|
|
30
30
|
|
|
31
31
|
@Column({ type: 'date', nullable: true })
|
|
32
|
-
|
|
32
|
+
leave_start_date: Date;
|
|
33
33
|
|
|
34
34
|
@Column({ type: 'date', nullable: true })
|
|
35
|
-
|
|
35
|
+
leave_end_date: Date;
|
|
36
36
|
|
|
37
37
|
@Column({ type: 'float', nullable: true })
|
|
38
|
-
|
|
38
|
+
leave_duration: number;
|
|
39
39
|
|
|
40
40
|
@Column({ type: 'float', nullable: true })
|
|
41
|
-
|
|
41
|
+
remaining_leave_balance: number;
|
|
42
42
|
|
|
43
43
|
@Column({ type: 'varchar', length: 20, nullable: true })
|
|
44
|
-
|
|
44
|
+
contact_number_during_leave: string;
|
|
45
45
|
|
|
46
46
|
@Column({ type: 'varchar', length: 255, nullable: true })
|
|
47
|
-
|
|
47
|
+
address_during_leave: string;
|
|
48
48
|
|
|
49
49
|
@Column({ type: 'text', nullable: true })
|
|
50
|
-
|
|
50
|
+
notes: string;
|
|
51
51
|
|
|
52
52
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
53
|
-
|
|
53
|
+
delegated_to: string;
|
|
54
54
|
|
|
55
55
|
@Column({ type: 'int', nullable: true })
|
|
56
|
-
|
|
56
|
+
number_of_escort_instances_per_year: number;
|
|
57
57
|
|
|
58
58
|
@Column({ type: 'boolean', nullable: true })
|
|
59
|
-
|
|
59
|
+
accompanying_the_patient: boolean;
|
|
60
60
|
|
|
61
61
|
@Column({ type: 'varchar', length: 255, nullable: true })
|
|
62
|
-
|
|
62
|
+
treatment_place: string;
|
|
63
63
|
|
|
64
64
|
@Column({ type: 'int', nullable: true })
|
|
65
|
-
|
|
65
|
+
emergency_leaves_available: number;
|
|
66
66
|
|
|
67
67
|
@Column({ type: 'varchar', length: 50, nullable: true })
|
|
68
|
-
|
|
68
|
+
unpaid_leave_type: string;
|
|
69
69
|
|
|
70
70
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
71
|
-
|
|
71
|
+
country_or_state_being_visited: string;
|
|
72
72
|
|
|
73
73
|
@Column({ type: 'text', nullable: true })
|
|
74
|
-
|
|
74
|
+
leave_balance_summary: string;
|
|
75
75
|
|
|
76
76
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
77
|
-
|
|
77
|
+
representation: string;
|
|
78
78
|
|
|
79
79
|
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
80
|
-
|
|
80
|
+
activity_title: string;
|
|
81
81
|
|
|
82
82
|
@Column({ type: 'varchar', length: 50, nullable: true })
|
|
83
|
-
|
|
83
|
+
relationship: string;
|
|
84
84
|
|
|
85
85
|
@Column({ type: 'int', nullable: true })
|
|
86
|
-
|
|
86
|
+
mounring_leave_relation: number;
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
constructor(user_id: string, leave_for: Leave_For, leave_type: number, department: string, status: status, leave_start_date: Date, leave_end_date: Date, leave_duration: number, remaining_leave_balance: number, contact_number_during_leave: string, address_during_leave: string, notes: string, delegated_to: string, number_of_escort_instances_per_year: number, accompanying_the_patient: boolean, treatment_place: string, emergency_leaves_available: number, unpaid_leave_type: string, country_or_state_being_visited: string, leave_balance_summary: string, representation: string, activity_title: string, relationship: string, mounring_leave_relation: number) {
|
|
90
|
+
super();
|
|
91
|
+
this.user_id = user_id;
|
|
92
|
+
this.leave_for = leave_for;
|
|
93
|
+
this.leave_type = leave_type;
|
|
94
|
+
this.department = department;
|
|
95
|
+
this.status = status;
|
|
96
|
+
this.leave_start_date = leave_start_date;
|
|
97
|
+
this.leave_end_date = leave_end_date;
|
|
98
|
+
this.leave_duration = leave_duration;
|
|
99
|
+
this.remaining_leave_balance = remaining_leave_balance;
|
|
100
|
+
this.contact_number_during_leave = contact_number_during_leave;
|
|
101
|
+
this.address_during_leave = address_during_leave;
|
|
102
|
+
this.notes = notes;
|
|
103
|
+
this.delegated_to = delegated_to;
|
|
104
|
+
this.number_of_escort_instances_per_year = number_of_escort_instances_per_year;
|
|
105
|
+
this.accompanying_the_patient = accompanying_the_patient;
|
|
106
|
+
this.treatment_place = treatment_place;
|
|
107
|
+
this.emergency_leaves_available = emergency_leaves_available;
|
|
108
|
+
this.unpaid_leave_type = unpaid_leave_type;
|
|
109
|
+
this.country_or_state_being_visited = country_or_state_being_visited;
|
|
110
|
+
this.leave_balance_summary = leave_balance_summary;
|
|
111
|
+
this.representation = representation;
|
|
112
|
+
this.activity_title = activity_title;
|
|
113
|
+
this.relationship = relationship;
|
|
114
|
+
this.mounring_leave_relation = mounring_leave_relation;
|
|
115
|
+
}
|
|
87
116
|
}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'leave_types' })
|
|
5
5
|
export class LeaveTypes extends BaseModel {
|
|
6
6
|
|
|
7
7
|
@Column({ nullable: true })
|
|
8
8
|
name: string;
|
|
9
9
|
|
|
10
10
|
@Column({ nullable: true })
|
|
11
|
-
|
|
11
|
+
name_in_arabic: string;
|
|
12
12
|
|
|
13
13
|
@Column({ nullable: true, default: false })
|
|
14
|
-
|
|
14
|
+
omani_only?: boolean = false;
|
|
15
15
|
|
|
16
16
|
@Column({ nullable: true, default: false })
|
|
17
|
-
|
|
17
|
+
non_omani_muslim?: boolean = false;
|
|
18
18
|
|
|
19
19
|
@Column({ nullable: true, default: false })
|
|
20
|
-
|
|
20
|
+
non_omani_non_muslim?: boolean = false;
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
constructor(
|
|
24
24
|
name: string,
|
|
25
|
-
|
|
25
|
+
name_in_arabic: string,
|
|
26
26
|
) {
|
|
27
27
|
super();
|
|
28
28
|
this.name = name
|
|
29
|
-
this.
|
|
29
|
+
this.name_in_arabic = name_in_arabic
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'mounring_leave_relations' })
|
|
5
5
|
|
|
6
6
|
export class MounringLeaveRelations extends BaseModel {
|
|
7
7
|
@Column({ type: 'varchar', length: 100, nullable: false })
|
|
8
|
-
|
|
8
|
+
mounring_leave_relation: string;
|
|
9
|
+
|
|
10
|
+
constructor(mounring_leave_relation: string) {
|
|
11
|
+
super();
|
|
12
|
+
this.mounring_leave_relation = mounring_leave_relation;
|
|
13
|
+
}
|
|
9
14
|
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
//This model is used to store the Study Leave Degrees Master Data
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'study_leave_degrees' })
|
|
5
5
|
export class StudyLeaveDegrees extends BaseModel {
|
|
6
6
|
@Column({ type: 'varchar', length: 100, nullable: false })
|
|
7
|
-
|
|
7
|
+
study_leave_degree: string;
|
|
8
|
+
|
|
9
|
+
constructor(study_leave_degree: string) {
|
|
10
|
+
super();
|
|
11
|
+
this.study_leave_degree = study_leave_degree;
|
|
12
|
+
}
|
|
8
13
|
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { Column, Entity } from "typeorm";
|
|
2
2
|
import { BaseModel } from './BaseModel';
|
|
3
3
|
//This model is used to store the Unpaid Leave Categories Master Data
|
|
4
|
-
@Entity({ name: '
|
|
4
|
+
@Entity({ name: 'unpaid_leave_categories' })
|
|
5
5
|
export class UnpaidLeaveCategories extends BaseModel {
|
|
6
6
|
@Column({ type: 'varchar', length: 100, nullable: false })
|
|
7
|
-
|
|
7
|
+
unpaid_leave_category: string;
|
|
8
|
+
|
|
9
|
+
constructor(unpaid_leave_category: string) {
|
|
10
|
+
super();
|
|
11
|
+
this.unpaid_leave_category = unpaid_leave_category;
|
|
12
|
+
}
|
|
8
13
|
}
|