@acorex-platform/module-asset-management-client 0.0.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.
- package/fesm2022/acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs +78 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs +109 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs +257 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs +62 -0
- package/fesm2022/acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client.mjs +2472 -0
- package/fesm2022/acorex-platform-module-asset-management-client.mjs.map +1 -0
- package/package.json +28 -0
- package/types/acorex-platform-module-asset-management-client-contracts.d.ts +441 -0
- package/types/acorex-platform-module-asset-management-client.d.ts +278 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { AXPStatusProvider } from '@acorex-platform/framework-shared/core';
|
|
2
|
+
import { AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXMAssetLifecycleStatus } from '@acorex-platform/module-asset-management-client/contracts';
|
|
3
|
+
|
|
4
|
+
class AXMAssetManagementAssetLifecycleStatusProvider extends AXPStatusProvider {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this.key = AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY;
|
|
8
|
+
this.isPrimary = false;
|
|
9
|
+
this.statuses = [
|
|
10
|
+
{
|
|
11
|
+
name: AXMAssetLifecycleStatus.Created,
|
|
12
|
+
title: '@asset-management:assets.lifecycle-statuses.created',
|
|
13
|
+
icon: 'fa-light fa-circle-plus',
|
|
14
|
+
color: 'secondary',
|
|
15
|
+
order: 1,
|
|
16
|
+
isInitial: true,
|
|
17
|
+
isFinal: false,
|
|
18
|
+
generateView: true,
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: AXMAssetLifecycleStatus.Active,
|
|
22
|
+
title: '@asset-management:assets.lifecycle-statuses.active',
|
|
23
|
+
icon: 'fa-light fa-circle-check',
|
|
24
|
+
color: 'success',
|
|
25
|
+
order: 2,
|
|
26
|
+
isInitial: false,
|
|
27
|
+
isFinal: false,
|
|
28
|
+
generateView: true,
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: AXMAssetLifecycleStatus.Retired,
|
|
32
|
+
title: '@asset-management:assets.lifecycle-statuses.retired',
|
|
33
|
+
icon: 'fa-light fa-ban',
|
|
34
|
+
color: 'neutral',
|
|
35
|
+
order: 3,
|
|
36
|
+
isInitial: false,
|
|
37
|
+
isFinal: false,
|
|
38
|
+
generateView: true,
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: AXMAssetLifecycleStatus.Disposed,
|
|
42
|
+
title: '@asset-management:assets.lifecycle-statuses.disposed',
|
|
43
|
+
icon: 'fa-light fa-trash-can',
|
|
44
|
+
color: 'neutral',
|
|
45
|
+
order: 4,
|
|
46
|
+
isInitial: false,
|
|
47
|
+
isFinal: true,
|
|
48
|
+
generateView: true,
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
this.transitions = [
|
|
52
|
+
{
|
|
53
|
+
from: AXMAssetLifecycleStatus.Created,
|
|
54
|
+
to: AXMAssetLifecycleStatus.Active,
|
|
55
|
+
title: '@asset-management:assets.lifecycle-transitions.activate',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
from: AXMAssetLifecycleStatus.Active,
|
|
59
|
+
to: AXMAssetLifecycleStatus.Retired,
|
|
60
|
+
title: '@asset-management:assets.lifecycle-transitions.retire',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
from: AXMAssetLifecycleStatus.Retired,
|
|
64
|
+
to: AXMAssetLifecycleStatus.Active,
|
|
65
|
+
title: '@asset-management:assets.lifecycle-transitions.reactivate',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
from: AXMAssetLifecycleStatus.Retired,
|
|
69
|
+
to: AXMAssetLifecycleStatus.Disposed,
|
|
70
|
+
title: '@asset-management:assets.lifecycle-transitions.dispose',
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
this.defaultStatus = AXMAssetLifecycleStatus.Created;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export { AXMAssetManagementAssetLifecycleStatusProvider };
|
|
78
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-lifecycle.provider.ts"],"sourcesContent":["import { AXPStatusProvider, AXPStatusTransition } from '@acorex-platform/framework-shared/core';\nimport { AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXMAssetLifecycleStatus } from '@acorex-platform/module-asset-management-client/contracts';\nimport { AXStyleColorType } from '@acorex/cdk/common';\n\nexport class AXMAssetManagementAssetLifecycleStatusProvider extends AXPStatusProvider {\n readonly key = AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY;\n\n readonly isPrimary = false;\n\n readonly statuses = [\n {\n name: AXMAssetLifecycleStatus.Created,\n title: '@asset-management:assets.lifecycle-statuses.created',\n icon: 'fa-light fa-circle-plus',\n color: 'secondary' as AXStyleColorType,\n order: 1,\n isInitial: true,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-statuses.active',\n icon: 'fa-light fa-circle-check',\n color: 'success' as AXStyleColorType,\n order: 2,\n isInitial: false,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Retired,\n title: '@asset-management:assets.lifecycle-statuses.retired',\n icon: 'fa-light fa-ban',\n color: 'neutral' as AXStyleColorType,\n order: 3,\n isInitial: false,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Disposed,\n title: '@asset-management:assets.lifecycle-statuses.disposed',\n icon: 'fa-light fa-trash-can',\n color: 'neutral' as AXStyleColorType,\n order: 4,\n isInitial: false,\n isFinal: true,\n generateView: true,\n },\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXMAssetLifecycleStatus.Created,\n to: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-transitions.activate',\n },\n {\n from: AXMAssetLifecycleStatus.Active,\n to: AXMAssetLifecycleStatus.Retired,\n title: '@asset-management:assets.lifecycle-transitions.retire',\n },\n {\n from: AXMAssetLifecycleStatus.Retired,\n to: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-transitions.reactivate',\n },\n {\n from: AXMAssetLifecycleStatus.Retired,\n to: AXMAssetLifecycleStatus.Disposed,\n title: '@asset-management:assets.lifecycle-transitions.dispose',\n },\n ];\n\n readonly defaultStatus = AXMAssetLifecycleStatus.Created;\n}\n"],"names":[],"mappings":";;;AAIM,MAAO,8CAA+C,SAAQ,iBAAiB,CAAA;AAArF,IAAA,WAAA,GAAA;;QACW,IAAA,CAAA,GAAG,GAAG,yCAAyC;QAE/C,IAAA,CAAA,SAAS,GAAG,KAAK;AAEjB,QAAA,IAAA,CAAA,QAAQ,GAAG;AAClB,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;AACrC,gBAAA,KAAK,EAAE,qDAAqD;AAC5D,gBAAA,IAAI,EAAE,yBAAyB;AAC/B,gBAAA,KAAK,EAAE,WAA+B;AACtC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,MAAM;AACpC,gBAAA,KAAK,EAAE,oDAAoD;AAC3D,gBAAA,IAAI,EAAE,0BAA0B;AAChC,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;AACrC,gBAAA,KAAK,EAAE,qDAAqD;AAC5D,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,QAAQ;AACtC,gBAAA,KAAK,EAAE,sDAAsD;AAC7D,gBAAA,IAAI,EAAE,uBAAuB;AAC7B,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,WAAW,GAA0B;AAC5C,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,MAAM;AAClC,gBAAA,KAAK,EAAE,yDAAyD;AACjE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,MAAM;gBACpC,EAAE,EAAE,uBAAuB,CAAC,OAAO;AACnC,gBAAA,KAAK,EAAE,uDAAuD;AAC/D,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,MAAM;AAClC,gBAAA,KAAK,EAAE,2DAA2D;AACnE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,QAAQ;AACpC,gBAAA,KAAK,EAAE,wDAAwD;AAChE,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,aAAa,GAAG,uBAAuB,CAAC,OAAO;IAC1D;AAAC;;;;"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { AXPStatusProvider } from '@acorex-platform/framework-shared/core';
|
|
2
|
+
import { AXMAssetRentalHistoryStatus } from '@acorex-platform/module-asset-management-client/contracts';
|
|
3
|
+
|
|
4
|
+
//#region ---- Imports ----
|
|
5
|
+
//#endregion
|
|
6
|
+
//#region ---- Provider ----
|
|
7
|
+
/**
|
|
8
|
+
* Status lifecycle for AssetManagement.AssetRentalHistory (rental agreement rows).
|
|
9
|
+
*/
|
|
10
|
+
class AXMAssetManagementAssetRentalHistoryStatusProvider extends AXPStatusProvider {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.key = 'asset-management.status.asset-rental-history';
|
|
14
|
+
this.statuses = [
|
|
15
|
+
{
|
|
16
|
+
name: AXMAssetRentalHistoryStatus.Draft,
|
|
17
|
+
title: '@asset-management:common.status.draft',
|
|
18
|
+
icon: 'fa-light fa-file-pen',
|
|
19
|
+
color: 'secondary',
|
|
20
|
+
order: 1,
|
|
21
|
+
isInitial: true,
|
|
22
|
+
isFinal: false,
|
|
23
|
+
generateView: false,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: AXMAssetRentalHistoryStatus.Active,
|
|
27
|
+
title: '@asset-management:common.status.active',
|
|
28
|
+
icon: 'fa-light fa-key',
|
|
29
|
+
color: 'success',
|
|
30
|
+
order: 2,
|
|
31
|
+
isInitial: false,
|
|
32
|
+
isFinal: false,
|
|
33
|
+
generateView: false,
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: AXMAssetRentalHistoryStatus.Returned,
|
|
37
|
+
title: '@asset-management:common.status.returned',
|
|
38
|
+
icon: 'fa-light fa-rotate-left',
|
|
39
|
+
color: 'info',
|
|
40
|
+
order: 3,
|
|
41
|
+
isInitial: false,
|
|
42
|
+
isFinal: true,
|
|
43
|
+
generateView: false,
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: AXMAssetRentalHistoryStatus.Overdue,
|
|
47
|
+
title: '@asset-management:common.status.overdue',
|
|
48
|
+
icon: 'fa-light fa-clock',
|
|
49
|
+
color: 'warning',
|
|
50
|
+
order: 4,
|
|
51
|
+
isInitial: false,
|
|
52
|
+
isFinal: false,
|
|
53
|
+
generateView: false,
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: AXMAssetRentalHistoryStatus.Cancelled,
|
|
57
|
+
title: '@asset-management:common.status.cancelled',
|
|
58
|
+
icon: 'fa-light fa-ban',
|
|
59
|
+
color: 'neutral',
|
|
60
|
+
order: 5,
|
|
61
|
+
isInitial: false,
|
|
62
|
+
isFinal: true,
|
|
63
|
+
generateView: false,
|
|
64
|
+
},
|
|
65
|
+
];
|
|
66
|
+
this.transitions = [
|
|
67
|
+
{
|
|
68
|
+
from: AXMAssetRentalHistoryStatus.Draft,
|
|
69
|
+
to: AXMAssetRentalHistoryStatus.Active,
|
|
70
|
+
title: '@asset-management:assetRentalHistories.transitions.activate',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
from: AXMAssetRentalHistoryStatus.Draft,
|
|
74
|
+
to: AXMAssetRentalHistoryStatus.Cancelled,
|
|
75
|
+
title: '@asset-management:assetRentalHistories.transitions.cancel-from-draft',
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
from: AXMAssetRentalHistoryStatus.Active,
|
|
79
|
+
to: AXMAssetRentalHistoryStatus.Returned,
|
|
80
|
+
title: '@asset-management:assetRentalHistories.transitions.return',
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
from: AXMAssetRentalHistoryStatus.Active,
|
|
84
|
+
to: AXMAssetRentalHistoryStatus.Overdue,
|
|
85
|
+
title: '@asset-management:assetRentalHistories.transitions.mark-overdue',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
from: AXMAssetRentalHistoryStatus.Active,
|
|
89
|
+
to: AXMAssetRentalHistoryStatus.Cancelled,
|
|
90
|
+
title: '@asset-management:assetRentalHistories.transitions.cancel-rental',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
from: AXMAssetRentalHistoryStatus.Overdue,
|
|
94
|
+
to: AXMAssetRentalHistoryStatus.Returned,
|
|
95
|
+
title: '@asset-management:assetRentalHistories.transitions.return',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
from: AXMAssetRentalHistoryStatus.Overdue,
|
|
99
|
+
to: AXMAssetRentalHistoryStatus.Cancelled,
|
|
100
|
+
title: '@asset-management:assetRentalHistories.transitions.cancel-rental',
|
|
101
|
+
},
|
|
102
|
+
];
|
|
103
|
+
this.defaultStatus = AXMAssetRentalHistoryStatus.Draft;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//#endregion
|
|
107
|
+
|
|
108
|
+
export { AXMAssetManagementAssetRentalHistoryStatusProvider };
|
|
109
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-rental-history-status.provider.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXPStatusProvider, AXPStatusTransition } from '@acorex-platform/framework-shared/core';\n\nimport { AXMAssetRentalHistoryStatus } from '@acorex-platform/module-asset-management-client/contracts';\n\n//#endregion\n\n//#region ---- Provider ----\n\n/**\n * Status lifecycle for AssetManagement.AssetRentalHistory (rental agreement rows).\n */\nexport class AXMAssetManagementAssetRentalHistoryStatusProvider extends AXPStatusProvider {\n readonly key = 'asset-management.status.asset-rental-history';\n\n readonly statuses = [\n {\n name: AXMAssetRentalHistoryStatus.Draft,\n title: '@asset-management:common.status.draft',\n icon: 'fa-light fa-file-pen',\n color: 'secondary' as AXStyleColorType,\n order: 1,\n isInitial: true,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Active,\n title: '@asset-management:common.status.active',\n icon: 'fa-light fa-key',\n color: 'success' as AXStyleColorType,\n order: 2,\n isInitial: false,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:common.status.returned',\n icon: 'fa-light fa-rotate-left',\n color: 'info' as AXStyleColorType,\n order: 3,\n isInitial: false,\n isFinal: true,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Overdue,\n title: '@asset-management:common.status.overdue',\n icon: 'fa-light fa-clock',\n color: 'warning' as AXStyleColorType,\n order: 4,\n isInitial: false,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:common.status.cancelled',\n icon: 'fa-light fa-ban',\n color: 'neutral' as AXStyleColorType,\n order: 5,\n isInitial: false,\n isFinal: true,\n generateView: false,\n },\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXMAssetRentalHistoryStatus.Draft,\n to: AXMAssetRentalHistoryStatus.Active,\n title: '@asset-management:assetRentalHistories.transitions.activate',\n },\n {\n from: AXMAssetRentalHistoryStatus.Draft,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-from-draft',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:assetRentalHistories.transitions.return',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Overdue,\n title: '@asset-management:assetRentalHistories.transitions.mark-overdue',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-rental',\n },\n {\n from: AXMAssetRentalHistoryStatus.Overdue,\n to: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:assetRentalHistories.transitions.return',\n },\n {\n from: AXMAssetRentalHistoryStatus.Overdue,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-rental',\n },\n ];\n\n readonly defaultStatus = AXMAssetRentalHistoryStatus.Draft;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
import { AXPSystemActionType } from '@acorex-platform/framework-shared/core';
|
|
2
|
+
import { AXPEntityCommandScope, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
|
|
3
|
+
|
|
4
|
+
/** Asset booking catalog scope for questionnaires, question bank items, and workflow definitions. */
|
|
5
|
+
const ASSET_CATALOG_SCOPE_BOOKING = 'asset-management.booking';
|
|
6
|
+
|
|
7
|
+
//#region ---- Command keys ----
|
|
8
|
+
const AXMAssetManagementCommandKeys = {
|
|
9
|
+
AssetRentalHistory: {
|
|
10
|
+
RentFrom: 'AssetManagement.AssetRentalHistory:RentFrom',
|
|
11
|
+
RentTo: 'AssetManagement.AssetRentalHistory:RentTo',
|
|
12
|
+
},
|
|
13
|
+
WorkflowActivity: {
|
|
14
|
+
RecalculateOperationalStatus: 'workflow-activity:recalculate-asset-operational-status',
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
//#endregion
|
|
18
|
+
|
|
19
|
+
const AXMAssetManagementFeatureKeys = {
|
|
20
|
+
AssetManagement: 'AssetManagement:Feature:Management',
|
|
21
|
+
AdvancedMaintenance: 'AssetManagement:Feature:Advanced.Maintenance',
|
|
22
|
+
MaintenanceScheduling: 'AssetManagement:Feature:Maintenance.Scheduling',
|
|
23
|
+
InspectionWorkflow: 'AssetManagement:Feature:Inspection.Workflow',
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const AXMAssetManagementMenuKeys = {
|
|
27
|
+
Root: 'AssetManagement:Menu',
|
|
28
|
+
MainPlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:MainPlanEquipment:AssetsMaintenanceDivider',
|
|
29
|
+
PlanEquipmentAssets: 'AssetManagement:Menu:PlantEquipment:Assets',
|
|
30
|
+
PlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:PlantEquipment:AssetsMaintenanceDivider',
|
|
31
|
+
Assets: 'AssetManagement:Menu:Assets',
|
|
32
|
+
AssetSystems: 'AssetManagement:Menu:AssetSystems',
|
|
33
|
+
AssetTypes: 'AssetManagement:Menu:AssetTypes',
|
|
34
|
+
AssetSystemTypes: 'AssetManagement:Menu:AssetSystemTypes',
|
|
35
|
+
AssetTypeSections: 'AssetManagement:Menu:AssetTypeSections',
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Assets & Maintenance capabilities used by this module.
|
|
40
|
+
* Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).
|
|
41
|
+
*/
|
|
42
|
+
const AXPAssetsMaintenancePermissionKeys = {
|
|
43
|
+
Access: 'AssetsMaintenance:Permission:Access',
|
|
44
|
+
MaintainAssets: 'AssetsMaintenance:Permission:MaintainAssets',
|
|
45
|
+
MaintainMaintenance: 'AssetsMaintenance:Permission:MaintainMaintenance',
|
|
46
|
+
Setup: 'AssetsMaintenance:Permission:Setup',
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated Prefer {@link AXPAssetsMaintenancePermissionKeys}.
|
|
50
|
+
* Legacy nested shape kept so existing imports compile during migration.
|
|
51
|
+
*/
|
|
52
|
+
const AXMAssetManagementPermissionKeys = {
|
|
53
|
+
AssetManagement: {
|
|
54
|
+
Management: AXPAssetsMaintenancePermissionKeys.Access,
|
|
55
|
+
Asset: {
|
|
56
|
+
Management: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
|
|
57
|
+
View: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
|
|
58
|
+
Create: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
|
|
59
|
+
Update: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
|
|
60
|
+
Delete: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
/** Registry key for the asset type Components custom page tab. */
|
|
66
|
+
const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';
|
|
67
|
+
|
|
68
|
+
/** Status provider key for `lifecycleStatusId` on AssetManagement.Asset (lifecycle status). */
|
|
69
|
+
const AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY = 'asset-management.status.asset-lifecycle';
|
|
70
|
+
|
|
71
|
+
/** Status provider key for `statusId` on AssetManagement.Asset (operational status). */
|
|
72
|
+
const AXM_ASSET_STATUS_DEFINITION_KEY = 'asset-management.status.asset';
|
|
73
|
+
|
|
74
|
+
//#region ---- Rent list actions ----
|
|
75
|
+
/** Type-level create actions for rent-from / rent-to (list and asset related-entity). */
|
|
76
|
+
const assetRentalHistoryRentActions = [
|
|
77
|
+
{
|
|
78
|
+
name: 'rent-from',
|
|
79
|
+
title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-from.title',
|
|
80
|
+
command: {
|
|
81
|
+
name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentFrom,
|
|
82
|
+
options: {
|
|
83
|
+
process: {
|
|
84
|
+
redirect: false,
|
|
85
|
+
canCreateNewOne: true,
|
|
86
|
+
data: { assetId: '{{context.eval("id")}}' },
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
priority: 'primary',
|
|
91
|
+
type: AXPSystemActionType.Create,
|
|
92
|
+
scope: AXPEntityCommandScope.TypeLevel,
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
name: 'rent-to',
|
|
96
|
+
title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-to.title',
|
|
97
|
+
command: {
|
|
98
|
+
name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentTo,
|
|
99
|
+
options: {
|
|
100
|
+
process: {
|
|
101
|
+
redirect: false,
|
|
102
|
+
canCreateNewOne: true,
|
|
103
|
+
data: { assetId: '{{context.eval("id")}}' },
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
priority: 'primary',
|
|
108
|
+
type: AXPSystemActionType.Create,
|
|
109
|
+
scope: AXPEntityCommandScope.TypeLevel,
|
|
110
|
+
},
|
|
111
|
+
...entityMasterCrudActions({ create: false, view: false }),
|
|
112
|
+
];
|
|
113
|
+
//#endregion
|
|
114
|
+
|
|
115
|
+
//#region ---- Status enum ----
|
|
116
|
+
var AXMAssetRentalHistoryStatus;
|
|
117
|
+
(function (AXMAssetRentalHistoryStatus) {
|
|
118
|
+
AXMAssetRentalHistoryStatus["Draft"] = "draft";
|
|
119
|
+
AXMAssetRentalHistoryStatus["Active"] = "active";
|
|
120
|
+
AXMAssetRentalHistoryStatus["Returned"] = "returned";
|
|
121
|
+
AXMAssetRentalHistoryStatus["Overdue"] = "overdue";
|
|
122
|
+
AXMAssetRentalHistoryStatus["Cancelled"] = "cancelled";
|
|
123
|
+
})(AXMAssetRentalHistoryStatus || (AXMAssetRentalHistoryStatus = {}));
|
|
124
|
+
//#endregion
|
|
125
|
+
|
|
126
|
+
//#endregion
|
|
127
|
+
|
|
128
|
+
//#region ---- Status enum ----
|
|
129
|
+
var AXMAssetStatus;
|
|
130
|
+
(function (AXMAssetStatus) {
|
|
131
|
+
AXMAssetStatus["Available"] = "available";
|
|
132
|
+
AXMAssetStatus["Assigned"] = "assigned";
|
|
133
|
+
AXMAssetStatus["UnderMaintenanceInspection"] = "underMaintenanceInspection";
|
|
134
|
+
AXMAssetStatus["OutOfService"] = "outOfService";
|
|
135
|
+
AXMAssetStatus["Lost"] = "lost";
|
|
136
|
+
})(AXMAssetStatus || (AXMAssetStatus = {}));
|
|
137
|
+
//#endregion
|
|
138
|
+
|
|
139
|
+
//#region ---- Status enum ----
|
|
140
|
+
var AXMAssetLifecycleStatus;
|
|
141
|
+
(function (AXMAssetLifecycleStatus) {
|
|
142
|
+
AXMAssetLifecycleStatus["Created"] = "created";
|
|
143
|
+
AXMAssetLifecycleStatus["Active"] = "active";
|
|
144
|
+
AXMAssetLifecycleStatus["Retired"] = "retired";
|
|
145
|
+
AXMAssetLifecycleStatus["Disposed"] = "disposed";
|
|
146
|
+
})(AXMAssetLifecycleStatus || (AXMAssetLifecycleStatus = {}));
|
|
147
|
+
|
|
148
|
+
//#region ---- Root Configuration ----
|
|
149
|
+
const config = {
|
|
150
|
+
i18n: 'asset-management',
|
|
151
|
+
module: 'AssetManagement',
|
|
152
|
+
route: 'asset-management',
|
|
153
|
+
};
|
|
154
|
+
const RootConfig = {
|
|
155
|
+
config,
|
|
156
|
+
module: {
|
|
157
|
+
route: config.route,
|
|
158
|
+
name: config.module,
|
|
159
|
+
title: '@asset-management:module.title',
|
|
160
|
+
icon: 'fa-light fa-industry',
|
|
161
|
+
},
|
|
162
|
+
entities: {
|
|
163
|
+
assetRentalHistory: {
|
|
164
|
+
name: 'AssetRentalHistory',
|
|
165
|
+
source: `${config.module}.AssetRentalHistory`,
|
|
166
|
+
title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.title',
|
|
167
|
+
titlePlural: '@asset-management:assetRentalHistories.entities.assetRentalHistory.plural',
|
|
168
|
+
icon: 'fa-light fa-file-contract',
|
|
169
|
+
},
|
|
170
|
+
assetSystemAssignment: {
|
|
171
|
+
name: 'AssetSystemAssignment',
|
|
172
|
+
source: `${config.module}.AssetSystemAssignment`,
|
|
173
|
+
title: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.title',
|
|
174
|
+
titlePlural: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.plural',
|
|
175
|
+
icon: 'fa-light fa-link',
|
|
176
|
+
},
|
|
177
|
+
asset: {
|
|
178
|
+
name: 'Asset',
|
|
179
|
+
source: `${config.module}.Asset`,
|
|
180
|
+
title: '@asset-management:assets.entities.asset.title',
|
|
181
|
+
titlePlural: '@asset-management:assets.entities.asset.plural',
|
|
182
|
+
icon: 'fa-light fa-box',
|
|
183
|
+
},
|
|
184
|
+
assetType: {
|
|
185
|
+
name: 'AssetType',
|
|
186
|
+
source: `${config.module}.AssetType`,
|
|
187
|
+
title: '@asset-management:assetTypes.entities.assetType.title',
|
|
188
|
+
titlePlural: '@asset-management:assetTypes.entities.assetType.plural',
|
|
189
|
+
icon: 'fa-light fa-cubes',
|
|
190
|
+
},
|
|
191
|
+
assetTypeSection: {
|
|
192
|
+
name: 'AssetTypeSection',
|
|
193
|
+
source: `${config.module}.AssetTypeSection`,
|
|
194
|
+
title: '@asset-management:assetTypeSections.entities.assetTypeSection.title',
|
|
195
|
+
titlePlural: '@asset-management:assetTypeSections.entities.assetTypeSection.plural',
|
|
196
|
+
icon: 'fa-light fa-layer-group',
|
|
197
|
+
},
|
|
198
|
+
assetTypeSectionComponent: {
|
|
199
|
+
name: 'AssetTypeSectionComponent',
|
|
200
|
+
source: `${config.module}.AssetTypeSectionComponent`,
|
|
201
|
+
title: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.title',
|
|
202
|
+
titlePlural: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.plural',
|
|
203
|
+
icon: 'fa-light fa-puzzle-piece',
|
|
204
|
+
},
|
|
205
|
+
assetSystemType: {
|
|
206
|
+
name: 'AssetSystemType',
|
|
207
|
+
source: `${config.module}.AssetSystemType`,
|
|
208
|
+
title: '@asset-management:assetSystemTypes.entities.assetSystemType.title',
|
|
209
|
+
titlePlural: '@asset-management:assetSystemTypes.entities.assetSystemType.plural',
|
|
210
|
+
icon: 'fa-light fa-diagram-subtask',
|
|
211
|
+
},
|
|
212
|
+
assetSystem: {
|
|
213
|
+
name: 'AssetSystem',
|
|
214
|
+
source: `${config.module}.AssetSystem`,
|
|
215
|
+
title: 'Asset System',
|
|
216
|
+
titlePlural: 'Asset Systems',
|
|
217
|
+
icon: 'fa-light fa-diagram-project',
|
|
218
|
+
},
|
|
219
|
+
manualAssetCategory: {
|
|
220
|
+
name: 'ManualAssetCategory',
|
|
221
|
+
source: `${config.module}.ManualAssetCategory`,
|
|
222
|
+
title: '@asset-management:asset-categories.entities.asset-category.title',
|
|
223
|
+
titlePlural: '@asset-management:asset-categories.entities.asset-category.plural',
|
|
224
|
+
icon: 'fa-light fa-tags',
|
|
225
|
+
},
|
|
226
|
+
// inspection: {
|
|
227
|
+
// name: 'Inspection',
|
|
228
|
+
// source: `${config.module}.Inspection`,
|
|
229
|
+
// title: '@asset-management:inspections.entities.inspection.title',
|
|
230
|
+
// titlePlural: '@asset-management:inspections.entities.inspection.plural',
|
|
231
|
+
// icon: 'fa-light fa-clipboard-check',
|
|
232
|
+
// },
|
|
233
|
+
// assetStatus: {
|
|
234
|
+
// name: 'AssetStatus',
|
|
235
|
+
// source: `${config.module}.AssetStatus`,
|
|
236
|
+
// title: '@asset-management:asset-statuses.entities.asset-status.title',
|
|
237
|
+
// titlePlural: '@asset-management:asset-statuses.entities.asset-status.plural',
|
|
238
|
+
// icon: 'fa-light fa-signal',
|
|
239
|
+
// },
|
|
240
|
+
},
|
|
241
|
+
queries: {
|
|
242
|
+
reports: {
|
|
243
|
+
getAssetsByStatus: `${config.module}:Reports:GetAssetsByStatus`,
|
|
244
|
+
getRentalUtilization: `${config.module}:Reports:GetRentalUtilization`,
|
|
245
|
+
},
|
|
246
|
+
},
|
|
247
|
+
};
|
|
248
|
+
//#endregion
|
|
249
|
+
|
|
250
|
+
//#region ---- Contracts barrel ----
|
|
251
|
+
|
|
252
|
+
/**
|
|
253
|
+
* Generated bundle index. Do not edit.
|
|
254
|
+
*/
|
|
255
|
+
|
|
256
|
+
export { ASSET_CATALOG_SCOPE_BOOKING, ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY, AXMAssetLifecycleStatus, AXMAssetManagementCommandKeys, AXMAssetManagementFeatureKeys, AXMAssetManagementMenuKeys, AXMAssetManagementPermissionKeys, AXMAssetRentalHistoryStatus, AXMAssetStatus, AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXM_ASSET_STATUS_DEFINITION_KEY, AXPAssetsMaintenancePermissionKeys, RootConfig, assetRentalHistoryRentActions };
|
|
257
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-contracts.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-contracts.mjs","sources":["../../../../libs/modules/asset-management/contracts/src/catalog-scope.keys.ts","../../../../libs/modules/asset-management/contracts/src/commands.keys.ts","../../../../libs/modules/asset-management/contracts/src/features.keys.ts","../../../../libs/modules/asset-management/contracts/src/menu.keys.ts","../../../../libs/modules/asset-management/contracts/src/permission.keys.ts","../../../../libs/modules/asset-management/contracts/src/ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/asset-management/contracts/src/AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY.ts","../../../../libs/modules/asset-management/contracts/src/AXM_ASSET_STATUS_DEFINITION_KEY.ts","../../../../libs/modules/asset-management/contracts/src/asset-rental-history.actions.ts","../../../../libs/modules/asset-management/contracts/src/asset-rental-history.status.ts","../../../../libs/modules/asset-management/contracts/src/asset-type-section-builder.types.ts","../../../../libs/modules/asset-management/contracts/src/asset.status.ts","../../../../libs/modules/asset-management/contracts/src/asset.lifecycle.ts","../../../../libs/modules/asset-management/contracts/src/root-config.ts","../../../../libs/modules/asset-management/contracts/src/index.ts","../../../../libs/modules/asset-management/contracts/src/acorex-platform-module-asset-management-client-contracts.ts"],"sourcesContent":["/** Asset booking catalog scope for questionnaires, question bank items, and workflow definitions. */\nexport const ASSET_CATALOG_SCOPE_BOOKING = 'asset-management.booking';\n","//#region ---- Command keys ----\n\nexport const AXMAssetManagementCommandKeys = {\n AssetRentalHistory: {\n RentFrom: 'AssetManagement.AssetRentalHistory:RentFrom',\n RentTo: 'AssetManagement.AssetRentalHistory:RentTo',\n },\n WorkflowActivity: {\n RecalculateOperationalStatus: 'workflow-activity:recalculate-asset-operational-status',\n },\n} as const;\n\n//#endregion\n","export const AXMAssetManagementFeatureKeys = {\n AssetManagement: 'AssetManagement:Feature:Management',\n AdvancedMaintenance: 'AssetManagement:Feature:Advanced.Maintenance',\n MaintenanceScheduling: 'AssetManagement:Feature:Maintenance.Scheduling',\n InspectionWorkflow: 'AssetManagement:Feature:Inspection.Workflow',\n} as const;\n","export const AXMAssetManagementMenuKeys = {\n Root: 'AssetManagement:Menu',\n MainPlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:MainPlanEquipment:AssetsMaintenanceDivider',\n PlanEquipmentAssets: 'AssetManagement:Menu:PlantEquipment:Assets',\n PlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:PlantEquipment:AssetsMaintenanceDivider',\n Assets: 'AssetManagement:Menu:Assets',\n AssetSystems: 'AssetManagement:Menu:AssetSystems',\n AssetTypes: 'AssetManagement:Menu:AssetTypes',\n AssetSystemTypes: 'AssetManagement:Menu:AssetSystemTypes',\n AssetTypeSections: 'AssetManagement:Menu:AssetTypeSections',\n} as const;\n","/**\n * Assets & Maintenance capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPAssetsMaintenancePermissionKeys = {\n Access: 'AssetsMaintenance:Permission:Access',\n MaintainAssets: 'AssetsMaintenance:Permission:MaintainAssets',\n MaintainMaintenance: 'AssetsMaintenance:Permission:MaintainMaintenance',\n Setup: 'AssetsMaintenance:Permission:Setup',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPAssetsMaintenancePermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMAssetManagementPermissionKeys = {\n AssetManagement: {\n Management: AXPAssetsMaintenancePermissionKeys.Access,\n Asset: {\n Management: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n View: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Create: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Update: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Delete: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n },\n },\n} as const;\n","/** Registry key for the asset type Components custom page tab. */\nexport const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';\n","/** Status provider key for `lifecycleStatusId` on AssetManagement.Asset (lifecycle status). */\nexport const AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY = 'asset-management.status.asset-lifecycle';\n","/** Status provider key for `statusId` on AssetManagement.Asset (operational status). */\nexport const AXM_ASSET_STATUS_DEFINITION_KEY = 'asset-management.status.asset';\n","import { AXPSystemActionType } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityAction, AXPEntityCommandScope, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';\n\nimport { AXMAssetManagementCommandKeys } from './commands.keys';\n\n//#region ---- Rent list actions ----\n\n/** Type-level create actions for rent-from / rent-to (list and asset related-entity). */\nexport const assetRentalHistoryRentActions: AXPEntityAction[] = [\n {\n name: 'rent-from',\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-from.title',\n command: {\n name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentFrom,\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: { assetId: '{{context.eval(\"id\")}}' },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n name: 'rent-to',\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-to.title',\n command: {\n name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentTo,\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: { assetId: '{{context.eval(\"id\")}}' },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n ...entityMasterCrudActions({ create: false, view: false }),\n];\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetRentalHistoryStatus {\n Draft = 'draft',\n Active = 'active',\n Returned = 'returned',\n Overdue = 'overdue',\n Cancelled = 'cancelled',\n}\n\n//#endregion\n","import type { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\n\n//#region ---- Asset type section builder value types ----\n\nexport interface AXMAssetTypeSectionBuilderItemValue {\n id: string;\n assetTypeSectionId: string;\n /**\n * Original source component id when a section item is expanded to multiple\n * assignment slots (based on count) in asset-link mode.\n */\n assetTypeSectionComponentId?: string;\n assetTypeId: string;\n assetTypeSection?: {\n id: string;\n code: number;\n title: string;\n description?: string;\n };\n assetType: {\n id: string;\n name: string | AXPMultiLanguageString;\n };\n count: number;\n roleName: string | AXPMultiLanguageString;\n hasMaintenance: boolean;\n /**\n * Selected asset link for this slot in asset-link mode.\n */\n assetId?: string;\n asset?: {\n id: string;\n code?: string;\n title?: string | AXPMultiLanguageString;\n };\n}\n\nexport interface AXMAssetTypeSectionBuilderSectionValue {\n id: string;\n code: number;\n title: string | AXPMultiLanguageString;\n assetTypeId: string;\n description?: string | AXPMultiLanguageString;\n items: AXMAssetTypeSectionBuilderItemValue[];\n}\n\nexport interface AXMAssetTypeSectionBuilderValue {\n sections: AXMAssetTypeSectionBuilderSectionValue[];\n}\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetStatus {\n Available = 'available',\n Assigned = 'assigned',\n UnderMaintenanceInspection = 'underMaintenanceInspection',\n OutOfService = 'outOfService',\n Lost = 'lost',\n}\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetLifecycleStatus {\n Created = 'created',\n Active = 'active',\n Retired = 'retired',\n Disposed = 'disposed',\n}\n","//#region ---- Root Configuration ----\n\nconst config = {\n i18n: 'asset-management',\n module: 'AssetManagement',\n route: 'asset-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: config.route,\n name: config.module,\n title: '@asset-management:module.title',\n icon: 'fa-light fa-industry',\n },\n entities: {\n assetRentalHistory: {\n name: 'AssetRentalHistory',\n source: `${config.module}.AssetRentalHistory`,\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.title',\n titlePlural: '@asset-management:assetRentalHistories.entities.assetRentalHistory.plural',\n icon: 'fa-light fa-file-contract',\n },\n assetSystemAssignment: {\n name: 'AssetSystemAssignment',\n source: `${config.module}.AssetSystemAssignment`,\n title: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.title',\n titlePlural: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.plural',\n icon: 'fa-light fa-link',\n },\n asset: {\n name: 'Asset',\n source: `${config.module}.Asset`,\n title: '@asset-management:assets.entities.asset.title',\n titlePlural: '@asset-management:assets.entities.asset.plural',\n icon: 'fa-light fa-box',\n },\n assetType: {\n name: 'AssetType',\n source: `${config.module}.AssetType`,\n title: '@asset-management:assetTypes.entities.assetType.title',\n titlePlural: '@asset-management:assetTypes.entities.assetType.plural',\n icon: 'fa-light fa-cubes',\n },\n assetTypeSection: {\n name: 'AssetTypeSection',\n source: `${config.module}.AssetTypeSection`,\n title: '@asset-management:assetTypeSections.entities.assetTypeSection.title',\n titlePlural: '@asset-management:assetTypeSections.entities.assetTypeSection.plural',\n icon: 'fa-light fa-layer-group',\n },\n assetTypeSectionComponent: {\n name: 'AssetTypeSectionComponent',\n source: `${config.module}.AssetTypeSectionComponent`,\n title: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.title',\n titlePlural: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.plural',\n icon: 'fa-light fa-puzzle-piece',\n },\n assetSystemType: {\n name: 'AssetSystemType',\n source: `${config.module}.AssetSystemType`,\n title: '@asset-management:assetSystemTypes.entities.assetSystemType.title',\n titlePlural: '@asset-management:assetSystemTypes.entities.assetSystemType.plural',\n icon: 'fa-light fa-diagram-subtask',\n },\n assetSystem: {\n name: 'AssetSystem',\n source: `${config.module}.AssetSystem`,\n title: 'Asset System',\n titlePlural: 'Asset Systems',\n icon: 'fa-light fa-diagram-project',\n },\n manualAssetCategory: {\n name: 'ManualAssetCategory',\n source: `${config.module}.ManualAssetCategory`,\n title: '@asset-management:asset-categories.entities.asset-category.title',\n titlePlural: '@asset-management:asset-categories.entities.asset-category.plural',\n icon: 'fa-light fa-tags',\n },\n // inspection: {\n // name: 'Inspection',\n // source: `${config.module}.Inspection`,\n // title: '@asset-management:inspections.entities.inspection.title',\n // titlePlural: '@asset-management:inspections.entities.inspection.plural',\n // icon: 'fa-light fa-clipboard-check',\n // },\n // assetStatus: {\n // name: 'AssetStatus',\n // source: `${config.module}.AssetStatus`,\n // title: '@asset-management:asset-statuses.entities.asset-status.title',\n // titlePlural: '@asset-management:asset-statuses.entities.asset-status.plural',\n // icon: 'fa-light fa-signal',\n // },\n },\n queries: {\n reports: {\n getAssetsByStatus: `${config.module}:Reports:GetAssetsByStatus`,\n getRentalUtilization: `${config.module}:Reports:GetRentalUtilization`,\n },\n },\n} as const;\n\n//#endregion\n","//#region ---- Contracts barrel ----\n\nexport * from './catalog-scope.keys';\nexport * from './commands.keys';\nexport * from './features.keys';\nexport * from './menu.keys';\nexport * from './permission.keys';\n\nexport * from './ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY';\nexport * from './AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY';\nexport * from './AXM_ASSET_STATUS_DEFINITION_KEY';\nexport * from './asset-rental-history.actions';\nexport * from './asset-rental-history.status';\nexport * from './asset-type-section-builder.types';\nexport * from './asset.status';\nexport * from './asset.lifecycle';\n\nexport * from './root-config';\n\n//#endregion\n\nexport * from './entities';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { isString } from 'lodash';
|
|
4
|
+
import { AXMAssetOperationalStatusService } from './acorex-platform-module-asset-management-client.mjs';
|
|
5
|
+
|
|
6
|
+
//#endregion
|
|
7
|
+
/**
|
|
8
|
+
* Workflow activity wrapper for {@link AXMAssetOperationalStatusService.recalculate}.
|
|
9
|
+
*/
|
|
10
|
+
class RecalculateAssetOperationalStatusActivity {
|
|
11
|
+
constructor() {
|
|
12
|
+
//#region ---- Services & Dependencies ----
|
|
13
|
+
this.assetOperationalStatusService = inject(AXMAssetOperationalStatusService);
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region ---- Command Implementation ----
|
|
17
|
+
async execute(input) {
|
|
18
|
+
const assetId = input?.assetId?.trim();
|
|
19
|
+
const trigger = input?.trigger;
|
|
20
|
+
if (!assetId) {
|
|
21
|
+
return {
|
|
22
|
+
success: false,
|
|
23
|
+
message: { text: 'assetId is required' },
|
|
24
|
+
metadata: { outcome: 'Failed' },
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
if (trigger !== 'work-started' && trigger !== 'work-completed' && trigger !== 'work-signed-off') {
|
|
28
|
+
return {
|
|
29
|
+
success: false,
|
|
30
|
+
message: { text: 'trigger must be work-started, work-completed, or work-signed-off' },
|
|
31
|
+
metadata: { outcome: 'Failed' },
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
try {
|
|
35
|
+
const result = await this.assetOperationalStatusService.recalculate(assetId, trigger, {
|
|
36
|
+
workOrderId: isString(input.workOrderId) ? input.workOrderId.trim() : undefined,
|
|
37
|
+
maintenanceTypeId: isString(input.maintenanceTypeId) ? input.maintenanceTypeId.trim() : undefined,
|
|
38
|
+
});
|
|
39
|
+
return { success: true, kind: 'object',
|
|
40
|
+
data: result,
|
|
41
|
+
metadata: { outcome: 'Done' },
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
const message = error instanceof Error ? error.message : 'Recalculate failed';
|
|
46
|
+
return {
|
|
47
|
+
success: false,
|
|
48
|
+
message: { text: message },
|
|
49
|
+
metadata: { outcome: 'Failed' },
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
54
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, providedIn: 'root' }); }
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, decorators: [{
|
|
57
|
+
type: Injectable,
|
|
58
|
+
args: [{ providedIn: 'root' }]
|
|
59
|
+
}] });
|
|
60
|
+
|
|
61
|
+
export { RecalculateAssetOperationalStatusActivity };
|
|
62
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/workflows/recalculate-asset-operational-status.activity.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { isString } from 'lodash';\n\nimport { AXMAssetOperationalStatusService } from '../../services/asset-operational-status.service';\nimport type {\n AXMAssetOperationalStatusRecalculateResult,\n AXMAssetOperationalStatusTrigger,\n} from '../../services/asset-operational-status.types';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface RecalculateAssetOperationalStatusInput {\n assetId: string;\n trigger: AXMAssetOperationalStatusTrigger;\n workOrderId?: string;\n maintenanceTypeId?: string;\n}\n\n//#endregion\n\n/**\n * Workflow activity wrapper for {@link AXMAssetOperationalStatusService.recalculate}.\n */\n@Injectable({ providedIn: 'root' })\nexport class RecalculateAssetOperationalStatusActivity\n implements AXPCommand<RecalculateAssetOperationalStatusInput, AXMAssetOperationalStatusRecalculateResult>\n{\n //#region ---- Services & Dependencies ----\n\n private readonly assetOperationalStatusService = inject(AXMAssetOperationalStatusService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(\n input: RecalculateAssetOperationalStatusInput,\n ): AXPCommandExecuteResultPromise<AXMAssetOperationalStatusRecalculateResult> {\n const assetId = input?.assetId?.trim();\n const trigger = input?.trigger;\n\n if (!assetId) {\n return {\n success: false,\n message: { text: 'assetId is required' },\n metadata: { outcome: 'Failed' },\n };\n }\n\n if (trigger !== 'work-started' && trigger !== 'work-completed' && trigger !== 'work-signed-off') {\n return {\n success: false,\n message: { text: 'trigger must be work-started, work-completed, or work-signed-off' },\n metadata: { outcome: 'Failed' },\n };\n }\n\n try {\n const result = await this.assetOperationalStatusService.recalculate(assetId, trigger, {\n workOrderId: isString(input.workOrderId) ? input.workOrderId.trim() : undefined,\n maintenanceTypeId: isString(input.maintenanceTypeId) ? input.maintenanceTypeId.trim() : undefined,\n });\n\n return { success: true, kind: 'object',\n data: result,\n metadata: { outcome: 'Done' },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Recalculate failed';\n return {\n success: false,\n message: { text: message },\n metadata: { outcome: 'Failed' },\n };\n }\n }\n\n //#endregion\n}\n"],"names":[],"mappings":";;;;;AAwBA;AAEA;;AAEG;MAEU,yCAAyC,CAAA;AADtD,IAAA,WAAA,GAAA;;AAMmB,QAAA,IAAA,CAAA,6BAA6B,GAAG,MAAM,CAAC,gCAAgC,CAAC;AAiD1F,IAAA;;;IA3CC,MAAM,OAAO,CACX,KAA6C,EAAA;QAE7C,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;AACtC,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO;QAE9B,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;AACxC,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;AAEA,QAAA,IAAI,OAAO,KAAK,cAAc,IAAI,OAAO,KAAK,gBAAgB,IAAI,OAAO,KAAK,iBAAiB,EAAE;YAC/F,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,kEAAkE,EAAE;AACrF,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;AAEA,QAAA,IAAI;AACF,YAAA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE;AACpF,gBAAA,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,SAAS;AAC/E,gBAAA,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,SAAS;AAClG,aAAA,CAAC;AAEF,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;aAC9B;QACH;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,oBAAoB;YAC7E,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC1B,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;IACF;8GAnDW,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAzC,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yCAAyC,cAD5B,MAAM,EAAA,CAAA,CAAA;;2FACnB,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBADrD,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
|