law-common 11.3.11 → 11.3.13-beta.0

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 (74) hide show
  1. package/README.md +1 -1
  2. package/dist/src/api/index.d.ts +0 -4
  3. package/dist/src/api/index.js +0 -4
  4. package/dist/src/entities/enums/billing-transaction-status.enum.js +1 -0
  5. package/dist/src/entities/enums/billing.action.enum.js +2 -0
  6. package/dist/src/entities/enums/billing.transaction.enum.js +1 -0
  7. package/dist/src/entities/enums/configuration-key.enum.d.ts +9 -1
  8. package/dist/src/entities/enums/configuration-key.enum.js +13 -0
  9. package/dist/src/entities/enums/cron-jobs-name.enum.d.ts +6 -1
  10. package/dist/src/entities/enums/cron-jobs-name.enum.js +5 -0
  11. package/dist/src/entities/enums/timesheet.action.enum.d.ts +3 -1
  12. package/dist/src/entities/enums/timesheet.action.enum.js +4 -0
  13. package/dist/src/entities/enums/timesheet.classification.status.enum.d.ts +10 -0
  14. package/dist/src/entities/enums/timesheet.classification.status.enum.js +28 -0
  15. package/dist/src/entities/enums/vendor_invoice_status_enum.d.ts +2 -1
  16. package/dist/src/entities/enums/vendor_invoice_status_enum.js +1 -0
  17. package/dist/src/entities/flow-configs/billing-transaction.flow.config.js +17 -0
  18. package/dist/src/entities/index.d.ts +1 -9
  19. package/dist/src/entities/index.js +1 -9
  20. package/dist/src/entities/interface/billing_transaction.entity.interface.d.ts +2 -2
  21. package/dist/src/entities/interface/entity.utils.interface.d.ts +3 -9
  22. package/dist/src/entities/interface/entity.utils.interface.js +0 -2
  23. package/dist/src/entities/interface/timesheet.entity.interface.d.ts +7 -1
  24. package/dist/src/entities/model/billing-transaction.model.d.ts +7 -2
  25. package/dist/src/entities/model/billing-transaction.model.js +38 -0
  26. package/dist/src/entities/model/billing.entity.model.d.ts +5 -0
  27. package/dist/src/entities/model/billing.entity.model.js +29 -4
  28. package/dist/src/entities/model/client.entity.model.d.ts +8 -0
  29. package/dist/src/entities/model/client.entity.model.js +60 -0
  30. package/dist/src/entities/model/entity.model.interface.js +0 -4
  31. package/dist/src/entities/model/project.entity.model.d.ts +20 -2
  32. package/dist/src/entities/model/project.entity.model.js +61 -0
  33. package/dist/src/entities/model/tds_rate.entity.model.autocode.js +1 -225
  34. package/dist/src/entities/model/tds_rate.entity.model.d.ts +1 -7
  35. package/dist/src/entities/model/tds_rate.entity.model.js +0 -18
  36. package/dist/src/entities/model/timesheet.entity.model.d.ts +30 -2
  37. package/dist/src/entities/model/timesheet.entity.model.js +108 -7
  38. package/dist/src/entities/model/user.entity.model.d.ts +2 -1
  39. package/dist/src/entities/model/user.entity.model.js +3 -0
  40. package/dist/src/entities/model/vendor_invoice.entity.model.d.ts +1 -8
  41. package/dist/src/entities/model/vendor_invoice.entity.model.js +0 -9
  42. package/dist/src/enums/error.key.enum.d.ts +1 -2
  43. package/dist/src/enums/error.key.enum.js +0 -1
  44. package/dist/src/model/entities/timesheet.model.d.ts +5 -1
  45. package/dist/src/model/entities/timesheet.model.js +1 -0
  46. package/dist/src/utils/models/date-code.model.util.d.ts +8 -0
  47. package/dist/src/utils/models/date-code.model.util.js +22 -0
  48. package/package.json +47 -47
  49. package/dist/src/api/interface/vendor_tds_challan.create.dto.interface.d.ts +0 -5
  50. package/dist/src/api/interface/vendor_tds_challan.create.dto.interface.js +0 -2
  51. package/dist/src/api/interface/vendor_tds_challan.update.dto.interface.d.ts +0 -17
  52. package/dist/src/api/interface/vendor_tds_challan.update.dto.interface.js +0 -17
  53. package/dist/src/api/interface/vendor_tds_liability.create.dto.interface.d.ts +0 -5
  54. package/dist/src/api/interface/vendor_tds_liability.create.dto.interface.js +0 -2
  55. package/dist/src/api/interface/vendor_tds_liability.update.dto.interface.d.ts +0 -19
  56. package/dist/src/api/interface/vendor_tds_liability.update.dto.interface.js +0 -13
  57. package/dist/src/entities/enums/vendor_tds_challan_status_enum.d.ts +0 -5
  58. package/dist/src/entities/enums/vendor_tds_challan_status_enum.js +0 -9
  59. package/dist/src/entities/enums/vendor_tds_liability_paid_status_enum.d.ts +0 -4
  60. package/dist/src/entities/enums/vendor_tds_liability_paid_status_enum.js +0 -8
  61. package/dist/src/entities/enums/vendor_tds_liability_status_enum.d.ts +0 -5
  62. package/dist/src/entities/enums/vendor_tds_liability_status_enum.js +0 -9
  63. package/dist/src/entities/flow-configs/vendor_tds_challan_flow.config.d.ts +0 -6
  64. package/dist/src/entities/flow-configs/vendor_tds_challan_flow.config.js +0 -70
  65. package/dist/src/entities/flow-configs/vendor_tds_liability_flow.config.d.ts +0 -7
  66. package/dist/src/entities/flow-configs/vendor_tds_liability_flow.config.js +0 -107
  67. package/dist/src/entities/interface/vendor_tds_challan.entity.interface.d.ts +0 -15
  68. package/dist/src/entities/interface/vendor_tds_challan.entity.interface.js +0 -2
  69. package/dist/src/entities/interface/vendor_tds_liability.entity.interface.d.ts +0 -15
  70. package/dist/src/entities/interface/vendor_tds_liability.entity.interface.js +0 -2
  71. package/dist/src/entities/model/vendor_tds_challan.entity.model.d.ts +0 -68
  72. package/dist/src/entities/model/vendor_tds_challan.entity.model.js +0 -251
  73. package/dist/src/entities/model/vendor_tds_liability.entity.model.d.ts +0 -66
  74. package/dist/src/entities/model/vendor_tds_liability.entity.model.js +0 -222
package/README.md CHANGED
@@ -1 +1 @@
1
- # law-common
1
+ # law-common
@@ -105,7 +105,3 @@ export * from "./interface/vendor_invoice_payment.create.dto.interface";
105
105
  export * from "./interface/vendor_invoice_payment.update.dto.interface";
106
106
  export * from "./interface/leave_approval.create.dto.interface";
107
107
  export * from "./interface/leave_approval.update.dto.interface";
108
- export * from "./interface/vendor_tds_liability.create.dto.interface";
109
- export * from "./interface/vendor_tds_liability.update.dto.interface";
110
- export * from "./interface/vendor_tds_challan.create.dto.interface";
111
- export * from "./interface/vendor_tds_challan.update.dto.interface";
@@ -125,7 +125,3 @@ __exportStar(require("./interface/vendor_invoice_payment.create.dto.interface"),
125
125
  __exportStar(require("./interface/vendor_invoice_payment.update.dto.interface"), exports);
126
126
  __exportStar(require("./interface/leave_approval.create.dto.interface"), exports);
127
127
  __exportStar(require("./interface/leave_approval.update.dto.interface"), exports);
128
- __exportStar(require("./interface/vendor_tds_liability.create.dto.interface"), exports);
129
- __exportStar(require("./interface/vendor_tds_liability.update.dto.interface"), exports);
130
- __exportStar(require("./interface/vendor_tds_challan.create.dto.interface"), exports);
131
- __exportStar(require("./interface/vendor_tds_challan.update.dto.interface"), exports);
@@ -7,4 +7,5 @@ var BillingTransactionStatusEnum;
7
7
  BillingTransactionStatusEnum["REJECTED"] = "rejected";
8
8
  BillingTransactionStatusEnum["WRITEOFF_APPROVAL_PENDING"] = "writeoff_approval_pending";
9
9
  BillingTransactionStatusEnum["CREDITNOTE_APPROVAL_PENDING"] = "creditnote_approval_pending";
10
+ // ADJUST_AGAINST_CREDIT_NOTE_APPROVAL_PENDING = "adjust_against_credit_note_approval_pending",
10
11
  })(BillingTransactionStatusEnum || (exports.BillingTransactionStatusEnum = BillingTransactionStatusEnum = {}));
@@ -19,6 +19,7 @@ var BillingActionsEnum;
19
19
  BillingActionsEnum["WRITE_OFF"] = "writeOff";
20
20
  BillingActionsEnum["TDS"] = "tds";
21
21
  BillingActionsEnum["PDF_VIEW"] = "pdfView";
22
+ // ADJUST_AGAINST_CREDIT_NOTE = "adjustAgainstCreditNote",
22
23
  // PDF_GENERATE = "pdfGenerate",
23
24
  // PDF_DELETE = "pdfDelete",
24
25
  })(BillingActionsEnum || (exports.BillingActionsEnum = BillingActionsEnum = {}));
@@ -40,6 +41,7 @@ var BillingActionsEnum;
40
41
  // [BillingActionsEnum.PDF_DELETE]: "Pdf Delete",
