law-common 10.18.1-beta.2 → 10.18.1-beta.20

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.
Files changed (53) hide show
  1. package/dist/src/api/index.d.ts +1 -0
  2. package/dist/src/api/index.js +1 -0
  3. package/dist/src/api/interface/billing.update.dto.interface.d.ts +5 -3
  4. package/dist/src/api/interface/project-user-mapping.entity.api.d.ts +3 -0
  5. package/dist/src/api/interface/project-user-mapping.entity.api.js +2 -0
  6. package/dist/src/entities/enums/relation-type.enum.d.ts +4 -0
  7. package/dist/src/entities/enums/relation-type.enum.js +8 -0
  8. package/dist/src/entities/index.d.ts +17 -0
  9. package/dist/src/entities/index.js +17 -0
  10. package/dist/src/entities/interface/entity.utils.interface.d.ts +23 -0
  11. package/dist/src/entities/interface/relation-config.interface.d.ts +16 -0
  12. package/dist/src/entities/interface/relation-config.interface.js +2 -0
  13. package/dist/src/entities/model/bank.entity.model.d.ts +4 -1
  14. package/dist/src/entities/model/bank.entity.model.js +10 -4
  15. package/dist/src/entities/model/base.entity.model.d.ts +8 -0
  16. package/dist/src/entities/model/base.entity.model.js +69 -0
  17. package/dist/src/entities/model/billing-reimbursement-expense.entity.model.d.ts +25 -0
  18. package/dist/src/entities/model/billing-reimbursement-expense.entity.model.js +35 -0
  19. package/dist/src/entities/model/billing-timesheet.entity.model.d.ts +26 -0
  20. package/dist/src/entities/model/billing-timesheet.entity.model.js +36 -0
  21. package/dist/src/entities/model/billing.entity.model.d.ts +85 -0
  22. package/dist/src/entities/model/billing.entity.model.js +246 -0
  23. package/dist/src/entities/model/client-affiliate.entity.model.d.ts +19 -0
  24. package/dist/src/entities/model/client-affiliate.entity.model.js +30 -0
  25. package/dist/src/entities/model/client.entity.model.d.ts +35 -0
  26. package/dist/src/entities/model/client.entity.model.js +50 -0
  27. package/dist/src/entities/model/configuration.model.d.ts +8 -9
  28. package/dist/src/entities/model/configuration.model.js +11 -5
  29. package/dist/src/entities/model/designation.entity.model.d.ts +8 -5
  30. package/dist/src/entities/model/designation.entity.model.js +28 -9
  31. package/dist/src/entities/model/entity.model.interface.d.ts +8 -0
  32. package/dist/src/entities/model/entity.model.interface.js +84 -0
  33. package/dist/src/entities/model/holiday.entity.model.d.ts +1 -19
  34. package/dist/src/entities/model/holiday.entity.model.js +42 -29
  35. package/dist/src/entities/model/leave.entity.model.d.ts +5 -5
  36. package/dist/src/entities/model/leave.entity.model.js +4 -1
  37. package/dist/src/entities/model/project-user-mapping.entity.model.d.ts +26 -0
  38. package/dist/src/entities/model/project-user-mapping.entity.model.js +49 -0
  39. package/dist/src/entities/model/project.entity.model.d.ts +40 -0
  40. package/dist/src/entities/model/project.entity.model.js +105 -0
  41. package/dist/src/entities/model/reimbursement-expense.entity.model.d.ts +27 -0
  42. package/dist/src/entities/model/reimbursement-expense.entity.model.js +43 -0
  43. package/dist/src/entities/model/reimbursement.entity.model.d.ts +32 -0
  44. package/dist/src/entities/model/reimbursement.entity.model.js +34 -0
  45. package/dist/src/entities/model/task.entity.model.d.ts +17 -0
  46. package/dist/src/entities/model/task.entity.model.js +29 -0
  47. package/dist/src/entities/model/timesheet.entity.model.d.ts +21 -0
  48. package/dist/src/entities/model/timesheet.entity.model.js +31 -0
  49. package/dist/src/entities/model/user.entity.model.d.ts +46 -0
  50. package/dist/src/entities/model/user.entity.model.js +36 -0
  51. package/dist/src/model/entities/timesheet.model.d.ts +2 -0
  52. package/dist/src/model/entities/timesheet.model.js +5 -0
  53. package/package.json +1 -1
