law-common 10.68.1-beta.0 → 10.68.2-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.
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.billingTransactionFlowConfig = void 0;
|
|
4
|
+
const billing_transaction_action_enum_1 = require("../enums/billing-transaction-action.enum");
|
|
5
|
+
const billing_transaction_status_enum_1 = require("../enums/billing-transaction-status.enum");
|
|
6
|
+
const billing_transaction_enum_1 = require("../enums/billing.transaction.enum");
|
|
7
|
+
exports.billingTransactionFlowConfig = {
|
|
8
|
+
[billing_transaction_status_enum_1.BillingTransactionStatusEnum.APPROVED]: {
|
|
9
|
+
actions: {
|
|
10
|
+
// [BillingTransactionActionEnum.UPDATE_PAYMENT]: {
|
|
11
|
+
// permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
12
|
+
// next: () => BillingTransactionStatusEnum.APPROVED,
|
|
13
|
+
// },
|
|
14
|
+
// [BillingTransactionActionEnum.TDS]: {
|
|
15
|
+
// permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
16
|
+
// next: () => BillingTransactionStatusEnum.APPROVED,
|
|
17
|
+
// },
|
|
18
|
+
// [BillingTransactionActionEnum.WRITE_OFF]: {
|
|
19
|
+
// permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
20
|
+
// next: () => BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING,
|
|
21
|
+
// },
|
|
22
|
+
// [BillingTransactionActionEnum.CREDIT_NOTE]: {
|
|
23
|
+
// permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
24
|
+
// next: () => BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING,
|
|
25
|
+
// },
|
|
26
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.EDIT]: {
|
|
27
|
+
permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
28
|
+
next: (data) => decideNextStatus(data),
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
[billing_transaction_status_enum_1.BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING]: {
|
|
33
|
+
actions: {
|
|
34
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.APPROVE]: {
|
|
35
|
+
permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
|
|
36
|
+
next: () => billing_transaction_status_enum_1.BillingTransactionStatusEnum.APPROVED,
|
|
37
|
+
},
|
|
38
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.REJECT]: {
|
|
39
|
+
permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
|
|
40
|
+
next: () => billing_transaction_status_enum_1.BillingTransactionStatusEnum.REJECTED,
|
|
41
|
+
},
|
|
42
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.EDIT]: {
|
|
43
|
+
permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
44
|
+
next: (data) => decideNextStatus(data),
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
[billing_transaction_status_enum_1.BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING]: {
|
|
49
|
+
actions: {
|
|
50
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.APPROVE]: {
|
|
51
|
+
permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
|
|
52
|
+
next: () => billing_transaction_status_enum_1.BillingTransactionStatusEnum.APPROVED,
|
|
53
|
+
},
|
|
54
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.REJECT]: {
|
|
55
|
+
permissions: ["BILLING_TRANSACTION_APPROVER_PROJECT", "BILLING_TRANSACTION_APPROVER_ORG"],
|
|
56
|
+
next: () => billing_transaction_status_enum_1.BillingTransactionStatusEnum.REJECTED,
|
|
57
|
+
},
|
|
58
|
+
[billing_transaction_action_enum_1.BillingTransactionActionEnum.EDIT]: {
|
|
59
|
+
permissions: ["BILLING_TRANSACTION_UPDATE_SELF"],
|
|
60
|
+
next: (data) => decideNextStatus(data),
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
function decideNextStatus(data) {
|
|
66
|
+
var _a;
|
|
67
|
+
const { currentBillingTransactionEntity, dto } = data;
|
|
68
|
+
const typeStatusMapping = {
|
|
69
|
+
[billing_transaction_enum_1.BillingTransactionType.WRITE_OFF]: billing_transaction_status_enum_1.BillingTransactionStatusEnum.WRITEOFF_APPROVAL_PENDING,
|
|
70
|
+
[billing_transaction_enum_1.BillingTransactionType.CREDIT_NOTE]: billing_transaction_status_enum_1.BillingTransactionStatusEnum.CREDITNOTE_APPROVAL_PENDING,
|
|
71
|
+
};
|
|
72
|
+
if (currentBillingTransactionEntity.type === dto.type) {
|
|
73
|
+
return currentBillingTransactionEntity.status;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
if (dto.type && dto.type in typeStatusMapping) {
|
|
77
|
+
return (_a = typeStatusMapping[dto.type]) !== null && _a !== void 0 ? _a : currentBillingTransactionEntity.status;
|
|
78
|
+
}
|
|
79
|
+
// otherwise → retain current status
|
|
80
|
+
return currentBillingTransactionEntity.status;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
@@ -211,3 +211,4 @@ export * from "./enums/project-revenue-split-mapping-status.enum";
|
|
|
211
211
|
export * from "./enums/project-revenue-split.enum";
|
|
212
212
|
export * from "./interface/project-revenue-split-mapping.entity";
|
|
213
213
|
export * from "./model/project-revenue-split-mapping.model";
|
|
214
|
+
export * from "./flow-configs/billing-transaction.flow.config";
|
|
@@ -227,3 +227,4 @@ __exportStar(require("./enums/project-revenue-split-mapping-status.enum"), expor
|
|
|
227
227
|
__exportStar(require("./enums/project-revenue-split.enum"), exports);
|
|
228
228
|
__exportStar(require("./interface/project-revenue-split-mapping.entity"), exports);
|
|
229
229
|
__exportStar(require("./model/project-revenue-split-mapping.model"), exports);
|
|
230
|
+
__exportStar(require("./flow-configs/billing-transaction.flow.config"), exports);
|