41
42
  // [BillingActionsEnum.PDF_GENERATE]: "Pdf Generate",
42
43
  [BillingActionsEnum.PDF_VIEW]: "Pdf View",
44
+ // [BillingActionsEnum.ADJUST_AGAINST_CREDIT_NOTE]: "Adjust Against Credit Note",
43
45
  };
44
46
  function getLabel(action) {
45
47
  if (!Object.values(BillingActionsEnum).includes(action)) {
@@ -10,6 +10,7 @@ var BillingTransactionType;
10
10
  BillingTransactionType["CREDIT_NOTE"] = "CREDIT_NOTE";
11
11
  BillingTransactionType["RECEIPT"] = "RECEIPT";
12
12
  BillingTransactionType["REFUND"] = "REFUND";
13
+ // ADJUST_AGAINST_CREDIT_NOTE = "ADJUST_AGAINST_CREDIT_NOTE",
13
14
  })(BillingTransactionType || (exports.BillingTransactionType = BillingTransactionType = {}));
14
15
  (function (BillingTransactionType) {
15
16
  function getNames() {
@@ -7,7 +7,15 @@ export declare enum ConfigurationKeyEnum {
7
7
  TIMESHEET_ENTER_THRESHOLD = "timesheetEnterThreshold",
8
8
  ORGANIZATION_BILLING_OVERDUE_THRESHOLD = "organization_billing_overdue_threshold",
9
9
  PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET = "projectEntityUsageNotificationSentPercentageReset",
10
- LEAVE_ESCALATION = "leaveEscalation"
10
+ LEAVE_ESCALATION = "leaveEscalation",
11
+ BOARD_MEMBER_EMAIL = "boardMemberEmail",
12
+ WEEKLY_ESCALATED_LEAVE_REMINDER = "weeklyEscalatedLeaveReminder",
13
+ WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER = "weeklyEscalatedReimbursementReminder",
14
+ TIMESHEET_WEEKLY_REMINDER = "timesheetWeeklyReminder",
15
+ TIMESHEET_AUTO_CLASSIFICATION = "timesheetAutoClassification",
16
+ TIMESHEET_CLASSIFICATION_NOTIFICATION = "timesheetClassificationNotification",
17
+ TIMESHEET_CLASSIFICATION_BUFFER_DAYS = "timesheetClassificationBufferDays",
18
+ TIMESHEET_CLASSIFICATION_WINDOWS = "timesheetClassificationWindows"
11
19
  }
12
20
  export declare namespace ConfigurationKeyEnum {
13
21
  function getNames(): string[];
@@ -14,6 +14,14 @@ var ConfigurationKeyEnum;
14
14
  ConfigurationKeyEnum["ORGANIZATION_BILLING_OVERDUE_THRESHOLD"] = "organization_billing_overdue_threshold";
15
15
  ConfigurationKeyEnum["PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET"] = "projectEntityUsageNotificationSentPercentageReset";
16
16
  ConfigurationKeyEnum["LEAVE_ESCALATION"] = "leaveEscalation";
17
+ ConfigurationKeyEnum["BOARD_MEMBER_EMAIL"] = "boardMemberEmail";
18
+ ConfigurationKeyEnum["WEEKLY_ESCALATED_LEAVE_REMINDER"] = "weeklyEscalatedLeaveReminder";
19
+ ConfigurationKeyEnum["WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER"] = "weeklyEscalatedReimbursementReminder";
20
+ ConfigurationKeyEnum["TIMESHEET_WEEKLY_REMINDER"] = "timesheetWeeklyReminder";
21
+ ConfigurationKeyEnum["TIMESHEET_AUTO_CLASSIFICATION"] = "timesheetAutoClassification";
22
+ ConfigurationKeyEnum["TIMESHEET_CLASSIFICATION_NOTIFICATION"] = "timesheetClassificationNotification";
23
+ ConfigurationKeyEnum["TIMESHEET_CLASSIFICATION_BUFFER_DAYS"] = "timesheetClassificationBufferDays";
24
+ ConfigurationKeyEnum["TIMESHEET_CLASSIFICATION_WINDOWS"] = "timesheetClassificationWindows";
17
25
  })(ConfigurationKeyEnum || (exports.ConfigurationKeyEnum = ConfigurationKeyEnum = {}));
18
26
  (function (ConfigurationKeyEnum) {
19
27
  function getNames() {
@@ -41,6 +49,11 @@ var ConfigurationKeyEnum;
41
49
  [ConfigurationKeyEnum.PENDING_APPROVAL_TIMESHEET_REMINDER]: cron_jobs_name_enum_1.CronJobNames.PENDING_APPROVAL_TIMESHEET_REMINDER,
42
50
  [ConfigurationKeyEnum.PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET]: cron_jobs_name_enum_1.CronJobNames.PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET,
43
51
  [ConfigurationKeyEnum.LEAVE_ESCALATION]: cron_jobs_name_enum_1.CronJobNames.LEAVE_ESCALATION,
52
+ [ConfigurationKeyEnum.WEEKLY_ESCALATED_LEAVE_REMINDER]: cron_jobs_name_enum_1.CronJobNames.WEEKLY_ESCALATED_LEAVE_REMINDER,
53
+ [ConfigurationKeyEnum.WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER]: cron_jobs_name_enum_1.CronJobNames.WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER,
54
+ [ConfigurationKeyEnum.TIMESHEET_WEEKLY_REMINDER]: cron_jobs_name_enum_1.CronJobNames.TIMESHEET_WEEKLY_REMINDER,
55
+ [ConfigurationKeyEnum.TIMESHEET_AUTO_CLASSIFICATION]: cron_jobs_name_enum_1.CronJobNames.TIMESHEET_AUTO_CLASSIFICATION,
56
+ [ConfigurationKeyEnum.TIMESHEET_CLASSIFICATION_NOTIFICATION]: cron_jobs_name_enum_1.CronJobNames.TIMESHEET_CLASSIFICATION_NOTIFICATION,
44
57
  };
45
58
  return cronJobConfigurationKeyMapping[configurationKey];
46
59
  }
@@ -1,5 +1,10 @@
1
1
  export declare enum CronJobNames {
2
2
  PENDING_APPROVAL_TIMESHEET_REMINDER = "pending_approval_timesheet_reminder",
3
3
  PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET = "project_entity_usage_notification_sent_percentage_reset",
4
- LEAVE_ESCALATION = "leave_escalation"
4
+ LEAVE_ESCALATION = "leave_escalation",
5
+ WEEKLY_ESCALATED_LEAVE_REMINDER = "weekly_escalated_leave_reminder",
6
+ WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER = "weekly_escalated_reimbursement_reminder",
7
+ TIMESHEET_WEEKLY_REMINDER = "timesheet_weekly_reminder",
8
+ TIMESHEET_AUTO_CLASSIFICATION = "timesheet_auto_classification",
9
+ TIMESHEET_CLASSIFICATION_NOTIFICATION = "timesheet_classification_notification"
5
10
  }
@@ -6,4 +6,9 @@ var CronJobNames;
6
6
  CronJobNames["PENDING_APPROVAL_TIMESHEET_REMINDER"] = "pending_approval_timesheet_reminder";
7
7
  CronJobNames["PROJECT_ENTITY_USAGE_NOTIFICATION_SENT_PERCENTAGE_RESET"] = "project_entity_usage_notification_sent_percentage_reset";
8
8
  CronJobNames["LEAVE_ESCALATION"] = "leave_escalation";
9
+ CronJobNames["WEEKLY_ESCALATED_LEAVE_REMINDER"] = "weekly_escalated_leave_reminder";
10
+ CronJobNames["WEEKLY_ESCALATED_REIMBURSEMENT_REMINDER"] = "weekly_escalated_reimbursement_reminder";
11
+ CronJobNames["TIMESHEET_WEEKLY_REMINDER"] = "timesheet_weekly_reminder";
12
+ CronJobNames["TIMESHEET_AUTO_CLASSIFICATION"] = "timesheet_auto_classification";
13
+ CronJobNames["TIMESHEET_CLASSIFICATION_NOTIFICATION"] = "timesheet_classification_notification";
9
14
  })(CronJobNames || (exports.CronJobNames = CronJobNames = {}));
@@ -7,7 +7,9 @@ export declare enum TimesheetActionEnum {
7
7
  REJECT = "reject",
8
8
  RECALL = "recall",
9
9
  BILLING_UPDATE = "billing_update",
10
- MOVE_TIMESHEET = "move_timesheet"
10
+ MOVE_TIMESHEET = "move_timesheet",
11
+ CLASSIFY = "classify",
12
+ AUTO_CLASSIFY = "auto_classify"
11
13
  }
12
14
  export declare namespace TimesheetActionEnum {
13
15
  function getLabel(action: TimesheetActionEnum): string;
@@ -14,6 +14,8 @@ var TimesheetActionEnum;
14
14
  TimesheetActionEnum["RECALL"] = "recall";
15
15
  TimesheetActionEnum["BILLING_UPDATE"] = "billing_update";
16
16
  TimesheetActionEnum["MOVE_TIMESHEET"] = "move_timesheet";
17
+ TimesheetActionEnum["CLASSIFY"] = "classify";
18
+ TimesheetActionEnum["AUTO_CLASSIFY"] = "auto_classify";
17
19
  })(TimesheetActionEnum || (exports.TimesheetActionEnum = TimesheetActionEnum = {}));