@@ -1,31 +1,44 @@
1
1
  "use strict";
2
+ // import { DateCodeModel } from "../../utils";
3
+ // import { IAuditColumnEntity } from "../interface/audit-column.entity.interface";
4
+ // import { IHolidayEntity } from "../interface/holiday.entity.interface";
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HolidayEntityModel = exports.BaseEntityModel = void 0;
4
- const utils_1 = require("../../utils");
5
- class BaseEntityModel {
6
- constructor(data) {
7
- this.createdOn = data.createdOn;
8
- this.updatedOn = data.updatedOn;
9
- this.createdBy = data.createdBy;
10
- this.updatedBy = data.updatedBy;
11
- }
12
- }
13
- exports.BaseEntityModel = BaseEntityModel;
14
- class HolidayEntityModel extends BaseEntityModel {
15
- constructor(data) {
16
- super(data);
17
- this.id = data.id;
18
- this.holidayListId = data.holidayListId;
19
- this.dateCode = data.dateCode;
20
- }
21
- getDateCodeModel() {
22
- return new utils_1.DateCodeModel(this.dateCode);
23
- }
24
- static fromEntity(data) {
25
- return new HolidayEntityModel(data);
26
- }
27
- static getDateCodeModelFromDate(models) {
28
- return models.map((model) => model.getDateCodeModel());
29
- }
30
- }
31
- exports.HolidayEntityModel = HolidayEntityModel;
6
+ exports.toBeDeleted = void 0;
7
+ // export class BaseEntityModelV1<T extends IAuditColumnEntity> {
8
+ // createdOn: Date;
9
+ // updatedOn: Date;
10
+ // createdBy: number;
11
+ // updatedBy: number;
12
+ // constructor(data: T) {
13
+ // this.createdOn = data.createdOn;
14
+ // this.updatedOn = data.updatedOn;
15
+ // this.createdBy = data.createdBy;
16
+ // this.updatedBy = data.updatedBy;
17
+ // }
18
+ // }
19
+ // export class HolidayEntityModel
20
+ // extends BaseEntityModelV1<IHolidayEntity>
21
+ // implements IHolidayEntity
22
+ // {
23
+ // id: number;
24
+ // holidayListId: number;
25
+ // dateCode: string;
26
+ // private constructor(data: IHolidayEntity) {
27
+ // super(data);
28
+ // this.id = data.id;
29
+ // this.holidayListId = data.holidayListId;
30
+ // this.dateCode = data.dateCode;
31
+ // }
32
+ // getDateCodeModel(): DateCodeModel {
33
+ // return new DateCodeModel(this.dateCode);
34
+ // }
35
+ // static fromEntity(data: IHolidayEntity): HolidayEntityModel {
36
+ // return new HolidayEntityModel(data);
37
+ // }
38
+ // static getDateCodeModelFromDate(
39
+ // models: HolidayEntityModel[]
40
+ // ): DateCodeModel[] {
41
+ // return models.map((model) => model.getDateCodeModel());
42
+ // }
43
+ // }
44
+ exports.toBeDeleted = "holiday";
@@ -1,9 +1,9 @@
1
+ import { ILeaveApiEntity } from "../../api";
1
2
  import { DateCodeModel, Weekday } from "../../utils";
2
3
  import { DurationTypeEnum } from "../enums/duration-type.enum";
3
4
  import { LeaveTypeEnum } from "../enums/leave-type.enum";
4
5
  import { LeaveStatusEnum } from "../enums/leave.status.enum";
