@openinc/parse-server-opendash 2.4.95 → 2.4.99
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/dist/app_types/CRON_Types.d.ts +10 -0
- package/dist/app_types/CRON_Types.js +2 -0
- package/dist/config.js +9 -0
- package/dist/featuremap.json +1 -0
- package/dist/functions/openinc-openservice-save-ticket-data.d.ts +4 -0
- package/dist/functions/openinc-openservice-save-ticket-data.js +47 -8
- package/dist/functions/openinc-openservice-ticket-data.d.ts +7 -0
- package/dist/functions/openinc-openservice-ticket-data.js +2 -1
- package/dist/helper/TranslationKeys.d.ts +82 -0
- package/dist/helper/TranslationKeys.js +86 -0
- package/dist/hooks/Maintenance_Downtime.js +39 -2
- package/dist/hooks/Maintenance_Duedate.js +47 -2
- package/dist/hooks/Maintenance_Frequency.js +39 -2
- package/dist/hooks/Maintenance_Message.js +429 -1
- package/dist/hooks/Maintenance_Priority.js +39 -2
- package/dist/hooks/Maintenance_Restriction.js +39 -2
- package/dist/hooks/Maintenance_Schedule_Execution.js +36 -0
- package/dist/hooks/Maintenance_Schedule_Template.js +66 -23
- package/dist/hooks/Maintenance_Ticket_Issuecategory.js +40 -2
- package/dist/hooks/Maintenance_Ticket_Kanban_State.js +39 -2
- package/dist/hooks/Maintenance_Ticket_Source.js +55 -6
- package/dist/hooks/Maintenance_Ticket_Title.js +39 -2
- package/dist/hooks/Monitoring_Jobs.js +1 -1
- package/dist/index.js +3 -1
- package/dist/types/ML_DataSelection.d.ts +16 -0
- package/dist/types/ML_DataSelection.js +23 -0
- package/dist/types/Monitoring_Jobs.d.ts +8 -3
- package/dist/types/Monitoring_Jobs.js +6 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +4 -2
- package/package.json +1 -1
- package/schema/ML_DataSelection.json +38 -0
- package/schema/Monitoring_Jobs.json +8 -1
package/dist/config.js
CHANGED
|
@@ -233,6 +233,15 @@ const options = {
|
|
|
233
233
|
default: "false",
|
|
234
234
|
description: "Enable Parse Classes and Cloud Code for the MIAAS plugin.",
|
|
235
235
|
},
|
|
236
|
+
FEATURE_DOCUMENTATION: {
|
|
237
|
+
env: "OPENINC_PARSE_FEATURE_DOCUMENTATION",
|
|
238
|
+
type: "boolean",
|
|
239
|
+
required: false,
|
|
240
|
+
secret: false,
|
|
241
|
+
public: true,
|
|
242
|
+
default: "false",
|
|
243
|
+
description: "Enable Parse Classes and Cloud Code for the Documentation plugin.",
|
|
244
|
+
},
|
|
236
245
|
FORCE_SCHEMA: {
|
|
237
246
|
env: "OPENINC_PARSE_FORCE_SCHEMA",
|
|
238
247
|
type: "boolean",
|
package/dist/featuremap.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"OD3_MES_Order": "MONITORING",
|
|
72
72
|
"OD3_MES_OrderPlan": "MONITORING",
|
|
73
73
|
"OD3_MIAAS_MDSEndpoint": "MIAAS",
|
|
74
|
+
"OD3_ML_DataSelection": "unknown",
|
|
74
75
|
"OD3_Monitoring_DataHierachies": "MONITORING",
|
|
75
76
|
"OD3_Monitoring_Jobs": "MONITORING",
|
|
76
77
|
"OD3_Monitoring_ParseTableSensor": "MONITORING",
|
|
@@ -53,7 +53,7 @@ async function saveTicketData(data, user) {
|
|
|
53
53
|
const ticket = await getTicketObject(data, user, fetchOptions);
|
|
54
54
|
// needs to be the first save to save a message before data change messages are created on ticket creation
|
|
55
55
|
if (data.message)
|
|
56
|
-
await saveMessage(ticket, data.message, fetchOptions);
|
|
56
|
+
await saveMessage(ticket, data.message, fetchOptions, data);
|
|
57
57
|
if (data.assignedTo !== undefined)
|
|
58
58
|
await assignUsersAndRoles(ticket, data.assignedTo, fetchOptions, user);
|
|
59
59
|
if (data.title)
|
|
@@ -74,8 +74,6 @@ async function saveTicketData(data, user) {
|
|
|
74
74
|
await saveIssueCategory(ticket, data.issuecategory, fetchOptions);
|
|
75
75
|
if (data.state)
|
|
76
76
|
await saveState(ticket, data.state, fetchOptions);
|
|
77
|
-
if (data.source)
|
|
78
|
-
await saveSource(ticket, data.source, fetchOptions);
|
|
79
77
|
if (data.media)
|
|
80
78
|
await saveMedia(ticket, data.media, fetchOptions);
|
|
81
79
|
// save defaults
|
|
@@ -83,6 +81,9 @@ async function saveTicketData(data, user) {
|
|
|
83
81
|
await saveDefaultIssueCategory(ticket, fetchOptions);
|
|
84
82
|
if (!data.state && !data.existingTicketId)
|
|
85
83
|
await saveDefaultState(ticket, fetchOptions);
|
|
84
|
+
// save source last so the machinelog does not have the initialization messages of the ticket data
|
|
85
|
+
if (data.source)
|
|
86
|
+
await saveSource(ticket, data.source, fetchOptions);
|
|
86
87
|
return ticket;
|
|
87
88
|
}
|
|
88
89
|
async function getTicketObject(value, user, fetchOptions) {
|
|
@@ -224,6 +225,11 @@ async function assignUsersAndRoles(ticket, assignedTo, fetchOptions, assigningUs
|
|
|
224
225
|
username: getUsername(assigningUser),
|
|
225
226
|
userList: newUsers.map((u) => `'${u.get("username")}'`).join(", "),
|
|
226
227
|
roleList: newRoles.map((r) => `'${r.get("label")}'`).join(", "),
|
|
228
|
+
ticketName: ticket.get("title"),
|
|
229
|
+
},
|
|
230
|
+
origin: {
|
|
231
|
+
id: ticket.id,
|
|
232
|
+
classname: ticket.className,
|
|
227
233
|
},
|
|
228
234
|
},
|
|
229
235
|
}).save(null, fetchOptions);
|
|
@@ -330,17 +336,50 @@ async function saveSource(ticket, source, fetchOptions) {
|
|
|
330
336
|
});
|
|
331
337
|
await tSource.save(null, fetchOptions);
|
|
332
338
|
}
|
|
333
|
-
async function saveMessage(ticket, message, fetchOptions) {
|
|
334
|
-
|
|
339
|
+
async function saveMessage(ticket, message, fetchOptions, values) {
|
|
340
|
+
// create new message log
|
|
341
|
+
await new types_1.Maintenance_Message({
|
|
335
342
|
content: message.description,
|
|
336
343
|
referencedObjectId: ticket.id,
|
|
337
344
|
classname: types_1.Maintenance_Ticket.className,
|
|
338
345
|
tenant: ticket.get("tenant"),
|
|
339
346
|
user: ticket.get("user"),
|
|
340
347
|
title: message.title,
|
|
341
|
-
data:
|
|
342
|
-
|
|
343
|
-
|
|
348
|
+
data: {
|
|
349
|
+
origin: { id: ticket.id, classname: ticket.className }, // default
|
|
350
|
+
...message.data,
|
|
351
|
+
},
|
|
352
|
+
}).save(null, fetchOptions);
|
|
353
|
+
// to machinelog
|
|
354
|
+
// if needed, this saves a message to the machinelog when a message is saved to the ticket
|
|
355
|
+
// this counts for user input and the ticket creation
|
|
356
|
+
// const source = values.source
|
|
357
|
+
// ? await new Parse.Query(Source).get(values.source, fetchOptions)
|
|
358
|
+
// : (await getTicketSource(ticket))?.get("source");
|
|
359
|
+
// if (source) {
|
|
360
|
+
// await new Maintenance_Message({
|
|
361
|
+
// referencedObjectId: source.id,
|
|
362
|
+
// classname: source.className,
|
|
363
|
+
// title: message.title,
|
|
364
|
+
// content: message.description,
|
|
365
|
+
// user: ticket.get("user"),
|
|
366
|
+
// tenant: ticket.get("tenant"),
|
|
367
|
+
// data: {
|
|
368
|
+
// type: "system",
|
|
369
|
+
// translation: {
|
|
370
|
+
// username: getUsername(ticket.get("user") as _User),
|
|
371
|
+
// old: "Nicht vorhanden",
|
|
372
|
+
// new: ticket.get("title"),
|
|
373
|
+
// ticketName: ticket.get("title"),
|
|
374
|
+
// },
|
|
375
|
+
// origin: {
|
|
376
|
+
// id: ticket.id,
|
|
377
|
+
// classname: ticket.className,
|
|
378
|
+
// },
|
|
379
|
+
// ...message.data,
|
|
380
|
+
// } as MessageData,
|
|
381
|
+
// }).save(null, fetchOptions);
|
|
382
|
+
// }
|
|
344
383
|
}
|
|
345
384
|
async function saveDefaultIssueCategory(ticket, fetchOptions) {
|
|
346
385
|
const catchAll = await new Parse.Query(types_1.Maintenance_Issuecategory)
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Maintenance_Ticket, Maintenance_Ticket_Source } from "../types";
|
|
1
2
|
type FilterParams = {
|
|
2
3
|
attribute: "objectId" | "state" | "issuecategory" | "user" | "role" | "userRole" | "createdUser" | "source";
|
|
3
4
|
/**
|
|
@@ -20,6 +21,12 @@ export type FetchParams = {
|
|
|
20
21
|
config: Array<FetchObject>;
|
|
21
22
|
};
|
|
22
23
|
export declare function init(name: string): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Fetches the source for a ticket
|
|
26
|
+
* @param ticket
|
|
27
|
+
* @param ticketIds
|
|
28
|
+
*/
|
|
29
|
+
export declare function getTicketSource(ticket: Maintenance_Ticket): Promise<Maintenance_Ticket_Source | undefined>;
|
|
23
30
|
/**
|
|
24
31
|
* Creates a distinct array based on the getId function and can afterwards filter the array
|
|
25
32
|
* @param arr the array to get distinct values from
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.init = init;
|
|
4
|
+
exports.getTicketSource = getTicketSource;
|
|
4
5
|
exports.arrayToDistinct = arrayToDistinct;
|
|
5
6
|
const catchError_1 = require("../helper/catchError");
|
|
6
7
|
const types_1 = require("../types");
|
|
@@ -126,7 +127,7 @@ async function getTicketData(tickets) {
|
|
|
126
127
|
source: dataPromises[6]?.get("source"),
|
|
127
128
|
state: dataPromises[7]?.get("state"),
|
|
128
129
|
dailySchedule: dataPromises[8],
|
|
129
|
-
messages: dataPromises[9]
|
|
130
|
+
messages: dataPromises[9]?.messages,
|
|
130
131
|
assignedTo: [...assignedusers, ...assignedroles],
|
|
131
132
|
};
|
|
132
133
|
});
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export declare class MessageTranslationKeys {
|
|
2
|
+
static TICKETLOG: {
|
|
3
|
+
TITLE: {
|
|
4
|
+
TITLE: string;
|
|
5
|
+
CONTENT: string;
|
|
6
|
+
};
|
|
7
|
+
PRIORITY: {
|
|
8
|
+
TITLE: string;
|
|
9
|
+
CONTENT: string;
|
|
10
|
+
};
|
|
11
|
+
DUEDATE: {
|
|
12
|
+
TITLE: string;
|
|
13
|
+
CONTENT: string;
|
|
14
|
+
};
|
|
15
|
+
FREQUENCY: {
|
|
16
|
+
TITLE: string;
|
|
17
|
+
CONTENT: string;
|
|
18
|
+
};
|
|
19
|
+
ISSUECATEGORY: {
|
|
20
|
+
TITLE: string;
|
|
21
|
+
CONTENT: string;
|
|
22
|
+
};
|
|
23
|
+
KANBANSTATE: {
|
|
24
|
+
TITLE: string;
|
|
25
|
+
CONTENT: string;
|
|
26
|
+
};
|
|
27
|
+
RESTRICTION: {
|
|
28
|
+
TITLE: string;
|
|
29
|
+
CONTENT: string;
|
|
30
|
+
};
|
|
31
|
+
SOURCE: {
|
|
32
|
+
TITLE: string;
|
|
33
|
+
CONTENT: string;
|
|
34
|
+
};
|
|
35
|
+
DOWNTIME: {
|
|
36
|
+
TITLE: string;
|
|
37
|
+
CONTENT: string;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
static MACHINELOG: {
|
|
41
|
+
TITLE: {
|
|
42
|
+
TITLE: string;
|
|
43
|
+
CONTENT: string;
|
|
44
|
+
};
|
|
45
|
+
PRIORITY: {
|
|
46
|
+
TITLE: string;
|
|
47
|
+
CONTENT: string;
|
|
48
|
+
};
|
|
49
|
+
DUEDATE: {
|
|
50
|
+
TITLE: string;
|
|
51
|
+
CONTENT: string;
|
|
52
|
+
};
|
|
53
|
+
FREQUENCY: {
|
|
54
|
+
TITLE: string;
|
|
55
|
+
CONTENT: string;
|
|
56
|
+
};
|
|
57
|
+
ISSUECATEGORY: {
|
|
58
|
+
TITLE: string;
|
|
59
|
+
CONTENT: string;
|
|
60
|
+
};
|
|
61
|
+
KANBANSTATE: {
|
|
62
|
+
TITLE: string;
|
|
63
|
+
CONTENT: string;
|
|
64
|
+
};
|
|
65
|
+
RESTRICTION: {
|
|
66
|
+
TITLE: string;
|
|
67
|
+
CONTENT: string;
|
|
68
|
+
};
|
|
69
|
+
SOURCE: {
|
|
70
|
+
TITLE: string;
|
|
71
|
+
CONTENT: string;
|
|
72
|
+
};
|
|
73
|
+
DOWNTIME: {
|
|
74
|
+
TITLE: string;
|
|
75
|
+
CONTENT: string;
|
|
76
|
+
};
|
|
77
|
+
SCHEDULEEXECUTION: {
|
|
78
|
+
TITLE: string;
|
|
79
|
+
CONTENT: string;
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessageTranslationKeys = void 0;
|
|
4
|
+
class MessageTranslationKeys {
|
|
5
|
+
}
|
|
6
|
+
exports.MessageTranslationKeys = MessageTranslationKeys;
|
|
7
|
+
MessageTranslationKeys.TICKETLOG = {
|
|
8
|
+
TITLE: {
|
|
9
|
+
TITLE: "maintenance:ticket.message.title.changed.title",
|
|
10
|
+
CONTENT: "maintenance:ticket.message.title.changed.content",
|
|
11
|
+
},
|
|
12
|
+
PRIORITY: {
|
|
13
|
+
TITLE: "maintenance:ticket.message.priority.changed.title",
|
|
14
|
+
CONTENT: "maintenance:ticket.message.priority.changed.content",
|
|
15
|
+
},
|
|
16
|
+
DUEDATE: {
|
|
17
|
+
TITLE: "maintenance:ticket.message.duedate.changed.title",
|
|
18
|
+
CONTENT: "maintenance:ticket.message.duedate.changed.content",
|
|
19
|
+
},
|
|
20
|
+
FREQUENCY: {
|
|
21
|
+
TITLE: "maintenance:ticket.message.frequency.changed.title",
|
|
22
|
+
CONTENT: "maintenance:ticket.message.frequency.changed.content",
|
|
23
|
+
},
|
|
24
|
+
ISSUECATEGORY: {
|
|
25
|
+
TITLE: "maintenance:ticket.message.issuecategory.changed.title",
|
|
26
|
+
CONTENT: "maintenance:ticket.message.issuecategory.changed.content",
|
|
27
|
+
},
|
|
28
|
+
KANBANSTATE: {
|
|
29
|
+
TITLE: "maintenance:ticket.message.kanbanstate.changed.title",
|
|
30
|
+
CONTENT: "maintenance:ticket.message.kanbanstate.changed.content",
|
|
31
|
+
},
|
|
32
|
+
RESTRICTION: {
|
|
33
|
+
TITLE: "maintenance:ticket.message.restriction.changed.title",
|
|
34
|
+
CONTENT: "maintenance:ticket.message.restriction.changed.content",
|
|
35
|
+
},
|
|
36
|
+
SOURCE: {
|
|
37
|
+
TITLE: "maintenance:ticket.message.source.changed.title",
|
|
38
|
+
CONTENT: "maintenance:ticket.message.source.changed.content",
|
|
39
|
+
},
|
|
40
|
+
DOWNTIME: {
|
|
41
|
+
TITLE: "maintenance:ticket.message.downtime.changed.title",
|
|
42
|
+
CONTENT: "maintenance:ticket.message.downtime.changed.content",
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
MessageTranslationKeys.MACHINELOG = {
|
|
46
|
+
TITLE: {
|
|
47
|
+
TITLE: "maintenance:machinelog.message.title.changed.title",
|
|
48
|
+
CONTENT: "maintenance:machinelog.message.title.changed.content",
|
|
49
|
+
},
|
|
50
|
+
PRIORITY: {
|
|
51
|
+
TITLE: "maintenance:machinelog.message.priority.changed.title",
|
|
52
|
+
CONTENT: "maintenance:machinelog.message.priority.changed.content",
|
|
53
|
+
},
|
|
54
|
+
DUEDATE: {
|
|
55
|
+
TITLE: "maintenance:machinelog.message.duedate.changed.title",
|
|
56
|
+
CONTENT: "maintenance:machinelog.message.duedate.changed.content",
|
|
57
|
+
},
|
|
58
|
+
FREQUENCY: {
|
|
59
|
+
TITLE: "maintenance:machinelog.message.frequency.changed.title",
|
|
60
|
+
CONTENT: "maintenance:machinelog.message.frequency.changed.content",
|
|
61
|
+
},
|
|
62
|
+
ISSUECATEGORY: {
|
|
63
|
+
TITLE: "maintenance:machinelog.message.issuecategory.changed.title",
|
|
64
|
+
CONTENT: "maintenance:machinelog.message.issuecategory.changed.content",
|
|
65
|
+
},
|
|
66
|
+
KANBANSTATE: {
|
|
67
|
+
TITLE: "maintenance:machinelog.message.kanbanstate.changed.title",
|
|
68
|
+
CONTENT: "maintenance:machinelog.message.kanbanstate.changed.content",
|
|
69
|
+
},
|
|
70
|
+
RESTRICTION: {
|
|
71
|
+
TITLE: "maintenance:machinelog.message.restriction.changed.title",
|
|
72
|
+
CONTENT: "maintenance:machinelog.message.restriction.changed.content",
|
|
73
|
+
},
|
|
74
|
+
SOURCE: {
|
|
75
|
+
TITLE: "maintenance:machinelog.message.source.changed.title",
|
|
76
|
+
CONTENT: "maintenance:machinelog.message.source.changed.content",
|
|
77
|
+
},
|
|
78
|
+
DOWNTIME: {
|
|
79
|
+
TITLE: "maintenance:machinelog.message.downtime.changed.title",
|
|
80
|
+
CONTENT: "maintenance:machinelog.message.downtime.changed.content",
|
|
81
|
+
},
|
|
82
|
+
SCHEDULEEXECUTION: {
|
|
83
|
+
TITLE: "maintenance:schedule.message.execution.title",
|
|
84
|
+
CONTENT: "maintenance:schedule.message.execution.content",
|
|
85
|
+
},
|
|
86
|
+
};
|
|
@@ -3,11 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.init = init;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const openinc_openservice_save_ticket_data_1 = require("../functions/openinc-openservice-save-ticket-data");
|
|
6
|
+
const openinc_openservice_ticket_data_1 = require("../functions/openinc-openservice-ticket-data");
|
|
6
7
|
const removeShorltyPreviousEntry_1 = require("../helper/removeShorltyPreviousEntry");
|
|
8
|
+
const TranslationKeys_1 = require("../helper/TranslationKeys");
|
|
7
9
|
const types_1 = require("../types");
|
|
8
10
|
const Maintenance_Message_1 = require("./Maintenance_Message");
|
|
9
|
-
const TRANSLATION_TITLE =
|
|
10
|
-
const TRANSLATION_CONTENT =
|
|
11
|
+
const TRANSLATION_TITLE = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.DOWNTIME.TITLE;
|
|
12
|
+
const TRANSLATION_CONTENT = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.DOWNTIME.CONTENT;
|
|
13
|
+
const TRANSLATION_TITLE_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.DOWNTIME.TITLE;
|
|
14
|
+
const TRANSLATION_CONTENT_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.DOWNTIME.CONTENT;
|
|
11
15
|
async function init() {
|
|
12
16
|
(0, __1.beforeSaveHook)(types_1.Maintenance_Downtime, async (request) => {
|
|
13
17
|
const { object, original, user } = request;
|
|
@@ -34,6 +38,10 @@ async function init() {
|
|
|
34
38
|
}, (first, second) => {
|
|
35
39
|
return first.get("value") === second.get("value");
|
|
36
40
|
});
|
|
41
|
+
// fetch necessary data
|
|
42
|
+
await savedObject.fetchWithInclude(["ticket"], {
|
|
43
|
+
useMasterKey: true,
|
|
44
|
+
});
|
|
37
45
|
const previous = await new Parse.Query(types_1.Maintenance_Downtime)
|
|
38
46
|
.includeAll()
|
|
39
47
|
.equalTo("ticket", savedObject.get("ticket"))
|
|
@@ -55,7 +63,36 @@ async function init() {
|
|
|
55
63
|
old: previous?.get("value") ?? "Nicht vorhanden",
|
|
56
64
|
new: savedObject?.get("value"),
|
|
57
65
|
},
|
|
66
|
+
origin: {
|
|
67
|
+
id: savedObject.id,
|
|
68
|
+
classname: savedObject.className,
|
|
69
|
+
},
|
|
58
70
|
},
|
|
59
71
|
}).save(null, { useMasterKey: true });
|
|
72
|
+
// to machinelog
|
|
73
|
+
const source = (await (0, openinc_openservice_ticket_data_1.getTicketSource)(savedObject.get("ticket")))?.get("source");
|
|
74
|
+
if (source) {
|
|
75
|
+
await new types_1.Maintenance_Message({
|
|
76
|
+
referencedObjectId: source?.id,
|
|
77
|
+
classname: source?.className,
|
|
78
|
+
title: TRANSLATION_TITLE_MACHINELOG,
|
|
79
|
+
content: TRANSLATION_CONTENT_MACHINELOG,
|
|
80
|
+
user: user,
|
|
81
|
+
tenant: user?.get("tenant"),
|
|
82
|
+
data: {
|
|
83
|
+
type: "system",
|
|
84
|
+
translation: {
|
|
85
|
+
username: (0, openinc_openservice_save_ticket_data_1.getUsername)(user),
|
|
86
|
+
old: previous?.get("value") ?? "Nicht vorhanden",
|
|
87
|
+
new: savedObject?.get("value"),
|
|
88
|
+
ticketName: savedObject.get("ticket")?.get("title"),
|
|
89
|
+
},
|
|
90
|
+
origin: {
|
|
91
|
+
id: savedObject.get("ticket")?.id,
|
|
92
|
+
classname: savedObject.get("ticket")?.className,
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
}).save(null, { useMasterKey: true });
|
|
96
|
+
}
|
|
60
97
|
});
|
|
61
98
|
}
|
|
@@ -3,11 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.init = init;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const openinc_openservice_save_ticket_data_1 = require("../functions/openinc-openservice-save-ticket-data");
|
|
6
|
+
const openinc_openservice_ticket_data_1 = require("../functions/openinc-openservice-ticket-data");
|
|
6
7
|
const removeShorltyPreviousEntry_1 = require("../helper/removeShorltyPreviousEntry");
|
|
8
|
+
const TranslationKeys_1 = require("../helper/TranslationKeys");
|
|
7
9
|
const types_1 = require("../types");
|
|
8
10
|
const Maintenance_Message_1 = require("./Maintenance_Message");
|
|
9
|
-
const TRANSLATION_TITLE =
|
|
10
|
-
const TRANSLATION_CONTENT =
|
|
11
|
+
const TRANSLATION_TITLE = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.DUEDATE.TITLE;
|
|
12
|
+
const TRANSLATION_CONTENT = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.DUEDATE.CONTENT;
|
|
13
|
+
const TRANSLATION_TITLE_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.DUEDATE.TITLE;
|
|
14
|
+
const TRANSLATION_CONTENT_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.DUEDATE.CONTENT;
|
|
11
15
|
async function init() {
|
|
12
16
|
(0, __1.beforeSaveHook)(types_1.Maintenance_Duedate, async (request) => {
|
|
13
17
|
const { object, original, user } = request;
|
|
@@ -34,6 +38,10 @@ async function init() {
|
|
|
34
38
|
}, (first, second) => {
|
|
35
39
|
return first.get("end")?.getTime() === second.get("end")?.getTime();
|
|
36
40
|
});
|
|
41
|
+
// fetch necessary data
|
|
42
|
+
await savedObject.fetchWithInclude(["ticket"], {
|
|
43
|
+
useMasterKey: true,
|
|
44
|
+
});
|
|
37
45
|
const previous = await new Parse.Query(types_1.Maintenance_Duedate)
|
|
38
46
|
.includeAll()
|
|
39
47
|
.equalTo("ticket", savedObject.get("ticket"))
|
|
@@ -69,7 +77,44 @@ async function init() {
|
|
|
69
77
|
newend: savedObject?.get("end")?.toLocaleDateString("de-DE", dateFormat) ??
|
|
70
78
|
"Nicht vorhanden",
|
|
71
79
|
},
|
|
80
|
+
origin: {
|
|
81
|
+
id: savedObject.id,
|
|
82
|
+
classname: savedObject.className,
|
|
83
|
+
},
|
|
72
84
|
},
|
|
73
85
|
}).save(null, { useMasterKey: true });
|
|
86
|
+
// to machinelog
|
|
87
|
+
const source = (await (0, openinc_openservice_ticket_data_1.getTicketSource)(savedObject.get("ticket")))?.get("source");
|
|
88
|
+
if (source) {
|
|
89
|
+
await new types_1.Maintenance_Message({
|
|
90
|
+
referencedObjectId: source?.id,
|
|
91
|
+
classname: source?.className,
|
|
92
|
+
title: TRANSLATION_TITLE_MACHINELOG,
|
|
93
|
+
content: TRANSLATION_CONTENT_MACHINELOG,
|
|
94
|
+
user: user,
|
|
95
|
+
tenant: user?.get("tenant"),
|
|
96
|
+
data: {
|
|
97
|
+
type: "system",
|
|
98
|
+
translation: {
|
|
99
|
+
username: (0, openinc_openservice_save_ticket_data_1.getUsername)(user),
|
|
100
|
+
oldstart: previous?.get("start")?.toLocaleDateString("de-DE", dateFormat) ??
|
|
101
|
+
"Nicht vorhanden",
|
|
102
|
+
oldend: previous?.get("end")?.toLocaleDateString("de-DE", dateFormat) ??
|
|
103
|
+
"Nicht vorhanden",
|
|
104
|
+
newstart: savedObject
|
|
105
|
+
?.get("start")
|
|
106
|
+
?.toLocaleDateString("de-DE", dateFormat) ?? "Nicht vorhanden",
|
|
107
|
+
newend: savedObject
|
|
108
|
+
?.get("end")
|
|
109
|
+
?.toLocaleDateString("de-DE", dateFormat) ?? "Nicht vorhanden",
|
|
110
|
+
ticketName: savedObject.get("ticket")?.get("title"),
|
|
111
|
+
},
|
|
112
|
+
origin: {
|
|
113
|
+
id: savedObject.get("ticket")?.id,
|
|
114
|
+
classname: savedObject.get("ticket")?.className,
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
}).save(null, { useMasterKey: true });
|
|
118
|
+
}
|
|
74
119
|
});
|
|
75
120
|
}
|
|
@@ -3,11 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.init = init;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const openinc_openservice_save_ticket_data_1 = require("../functions/openinc-openservice-save-ticket-data");
|
|
6
|
+
const openinc_openservice_ticket_data_1 = require("../functions/openinc-openservice-ticket-data");
|
|
6
7
|
const removeShorltyPreviousEntry_1 = require("../helper/removeShorltyPreviousEntry");
|
|
8
|
+
const TranslationKeys_1 = require("../helper/TranslationKeys");
|
|
7
9
|
const types_1 = require("../types");
|
|
8
10
|
const Maintenance_Message_1 = require("./Maintenance_Message");
|
|
9
|
-
const TRANSLATION_TITLE =
|
|
10
|
-
const TRANSLATION_CONTENT =
|
|
11
|
+
const TRANSLATION_TITLE = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.FREQUENCY.TITLE;
|
|
12
|
+
const TRANSLATION_CONTENT = TranslationKeys_1.MessageTranslationKeys.TICKETLOG.FREQUENCY.CONTENT;
|
|
13
|
+
const TRANSLATION_TITLE_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.FREQUENCY.TITLE;
|
|
14
|
+
const TRANSLATION_CONTENT_MACHINELOG = TranslationKeys_1.MessageTranslationKeys.MACHINELOG.FREQUENCY.CONTENT;
|
|
11
15
|
async function init() {
|
|
12
16
|
(0, __1.beforeSaveHook)(types_1.Maintenance_Frequency, async (request) => {
|
|
13
17
|
const { object, original, user } = request;
|
|
@@ -34,6 +38,10 @@ async function init() {
|
|
|
34
38
|
}, (first, second) => {
|
|
35
39
|
return first.get("value") === second.get("value");
|
|
36
40
|
});
|
|
41
|
+
// fetch necessary data
|
|
42
|
+
await savedObject.fetchWithInclude(["ticket"], {
|
|
43
|
+
useMasterKey: true,
|
|
44
|
+
});
|
|
37
45
|
const previous = await new Parse.Query(types_1.Maintenance_Frequency)
|
|
38
46
|
.includeAll()
|
|
39
47
|
.equalTo("ticket", savedObject.get("ticket"))
|
|
@@ -55,7 +63,36 @@ async function init() {
|
|
|
55
63
|
old: previous?.get("value") ?? "Nicht vorhanden",
|
|
56
64
|
new: savedObject?.get("value"),
|
|
57
65
|
},
|
|
66
|
+
origin: {
|
|
67
|
+
id: savedObject.id,
|
|
68
|
+
classname: savedObject.className,
|
|
69
|
+
},
|
|
58
70
|
},
|
|
59
71
|
}).save(null, { useMasterKey: true });
|
|
72
|
+
// to machinelog
|
|
73
|
+
const source = (await (0, openinc_openservice_ticket_data_1.getTicketSource)(savedObject.get("ticket")))?.get("source");
|
|
74
|
+
if (source) {
|
|
75
|
+
await new types_1.Maintenance_Message({
|
|
76
|
+
referencedObjectId: source?.id,
|
|
77
|
+
classname: source?.className,
|
|
78
|
+
title: TRANSLATION_TITLE_MACHINELOG,
|
|
79
|
+
content: TRANSLATION_CONTENT_MACHINELOG,
|
|
80
|
+
user: user,
|
|
81
|
+
tenant: user?.get("tenant"),
|
|
82
|
+
data: {
|
|
83
|
+
type: "system",
|
|
84
|
+
translation: {
|
|
85
|
+
username: (0, openinc_openservice_save_ticket_data_1.getUsername)(user),
|
|
86
|
+
old: previous?.get("value") ?? "Nicht vorhanden",
|
|
87
|
+
new: savedObject?.get("value"),
|
|
88
|
+
ticketName: savedObject.get("ticket")?.get("title"),
|
|
89
|
+
},
|
|
90
|
+
origin: {
|
|
91
|
+
id: savedObject.get("ticket")?.id,
|
|
92
|
+
classname: savedObject.get("ticket")?.className,
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
}).save(null, { useMasterKey: true });
|
|
96
|
+
}
|
|
60
97
|
});
|
|
61
98
|
}
|