18
20
  (function (TimesheetActionEnum) {
19
21
  const actionLabelMap = {
@@ -26,6 +28,8 @@ var TimesheetActionEnum;
26
28
  [TimesheetActionEnum.RECALL]: "Recall",
27
29
  [TimesheetActionEnum.BILLING_UPDATE]: "Billing Update",
28
30
  [TimesheetActionEnum.MOVE_TIMESHEET]: "Move Timesheet",
31
+ [TimesheetActionEnum.CLASSIFY]: "Classify",
32
+ [TimesheetActionEnum.AUTO_CLASSIFY]: "Auto Classify",
29
33
  };
30
34
  function getLabel(action) {
31
35
  if (!Object.values(TimesheetActionEnum).includes(action)) {
@@ -0,0 +1,10 @@
1
+ export declare enum TimesheetClassificationStatusEnum {
2
+ PENDING = "pending",
3
+ CLASSIFIED = "classified",
4
+ AUTO_CLASSIFIED = "auto_classified",
5
+ CORRECTED = "corrected"
6
+ }
7
+ export declare namespace TimesheetClassificationStatusEnum {
8
+ function getNames(): string[];
9
+ function parse(value: string): TimesheetClassificationStatusEnum;
10
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TimesheetClassificationStatusEnum = void 0;
4
+ const error_key_enum_1 = require("../../enums/error.key.enum");
5
+ const exceptions_1 = require("../../exceptions");
6
+ var TimesheetClassificationStatusEnum;
7
+ (function (TimesheetClassificationStatusEnum) {
8
+ TimesheetClassificationStatusEnum["PENDING"] = "pending";
9
+ TimesheetClassificationStatusEnum["CLASSIFIED"] = "classified";
10
+ TimesheetClassificationStatusEnum["AUTO_CLASSIFIED"] = "auto_classified";
11
+ TimesheetClassificationStatusEnum["CORRECTED"] = "corrected";
12
+ })(TimesheetClassificationStatusEnum || (exports.TimesheetClassificationStatusEnum = TimesheetClassificationStatusEnum = {}));
13
+ (function (TimesheetClassificationStatusEnum) {
14
+ function getNames() {
15
+ return Object.values(TimesheetClassificationStatusEnum).filter((value) => typeof value === "string");
16
+ }
17
+ TimesheetClassificationStatusEnum.getNames = getNames;
18
+ function parse(value) {
19
+ if (Object.values(TimesheetClassificationStatusEnum).includes(value)) {
20
+ return value;
21
+ }
22
+ throw new exceptions_1.AppBadRequestException({
23
+ key: error_key_enum_1.ErrorKeyEnum.TIMESHEET_STATUS,
24
+ message: ["Invalid timesheet classification status"],
25
+ });
26
+ }
27
+ TimesheetClassificationStatusEnum.parse = parse;
28
+ })(TimesheetClassificationStatusEnum || (exports.TimesheetClassificationStatusEnum = TimesheetClassificationStatusEnum = {}));
@@ -1,4 +1,5 @@
1
1
  export declare enum VendorInvoicePaidStatusEnum {
2
2
  PENDING = "PENDING",
3
- SETTLED = "SETTLED"
3
+ SETTLED = "SETTLED",
4
+ DELETED = "DELETED"
4
5
  }
@@ -5,4 +5,5 @@ var VendorInvoicePaidStatusEnum;
5
5
  (function (VendorInvoicePaidStatusEnum) {
6
6
  VendorInvoicePaidStatusEnum["PENDING"] = "PENDING";
7
7
  VendorInvoicePaidStatusEnum["SETTLED"] = "SETTLED";
8
+ VendorInvoicePaidStatusEnum["DELETED"] = "DELETED";
8
9
  })(VendorInvoicePaidStatusEnum || (exports.VendorInvoicePaidStatusEnum = VendorInvoicePaidStatusEnum = {}));
@@ -45,6 +45,22 @@ exports.billingTransactionFlowConfig = {
45
45
  },
46
46
  },
47
47
  },
48
+ // [BillingTransactionStatusEnum.ADJUST_AGAINST_CREDIT_NOTE_APPROVAL_PENDING]: {
49
+ // actions: {
50
+ // [BillingTransactionActionEnum.APPROVE]: {
51
+ // permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
52
+ // next: () => BillingTransactionStatusEnum.APPROVED,
53
+ // },
54
+ // [BillingTransactionActionEnum.REJECT]: {
55
+ // permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
56
+ // next: () => BillingTransactionStatusEnum.REJECTED,
57
+ // },
58
+ // [BillingTransactionActionEnum.EDIT]: {
59
+ // permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
60
+ // next: (data: IBillingTransactionContextFlowData) => decideNextStatus(data),
61
+ // },
62
+ // },
63
+ // },
48
64
  };
49
65
  function decideNextStatus(data) {
50
66
  var _a;
@@ -52,6 +68,7 @@ function decideNextStatus(data) {
52
68
  const typeStatusMapping = {
53
69
  [billing_transaction_enum_1.BillingTransactionType.WRITE_OFF]: billing_transaction_status_enum_1.BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING,
54
70
  [billing_transaction_enum_1.BillingTransactionType.CREDIT_NOTE]: billing_transaction_status_enum_1.BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING,
71
+ // [BillingTransactionType.ADJUST_AGAINST_CREDIT_NOTE]: BillingTransactionStatusEnum.ADJUST_AGAINST_CREDIT_NOTE_APPROVAL_PENDING,
55
72
  };
56
73
  if (currentBillingTransactionEntity.type === dto.type) {
57
74
  return currentBillingTransactionEntity.status;
@@ -39,6 +39,7 @@ export * from "./interface/billing_timesheet_history.entity.interface";
39
39
  export * from "./enums/history_operation.enum";
40
40
  export * from "./enums/timesheet.action.enum";
41
41
  export * from "./enums/timesheet.status.enum";
42
+ export * from "./enums/timesheet.classification.status.enum";
42
43
  export * from "./enums/billing.action.enum";
43
44
  export * from "./enums/configuration.type.enum";
44
45
  export * from "./enums/project_user_status.enum";
@@ -230,12 +231,3 @@ export * from "./enums/leave_approval_status_enum";
230
231
  export * from "./flow-configs/leave_approval_flow.config";
231
232
  export * from "./interface/leave_approval.entity.interface";
232
233
  export * from "./model/leave_approval.entity.model";
233
- export * from "./enums/vendor_tds_liability_paid_status_enum";
234
- export * from "./enums/vendor_tds_liability_status_enum";
235
- export * from "./interface/vendor_tds_liability.entity.interface";
236
- export * from "./model/vendor_tds_liability.entity.model";
237
- export * from "./flow-configs/vendor_tds_liability_flow.config";
238
- export * from "./enums/vendor_tds_challan_status_enum";
239
- export * from "./interface/vendor_tds_challan.entity.interface";
240
- export * from "./model/vendor_tds_challan.entity.model";
241
- export * from "./flow-configs/vendor_tds_challan_flow.config";
@@ -55,6 +55,7 @@ __exportStar(require("./interface/billing_timesheet_history.entity.interface"),
55
55
  __exportStar(require("./enums/history_operation.enum"), exports);
56
56
  __exportStar(require("./enums/timesheet.action.enum"), exports);
57
57
  __exportStar(require("./enums/timesheet.status.enum"), exports);
58
+ __exportStar(require("./enums/timesheet.classification.status.enum"), exports);
58
59
  __exportStar(require("./enums/billing.action.enum"), exports);
59
60
  __exportStar(require("./enums/configuration.type.enum"), exports);
60
61
  __exportStar(require("./enums/project_user_status.enum"), exports);
@@ -246,12 +247,3 @@ __exportStar(require("./enums/leave_approval_status_enum"), exports);
246
247
  __exportStar(require("./flow-configs/leave_approval_flow.config"), exports);
247
248
  __exportStar(require("./interface/leave_approval.entity.interface"), exports);
248
249
  __exportStar(require("./model/leave_approval.entity.model"), exports);
249
- __exportStar(require("./enums/vendor_tds_liability_paid_status_enum"), exports);
250
- __exportStar(require("./enums/vendor_tds_liability_status_enum"), exports);
251
- __exportStar(require("./interface/vendor_tds_liability.entity.interface"), exports);
252
- __exportStar(require("./model/vendor_tds_liability.entity.model"), exports);
253
- __exportStar(require("./flow-configs/vendor_tds_liability_flow.config"), exports);
254
- __exportStar(require("./enums/vendor_tds_challan_status_enum"), exports);
255
- __exportStar(require("./interface/vendor_tds_challan.entity.interface"), exports);
256
- __exportStar(require("./model/vendor_tds_challan.entity.model"), exports);
257
- __exportStar(require("./flow-configs/vendor_tds_challan_flow.config"), exports);
@@ -1,7 +1,7 @@
1
1
  import { BillingTransactionStatusEnum } from "../enums/billing-transaction-status.enum";
2
2
  import { BillingTransactionType } from "../enums/billing.transaction.enum";
3
3
  import { IEntityAuditColumn } from "./entity-audit-columns.interface";
4
- import { IEntityFilterData } from "./entity.utils.interface";
4
+ import { IEntityFilterData, Nullable } from "./entity.utils.interface";
5
5
  export interface IBillingTransactionEntity extends IEntityAuditColumn {
6
6
  id: number;
7
7
  billingId: number;
@@ -12,7 +12,7 @@ export interface IBillingTransactionEntity extends IEntityAuditColumn {
12
12
  bankCharges?: number;
13
13
  bankId?: number;
14
14
  paymentDate?: string;
15
- referenceNo?: string;
15
+ referenceNo?: Nullable<string>;
16
16
  supportingDocsUrls?: string;
17
17
  status: BillingTransactionStatusEnum;
18
18
  }
@@ -69,8 +69,6 @@ import { VendorInvoiceHistoryEntityModel } from "../model/vendor_invoice_history
69
69
  import { VendorInvoiceItemEntityModel } from "../model/vendor_invoice_item.entity.model";
70
70
  import { VendorInvoiceItemHistoryEntityModel } from "../model/vendor_invoice_item_history.entity.model";
71
71
  import { VendorInvoicePaymentEntityModel } from "../model/vendor_invoice_payment.entity.model";
72
- import { VendorTdsChallanEntityModel } from "../model/vendor_tds_challan.entity.model";
73
- import { VendorTdsLiabilityEntityModel } from "../model/vendor_tds_liability.entity.model";
74
72
  import { VoucherTypeEntityModel } from "../model/voucher_type.entity.model";
75
73
  import { WebsiteLeadEntityModel } from "../model/website_lead.entity.model";
76
74
  import { WebsiteNewsletterSubscriptionEntityModel } from "../model/website_newsletter_subscription.entity.model";
@@ -138,8 +136,6 @@ import { IVendorEntity } from "./vendor.entity.interface";
138
136
  import { IVendorInvoiceEntity } from "./vendor_invoice.entity.interface";
139
137
  import { IVendorInvoiceItemEntity } from "./vendor_invoice_item.entity.interface";
140
138
  import { IVendorInvoicePaymentEntity } from "./vendor_invoice_payment.entity.interface";
141
- import { IVendorTdsChallanEntity } from "./vendor_tds_challan.entity.interface";
142
- import { IVendorTdsLiabilityEntity } from "./vendor_tds_liability.entity.interface";
143
139
  import { IVendorInvoiceHistoryEntity } from "./vendot-invoice-history.entity.interface";
144
140
  import { IVoucherTypeEntity } from "./voucher_type.entity.interface";
145
141
  import { IWebsiteLeadEntity } from "./website_lead.entity.interface";
@@ -253,9 +249,7 @@ export declare enum EntityEnum {
253
249
  CLIENT_QUOTE_RATE = "client_quote_rate",
254
250
  ENTITY_HISTORY = "entity_history",
255
251
  VENDOR_INVOICE_PAYMENT = "vendor_invoice_payment",
256
- LEAVE_APPROVAL = "leave_approval",
257
- VENDOR_TDS_LIABILITY = "vendor_tds_liability",
258
- VENDOR_TDS_CHALLAN = "vendor_tds_challan"
252
+ LEAVE_APPROVAL = "leave_approval"
259
253
  }
260
254
  export type EntityRelations = {
261
255
  [K in EntityEnum | VirtualEntityEnum]: K;
@@ -280,7 +274,7 @@ export type IBaseEntityApiResponse<T> = {
280
274
  [key in EntityEnum | VirtualEntityEnum]?: AggregationFields<EnumToModel<key>>[];
281
275
  };
282
276
  };
283
- export type EnumEntityType<T extends EntityEnum | VirtualEntityEnum> = (T extends EntityEnum.BILLING ? IBillingEntity : T extends EntityEnum.BILLING_HISTORY ? IBillingHistoryEntity : T extends EntityEnum.MOVING_TIMESHEET ? IMovingTimesheetEntity : T extends EntityEnum.BILLING_TIMESHEET ? IBillingTimesheetEntity : T extends EntityEnum.BILLING_REIMBURSEMENT_EXPENSE ? IBillingReimbursementExpenseEntity : T extends EntityEnum.BILLING_TIMESHEET_HISTORY ? IBillingTimesheetHistoryEntity : T extends EntityEnum.BILLING_REIMBURESMENT_EXPENSE_HISTORY ? IBillingReimbursementExpenseHistoryEntity : T extends EntityEnum.TIMESHEET ? ITimesheetEntity : T extends EntityEnum.USER ? IUserEntity : T extends EntityEnum.PROJECT ? IProjectEntity : T extends EntityEnum.CLIENT ? IClientEntity : T extends EntityEnum.LEAVE ? ILeaveEntity : T extends EntityEnum.BANK ? IBankEntity : T extends EntityEnum.BILLING_TRANSACTION ? IBillingTransactionEntity : T extends EntityEnum.BILLING_TRANSACTION_HISTORY ? IBillingTransactionHistoryEntity : T extends EntityEnum.CLIENT_AFFILIATE ? IClientAffiliateEntity : T extends EntityEnum.CONFIGURATION ? IConfigurationEntity : T extends EntityEnum.HOLIDAY ? IHolidayEntity : T extends EntityEnum.HOLIDAY_LIST ? IHolidayListEntity : T extends EntityEnum.COUNTRY ? ICountryEntity : T extends EntityEnum.EXPENSE_TYPE ? IExpenseTypeEntity : T extends EntityEnum.INDUSTRY ? IIndustryEntity : T extends EntityEnum.INTERMEDIARY_BANK ? IIntermediaryBankEntity : T extends EntityEnum.OFFICE_LOCATION ? IOfficeLocationEntity : T extends EntityEnum.PERMISSION ? IPermissionEntity : T extends EntityEnum.ROLE ? IRoleEntity : T extends EntityEnum.TASK ? ITaskEntity : T extends EntityEnum.DESIGNATION ? IDesignationEntity : T extends EntityEnum.RATE ? IRateEntity : T extends EntityEnum.REIMBURSEMENT ? IReimbursementEntity : T extends EntityEnum.REIMBURSEMENT_EXPENSE ? IReimbursementExpenseEntity : T extends EntityEnum.REIMBURSEMENT_HISTORY ? IReimbursementHistoryEntity : T extends EntityEnum.WORK_FROM_HOME ? IWorkFromHomeEntity : T extends EntityEnum.ORGANIZATION ? IOrganizationEntity : T extends EntityEnum.PROJECT_USER_MAPPING ? IProjectUserMappingEntity : T extends EntityEnum.CLIENT_USER_MAPPING ? IClientUserMappingEntity : T extends EntityEnum.CLIENT_INTRODUCING_MAPPING ? IClientIntroducingMappingEntity : T extends EntityEnum.TO_DO_LIST ? IToDoListEntity : T extends EntityEnum.CRON_JOBS ? ICronJobsEntity : T extends EntityEnum.ROLE_PERMISSION_MAPPING ? IRolePermissionMappingEntity : T extends EntityEnum.BANK_HISTORY ? IBankHistoryEntity : T extends VirtualEntityEnum.LEAVE_COUNT ? ILeaveCountVirtualEntity : T extends EntityEnum.LEAVE_HISTORY ? ILeaveHistoryEntity : T extends EntityEnum.WORK_FROM_HOME_HISTORY ? IWorkFromHomeHistoryEntity : T extends EntityEnum.TIMESHEET_HISTORY ? ITimesheetHistoryEntity : T extends EntityEnum.ADDRESS_BOOK ? IAddressBookEntity : T extends EntityEnum.STATE ? IStateEntity : T extends EntityEnum.GST_RATE ? IGstRateEntity : T extends EntityEnum.ORGANIZATION_TYPE ? IOrganizationTypeEntity : T extends EntityEnum.TDS_RATE ? ITdsRateEntity : T extends EntityEnum.ORGANIZATION_TYPE_TDS_RATE_MAPPING ? IOrganizationTypeTdsRateMappingEntity : T extends EntityEnum.VOUCHER_TYPE ? IVoucherTypeEntity : T extends EntityEnum.TDS_RATE_VOUCHER_TYPE_MAPPING ? ITdsRateVoucherTypeMappingEntity : T extends EntityEnum.EXPENSE_HEAD ? IExpenseHeadEntity : T extends EntityEnum.DOCUMENT_UPLOAD ? IDocumentUploadEntity : T extends EntityEnum.VENDOR ? IVendorEntity : T extends EntityEnum.VENDOR_INVOICE ? IVendorInvoiceEntity : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? IVendorInvoiceHistoryEntity : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? IVendorInvoiceHistoryEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM ? IVendorInvoiceItemEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? IVendorInvoiceItemHistoryEntity : T extends EntityEnum.VENDOR_HISTORY ? IVendorHistoryEntity : T extends EntityEnum.WEBSITE_LEAD ? IWebsiteLeadEntity : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? IWebsiteNewsletterSubscriptionEntity : T extends EntityEnum.CLIENT_QUOTE ? IClientQuoteEntity : T extends EntityEnum.CLIENT_QUOTE_RATE ? IClientQuoteRateEntity : T extends EntityEnum.BILLING_PROFILE ? IBillingProfileEntity : T extends EntityEnum.PROJECT_REVENUE_SPLIT_MAPPING ? IProjectRevenueSplitMappingEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? IVendorInvoiceItemHistoryEntity : T extends EntityEnum.VENDOR_HISTORY ? IVendorHistoryEntity : T extends EntityEnum.WEBSITE_LEAD ? IWebsiteLeadEntity : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? IWebsiteNewsletterSubscriptionEntity : T extends EntityEnum.CLIENT_QUOTE ? IClientQuoteEntity : T extends EntityEnum.CLIENT_QUOTE_RATE ? IClientQuoteRateEntity : T extends EntityEnum.ENTITY_HISTORY ? IEntityHistoryEntity : T extends EntityEnum.LEAVE_APPROVAL ? ILeaveApprovalEntity : T extends EntityEnum.VENDOR_INVOICE_PAYMENT ? IVendorInvoicePaymentEntity : T extends EntityEnum.VENDOR_TDS_LIABILITY ? IVendorTdsLiabilityEntity : T extends EntityEnum.VENDOR_TDS_CHALLAN ? IVendorTdsChallanEntity : never) & {
277
+ export type EnumEntityType<T extends EntityEnum | VirtualEntityEnum> = (T extends EntityEnum.BILLING ? IBillingEntity : T extends EntityEnum.BILLING_HISTORY ? IBillingHistoryEntity : T extends EntityEnum.MOVING_TIMESHEET ? IMovingTimesheetEntity : T extends EntityEnum.BILLING_TIMESHEET ? IBillingTimesheetEntity : T extends EntityEnum.BILLING_REIMBURSEMENT_EXPENSE ? IBillingReimbursementExpenseEntity : T extends EntityEnum.BILLING_TIMESHEET_HISTORY ? IBillingTimesheetHistoryEntity : T extends EntityEnum.BILLING_REIMBURESMENT_EXPENSE_HISTORY ? IBillingReimbursementExpenseHistoryEntity : T extends EntityEnum.TIMESHEET ? ITimesheetEntity : T extends EntityEnum.USER ? IUserEntity : T extends EntityEnum.PROJECT ? IProjectEntity : T extends EntityEnum.CLIENT ? IClientEntity : T extends EntityEnum.LEAVE ? ILeaveEntity : T extends EntityEnum.BANK ? IBankEntity : T extends EntityEnum.BILLING_TRANSACTION ? IBillingTransactionEntity : T extends EntityEnum.BILLING_TRANSACTION_HISTORY ? IBillingTransactionHistoryEntity : T extends EntityEnum.CLIENT_AFFILIATE ? IClientAffiliateEntity : T extends EntityEnum.CONFIGURATION ? IConfigurationEntity : T extends EntityEnum.HOLIDAY ? IHolidayEntity : T extends EntityEnum.HOLIDAY_LIST ? IHolidayListEntity : T extends EntityEnum.COUNTRY ? ICountryEntity : T extends EntityEnum.EXPENSE_TYPE ? IExpenseTypeEntity : T extends EntityEnum.INDUSTRY ? IIndustryEntity : T extends EntityEnum.INTERMEDIARY_BANK ? IIntermediaryBankEntity : T extends EntityEnum.OFFICE_LOCATION ? IOfficeLocationEntity : T extends EntityEnum.PERMISSION ? IPermissionEntity : T extends EntityEnum.ROLE ? IRoleEntity : T extends EntityEnum.TASK ? ITaskEntity : T extends EntityEnum.DESIGNATION ? IDesignationEntity : T extends EntityEnum.RATE ? IRateEntity : T extends EntityEnum.REIMBURSEMENT ? IReimbursementEntity : T extends EntityEnum.REIMBURSEMENT_EXPENSE ? IReimbursementExpenseEntity : T extends EntityEnum.REIMBURSEMENT_HISTORY ? IReimbursementHistoryEntity : T extends EntityEnum.WORK_FROM_HOME ? IWorkFromHomeEntity : T extends EntityEnum.ORGANIZATION ? IOrganizationEntity : T extends EntityEnum.PROJECT_USER_MAPPING ? IProjectUserMappingEntity : T extends EntityEnum.CLIENT_USER_MAPPING ? IClientUserMappingEntity : T extends EntityEnum.CLIENT_INTRODUCING_MAPPING ? IClientIntroducingMappingEntity : T extends EntityEnum.TO_DO_LIST ? IToDoListEntity : T extends EntityEnum.CRON_JOBS ? ICronJobsEntity : T extends EntityEnum.ROLE_PERMISSION_MAPPING ? IRolePermissionMappingEntity : T extends EntityEnum.BANK_HISTORY ? IBankHistoryEntity : T extends VirtualEntityEnum.LEAVE_COUNT ? ILeaveCountVirtualEntity : T extends EntityEnum.LEAVE_HISTORY ? ILeaveHistoryEntity : T extends EntityEnum.WORK_FROM_HOME_HISTORY ? IWorkFromHomeHistoryEntity : T extends EntityEnum.TIMESHEET_HISTORY ? ITimesheetHistoryEntity : T extends EntityEnum.ADDRESS_BOOK ? IAddressBookEntity : T extends EntityEnum.STATE ? IStateEntity : T extends EntityEnum.GST_RATE ? IGstRateEntity : T extends EntityEnum.ORGANIZATION_TYPE ? IOrganizationTypeEntity : T extends EntityEnum.TDS_RATE ? ITdsRateEntity : T extends EntityEnum.ORGANIZATION_TYPE_TDS_RATE_MAPPING ? IOrganizationTypeTdsRateMappingEntity : T extends EntityEnum.VOUCHER_TYPE ? IVoucherTypeEntity : T extends EntityEnum.TDS_RATE_VOUCHER_TYPE_MAPPING ? ITdsRateVoucherTypeMappingEntity : T extends EntityEnum.EXPENSE_HEAD ? IExpenseHeadEntity : T extends EntityEnum.DOCUMENT_UPLOAD ? IDocumentUploadEntity : T extends EntityEnum.VENDOR ? IVendorEntity : T extends EntityEnum.VENDOR_INVOICE ? IVendorInvoiceEntity : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? IVendorInvoiceHistoryEntity : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? IVendorInvoiceHistoryEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM ? IVendorInvoiceItemEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? IVendorInvoiceItemHistoryEntity : T extends EntityEnum.VENDOR_HISTORY ? IVendorHistoryEntity : T extends EntityEnum.WEBSITE_LEAD ? IWebsiteLeadEntity : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? IWebsiteNewsletterSubscriptionEntity : T extends EntityEnum.CLIENT_QUOTE ? IClientQuoteEntity : T extends EntityEnum.CLIENT_QUOTE_RATE ? IClientQuoteRateEntity : T extends EntityEnum.BILLING_PROFILE ? IBillingProfileEntity : T extends EntityEnum.PROJECT_REVENUE_SPLIT_MAPPING ? IProjectRevenueSplitMappingEntity : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? IVendorInvoiceItemHistoryEntity : T extends EntityEnum.VENDOR_HISTORY ? IVendorHistoryEntity : T extends EntityEnum.WEBSITE_LEAD ? IWebsiteLeadEntity : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? IWebsiteNewsletterSubscriptionEntity : T extends EntityEnum.CLIENT_QUOTE ? IClientQuoteEntity : T extends EntityEnum.CLIENT_QUOTE_RATE ? IClientQuoteRateEntity : T extends EntityEnum.ENTITY_HISTORY ? IEntityHistoryEntity : T extends EntityEnum.LEAVE_APPROVAL ? ILeaveApprovalEntity : T extends EntityEnum.VENDOR_INVOICE_PAYMENT ? IVendorInvoicePaymentEntity : never) & {
284
278
  id: number;
285
279
  };
286
280
  export type EntityRelationConfig<T extends EntityEnum | VirtualEntityEnum> = {
@@ -412,7 +406,7 @@ export declare enum VirtualEntityEnum {
412
406
  }
413
407
  export type IHistoryConstraintSearchResponse<T> = IBaseResponse<IHistoryEntitySearchByConstraintResponse<T>[]>;
414
408
  export type IHistoryConstraintSearchServiceResponse<T> = IHistoryEntitySearchByConstraintResponse<T>[];
415
- export type EnumToModel<T extends EntityEnum | VirtualEntityEnum> = T extends EntityEnum.BILLING ? BillingEntityModel : T extends EntityEnum.BILLING_HISTORY ? BillingHistoryEntityModel : T extends EntityEnum.CLIENT ? ClientEntityModel : T extends EntityEnum.INTERMEDIARY_BANK ? IntermediaryBankEntityModel : T extends EntityEnum.PROJECT ? ProjectEntityModel : T extends EntityEnum.PROJECT_USER_MAPPING ? ProjectUserMappingEntityModel : T extends EntityEnum.REIMBURSEMENT ? ReimbursementEntityModel : T extends EntityEnum.REIMBURSEMENT_EXPENSE ? ReimbursementExpenseEntityModel : T extends EntityEnum.BILLING_REIMBURSEMENT_EXPENSE ? BillingReimbursementExpneseEntityModel : T extends EntityEnum.BILLING_REIMBURESMENT_EXPENSE_HISTORY ? BillingReimbursementExpenseHistoryEntityModel : T extends EntityEnum.LEAVE ? LeaveEntityModel : T extends EntityEnum.WORK_FROM_HOME ? WorkFromHomeEntityModel : T extends EntityEnum.HOLIDAY ? HolidayEntityModel : T extends VirtualEntityEnum.LEAVE_COUNT ? LeaveCountVirtualEntityModel : T extends EntityEnum.CLIENT_AFFILIATE ? ClientAffiliateEntityModel : T extends EntityEnum.BANK ? BankEntityModel : T extends EntityEnum.CONFIGURATION ? ConfigurationEntityModel : T extends EntityEnum.TASK ? TaskEntityModel : T extends EntityEnum.BILLING_TIMESHEET ? BillingTimesheetEntityModel : T extends EntityEnum.BILLING_TIMESHEET_HISTORY ? BillingTimesheetHistoryEntityModel : T extends EntityEnum.TIMESHEET ? TimesheetEntityModel : T extends EntityEnum.MOVING_TIMESHEET ? MovingTimesheetEntityModel : T extends EntityEnum.TIMESHEET_HISTORY ? TimesheetHistoryEntityModel : T extends EntityEnum.COUNTRY ? CountryEntityModel : T extends EntityEnum.BILLING_TRANSACTION ? BillingTransactionEntityModel : T extends EntityEnum.BILLING_TRANSACTION_HISTORY ? BillingTransactionHistoryEntityModel : T extends EntityEnum.ADDRESS_BOOK ? AddressBookEntityModel : T extends EntityEnum.STATE ? StateEntityModel : T extends EntityEnum.GST_RATE ? GstRateEntityModel : T extends EntityEnum.ORGANIZATION_TYPE ? OrganizationTypeEntityModel : T extends EntityEnum.TDS_RATE ? TdsRateEntityModel : T extends EntityEnum.ORGANIZATION_TYPE_TDS_RATE_MAPPING ? OrganizationTypeTdsRateMappingEntityModel : T extends EntityEnum.VOUCHER_TYPE ? VoucherTypeEntityModel : T extends EntityEnum.TDS_RATE_VOUCHER_TYPE_MAPPING ? TdsRateVoucherTypeMappingEntityModel : T extends EntityEnum.ORGANIZATION ? OrganizationEntityModel : T extends EntityEnum.INDUSTRY ? IndustryEntityModel : T extends EntityEnum.EXPENSE_TYPE ? ExpenseTypeEntityModel : T extends EntityEnum.DESIGNATION ? DesignationEntityModel : T extends EntityEnum.RATE ? RateEntityModel : T extends EntityEnum.ROLE ? RoleEntityModel : T extends EntityEnum.ROLE_PERMISSION_MAPPING ? RolePermissionMappingEntityModel : T extends EntityEnum.PERMISSION ? PermissionEntityModel : T extends EntityEnum.EXPENSE_HEAD ? ExpenseHeadEntityModel : T extends EntityEnum.DOCUMENT_UPLOAD ? DocumentUploadEntityModel : T extends EntityEnum.VENDOR ? VendorEntityModel : T extends EntityEnum.VENDOR_INVOICE ? VendorInvoiceEntityModel : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? VendorInvoiceHistoryEntityModel : T extends EntityEnum.OFFICE_LOCATION ? OfficeLocationEntityModel : T extends EntityEnum.VENDOR_INVOICE_ITEM ? VendorInvoiceItemEntityModel : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? VendorInvoiceItemHistoryEntityModel : T extends EntityEnum.VENDOR_HISTORY ? VendorHistoryEntityModel : T extends EntityEnum.WEBSITE_LEAD ? WebsiteLeadEntityModel : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? WebsiteNewsletterSubscriptionEntityModel : T extends EntityEnum.WORK_FROM_HOME_HISTORY ? WorkFromHomeHistoryEntityModel : T extends EntityEnum.LEAVE_HISTORY ? LeaveHistoryEntityModel : T extends EntityEnum.BANK_HISTORY ? BankHistoryEntityModel : T extends EntityEnum.REIMBURSEMENT_HISTORY ? ReimbursementHistoryEntityModel : T extends EntityEnum.CLIENT_USER_MAPPING ? ClientUserMappingEntityModel : T extends EntityEnum.CLIENT_INTRODUCING_MAPPING ? ClientIntroducingMappingEntityModel : T extends EntityEnum.HOLIDAY_LIST ? HolidayListEntityModel : T extends EntityEnum.CRON_JOBS ? CronJobsEntityModel : T extends EntityEnum.TO_DO_LIST ? ToDoListEntityModel : T extends EntityEnum.CLIENT_QUOTE ? ClientQuoteEntityModel : T extends EntityEnum.CLIENT_QUOTE_RATE ? ClientQuoteRateEntityModel : T extends EntityEnum.BILLING_PROFILE ? BillingProfileEntityModel : T extends EntityEnum.PROJECT_REVENUE_SPLIT_MAPPING ? ProjectRevenueSplitMappingEntityModel : T extends EntityEnum.WEBSITE_LEAD ? WebsiteLeadEntityModel : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? WebsiteNewsletterSubscriptionEntityModel : T extends EntityEnum.CLIENT_QUOTE ? ClientQuoteEntityModel : T extends EntityEnum.CLIENT_QUOTE_RATE ? ClientQuoteRateEntityModel : T extends EntityEnum.DESIGNATION ? DesignationEntityModel : T extends EntityEnum.RATE ? RateEntityModel : T extends EntityEnum.ENTITY_HISTORY ? EntityHistoryEntityModel : T extends EntityEnum.LEAVE_APPROVAL ? LeaveApprovalEntityModel : T extends EntityEnum.VENDOR_INVOICE_PAYMENT ? VendorInvoicePaymentEntityModel : T extends EntityEnum.VENDOR_TDS_LIABILITY ? VendorTdsLiabilityEntityModel : T extends EntityEnum.VENDOR_TDS_CHALLAN ? VendorTdsChallanEntityModel : UserEntityModel;
409
+ export type EnumToModel<T extends EntityEnum | VirtualEntityEnum> = T extends EntityEnum.BILLING ? BillingEntityModel : T extends EntityEnum.BILLING_HISTORY ? BillingHistoryEntityModel : T extends EntityEnum.CLIENT ? ClientEntityModel : T extends EntityEnum.INTERMEDIARY_BANK ? IntermediaryBankEntityModel : T extends EntityEnum.PROJECT ? ProjectEntityModel : T extends EntityEnum.PROJECT_USER_MAPPING ? ProjectUserMappingEntityModel : T extends EntityEnum.REIMBURSEMENT ? ReimbursementEntityModel : T extends EntityEnum.REIMBURSEMENT_EXPENSE ? ReimbursementExpenseEntityModel : T extends EntityEnum.BILLING_REIMBURSEMENT_EXPENSE ? BillingReimbursementExpneseEntityModel : T extends EntityEnum.BILLING_REIMBURESMENT_EXPENSE_HISTORY ? BillingReimbursementExpenseHistoryEntityModel : T extends EntityEnum.LEAVE ? LeaveEntityModel : T extends EntityEnum.WORK_FROM_HOME ? WorkFromHomeEntityModel : T extends EntityEnum.HOLIDAY ? HolidayEntityModel : T extends VirtualEntityEnum.LEAVE_COUNT ? LeaveCountVirtualEntityModel : T extends EntityEnum.CLIENT_AFFILIATE ? ClientAffiliateEntityModel : T extends EntityEnum.BANK ? BankEntityModel : T extends EntityEnum.CONFIGURATION ? ConfigurationEntityModel : T extends EntityEnum.TASK ? TaskEntityModel : T extends EntityEnum.BILLING_TIMESHEET ? BillingTimesheetEntityModel : T extends EntityEnum.BILLING_TIMESHEET_HISTORY ? BillingTimesheetHistoryEntityModel : T extends EntityEnum.TIMESHEET ? TimesheetEntityModel : T extends EntityEnum.MOVING_TIMESHEET ? MovingTimesheetEntityModel : T extends EntityEnum.TIMESHEET_HISTORY ? TimesheetHistoryEntityModel : T extends EntityEnum.COUNTRY ? CountryEntityModel : T extends EntityEnum.BILLING_TRANSACTION ? BillingTransactionEntityModel : T extends EntityEnum.BILLING_TRANSACTION_HISTORY ? BillingTransactionHistoryEntityModel : T extends EntityEnum.ADDRESS_BOOK ? AddressBookEntityModel : T extends EntityEnum.STATE ? StateEntityModel : T extends EntityEnum.GST_RATE ? GstRateEntityModel : T extends EntityEnum.ORGANIZATION_TYPE ? OrganizationTypeEntityModel : T extends EntityEnum.TDS_RATE ? TdsRateEntityModel : T extends EntityEnum.ORGANIZATION_TYPE_TDS_RATE_MAPPING ? OrganizationTypeTdsRateMappingEntityModel : T extends EntityEnum.VOUCHER_TYPE ? VoucherTypeEntityModel : T extends EntityEnum.TDS_RATE_VOUCHER_TYPE_MAPPING ? TdsRateVoucherTypeMappingEntityModel : T extends EntityEnum.ORGANIZATION ? OrganizationEntityModel : T extends EntityEnum.INDUSTRY ? IndustryEntityModel : T extends EntityEnum.EXPENSE_TYPE ? ExpenseTypeEntityModel : T extends EntityEnum.DESIGNATION ? DesignationEntityModel : T extends EntityEnum.RATE ? RateEntityModel : T extends EntityEnum.ROLE ? RoleEntityModel : T extends EntityEnum.ROLE_PERMISSION_MAPPING ? RolePermissionMappingEntityModel : T extends EntityEnum.PERMISSION ? PermissionEntityModel : T extends EntityEnum.EXPENSE_HEAD ? ExpenseHeadEntityModel : T extends EntityEnum.DOCUMENT_UPLOAD ? DocumentUploadEntityModel : T extends EntityEnum.VENDOR ? VendorEntityModel : T extends EntityEnum.VENDOR_INVOICE ? VendorInvoiceEntityModel : T extends EntityEnum.VENDOR_INVOICE_HISTORY ? VendorInvoiceHistoryEntityModel : T extends EntityEnum.OFFICE_LOCATION ? OfficeLocationEntityModel : T extends EntityEnum.VENDOR_INVOICE_ITEM ? VendorInvoiceItemEntityModel : T extends EntityEnum.VENDOR_INVOICE_ITEM_HISTORY ? VendorInvoiceItemHistoryEntityModel : T extends EntityEnum.VENDOR_HISTORY ? VendorHistoryEntityModel : T extends EntityEnum.WEBSITE_LEAD ? WebsiteLeadEntityModel : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? WebsiteNewsletterSubscriptionEntityModel : T extends EntityEnum.WORK_FROM_HOME_HISTORY ? WorkFromHomeHistoryEntityModel : T extends EntityEnum.LEAVE_HISTORY ? LeaveHistoryEntityModel : T extends EntityEnum.BANK_HISTORY ? BankHistoryEntityModel : T extends EntityEnum.REIMBURSEMENT_HISTORY ? ReimbursementHistoryEntityModel : T extends EntityEnum.CLIENT_USER_MAPPING ? ClientUserMappingEntityModel : T extends EntityEnum.CLIENT_INTRODUCING_MAPPING ? ClientIntroducingMappingEntityModel : T extends EntityEnum.HOLIDAY_LIST ? HolidayListEntityModel : T extends EntityEnum.CRON_JOBS ? CronJobsEntityModel : T extends EntityEnum.TO_DO_LIST ? ToDoListEntityModel : T extends EntityEnum.CLIENT_QUOTE ? ClientQuoteEntityModel : T extends EntityEnum.CLIENT_QUOTE_RATE ? ClientQuoteRateEntityModel : T extends EntityEnum.BILLING_PROFILE ? BillingProfileEntityModel : T extends EntityEnum.PROJECT_REVENUE_SPLIT_MAPPING ? ProjectRevenueSplitMappingEntityModel : T extends EntityEnum.WEBSITE_LEAD ? WebsiteLeadEntityModel : T extends EntityEnum.WEBSITE_NEWSLETTER_SUBSCRIPTION ? WebsiteNewsletterSubscriptionEntityModel : T extends EntityEnum.CLIENT_QUOTE ? ClientQuoteEntityModel : T extends EntityEnum.CLIENT_QUOTE_RATE ? ClientQuoteRateEntityModel : T extends EntityEnum.DESIGNATION ? DesignationEntityModel : T extends EntityEnum.RATE ? RateEntityModel : T extends EntityEnum.ENTITY_HISTORY ? EntityHistoryEntityModel : T extends EntityEnum.LEAVE_APPROVAL ? LeaveApprovalEntityModel : T extends EntityEnum.VENDOR_INVOICE_PAYMENT ? VendorInvoicePaymentEntityModel : UserEntityModel;
416
410
  export type EntityMap = {
417
411
  [key in EntityEnum | VirtualEntityEnum]: EnumToModel<key>[];
418
412
  } & {
@@ -102,8 +102,6 @@ var EntityEnum;
102
102
  EntityEnum["ENTITY_HISTORY"] = "entity_history";
103
103
  EntityEnum["VENDOR_INVOICE_PAYMENT"] = "vendor_invoice_payment";
104
104
  EntityEnum["LEAVE_APPROVAL"] = "leave_approval";
105
- EntityEnum["VENDOR_TDS_LIABILITY"] = "vendor_tds_liability";
106
- EntityEnum["VENDOR_TDS_CHALLAN"] = "vendor_tds_challan";
107
105
  })(EntityEnum || (exports.EntityEnum = EntityEnum = {}));
108
106
  var VirtualEntityEnum;
109
107
  (function (VirtualEntityEnum) {
@@ -1,4 +1,5 @@
1
1
  import { TimesheetActionEnum } from "../enums/timesheet.action.enum";
2
+ import { TimesheetClassificationStatusEnum } from "../enums/timesheet.classification.status.enum";
2
3
  import { TimesheetStatusEnum } from "../enums/timesheet.status.enum";
3
4
  import { ProjectUserMappingEntityModel } from "../model/project-user-mapping.entity.model";
4
5
  import { TimesheetEntityModel } from "../model/timesheet.entity.model";
@@ -16,10 +17,15 @@ export interface ITimesheetEntity extends IEntityAuditColumn {
16
17
  status: TimesheetStatusEnum;
17
18
  remark?: string;
18
19
  billingId?: number;
20
+ billedDuration?: number;
21
+ notBilledDuration?: number;
22
+ classificationStatus: TimesheetClassificationStatusEnum;
23
+ classifiedBy?: number;
19
24
  }
20
- export type ITimesheetEntityExclude = "status";
25
+ export type ITimesheetEntityExclude = "status" | "billedDuration" | "notBilledDuration" | "classificationStatus" | "classifiedBy";
21
26
  export interface ITimesheetEntityCreateDto extends Omit<IEntityCreateDto<ITimesheetEntity>, ITimesheetEntityExclude> {
22
27
  status?: TimesheetStatusEnum;
28
+ classificationStatus?: TimesheetClassificationStatusEnum;
23
29
  }
24
30
  export interface ITimesheetEntityCreateDtoValidationData {
25
31
  projectUserMappingEntities: ProjectUserMappingEntityModel[];
@@ -1,7 +1,8 @@
1
+ import { CurrencyEnum } from "../../enums";
1
2
  import { BillingTransactionStatusEnum } from "../enums/billing-transaction-status.enum";
2
3
  import { BillingTransactionType } from "../enums/billing.transaction.enum";
3
4
  import { IBillingTransactionEntity } from "../interface/billing_transaction.entity.interface";
4
- import { EntityEnum } from "../interface/entity.utils.interface";
5
+ import { EntityEnum, Nullable } from "../interface/entity.utils.interface";
5
6
  import { RelationConfigs } from "../interface/relation-config.interface";
6
7
  import { BankEntityModel } from "./bank.entity.model";
7
8
  import { BaseEntityModel } from "./base.entity.model";
@@ -17,7 +18,7 @@ export declare class BillingTransactionEntityModel extends BaseEntityModel<Entit
17
18
  bankCharges?: number;
18
19
  bankId?: number;
19
20
  paymentDate?: string;
20
- referenceNo?: string;
21
+ referenceNo?: Nullable<string>;
21
22
  supportingDocsUrls?: string;
22
23
  status: BillingTransactionStatusEnum;
23
24
  createdOn: number;
@@ -32,4 +33,8 @@ export declare class BillingTransactionEntityModel extends BaseEntityModel<Entit
32
33
  static relationConfigs: RelationConfigs<[EntityEnum.USER, EntityEnum.USER, EntityEnum.BANK, EntityEnum.BILLING], EntityEnum.BILLING_TRANSACTION>;
33
34
  static fromEntity(entity: IBillingTransactionEntity): BillingTransactionEntityModel;
34
35
  static sumAmounts(transactions: BillingTransactionEntityModel[]): number;
36
+ get isForeignCurrencyTransaction(): boolean;
37
+ get transactionCurrency(): CurrencyEnum;
38
+ getFileName(): string;
39
+ get isBillingSettled(): boolean;
35
40
  }
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BillingTransactionEntityModel = void 0;
4
4
  const utils_1 = require("../../utils");
5
5
  const billing_transaction_status_enum_1 = require("../enums/billing-transaction-status.enum");
6
+ const billing_status_enum_1 = require("../enums/billing.status.enum");
6
7
  const billing_transaction_enum_1 = require("../enums/billing.transaction.enum");
7
8
  const relation_type_enum_1 = require("../enums/relation-type.enum");
8
9
  const entity_utils_interface_1 = require("../interface/entity.utils.interface");
@@ -21,6 +22,23 @@ class BillingTransactionEntityModel extends base_entity_model_1.BaseEntityModel
21
22
  this.updatedOn = 0;
22
23
  this.createdBy = 0;
23
24
  this.updatedBy = 0;
25
+ // static getUnsettledCreditNoteSummary(
26
+ // creditNotes: BillingTransactionEntityModel[],
27
+ // adjustedCreditNotes: BillingTransactionEntityModel[],
28
+ // ): { creditNote: BillingTransactionEntityModel; amountPendingToBeSettled: number }[] {
29
+ // return creditNotes.reduce(
30
+ // (acc, creditNote) => {
31
+ // const creditNoteAmount = getDecimalNumberFromString(creditNote.amount);
32
+ // const totalAdjusted = BillingTransactionEntityModel.sumAmounts(adjustedCreditNotes.filter((adj) => adj.referenceNo === creditNote.referenceNo));
33
+ // const amountPendingToBeSettled = creditNoteAmount - totalAdjusted;
34
+ // if (amountPendingToBeSettled > 0) {
35
+ // acc.push({ creditNote, amountPendingToBeSettled });
36
+ // }
37
+ // return acc;
38
+ // },
39
+ // [] as { creditNote: BillingTransactionEntityModel; amountPendingToBeSettled: number }[],
40
+ // );
41
+ // }
24
42
  }
25
43
  // billing?: BillingEntityModel;
26
44
  // bank?: BankEntityModel;
@@ -40,6 +58,26 @@ class BillingTransactionEntityModel extends base_entity_model_1.BaseEntityModel
40
58
  });
41
59
  }), "amount");
42
60
  }
61
+ get isForeignCurrencyTransaction() {
62
+ var _a, _b;
63
+ return (_b = (_a = this.billing) === null || _a === void 0 ? void 0 : _a.isForeignBilling) !== null && _b !== void 0 ? _b : false;
64
+ }
65
+ get transactionCurrency() {
66
+ var _a, _b;
67
+ return (_b = (_a = this.billing) === null || _a === void 0 ? void 0 : _a.currency) !== null && _b !== void 0 ? _b : "";
68
+ }
69
+ getFileName() {
70
+ var _a, _b, _c, _d, _e, _f;
71
+ const { dateCode, timeCode } = utils_1.DateCodeModel.getCurrentISTDateTimeCode();
72
+ const invoiceNo = (_b = (_a = this.billing) === null || _a === void 0 ? void 0 : _a.invoiceNumber) !== null && _b !== void 0 ? _b : "";
73
+ const clientName = ((_d = (_c = this.billing) === null || _c === void 0 ? void 0 : _c.clientName) !== null && _d !== void 0 ? _d : "").replace(/ /g, "_");
74
+ const projectName = ((_f = (_e = this.billing) === null || _e === void 0 ? void 0 : _e.projectName) !== null && _f !== void 0 ? _f : "").replace(/ /g, "_");
75
+ return `${this.type}_${invoiceNo}_${clientName}_${projectName}_${dateCode}_${timeCode}`;
76
+ }
77
+ get isBillingSettled() {
78
+ var _a;
79
+ return ((_a = this.billing) === null || _a === void 0 ? void 0 : _a.status) === billing_status_enum_1.BillingStatusEnum.SETTLED;
80
+ }
43
81
  }
44
82
  exports.BillingTransactionEntityModel = BillingTransactionEntityModel;
45
83
  BillingTransactionEntityModel.relationConfigs = [
@@ -8,6 +8,7 @@ import { BillingTypeEnum } from "../enums/billing-type.enum";
8
8
  import { BillingActionsEnum } from "../enums/billing.action.enum";
9
9
  import { BillingStatusEnum } from "../enums/billing.status.enum";
10
10
  import { BillingInvoiceTypeEnum } from "../enums/billing_invoice_type.enum";
11
+ import { BillingProfileCode } from "../enums/billing_profile_code.enum";
11
12
  import { BillingInvoiceNumberPrefixEnum } from "../enums/invoice-number-prefix.enum";
12
13
  import { PaymentStatusEnum } from "../enums/payment_status.enum";
13
14
  import { IBillingEntity } from "../interface/billing.entity.interface";
@@ -158,4 +159,8 @@ export declare class BillingEntityModel extends BaseEntityModel<EntityEnum.BILLI
158
159
  get isForeignCurrencyProject(): boolean;
159
160
  get isProformaInvoice(): boolean;
160
161
  get title(): BillingTemplateTitle;
162
+ get billingProfileName(): string;
163
+ get billingProfileCode(): BillingProfileCode;
164
+ get poNumber(): Nullable<string>;
165
+ get creditNoteTransactions(): BillingTransactionEntityModel[] | undefined;
161
166
  }
@@ -12,6 +12,8 @@ const billing_type_enum_1 = require("../enums/billing-type.enum");
12
12
  const billing_status_enum_1 = require("../enums/billing.status.enum");
13
13
  const billing_transaction_enum_1 = require("../enums/billing.transaction.enum");
14
14
  const billing_invoice_type_enum_1 = require("../enums/billing_invoice_type.enum");
15
+ const billing_profile_enum_1 = require("../enums/billing_profile.enum");
16
+ const billing_profile_code_enum_1 = require("../enums/billing_profile_code.enum");
15
17
  const invoice_number_prefix_enum_1 = require("../enums/invoice-number-prefix.enum");
16
18
  const payment_status_enum_1 = require("../enums/payment_status.enum");
17
19
  const relation_type_enum_1 = require("../enums/relation-type.enum");
@@ -48,6 +50,9 @@ class BillingEntityModel extends base_entity_model_1.BaseEntityModel {
48
50
  this.createdOn = 0;
49
51
  this.updatedOn = 0;
50
52
  this.type = billing_type_enum_1.BillingTypeEnum.INVOICE;
53
+ // get adjustedCreditNoteTransactions() {
54
+ // return this.billingTransactions?.filter((transaction) => transaction.type === BillingTransactionType.ADJUST_AGAINST_CREDIT_NOTE);
55
+ // }
51
56
  }
52
57
  static validateDocumentNoDocumentFile(data, deleteDetails) {
53
58
  return (0, utils_1.validateDocumentPairs)(BillingEntityModel.BILLING_ENTITY_DOCUMENT_TYPES, data, deleteDetails);
@@ -241,14 +246,17 @@ class BillingEntityModel extends base_entity_model_1.BaseEntityModel {
241
246
  }
242
247
  getTotalAmountRecieved() {
243
248
  var _a, _b, _c, _d;
244
- const amountRecieved = (0, utils_1.sumNormalised)((_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((transaction) => [billing_transaction_enum_1.BillingTransactionType.TDS, billing_transaction_enum_1.BillingTransactionType.RECEIPT].includes(transaction.type))) !== null && _b !== void 0 ? _b : [], "amount") - (0, utils_1.sumNormalised)((_d = (_c = this.billingTransactions) === null || _c === void 0 ? void 0 : _c.filter((transaction) => transaction.type === billing_transaction_enum_1.BillingTransactionType.REFUND)) !== null && _d !== void 0 ? _d : [], "amount");
249
+ const amountRecieved = (0, utils_1.sumNormalised)((_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((transaction) => [billing_transaction_enum_1.BillingTransactionType.TDS, billing_transaction_enum_1.BillingTransactionType.RECEIPT, /* BillingTransactionType.ADJUST_AGAINST_CREDIT_NOTE */].includes(transaction.type) &&
250
+ transaction.status !== billing_transaction_status_enum_1.BillingTransactionStatusEnum.REJECTED)) !== null && _b !== void 0 ? _b : [], "amount") -
251
+ (0, utils_1.sumNormalised)((_d = (_c = this.billingTransactions) === null || _c === void 0 ? void 0 : _c.filter((transaction) => transaction.type === billing_transaction_enum_1.BillingTransactionType.REFUND && transaction.status !== billing_transaction_status_enum_1.BillingTransactionStatusEnum.REJECTED)) !== null && _d !== void 0 ? _d : [], "amount");
245
252
  return amountRecieved;
246
253
  }
247
254
  getTotalRecievableAmount() {
248
255
  var _a, _b;
249
256
  return ((0, utils_1.getDecimalNumberFromString)(this.totalAmount) -
250
257
  (this.getTotalAmountRecieved() +
251
- (0, utils_1.sumNormalised)((_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((transaction) => [billing_transaction_enum_1.BillingTransactionType.CREDIT_NOTE, billing_transaction_enum_1.BillingTransactionType.WRITE_OFF].includes(transaction.type))) !== null && _b !== void 0 ? _b : [], "amount")));
258
+ (0, utils_1.sumNormalised)((_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((transaction) => [billing_transaction_enum_1.BillingTransactionType.CREDIT_NOTE, billing_transaction_enum_1.BillingTransactionType.WRITE_OFF].includes(transaction.type) &&
259
+ transaction.status !== billing_transaction_status_enum_1.BillingTransactionStatusEnum.REJECTED)) !== null && _b !== void 0 ? _b : [], "amount")));
252
260
  }
253
261
  validateAdvanceBillingId(adjustedBillingTransactions) {
254
262
  const index = adjustedBillingTransactions.findIndex((item) => item.advanceBillingId === null);
@@ -260,8 +268,12 @@ class BillingEntityModel extends base_entity_model_1.BaseEntityModel {
260
268
  }
261
269
  }
262
270
  getApprovedBillingTransactionsTotalAmount() {
263
- var _a, _b;
264
- return (0, utils_1.sumNormalised)((_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((entity) => ![billing_transaction_status_enum_1.BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING, billing_transaction_status_enum_1.BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING].includes(entity.status))) !== null && _b !== void 0 ? _b : [], "amount");
271
+ var _a, _b, _c;
272
+ return (0, utils_1.sumNormalised)((_c = (_b = (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((entity) => ![
273
+ billing_transaction_status_enum_1.BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING,
274
+ billing_transaction_status_enum_1.BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING,
275
+ // BillingTransactionStatusEnum.ADJUST_AGAINST_CREDIT_NOTE_APPROVAL_PENDING,
276
+ ].includes(entity.status))) === null || _b === void 0 ? void 0 : _b.filter((transaction) => transaction.status === billing_transaction_status_enum_1.BillingTransactionStatusEnum.APPROVED)) !== null && _c !== void 0 ? _c : [], "amount");
265
277
  }
266
278
  getCurrentBillingBillingProfile(billingProfiles) {
267
279
  const billingParticularsOfCurrentBilling = this.billingProfileParticulars;
@@ -468,6 +480,19 @@ class BillingEntityModel extends base_entity_model_1.BaseEntityModel {
468
480
  ? constants_1.BillingTemplateTitle.DRAFT_INVOICE
469
481
  : constants_1.BillingTemplateTitle.INVOICE;
470
482
  }
483
+ get billingProfileName() {
484
+ return this.billingProfileParticulars.name;
485
+ }
486
+ get billingProfileCode() {
487
+ return this.billingProfileName === billing_profile_enum_1.BillingProfileName.AGRAM_LEGAL_CONSULTANTS ? billing_profile_code_enum_1.BillingProfileCode.ALC : billing_profile_code_enum_1.BillingProfileCode.ALP;
488
+ }
489
+ get poNumber() {
490
+ return this.billingProfileParticulars.poNumber;
491
+ }
492
+ get creditNoteTransactions() {
493
+ var _a;
494
+ return (_a = this.billingTransactions) === null || _a === void 0 ? void 0 : _a.filter((transaction) => transaction.type === billing_transaction_enum_1.BillingTransactionType.CREDIT_NOTE);
495
+ }
471
496
  }
472
497
  exports.BillingEntityModel = BillingEntityModel;
473
498
  BillingEntityModel.BILLING_ENTITY_DOCUMENT_TYPES = ["invoice"];