5
- import { ILeaveEntity } from "../interface/leave.entity.interface";
6
- export declare class LeaveEntityModel implements ILeaveEntity {
6
+ export declare class LeaveEntityModel implements ILeaveApiEntity {
7
7
  id: number;
8
8
  employeeId: number;
9
9
  fromDate: string;
@@ -13,12 +13,12 @@ export declare class LeaveEntityModel implements ILeaveEntity {
13
13
  status: LeaveStatusEnum;
14
14
  remark?: string;
15
15
  type: LeaveTypeEnum;
16
- createdOn: Date;
17
- updatedOn: Date;
16
+ createdOn: string;
17
+ updatedOn: string;
18
18
  createdBy: number;
19
19
  updatedBy: number;
20
20
  private constructor();
21
- static fromEntity(data: ILeaveEntity): LeaveEntityModel;
21
+ static fromEntity(data: ILeaveApiEntity): LeaveEntityModel;
22
22
  isMoreThanOneDayLeave(): boolean;
23
23
  getLeaveDuration(excludeWeekdays?: Weekday[], excludeDates?: DateCodeModel[]): number;
24
24
  static getLeaveDuration(leaves: LeaveEntityModel[], excludeWeekdays?: Weekday[], excludeDates?: DateCodeModel[], leaveStatusEnum?: LeaveStatusEnum[]): number;
@@ -6,6 +6,8 @@ const duration_type_enum_1 = require("../enums/duration-type.enum");
6
6
  const leave_status_enum_1 = require("../enums/leave.status.enum");
7
7
  class LeaveEntityModel {
8
8
  constructor(data) {
9
+ this.createdOn = "";
10
+ this.updatedOn = "";
9
11
  this.id = data.id;
10
12
  this.employeeId = data.employeeId;
11
13
  this.fromDate = data.fromDate;
@@ -41,7 +43,8 @@ class LeaveEntityModel {
41
43
  if (this.durationType === duration_type_enum_1.DurationTypeEnum.SECOND_FIRST) {
42
44
  return count - 1;
43
45
  }
44
- if (this.durationType === duration_type_enum_1.DurationTypeEnum.FULL_FIRST || this.durationType === duration_type_enum_1.DurationTypeEnum.SECOND_FULL) {
46
+ if (this.durationType === duration_type_enum_1.DurationTypeEnum.FULL_FIRST ||
47
+ this.durationType === duration_type_enum_1.DurationTypeEnum.SECOND_FULL) {
45
48
  return count - 0.5;
46
49
  }
47
50
  return count;
@@ -0,0 +1,26 @@
1
+ import { IProjectUserMappingApiEntity } from "../../api";
2
+ import { ProjectUserStatusEnum } from "../enums/project_user_status.enum";
3
+ import { EntityEnum, EnumEntityType, IEntityApiResponse } from "../interface/entity.utils.interface";
4
+ import { IProjectUserMappingEntity } from "../interface/project.entity.interface";
5
+ import { RelationConfigs } from "../interface/relation-config.interface";
6
+ import { BaseEntityModel } from "./base.entity.model";
7
+ import { ProjectEntityModel } from "./project.entity.model";
8
+ import { UserEntityModel } from "./user.entity.model";
9
+ export declare class ProjectUserMappingEntityModel extends BaseEntityModel<EntityEnum.PROJECT_USER_MAPPING> implements IProjectUserMappingApiEntity {
10
+ id: number;
11
+ projectId: number;
12
+ userId: number;
13
+ status: ProjectUserStatusEnum;
14
+ createdOn: string;
15
+ updatedOn: string;
16
+ createdBy: number;
17
+ updatedBy: number;
18
+ user?: UserEntityModel;
19
+ project?: ProjectEntityModel;
20
+ static fromApiEntity(apiEntity: IEntityApiResponse<IProjectUserMappingEntity>): ProjectUserMappingEntityModel;
21
+ static relationConfigs: RelationConfigs<[
22
+ EntityEnum.USER,
23
+ EntityEnum.PROJECT
24
+ ], EnumEntityType<EntityEnum.PROJECT_USER_MAPPING>>;
25
+ getRelationConfigs(): [import("../interface/relation-config.interface").IRelationConfig<EntityEnum.USER, EnumEntityType<EntityEnum.PROJECT_USER_MAPPING>>, import("../interface/relation-config.interface").IRelationConfig<EntityEnum.PROJECT, EnumEntityType<EntityEnum.PROJECT_USER_MAPPING>>];
26
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectUserMappingEntityModel = void 0;
4
+ const project_user_status_enum_1 = require("../enums/project_user_status.enum");
5
+ const relation_type_enum_1 = require("../enums/relation-type.enum");
6
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
7
+ const base_entity_model_1 = require("./base.entity.model");
8
+ class ProjectUserMappingEntityModel extends base_entity_model_1.BaseEntityModel {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.id = 0;
12
+ this.projectId = 0;
13
+ this.userId = 0;
14
+ this.status = project_user_status_enum_1.ProjectUserStatusEnum.ACTIVE;
15
+ this.createdOn = "";
16
+ this.updatedOn = "";
17
+ this.createdBy = 0;
18
+ this.updatedBy = 0;
19
+ }
20
+ static fromApiEntity(apiEntity) {
21
+ const entity = new ProjectUserMappingEntityModel(entity_utils_interface_1.EntityEnum.PROJECT_USER_MAPPING);
22
+ Object.assign(entity, apiEntity);
23
+ return entity;
24
+ }
25
+ getRelationConfigs() {
26
+ return ProjectUserMappingEntityModel.relationConfigs;
27
+ }
28
+ }
29
+ exports.ProjectUserMappingEntityModel = ProjectUserMappingEntityModel;
30
+ ProjectUserMappingEntityModel.relationConfigs = [
31
+ {
32
+ name: entity_utils_interface_1.EntityEnum.USER,
33
+ relation: relation_type_enum_1.RelationType.ONE,
34
+ key: "user",
35
+ mapKeyConfig: {
36
+ relationKey: "id",
37
+ key: "userId",
38
+ },
39
+ },
40
+ {
41
+ name: entity_utils_interface_1.EntityEnum.PROJECT,
42
+ relation: relation_type_enum_1.RelationType.ONE,
43
+ key: "project",
44
+ mapKeyConfig: {
45
+ relationKey: "id",
46
+ key: "projectId",
47
+ },
48
+ },
49
+ ];
@@ -0,0 +1,40 @@
1
+ import { IProjectApiEntity } from "../../api";
2
+ import { CurrencyEnum } from "../../enums";
3
+ import { ProjectBillingTypeEnum, ProjectStatusEnum } from "../enums/project.entity.enum";
4
+ import { EntityEnum, EnumEntityType } from "../interface/entity.utils.interface";
5
+ import { IProjectUserDto } from "../interface/project.entity.interface";
6
+ import { RelationConfigs } from "../interface/relation-config.interface";
7
+ import { BaseEntityModel } from "./base.entity.model";
8
+ import { ClientEntityModel } from "./client.entity.model";
9
+ import { ProjectUserMappingEntityModel } from "./project-user-mapping.entity.model";
10
+ import { UserEntityModel } from "./user.entity.model";
11
+ export declare class ProjectEntityModel extends BaseEntityModel<EntityEnum.PROJECT> implements IProjectApiEntity {
12
+ id: number;
13
+ name: string;
14
+ clientId: number;
15
+ startDate: string;
16
+ currency: CurrencyEnum;
17
+ billingType: ProjectBillingTypeEnum;
18
+ billingRate: string;
19
+ status: ProjectStatusEnum;
20
+ organizationId: number;
21
+ description?: string;
22
+ expectedEndDate?: string;
23
+ actualEndDate?: string;
24
+ createdBy: number;
25
+ updatedBy: number;
26
+ createdOn: string;
27
+ updatedOn: string;
28
+ users?: IProjectUserDto[];
29
+ billingOverdueDays?: number;
30
+ userMappings?: (UserEntityModel & ProjectUserMappingEntityModel)[];
31
+ projectUserMappings?: ProjectUserMappingEntityModel[];
32
+ client: ClientEntityModel;
33
+ static fromApiEntity(apiEntity: IProjectApiEntity): ProjectEntityModel;
34
+ static relationConfigs: RelationConfigs<[
35
+ EntityEnum.PROJECT_USER_MAPPING,
36
+ EntityEnum.CLIENT
37
+ ], EnumEntityType<EntityEnum.PROJECT>>;
38
+ populateUsers(users: UserEntityModel[], projectUserMapping: ProjectUserMappingEntityModel[]): void;
39
+ getRelationConfigs(): [import("../interface/relation-config.interface").IRelationConfig<EntityEnum.PROJECT_USER_MAPPING, EnumEntityType<EntityEnum.PROJECT>>, import("../interface/relation-config.interface").IRelationConfig<EntityEnum.CLIENT, EnumEntityType<EntityEnum.PROJECT>>];
40
+ }
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectEntityModel = void 0;
4
+ const enums_1 = require("../../enums");
5
+ const project_entity_enum_1 = require("../enums/project.entity.enum");
6
+ const relation_type_enum_1 = require("../enums/relation-type.enum");
7
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
8
+ const base_entity_model_1 = require("./base.entity.model");
9
+ class ProjectEntityModel extends base_entity_model_1.BaseEntityModel {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.id = 0;
13
+ this.name = "";
14
+ this.clientId = 0;
15
+ this.startDate = "";
16
+ this.currency = enums_1.CurrencyEnum.INR;
17
+ this.billingType = project_entity_enum_1.ProjectBillingTypeEnum.HOURLY;
18
+ this.billingRate = "";
19
+ this.status = project_entity_enum_1.ProjectStatusEnum.ACTIVE;
20
+ this.organizationId = 0;
21
+ this.createdBy = 0;
22
+ this.updatedBy = 0;
23
+ this.createdOn = "";
24
+ this.updatedOn = "";
25
+ this.users = [];
26
+ this.client = {};
27
+ }
28
+ static fromApiEntity(apiEntity) {
29
+ const entity = new ProjectEntityModel(entity_utils_interface_1.EntityEnum.PROJECT);
30
+ entity.id = apiEntity.id;
31
+ entity.name = apiEntity.name;
32
+ entity.clientId = apiEntity.clientId;
33
+ entity.startDate = apiEntity.startDate;
34
+ entity.currency = apiEntity.currency;
35
+ entity.billingType = apiEntity.billingType;
36
+ entity.billingRate = apiEntity.billingRate;
37
+ entity.status = apiEntity.status;
38
+ entity.organizationId = apiEntity.organizationId;
39
+ entity.description = apiEntity.description;
40
+ entity.expectedEndDate = apiEntity.expectedEndDate;
41
+ entity.actualEndDate = apiEntity.actualEndDate;
42
+ entity.createdBy = apiEntity.createdBy;
43
+ entity.updatedBy = apiEntity.updatedBy;
44
+ entity.createdOn = apiEntity.createdOn;
45
+ entity.updatedOn = apiEntity.updatedOn;
46
+ entity.billingOverdueDays = apiEntity.billingOverdueDays;
47
+ return entity;
48
+ }
49
+ populateUsers(users, projectUserMapping) {
50
+ // const projectUserDto = projectUserMapping
51
+ // .filter((mapping) => mapping.projectId === this.id)
52
+ // .map((mapping) => {
53
+ // const user = users.find((u) => u.id === mapping.userId);
54
+ // if (user) {
55
+ // return {
56
+ // id: user.id,
57
+ // role: user.role,
58
+ // projectUserStatus: mapping.status,
59
+ // };
60
+ // } else {
61
+ // continue;
62
+ // }
63
+ // });
64
+ // this.users = projectUserDto;
65
+ const projectUserDto = projectUserMapping
66
+ .filter((mapping) => mapping.projectId === this.id)
67
+ .flatMap((mapping) => {
68
+ const user = users.find((u) => u.id === mapping.userId);
69
+ return user
70
+ ? [
71
+ {
72
+ id: user.id,
73
+ role: user.role,
74
+ projectUserStatus: mapping.status,
75
+ },
76
+ ]
77
+ : [];
78
+ });
79
+ this.users = projectUserDto;
80
+ }
81
+ getRelationConfigs() {
82
+ return ProjectEntityModel.relationConfigs;
83
+ }
84
+ }
85
+ exports.ProjectEntityModel = ProjectEntityModel;
86
+ ProjectEntityModel.relationConfigs = [
87
+ {
88
+ name: entity_utils_interface_1.EntityEnum.PROJECT_USER_MAPPING,
89
+ relation: relation_type_enum_1.RelationType.MANY,
90
+ key: "projectUserMappings",
91
+ mapKeyConfig: {
92
+ relationKey: "projectId",
93
+ key: "id",
94
+ },
95
+ },
96
+ {
97
+ name: entity_utils_interface_1.EntityEnum.CLIENT,
98
+ relation: relation_type_enum_1.RelationType.ONE,
99
+ key: "client",
100
+ mapKeyConfig: {
101
+ relationKey: "id",
102
+ key: "clientId",
103
+ },
104
+ },
105
+ ];
@@ -0,0 +1,27 @@
1
+ import { IReimbursementExpenseApiEntity } from "../../api";
2
+ import { ReimbursementExpenseState } from "../enums/reimbursement.entity.enum";
3
+ import { EntityEnum, EnumEntityType } from "../interface/entity.utils.interface";
4
+ import { RelationConfigs } from "../interface/relation-config.interface";
5
+ import { BaseEntityModel } from "./base.entity.model";
6
+ import { ReimbursementEntityModel } from "./reimbursement.entity.model";
7
+ export declare class ReimbursementExpenseEntityModel extends BaseEntityModel<EntityEnum.REIMBURSEMENT_EXPENSE> implements IReimbursementExpenseApiEntity {
8
+ id: number;
9
+ reimbursementId: number;
10
+ userId: number;
11
+ projectId: number;
12
+ expenseType: string;
13
+ amount: number;
14
+ state: ReimbursementExpenseState;
15
+ remark?: string;
16
+ sanctionedBy?: number;
17
+ createdBy: number;
18
+ updatedBy: number;
19
+ createdOn: string;
20
+ updatedOn: string;
21
+ reimbursement?: ReimbursementEntityModel;
22
+ static fromApiEntity(apiEntity: IReimbursementExpenseApiEntity): ReimbursementExpenseEntityModel;
23
+ static relationConfigs: RelationConfigs<[
24
+ EntityEnum.REIMBURSEMENT
25
+ ], EnumEntityType<EntityEnum.REIMBURSEMENT_EXPENSE>>;
26
+ getRelationConfigs(): any;
27
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReimbursementExpenseEntityModel = void 0;
4
+ const reimbursement_entity_enum_1 = require("../enums/reimbursement.entity.enum");
5
+ const relation_type_enum_1 = require("../enums/relation-type.enum");
6
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
7
+ const base_entity_model_1 = require("./base.entity.model");
8
+ class ReimbursementExpenseEntityModel extends base_entity_model_1.BaseEntityModel {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.id = 0;
12
+ this.reimbursementId = 0;
13
+ this.userId = 0;
14
+ this.projectId = 0;
15
+ this.expenseType = "";
16
+ this.amount = 0;
17
+ this.state = reimbursement_entity_enum_1.ReimbursementExpenseState.PENDING;
18
+ this.createdBy = 0;
19
+ this.updatedBy = 0;
20
+ this.createdOn = "";
21
+ this.updatedOn = "";
22
+ }
23
+ static fromApiEntity(apiEntity) {
24
+ const entity = new ReimbursementExpenseEntityModel(entity_utils_interface_1.EntityEnum.REIMBURSEMENT_EXPENSE);
25
+ Object.assign(entity, apiEntity);
26
+ return entity;
27
+ }
28
+ getRelationConfigs() {
29
+ return this.constructor.prototype.constructor.relationConfigs || [];
30
+ }
31
+ }
32
+ exports.ReimbursementExpenseEntityModel = ReimbursementExpenseEntityModel;
33
+ ReimbursementExpenseEntityModel.relationConfigs = [
34
+ {
35
+ name: entity_utils_interface_1.EntityEnum.REIMBURSEMENT,
36
+ key: "reimbursement",
37
+ relation: relation_type_enum_1.RelationType.ONE,
38
+ mapKeyConfig: {
39
+ relationKey: "id",
40
+ key: "reimbursementId",
41
+ },
42
+ },
43
+ ];
@@ -0,0 +1,32 @@
1
+ import { IReimbursementApiEntity } from "../../api";
2
+ import { ReimbursementBillingPresentEnum, ReimbursementBillingTypeEnum, ReimbursementIncurredByEnum, ReimbursementPaymentStatusEnum, ReimbursementStatusEnum } from "../enums/reimbursement.entity.enum";
3
+ import { EntityEnum } from "../interface/entity.utils.interface";
4
+ import { BaseEntityModel } from "./base.entity.model";
5
+ export declare class ReimbursementEntityModel extends BaseEntityModel<EntityEnum.REIMBURSEMENT> implements IReimbursementApiEntity {
6
+ id: number;
7
+ billingType: ReimbursementBillingTypeEnum;
8
+ billDate: string;
9
+ amount: number;
10
+ billNo?: string;
11
+ expenseIncurredBy: ReimbursementIncurredByEnum;
12
+ billPresent: ReimbursementBillingPresentEnum;
13
+ description: string;
14
+ attachmentUrlsCsv?: string;
15
+ status: ReimbursementStatusEnum;
16
+ paymentStatus: ReimbursementPaymentStatusEnum;
17
+ amountReimbursed?: number;
18
+ processedBy?: number;
19
+ processedDate?: string;
20
+ paymentDetails?: string;
21
+ remark?: string;
22
+ disbursementDate?: string;
23
+ referenceNo?: string;
24
+ bankId?: number;
25
+ createdBy: number;
26
+ updatedBy: number;
27
+ createdOn: string;
28
+ updatedOn: string;
29
+ static relationConfigs: never[];
30
+ getRelationConfigs(): any[];
31
+ static fromApiEntity(apiEntity: IReimbursementApiEntity): ReimbursementEntityModel;
32
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReimbursementEntityModel = void 0;
4
+ const reimbursement_entity_enum_1 = require("../enums/reimbursement.entity.enum");
5
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
6
+ const base_entity_model_1 = require("./base.entity.model");
7
+ class ReimbursementEntityModel extends base_entity_model_1.BaseEntityModel {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.id = 0;
11
+ this.billingType = reimbursement_entity_enum_1.ReimbursementBillingTypeEnum.BILLABLE;
12
+ this.billDate = "";
13
+ this.amount = 0;
14
+ this.expenseIncurredBy = reimbursement_entity_enum_1.ReimbursementIncurredByEnum.SELF;
15
+ this.billPresent = reimbursement_entity_enum_1.ReimbursementBillingPresentEnum.NO;
16
+ this.description = "";
17
+ this.status = reimbursement_entity_enum_1.ReimbursementStatusEnum.APPROVAL_PENDING;
18
+ this.paymentStatus = reimbursement_entity_enum_1.ReimbursementPaymentStatusEnum.UNPAID;
19
+ this.createdBy = 0;
20
+ this.updatedBy = 0;
21
+ this.createdOn = "";
22
+ this.updatedOn = "";
23
+ }
24
+ getRelationConfigs() {
25
+ return this.constructor.prototype.constructor.relationConfigs || [];
26
+ }
27
+ static fromApiEntity(apiEntity) {
28
+ const entity = new ReimbursementEntityModel(entity_utils_interface_1.EntityEnum.REIMBURSEMENT);
29
+ Object.assign(entity, apiEntity);
30
+ return entity;
31
+ }
32
+ }
33
+ exports.ReimbursementEntityModel = ReimbursementEntityModel;
34
+ ReimbursementEntityModel.relationConfigs = [];
@@ -0,0 +1,17 @@
1
+ import { ITaskApiEntity } from "../../api";
2
+ import { TaskStatusEnum, TaskTypeEnum } from "../enums/task.entity.enum";
3
+ import { EntityEnum } from "../interface/entity.utils.interface";
4
+ import { BaseEntityModel } from "./base.entity.model";
5
+ export declare class TaskEntityModel extends BaseEntityModel<EntityEnum.TASK> implements ITaskApiEntity {
6
+ id: number;
7
+ name: string;
8
+ description: string;
9
+ status: TaskStatusEnum;
10
+ type: TaskTypeEnum;
11
+ createdBy: number;
12
+ updatedBy: number;
13
+ createdOn: string;
14
+ updatedOn: string;
15
+ static fromApiEntity(apiEntity: ITaskApiEntity): TaskEntityModel;
16
+ getRelationConfigs(): any[];
17
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TaskEntityModel = void 0;
4
+ const task_entity_enum_1 = require("../enums/task.entity.enum");
5
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
6
+ const base_entity_model_1 = require("./base.entity.model");
7
+ class TaskEntityModel extends base_entity_model_1.BaseEntityModel {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.id = 0;
11
+ this.name = "";
12
+ this.description = "";
13
+ this.status = task_entity_enum_1.TaskStatusEnum.active;
14
+ this.type = task_entity_enum_1.TaskTypeEnum.billable;
15
+ this.createdBy = 0;
16
+ this.updatedBy = 0;
17
+ this.createdOn = "";
18
+ this.updatedOn = "";
19
+ }
20
+ static fromApiEntity(apiEntity) {
21
+ const entity = new TaskEntityModel(entity_utils_interface_1.EntityEnum.TASK);
22
+ Object.assign(entity, apiEntity);
23
+ return entity;
24
+ }
25
+ getRelationConfigs() {
26
+ return this.constructor.prototype.constructor.relationConfigs || [];
27
+ }
28
+ }
29
+ exports.TaskEntityModel = TaskEntityModel;
@@ -0,0 +1,21 @@
1
+ import { ITimesheetApiEntity } from "../../api";
2
+ import { TimesheetStatusEnum } from "../enums/timesheet.status.enum";
3
+ import { EntityEnum } from "../interface/entity.utils.interface";
4
+ import { BaseEntityModel } from "./base.entity.model";
5
+ export declare class TimesheetEntityModel extends BaseEntityModel<EntityEnum.TIMESHEET> implements ITimesheetApiEntity {
6
+ id: number;
7
+ userId: number;
8
+ projectId: number;
9
+ task: string;
10
+ description?: string;
11
+ dateCode: string;
12
+ totalDuration: number;
13
+ status: TimesheetStatusEnum;
14
+ remark?: string;
15
+ createdBy: number;
16
+ updatedBy: number;
17
+ createdOn: string;
18
+ updatedOn: string;
19
+ static fromApiEntity(apiEntity: ITimesheetApiEntity): TimesheetEntityModel;
20
+ getRelationConfigs(): any[];
21
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TimesheetEntityModel = void 0;
4
+ const timesheet_status_enum_1 = require("../enums/timesheet.status.enum");
5
+ const entity_utils_interface_1 = require("../interface/entity.utils.interface");
6
+ const base_entity_model_1 = require("./base.entity.model");
7
+ class TimesheetEntityModel extends base_entity_model_1.BaseEntityModel {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.id = 0;
11
+ this.userId = 0;
12
+ this.projectId = 0;
13
+ this.task = "";
14
+ this.dateCode = "";
15
+ this.totalDuration = 0;
16
+ this.status = timesheet_status_enum_1.TimesheetStatusEnum.CREATE_APPROVAL;
17
+ this.createdBy = 0;
18
+ this.updatedBy = 0;
19
+ this.createdOn = "";
20
+ this.updatedOn = "";
21
+ }
22
+ static fromApiEntity(apiEntity) {
23
+ const entity = new TimesheetEntityModel(entity_utils_interface_1.EntityEnum.TIMESHEET);
24
+ Object.assign(entity, apiEntity);
25
+ return entity;
26
+ }
27
+ getRelationConfigs() {
28
+ return this.constructor.prototype.constructor.relationConfigs || [];
29
+ }
30
+ }
31
+ exports.TimesheetEntityModel = TimesheetEntityModel;
@@ -0,0 +1,46 @@
1
+ import { IUserApiEntity } from "../../api";
2
+ import { UserRoleEnum, UserStatusEnum } from "../enums/user.entity.enum";
3
+ import { EntityEnum } from "../interface/entity.utils.interface";
4
+ import { BaseEntityModel } from "./base.entity.model";
5
+ export declare class UserEntityModel extends BaseEntityModel<EntityEnum.USER> implements IUserApiEntity {
6
+ id: number;
7
+ name: string;
8
+ email: string;
9
+ contactNo: string;
10
+ secondaryContactNo?: string;
11
+ password?: string;
12
+ userCode?: string;
13
+ joiningDate?: string;
14
+ endDate?: string;
15
+ address?: string;
16
+ zipCode?: number;
17
+ country?: string;
18
+ designation: string;
19
+ panNo?: string;
20
+ panDocumentUrl?: string;
21
+ aadharNo?: string;
22
+ aadharDocumentUrl?: string;
23
+ role: UserRoleEnum;
24
+ status?: UserStatusEnum;
25
+ organizationId: number;
26
+ passportDocumentUrl?: string;
27
+ academicQualificationDocumentUrl?: string;
28
+ officeAllocation: number;
29
+ tempAddress?: string;
30
+ tempZipCode?: number;
31
+ tempCountry?: string;
32
+ tempAddressSameAsPrimary: boolean;
33
+ emergencyContactName: string;
34
+ emergencyContactNo: string;
35
+ emergencyContactRelation: string;
36
+ secondEmergencyContactName?: string;
37
+ secondaryEmergencyContactNo?: string;
38
+ secondaryEmergencyContactRelation?: string;
39
+ permissions?: string[];
40
+ createdBy: number;
41
+ updatedBy: number;
42
+ createdOn: string;
43
+ updatedOn: string;
44
+ getRelationConfigs(): any[];
45
+ static fromApiEntity(apiEntity: IUserApiEntity): UserEntityModel;
46
+ }