ofsc-utility 1.0.52 → 1.0.54
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/CHANGELOG.md +2 -0
- package/dist/activities/activityActions.js +3 -3
- package/dist/activities/index.d.ts +1 -0
- package/dist/activities/index.js +37 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +4 -1
- package/package.json +1 -1
- package/readme.md +29 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
10
10
|
- version 1.0.46
|
|
11
11
|
|
|
12
12
|
### Added
|
|
13
|
+
- add getAllNonScheduledActivities function
|
|
14
|
+
- Bump version to 1.0.52 and add activity lifecycle actions
|
|
13
15
|
- update version to 1.0.51 and add user/inventory type management functions
|
|
14
16
|
- Bump version to 1.0.50 and add new export functions
|
|
15
17
|
- add user management methods for standalone OFSC
|
|
@@ -11,7 +11,7 @@ async function startActivity(clientId, clientSecret, instanceUrl, activityId, to
|
|
|
11
11
|
}
|
|
12
12
|
const url = `https://${instanceUrl}.fs.ocs.oraclecloud.com/rest/ofscCore/v1/activities/${Number(activityId)}/custom-actions/start`;
|
|
13
13
|
console.log(`➡️ Fetching activity by ID: ${url}`);
|
|
14
|
-
const response = await (0, utilities_1.
|
|
14
|
+
const response = await (0, utilities_1.fetchPostWithRetry)(url, clientId, clientSecret, instanceUrl, token, {});
|
|
15
15
|
return response;
|
|
16
16
|
}
|
|
17
17
|
async function cancelActivity(clientId, clientSecret, instanceUrl, activityId, token = "") {
|
|
@@ -20,7 +20,7 @@ async function cancelActivity(clientId, clientSecret, instanceUrl, activityId, t
|
|
|
20
20
|
}
|
|
21
21
|
const url = `https://${instanceUrl}.fs.ocs.oraclecloud.com/rest/ofscCore/v1/activities/${Number(activityId)}/custom-actions/cancel`;
|
|
22
22
|
console.log(`➡️ Fetching activity by ID: ${url}`);
|
|
23
|
-
const response = await (0, utilities_1.
|
|
23
|
+
const response = await (0, utilities_1.fetchPostWithRetry)(url, clientId, clientSecret, instanceUrl, token, {});
|
|
24
24
|
return response;
|
|
25
25
|
}
|
|
26
26
|
async function completeActivity(clientId, clientSecret, instanceUrl, activityId, token = "") {
|
|
@@ -29,7 +29,7 @@ async function completeActivity(clientId, clientSecret, instanceUrl, activityId,
|
|
|
29
29
|
}
|
|
30
30
|
const url = `https://${instanceUrl}.fs.ocs.oraclecloud.com/rest/ofscCore/v1/activities/${Number(activityId)}/custom-actions/complete`;
|
|
31
31
|
console.log(`Completing activity by ID: ${url}`);
|
|
32
|
-
const response = await (0, utilities_1.
|
|
32
|
+
const response = await (0, utilities_1.fetchPostWithRetry)(url, clientId, clientSecret, instanceUrl, token, {});
|
|
33
33
|
return response;
|
|
34
34
|
}
|
|
35
35
|
async function deleteActivity(clientId, clientSecret, instanceUrl, activityId, token = "") {
|
|
@@ -18,3 +18,4 @@ export declare function getActivitybyId(clientId: string, clientSecret: string,
|
|
|
18
18
|
token: string;
|
|
19
19
|
data: any;
|
|
20
20
|
}>;
|
|
21
|
+
export declare function getAllNonScheduledActivities(clientId: string, clientSecret: string, instanceUrl: string, rootBucket: string, fields?: string): Promise<any[]>;
|
package/dist/activities/index.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.deleteActivity = exports.completeActivity = exports.cancelActivity = exports.startActivity = void 0;
|
|
4
4
|
exports.getAllActivities = getAllActivities;
|
|
5
5
|
exports.getActivitybyId = getActivitybyId;
|
|
6
|
+
exports.getAllNonScheduledActivities = getAllNonScheduledActivities;
|
|
6
7
|
const oauthTokenService_1 = require("../oauthTokenService");
|
|
7
8
|
const utilities_1 = require("../utilities");
|
|
8
9
|
var activityActions_1 = require("./activityActions");
|
|
@@ -76,3 +77,39 @@ async function getActivitybyId(clientId, clientSecret, instanceUrl, activityId,
|
|
|
76
77
|
const response = await (0, utilities_1.fetchWithRetry)(url, clientId, clientSecret, instanceUrl, token);
|
|
77
78
|
return response;
|
|
78
79
|
}
|
|
80
|
+
async function getAllNonScheduledActivities(clientId, clientSecret, instanceUrl, rootBucket, fields) {
|
|
81
|
+
if (!rootBucket) {
|
|
82
|
+
throw new Error("The 'rootBucket' parameter is required to fetch non-scheduled activities.");
|
|
83
|
+
}
|
|
84
|
+
let limit = 1000;
|
|
85
|
+
let offset = 0;
|
|
86
|
+
const allItems = [];
|
|
87
|
+
// Prepare reusable token
|
|
88
|
+
const token = await (0, oauthTokenService_1.getOAuthToken)(clientId, clientSecret, instanceUrl);
|
|
89
|
+
while (true) {
|
|
90
|
+
// Build URL cleanly
|
|
91
|
+
const params = new URLSearchParams({
|
|
92
|
+
offset: offset.toString(),
|
|
93
|
+
limit: limit.toString()
|
|
94
|
+
});
|
|
95
|
+
if (rootBucket)
|
|
96
|
+
params.append("resources", rootBucket);
|
|
97
|
+
if (fields)
|
|
98
|
+
params.append("fields", fields);
|
|
99
|
+
params.append("includeNonScheduled", "true");
|
|
100
|
+
const url = `https://${instanceUrl}.fs.ocs.oraclecloud.com/rest/ofscCore/v1/activities/?${params.toString()}`;
|
|
101
|
+
console.error(url);
|
|
102
|
+
console.log(` Fetching Non Scheduled Activities: offset=${offset}, limit=${limit}`);
|
|
103
|
+
const response = await (0, utilities_1.fetchWithRetry)(url, clientId, clientSecret, instanceUrl, token);
|
|
104
|
+
const data = response.data;
|
|
105
|
+
if (!data.items || data.items.length === 0 || data.hasMore === false) {
|
|
106
|
+
console.log("No more items found. Stopping pagination.");
|
|
107
|
+
break;
|
|
108
|
+
}
|
|
109
|
+
allItems.push(...data.items);
|
|
110
|
+
console.log(`Received ${data.items.length} items (Total: ${allItems.length})`);
|
|
111
|
+
limit = data.limit;
|
|
112
|
+
offset += limit;
|
|
113
|
+
}
|
|
114
|
+
return allItems;
|
|
115
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export { downloadWorkZoneCSV } from './workZones';
|
|
|
16
16
|
export { AllResources, downloadAllResourcesCSV, getResourcebyId, getworkSkillsOfResource, updateResourcebyId } from './resources';
|
|
17
17
|
export { downloadAllInactiveUsers, downloadAllInactiveUsersCSV, downloadAllUsersCSV, generateUsersCollaborationCSV, getUserByLogin, updateUserbyLogin } from './users';
|
|
18
18
|
export { downloadAllInventoryTypesCSV, getInventoryTypesDetail, updateCreateInventoryType } from './inventoryTypes';
|
|
19
|
-
export { getActivitybyId, getAllActivities, startActivity, cancelActivity, completeActivity, deleteActivity } from './activities';
|
|
19
|
+
export { getActivitybyId, getAllActivities, startActivity, cancelActivity, completeActivity, deleteActivity, getAllNonScheduledActivities } from './activities';
|
|
20
20
|
export { createActivityCustomerInventories, getActivityCustomerInventories } from './activityInventories';
|
|
21
21
|
export { downloadAllEventsOfDay, downloadAllEventsOfDayCSV, downloadAllEventsOfDLastTwoMinutes, downloadAllEventsOfLastOneHour } from './events';
|
|
22
22
|
export { createExcelFile } from './utilities';
|
|
@@ -31,6 +31,7 @@ declare const OfscUtility: {
|
|
|
31
31
|
updateInventoryType: any;
|
|
32
32
|
Activity: {
|
|
33
33
|
getAllActivities: any;
|
|
34
|
+
getAllNonScheduledActivities: any;
|
|
34
35
|
getActivitybyId: any;
|
|
35
36
|
startActivity: any;
|
|
36
37
|
cancelActivity: any;
|
|
@@ -60,6 +61,7 @@ declare const OfscUtility: {
|
|
|
60
61
|
downloadAllEventsOfLastOneHour: any;
|
|
61
62
|
generateUsersCollaborationCSV: any;
|
|
62
63
|
generateAllOnHandInventoryOfAllResourcesCSV: any;
|
|
64
|
+
getAllNonScheduledActivities: any;
|
|
63
65
|
AllResources: any;
|
|
64
66
|
getworkSkillsOfResource: any;
|
|
65
67
|
getResource: any;
|
package/dist/index.js
CHANGED
|
@@ -36,7 +36,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.createConfigurationFile = exports.createExcelFile = exports.downloadAllEventsOfLastOneHour = exports.downloadAllEventsOfDLastTwoMinutes = exports.downloadAllEventsOfDayCSV = exports.downloadAllEventsOfDay = exports.getActivityCustomerInventories = exports.createActivityCustomerInventories = exports.deleteActivity = exports.completeActivity = exports.cancelActivity = exports.startActivity = exports.getAllActivities = exports.getActivitybyId = exports.updateCreateInventoryType = exports.getInventoryTypesDetail = exports.downloadAllInventoryTypesCSV = exports.updateUserbyLogin = exports.getUserByLogin = exports.generateUsersCollaborationCSV = exports.downloadAllUsersCSV = exports.downloadAllInactiveUsersCSV = exports.downloadAllInactiveUsers = exports.updateResourcebyId = exports.getworkSkillsOfResource = exports.getResourcebyId = exports.downloadAllResourcesCSV = exports.AllResources = exports.downloadWorkZoneCSV = exports.getOAuthToken = exports.generateAllOnHandInventoryOfAllResourcesCSV = exports.generateAllOnHandInventoryOfAllResources = exports.WorkZone = exports.Utilities = exports.User = exports.Resource = exports.OauthTokenService = exports.CreateConfigurationFile = exports.InventoryType = exports.Inventory = exports.Events = exports.ActivityInventories = exports.Activity = void 0;
|
|
39
|
+
exports.createConfigurationFile = exports.createExcelFile = exports.downloadAllEventsOfLastOneHour = exports.downloadAllEventsOfDLastTwoMinutes = exports.downloadAllEventsOfDayCSV = exports.downloadAllEventsOfDay = exports.getActivityCustomerInventories = exports.createActivityCustomerInventories = exports.getAllNonScheduledActivities = exports.deleteActivity = exports.completeActivity = exports.cancelActivity = exports.startActivity = exports.getAllActivities = exports.getActivitybyId = exports.updateCreateInventoryType = exports.getInventoryTypesDetail = exports.downloadAllInventoryTypesCSV = exports.updateUserbyLogin = exports.getUserByLogin = exports.generateUsersCollaborationCSV = exports.downloadAllUsersCSV = exports.downloadAllInactiveUsersCSV = exports.downloadAllInactiveUsers = exports.updateResourcebyId = exports.getworkSkillsOfResource = exports.getResourcebyId = exports.downloadAllResourcesCSV = exports.AllResources = exports.downloadWorkZoneCSV = exports.getOAuthToken = exports.generateAllOnHandInventoryOfAllResourcesCSV = exports.generateAllOnHandInventoryOfAllResources = exports.WorkZone = exports.Utilities = exports.User = exports.Resource = exports.OauthTokenService = exports.CreateConfigurationFile = exports.InventoryType = exports.Inventory = exports.Events = exports.ActivityInventories = exports.Activity = void 0;
|
|
40
40
|
// Export all methods grouped by category
|
|
41
41
|
exports.Activity = __importStar(require("./activities"));
|
|
42
42
|
exports.ActivityInventories = __importStar(require("./activityInventories"));
|
|
@@ -82,6 +82,7 @@ Object.defineProperty(exports, "startActivity", { enumerable: true, get: functio
|
|
|
82
82
|
Object.defineProperty(exports, "cancelActivity", { enumerable: true, get: function () { return activities_1.cancelActivity; } });
|
|
83
83
|
Object.defineProperty(exports, "completeActivity", { enumerable: true, get: function () { return activities_1.completeActivity; } });
|
|
84
84
|
Object.defineProperty(exports, "deleteActivity", { enumerable: true, get: function () { return activities_1.deleteActivity; } });
|
|
85
|
+
Object.defineProperty(exports, "getAllNonScheduledActivities", { enumerable: true, get: function () { return activities_1.getAllNonScheduledActivities; } });
|
|
85
86
|
var activityInventories_1 = require("./activityInventories");
|
|
86
87
|
Object.defineProperty(exports, "createActivityCustomerInventories", { enumerable: true, get: function () { return activityInventories_1.createActivityCustomerInventories; } });
|
|
87
88
|
Object.defineProperty(exports, "getActivityCustomerInventories", { enumerable: true, get: function () { return activityInventories_1.getActivityCustomerInventories; } });
|
|
@@ -105,6 +106,7 @@ const OfscUtility = {
|
|
|
105
106
|
updateInventoryType: require('./inventoryTypes').updateInventoryType,
|
|
106
107
|
Activity: {
|
|
107
108
|
getAllActivities: require('./activities').getAllActivities,
|
|
109
|
+
getAllNonScheduledActivities: require('./activities').getAllNonScheduledActivities,
|
|
108
110
|
getActivitybyId: require('./activities').getActivitybyId,
|
|
109
111
|
startActivity: require('./activities').startActivity,
|
|
110
112
|
cancelActivity: require('./activities').cancelActivity,
|
|
@@ -134,6 +136,7 @@ const OfscUtility = {
|
|
|
134
136
|
downloadAllEventsOfLastOneHour: require('./events').downloadAllEventsOfLastOneHour,
|
|
135
137
|
generateUsersCollaborationCSV: require('./users').generateUsersCollaborationCSV,
|
|
136
138
|
generateAllOnHandInventoryOfAllResourcesCSV: require('./inventory').generateAllOnHandInventoryOfAllResourcesCSV,
|
|
139
|
+
getAllNonScheduledActivities: require('./activities').getAllNonScheduledActivities,
|
|
137
140
|
AllResources: require('./resources').AllResources,
|
|
138
141
|
getworkSkillsOfResource: require('./resources').getworkSkillsOfResource,
|
|
139
142
|
getResource: require('./resources').getResourcebyId,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ofsc-utility",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.54",
|
|
4
4
|
"description": "TypeScript helpers for Oracle Field Service Cloud (OFSC): events, resources, inventories, metadata and CSV/Excel utilities.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
package/readme.md
CHANGED
|
@@ -127,6 +127,7 @@ The package exposes both top-level helpers and grouped namespaces. This list is
|
|
|
127
127
|
- `getInventoryTypesDetail`
|
|
128
128
|
- `updateCreateInventoryType`
|
|
129
129
|
- `getAllActivities`
|
|
130
|
+
- `getAllNonScheduledActivities`
|
|
130
131
|
- `getActivitybyId`
|
|
131
132
|
- `startActivity`
|
|
132
133
|
- `cancelActivity`
|
|
@@ -147,6 +148,7 @@ The module-level namespace exports are:
|
|
|
147
148
|
|
|
148
149
|
- `ofs.Activity`
|
|
149
150
|
- `getAllActivities`
|
|
151
|
+
- `getAllNonScheduledActivities`
|
|
150
152
|
- `getActivitybyId`
|
|
151
153
|
- `startActivity`
|
|
152
154
|
- `cancelActivity`
|
|
@@ -869,6 +871,16 @@ const activityData = await ofs.Activity.getActivitybyId(
|
|
|
869
871
|
123456,
|
|
870
872
|
);
|
|
871
873
|
|
|
874
|
+
const nonScheduledActivities = await ofs.Activity.getAllNonScheduledActivities(
|
|
875
|
+
process.env.CLIENT_ID,
|
|
876
|
+
process.env.CLIENT_SECRET,
|
|
877
|
+
process.env.INSTANCE_NAME,
|
|
878
|
+
"US",
|
|
879
|
+
"activityId,activityType,status",
|
|
880
|
+
);
|
|
881
|
+
|
|
882
|
+
console.log("Non-scheduled activities:", nonScheduledActivities.length);
|
|
883
|
+
|
|
872
884
|
await ofs.Activity.startActivity(
|
|
873
885
|
process.env.CLIENT_ID,
|
|
874
886
|
process.env.CLIENT_SECRET,
|
|
@@ -926,8 +938,9 @@ const inventoryDetail = await ofs.InventoryType.getInventoryTypesDetail(
|
|
|
926
938
|
|
|
927
939
|
### Activity lifecycle actions
|
|
928
940
|
|
|
929
|
-
The activity action helpers let you transition an OFSC activity through its standard custom actions:
|
|
941
|
+
The activity action helpers let you transition an OFSC activity through its standard custom actions and list non-scheduled activity work:
|
|
930
942
|
|
|
943
|
+
- `getAllNonScheduledActivities(clientId, clientSecret, instanceUrl, resources, fields?)`
|
|
931
944
|
- `startActivity(clientId, clientSecret, instanceUrl, activityId)`
|
|
932
945
|
- `completeActivity(clientId, clientSecret, instanceUrl, activityId)`
|
|
933
946
|
- `cancelActivity(clientId, clientSecret, instanceUrl, activityId)`
|
|
@@ -935,6 +948,21 @@ The activity action helpers let you transition an OFSC activity through its stan
|
|
|
935
948
|
|
|
936
949
|
Example:
|
|
937
950
|
|
|
951
|
+
```js
|
|
952
|
+
let rootBucket="US";
|
|
953
|
+
const nonScheduled = await ofs.Activity.getAllNonScheduledActivities(
|
|
954
|
+
process.env.CLIENT_ID,
|
|
955
|
+
process.env.CLIENT_SECRET,
|
|
956
|
+
process.env.INSTANCE_NAME,
|
|
957
|
+
rootBucket,
|
|
958
|
+
"activityId,activityType,date,status",
|
|
959
|
+
);
|
|
960
|
+
|
|
961
|
+
console.log(nonScheduled.length);
|
|
962
|
+
```
|
|
963
|
+
|
|
964
|
+
Example:
|
|
965
|
+
|
|
938
966
|
```js
|
|
939
967
|
const started = await ofs.Activity.startActivity(
|
|
940
968
|
process.env.CLIENT_ID,
|