yaveon.ecm.d3dwebhooks 0.10.1 → 0.10.2
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/js/Yaveon.ECM.d3d.Webhook.Handler.js +2 -2
- package/js/clients/Yaveon.ECM.af.Client.d.ts +4 -1
- package/js/clients/Yaveon.ECM.af.Client.js +32 -18
- package/js/clients/Yaveon.ECM.af.Client.js.map +1 -1
- package/js/clients/Yaveon.ECM.af.Contracts.Client.d.ts +3 -2
- package/js/clients/Yaveon.ECM.af.Contracts.Client.js +12 -30
- package/js/clients/Yaveon.ECM.af.Contracts.Client.js.map +1 -1
- package/js/clients/Yaveon.ECM.af.QM.Client.d.ts +2 -2
- package/js/clients/Yaveon.ECM.af.QM.Client.js +1 -1
- package/js/clients/Yaveon.ECM.af.QM.Client.js.map +1 -1
- package/js/clients/Yaveon.ECM.d3d.Webhook.Client.d.ts +1 -1
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Constants.d.ts +78 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Constants.js +92 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Constants.js.map +1 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Handler.d.ts +2 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Handler.js +28 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Handler.js.map +1 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Interfaces.d.ts +115 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Interfaces.js +4 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Interfaces.js.map +1 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Logic.d.ts +3 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Logic.js +80 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Logic.js.map +1 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Utility.d.ts +14 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Utility.js +267 -0
- package/js/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Utility.js.map +1 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.d.ts +14 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.js +22 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.js.map +1 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.d.ts +2 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.js +28 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.js.map +1 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Interfaces.d.ts +37 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Interfaces.js +3 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Interfaces.js.map +1 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Logic.d.ts +3 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Logic.js +106 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Logic.js.map +1 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Utility.d.ts +6 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Utility.js +35 -0
- package/js/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Utility.js.map +1 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Constants.d.ts +31 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Constants.js +40 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Constants.js.map +1 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Interfaces.d.ts +62 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Interfaces.js +3 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Interfaces.js.map +1 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Utility.d.ts +7 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Utility.js +31 -0
- package/js/features/QM/Yaveon.ECM.d3d.Webhook.af.QM.Utility.js.map +1 -0
- package/js/features/ValueSet/alphaflow/Yaveon.ECM.d3d.Webhook.ValueSet.Af.Utility.js +6 -12
- package/js/features/ValueSet/alphaflow/Yaveon.ECM.d3d.Webhook.ValueSet.Af.Utility.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.update = exports.add = void 0;
|
|
4
|
+
const Yaveon_ECM_af_Contracts_Client_1 = require("../../clients/Yaveon.ECM.af.Contracts.Client");
|
|
5
|
+
const Yaveon_ECM_d3d_Webhook_Client_1 = require("../../clients/Yaveon.ECM.d3d.Webhook.Client");
|
|
6
|
+
const Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1 = require("./Yaveon.ECM.d3d.Webhook.af.Contract.Utility");
|
|
7
|
+
const Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1 = require("./Yaveon.ECM.d3d.Webhook.af.Contract.Constants");
|
|
8
|
+
process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '1';
|
|
9
|
+
let add = async (req) => { return runWebHook(req); };
|
|
10
|
+
exports.add = add;
|
|
11
|
+
let update = async (req) => { return runWebHook(req); };
|
|
12
|
+
exports.update = update;
|
|
13
|
+
let runWebHook = async (req) => {
|
|
14
|
+
var _a;
|
|
15
|
+
let webHookResponse = {
|
|
16
|
+
reqBody: req.json(),
|
|
17
|
+
resultMsg: '',
|
|
18
|
+
resultState: 200
|
|
19
|
+
};
|
|
20
|
+
let doc = webHookResponse.reqBody.doc;
|
|
21
|
+
try {
|
|
22
|
+
webHookResponse.resultMsg += 'Creating D3dWebhookClient object... ';
|
|
23
|
+
const whClient = new Yaveon_ECM_d3d_Webhook_Client_1.D3dWebhookClient(req.get('x-dv-baseuri'), req.get('x-dv-repository-id'), 'Bearer ' + req.get('Authorization').replace('Bearer ', ''));
|
|
24
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
25
|
+
webHookResponse.resultMsg += 'Creating AfClient object... ';
|
|
26
|
+
const afContractsClient = new Yaveon_ECM_af_Contracts_Client_1.AfContractsClient(req.get('x-dv-baseuri'), 'Bearer ' + req.get('Authorization').replace('Bearer ', ''));
|
|
27
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
28
|
+
webHookResponse.resultMsg += 'Fetching configuration... ';
|
|
29
|
+
const config = await whClient.getConfiguration();
|
|
30
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
31
|
+
webHookResponse.resultMsg += 'Selecting contract definition... ';
|
|
32
|
+
const contractDefinitions = Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1.ContractUtility.getContractDefinitions(doc, config);
|
|
33
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
34
|
+
const afFieldId = (_a = (await whClient.getFieldDefinitionByName(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.AlphaflowObjectIdField.name))) === null || _a === void 0 ? void 0 : _a.key;
|
|
35
|
+
for (const contractMapping of contractDefinitions.mappings) {
|
|
36
|
+
const contracts = await Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1.ContractUtility.getContract(afContractsClient, doc, contractMapping);
|
|
37
|
+
const contract = contracts.length > 0 ? contracts[0] : Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1.ContractUtility.getEmptyContractBody();
|
|
38
|
+
let contractId = '';
|
|
39
|
+
if (!contract.hasOwnProperty('id')) {
|
|
40
|
+
webHookResponse.resultMsg += 'Preparing contract body... ';
|
|
41
|
+
const updateBody = await Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1.ContractUtility.getPreparedUpdateBody(afContractsClient, contractMapping.propertyMapping, config.contract.translations, doc, contract);
|
|
42
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
43
|
+
webHookResponse.resultMsg += 'Checking mandatory properties... ';
|
|
44
|
+
const mandCheck = Yaveon_ECM_d3d_Webhook_af_Contract_Utility_1.ContractUtility.checkMandatory(updateBody, contractMapping.propertyMapping);
|
|
45
|
+
if (mandCheck.outcome === false) {
|
|
46
|
+
throw "The following fields are mandatory and need to be populated:\r\n\t" + mandCheck.missing.join('\r\n\t');
|
|
47
|
+
}
|
|
48
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
49
|
+
webHookResponse.resultMsg += 'Adding/updating contract body... ';
|
|
50
|
+
const response = await afContractsClient.setContract(updateBody);
|
|
51
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
52
|
+
contractId = response.id;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
contractId = contract.id;
|
|
56
|
+
}
|
|
57
|
+
webHookResponse.reqBody.doc.properties.find((p) => p.id === afFieldId).value = contractId;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch (ex) {
|
|
61
|
+
webHookResponse.resultState = 400;
|
|
62
|
+
webHookResponse.resultMsg += 'error\r\n';
|
|
63
|
+
if (ex.hasOwnProperty('response')) {
|
|
64
|
+
if (ex.response.hasOwnProperty('data')) {
|
|
65
|
+
webHookResponse.resultMsg += ex.response.data;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
webHookResponse.resultMsg += ex.response;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else if (ex.Message) {
|
|
72
|
+
webHookResponse.resultMsg += ex.Message;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
webHookResponse.resultMsg += ex.toString();
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return webHookResponse;
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.af.Contract.Logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.af.Contract.Logic.js","sourceRoot":"","sources":["../../../source/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IDocUpdateBodyObject, IWhDocObject } from '../../interfaces/Yaveon.ECM.d3d.Webhook.Interfaces';
|
|
2
|
+
import { AfContractsClient } from '../../clients/Yaveon.ECM.af.Contracts.Client';
|
|
3
|
+
import { AfUtility } from '../../utilities/Yaveon.ECM.d3d.Webhook.af.Utility';
|
|
4
|
+
import { IAfContract, IAfNewContract, IWebhhokConfigAfContractProperty, IWebhookConfigAfContract, IWebhookConfigAfContractCustomPropertyMapping, IWebhookConfigAfContractMapping, IWebhookConfigAfContractPropertyMapping, IWebhookConfigAfContractReturnMapping, IWebhookConfigAfContractTranslation, TCheckMandatoryResult } from './Yaveon.ECM.d3d.Webhook.af.Contract.Interfaces';
|
|
5
|
+
export declare class ContractUtility extends AfUtility {
|
|
6
|
+
static getContract(afContractsClient: AfContractsClient, doc: IWhDocObject, contractMapping: IWebhookConfigAfContractMapping): Promise<IAfContract[]>;
|
|
7
|
+
static checkMandatory(updateBody: IAfContract | IAfNewContract, propertyMapping: (IWebhookConfigAfContractPropertyMapping | IWebhookConfigAfContractCustomPropertyMapping)[]): TCheckMandatoryResult;
|
|
8
|
+
static getContractDefinitions(doc: IWhDocObject, config: IWebhookConfigAfContract): IWebhhokConfigAfContractProperty;
|
|
9
|
+
static getSearchProperties(doc: IWhDocObject, contractMapping: IWebhookConfigAfContractMapping): Map<string, any>;
|
|
10
|
+
static getTranslation(translationId: string, valueKey: string, translations: IWebhookConfigAfContractTranslation[]): string;
|
|
11
|
+
static getPreparedUpdateBody(afContractsClient: AfContractsClient, propertyMappings: (IWebhookConfigAfContractPropertyMapping | IWebhookConfigAfContractCustomPropertyMapping)[], translations: IWebhookConfigAfContractTranslation[], doc: IWhDocObject, body: IAfContract | IAfNewContract): Promise<IAfContract | IAfNewContract>;
|
|
12
|
+
static getEmptyContractBody(): IAfNewContract;
|
|
13
|
+
static getBodyPropertiesFromContractObject(contract: IAfContract, returnMappings: IWebhookConfigAfContractReturnMapping[]): IDocUpdateBodyObject;
|
|
14
|
+
}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContractUtility = void 0;
|
|
4
|
+
const Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1 = require("./Yaveon.ECM.d3d.Webhook.af.Contract.Constants");
|
|
5
|
+
const Yaveon_ECM_d3d_Webhook_af_Utility_1 = require("../../utilities/Yaveon.ECM.d3d.Webhook.af.Utility");
|
|
6
|
+
class ContractUtility extends Yaveon_ECM_d3d_Webhook_af_Utility_1.AfUtility {
|
|
7
|
+
static async getContract(afContractsClient, doc, contractMapping) {
|
|
8
|
+
var _a, _b;
|
|
9
|
+
let contracts;
|
|
10
|
+
const contractRefFieldId = (_a = contractMapping.returnMapping.find(rp => rp.toPropertyGuid === Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.AlphaflowObjectIdField.name || rp.toPropertyName === Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.AlphaflowObjectIdField.name)) === null || _a === void 0 ? void 0 : _a.toPropertyGuid;
|
|
11
|
+
if (contractRefFieldId != undefined) {
|
|
12
|
+
const contractRef = (_b = doc.properties.find(p => p.id === contractRefFieldId)) === null || _b === void 0 ? void 0 : _b.value;
|
|
13
|
+
if (contractRef != '' && contractRef != null && contractRef != undefined) {
|
|
14
|
+
try {
|
|
15
|
+
return [await afContractsClient.getContractById(contractRef)];
|
|
16
|
+
}
|
|
17
|
+
catch (ex) {
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return await afContractsClient.searchContracts(this.getSearchProperties(doc, contractMapping));
|
|
22
|
+
}
|
|
23
|
+
static checkMandatory(updateBody, propertyMapping) {
|
|
24
|
+
const result = {
|
|
25
|
+
outcome: true,
|
|
26
|
+
missing: []
|
|
27
|
+
};
|
|
28
|
+
const mandatoryProperties = propertyMapping.filter(p => p.mandatory === true);
|
|
29
|
+
result.missing = result.missing.concat(mandatoryProperties.filter(m => m.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.ToPropertyName)).filter(m => {
|
|
30
|
+
let uVal = this.getValue(updateBody, m.toPropertyName);
|
|
31
|
+
return (uVal === null || uVal === undefined || uVal === '');
|
|
32
|
+
}).map(m => m.fromPropertyName + ' (' + m.toPropertyName + ')'));
|
|
33
|
+
result.missing = result.missing.concat(mandatoryProperties.filter(m => m.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.ToCustomPropertyId)).filter(m => {
|
|
34
|
+
let uVal = this.getValue(updateBody, m.toCustomPropertyId);
|
|
35
|
+
return (uVal === null || uVal === undefined);
|
|
36
|
+
}).map(m => m.fromPropertyName + ' (' + m.toCustomPropertyId + ')'));
|
|
37
|
+
result.outcome = result.missing.length === 0;
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
static getContractDefinitions(doc, config) {
|
|
41
|
+
let contractConfig = config.contract;
|
|
42
|
+
contractConfig.mappings = contractConfig.mappings.filter(m => m.fromCategoryGuid === doc.categoryId);
|
|
43
|
+
return contractConfig;
|
|
44
|
+
}
|
|
45
|
+
static getSearchProperties(doc, contractMapping) {
|
|
46
|
+
let searchProps = new Map();
|
|
47
|
+
let keyProperties = contractMapping.toContractKeys;
|
|
48
|
+
for (const keyProperty of keyProperties) {
|
|
49
|
+
let mappedProperty = contractMapping.propertyMapping.find(m => {
|
|
50
|
+
if (m.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.ToPropertyName)) {
|
|
51
|
+
return m.toPropertyName === keyProperty.toPropertyName;
|
|
52
|
+
}
|
|
53
|
+
if (m.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.ToCustomPropertyId)) {
|
|
54
|
+
return m.toCustomPropertyId === keyProperty.toPropertyName;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
if (mappedProperty !== undefined) {
|
|
58
|
+
let docProperty = doc.properties.find((p) => p.id === mappedProperty.fromPropertyGuid);
|
|
59
|
+
if (docProperty !== undefined) {
|
|
60
|
+
let docPropertyValue = this.getDocPropertyValues(docProperty)[0];
|
|
61
|
+
if (keyProperty.subProperty != undefined) {
|
|
62
|
+
let tempProp = {};
|
|
63
|
+
tempProp[keyProperty.subProperty] = encodeURIComponent(docPropertyValue);
|
|
64
|
+
searchProps.set(keyProperty.toPropertyName, tempProp);
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
searchProps.set(keyProperty.toPropertyName, encodeURIComponent(docPropertyValue));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return searchProps;
|
|
73
|
+
}
|
|
74
|
+
static getTranslation(translationId, valueKey, translations) {
|
|
75
|
+
const translation = translations.find(t => t.id === translationId);
|
|
76
|
+
if (translation !== null && translation !== undefined) {
|
|
77
|
+
return translation.keyValues[valueKey];
|
|
78
|
+
}
|
|
79
|
+
return valueKey;
|
|
80
|
+
}
|
|
81
|
+
static async getPreparedUpdateBody(afContractsClient, propertyMappings, translations, doc, body) {
|
|
82
|
+
var _a;
|
|
83
|
+
const updateBody = JSON.parse(JSON.stringify(body));
|
|
84
|
+
for (const propertyMapping of propertyMappings) {
|
|
85
|
+
let value = propertyMapping.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.Static) ? propertyMapping.static : (Yaveon_ECM_d3d_Webhook_af_Utility_1.AfUtility.getDocPropertyValues(doc, propertyMapping.fromPropertyGuid))[0];
|
|
86
|
+
if ((value === null || typeof value === 'undefined' || value === '') && propertyMapping.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.Default)) {
|
|
87
|
+
value = propertyMapping.default;
|
|
88
|
+
}
|
|
89
|
+
if ((value !== null && typeof value !== 'undefined' && value !== '') && propertyMapping.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.RegEx)) {
|
|
90
|
+
const pattern = propertyMapping[Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.RegEx];
|
|
91
|
+
const regex = new RegExp(pattern, 'u');
|
|
92
|
+
const regexResult = regex.exec(value);
|
|
93
|
+
value = regexResult !== null ? regexResult[0] : value;
|
|
94
|
+
}
|
|
95
|
+
if ((value !== null && typeof value !== 'undefined' && value !== '') && propertyMapping.hasOwnProperty(Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.Translation)) {
|
|
96
|
+
const translationId = propertyMapping[Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ConfigProperty.Translation];
|
|
97
|
+
if (translationId !== undefined && translationId !== '') {
|
|
98
|
+
value = this.getTranslation(translationId, value, translations);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
const pm = propertyMapping;
|
|
102
|
+
let response = null;
|
|
103
|
+
switch (pm.toPropertyName) {
|
|
104
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.IdNeeding.ContractType:
|
|
105
|
+
response = await afContractsClient.searchContractTypes(new Map([['title', value]]));
|
|
106
|
+
if (response.length > 0) {
|
|
107
|
+
value = (response[0]).id;
|
|
108
|
+
}
|
|
109
|
+
break;
|
|
110
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.IdNeeding.Organization:
|
|
111
|
+
response = await afContractsClient.searchOrganizations(new Map([['name', value]]));
|
|
112
|
+
if (response.length > 0) {
|
|
113
|
+
value = (response[0]).id;
|
|
114
|
+
}
|
|
115
|
+
break;
|
|
116
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.IdNeeding.TradingPartner:
|
|
117
|
+
response = await afContractsClient.searchTradingPartners(new Map([['number', value]]));
|
|
118
|
+
if (response.length > 0) {
|
|
119
|
+
value = (response[0]).id;
|
|
120
|
+
}
|
|
121
|
+
break;
|
|
122
|
+
default: ;
|
|
123
|
+
}
|
|
124
|
+
switch (propertyMapping.toType) {
|
|
125
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.Date:
|
|
126
|
+
try {
|
|
127
|
+
if (typeof value === 'undefined' || value === null) {
|
|
128
|
+
updateBody[pm.toPropertyName] = null;
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
const tempDate = new Date(value);
|
|
132
|
+
updateBody[pm.toPropertyName] = this.convertDateToString(new Date(value));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
catch (ex) {
|
|
136
|
+
updateBody[pm.toPropertyName] = null;
|
|
137
|
+
}
|
|
138
|
+
break;
|
|
139
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfAutomaticRenewalProperty:
|
|
140
|
+
try {
|
|
141
|
+
updateBody[pm.toPropertyName] = { 'value': value };
|
|
142
|
+
}
|
|
143
|
+
catch (ex) {
|
|
144
|
+
updateBody[pm.toPropertyName] = null;
|
|
145
|
+
}
|
|
146
|
+
break;
|
|
147
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfContractStatusProperty:
|
|
148
|
+
try {
|
|
149
|
+
updateBody[pm.toPropertyName] = { 'value': value };
|
|
150
|
+
}
|
|
151
|
+
catch (ex) {
|
|
152
|
+
updateBody[pm.toPropertyName].value = Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ContractStates.Concept;
|
|
153
|
+
}
|
|
154
|
+
break;
|
|
155
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfCustomFieldProperty:
|
|
156
|
+
const cpId = propertyMapping.toCustomPropertyId;
|
|
157
|
+
updateBody[cpId] = { 'value': value, configID: cpId };
|
|
158
|
+
break;
|
|
159
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfGenericIdProperty:
|
|
160
|
+
if (value === null || typeof value === 'undefined' || value === '') {
|
|
161
|
+
updateBody[pm.toPropertyName] = null;
|
|
162
|
+
break;
|
|
163
|
+
}
|
|
164
|
+
updateBody[pm.toPropertyName] = { 'id': value };
|
|
165
|
+
break;
|
|
166
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfOwnRoleProperty:
|
|
167
|
+
try {
|
|
168
|
+
updateBody[pm.toPropertyName] = { 'value': value };
|
|
169
|
+
}
|
|
170
|
+
catch (ex) {
|
|
171
|
+
updateBody[pm.toPropertyName] = null;
|
|
172
|
+
}
|
|
173
|
+
break;
|
|
174
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfTerminationCalendarEventProperty:
|
|
175
|
+
try {
|
|
176
|
+
updateBody[pm.toPropertyName] = { 'value': value };
|
|
177
|
+
}
|
|
178
|
+
catch (ex) {
|
|
179
|
+
updateBody[pm.toPropertyName] = null;
|
|
180
|
+
}
|
|
181
|
+
break;
|
|
182
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.IAfTerminationUnitProperty:
|
|
183
|
+
try {
|
|
184
|
+
updateBody[pm.toPropertyName] = { 'value': value };
|
|
185
|
+
}
|
|
186
|
+
catch (ex) {
|
|
187
|
+
updateBody[pm.toPropertyName] = null;
|
|
188
|
+
}
|
|
189
|
+
break;
|
|
190
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.boolean:
|
|
191
|
+
if (value === null || typeof value === 'undefined') {
|
|
192
|
+
updateBody[pm.toPropertyName] = false;
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
updateBody[pm.toPropertyName] = value.toLowerCase() === 'true' ? true : false;
|
|
196
|
+
break;
|
|
197
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.number:
|
|
198
|
+
updateBody[pm.toPropertyName] = null;
|
|
199
|
+
const numberStr = (_a = (/\d+/).exec(value)) === null || _a === void 0 ? void 0 : _a[0];
|
|
200
|
+
if (numberStr !== undefined) {
|
|
201
|
+
updateBody[pm.toPropertyName] = Number.parseInt(numberStr);
|
|
202
|
+
}
|
|
203
|
+
break;
|
|
204
|
+
case Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ToType.string:
|
|
205
|
+
if (value === null || typeof value === 'undefined') {
|
|
206
|
+
updateBody[pm.toPropertyName] = '';
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
updateBody[pm.toPropertyName] = value;
|
|
210
|
+
break;
|
|
211
|
+
default:
|
|
212
|
+
;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return updateBody;
|
|
216
|
+
}
|
|
217
|
+
static getEmptyContractBody() {
|
|
218
|
+
return {
|
|
219
|
+
automaticRenewal: null,
|
|
220
|
+
contact: null,
|
|
221
|
+
contractStatus: { value: Yaveon_ECM_d3d_Webhook_af_Contract_Constants_1.Constants.Af.Contracts.ContractStates.Concept },
|
|
222
|
+
contractType: null,
|
|
223
|
+
customFields: {},
|
|
224
|
+
duration: 0,
|
|
225
|
+
endDate: null,
|
|
226
|
+
externalNumber: '',
|
|
227
|
+
firstTermination: null,
|
|
228
|
+
followingContractPeriod: '',
|
|
229
|
+
frameContract: false,
|
|
230
|
+
nextTermination: null,
|
|
231
|
+
organization: null,
|
|
232
|
+
ownRole: null,
|
|
233
|
+
ownSignature: null,
|
|
234
|
+
partnerSignature: null,
|
|
235
|
+
relatedFrameContract: null,
|
|
236
|
+
renewalDate: null,
|
|
237
|
+
responsible: null,
|
|
238
|
+
startDate: null,
|
|
239
|
+
subject: '',
|
|
240
|
+
terminationBy: null,
|
|
241
|
+
terminationCalendarEvent: null,
|
|
242
|
+
terminationDate: null,
|
|
243
|
+
terminationRemark: '',
|
|
244
|
+
terminationUnit: null,
|
|
245
|
+
terminationValue: 0,
|
|
246
|
+
tradingPartner: null
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
static getBodyPropertiesFromContractObject(contract, returnMappings) {
|
|
250
|
+
let updateProperties = {
|
|
251
|
+
sourceId: '',
|
|
252
|
+
sourceCategory: '',
|
|
253
|
+
sourceProperties: {
|
|
254
|
+
properties: []
|
|
255
|
+
}
|
|
256
|
+
};
|
|
257
|
+
for (const returnMapping of returnMappings) {
|
|
258
|
+
updateProperties.sourceProperties.properties.push({
|
|
259
|
+
"key": returnMapping.toPropertyGuid,
|
|
260
|
+
"values": [this.getValue(contract, returnMapping.fromPropertyName)]
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
return updateProperties;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
exports.ContractUtility = ContractUtility;
|
|
267
|
+
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.af.Contract.Utility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.af.Contract.Utility.js","sourceRoot":"","sources":["../../../source/features/Contract/Yaveon.ECM.d3d.Webhook.af.Contract.Utility.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Constants as _constants } from '../Yaveon.ECM.d3d.Webhook.af.QM.Constants';
|
|
2
|
+
export declare class Constants extends _constants {
|
|
3
|
+
}
|
|
4
|
+
export declare namespace Constants {
|
|
5
|
+
namespace ReadReceipt {
|
|
6
|
+
enum EntityNames {
|
|
7
|
+
ReadReceipt = "yavReadReceipt"
|
|
8
|
+
}
|
|
9
|
+
enum WorkflowNames {
|
|
10
|
+
ReadReceipt = "Lesebest\u00E4tigung QM"
|
|
11
|
+
}
|
|
12
|
+
const StatusOpenId: string;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Constants = void 0;
|
|
4
|
+
const Yaveon_ECM_d3d_Webhook_af_QM_Constants_1 = require("../Yaveon.ECM.d3d.Webhook.af.QM.Constants");
|
|
5
|
+
class Constants extends Yaveon_ECM_d3d_Webhook_af_QM_Constants_1.Constants {
|
|
6
|
+
}
|
|
7
|
+
exports.Constants = Constants;
|
|
8
|
+
(function (Constants) {
|
|
9
|
+
let ReadReceipt;
|
|
10
|
+
(function (ReadReceipt) {
|
|
11
|
+
let EntityNames;
|
|
12
|
+
(function (EntityNames) {
|
|
13
|
+
EntityNames["ReadReceipt"] = "yavReadReceipt";
|
|
14
|
+
})(EntityNames = ReadReceipt.EntityNames || (ReadReceipt.EntityNames = {}));
|
|
15
|
+
let WorkflowNames;
|
|
16
|
+
(function (WorkflowNames) {
|
|
17
|
+
WorkflowNames["ReadReceipt"] = "Lesebest\u00E4tigung QM";
|
|
18
|
+
})(WorkflowNames = ReadReceipt.WorkflowNames || (ReadReceipt.WorkflowNames = {}));
|
|
19
|
+
ReadReceipt.StatusOpenId = 'open';
|
|
20
|
+
})(ReadReceipt = Constants.ReadReceipt || (Constants.ReadReceipt = {}));
|
|
21
|
+
})(Constants || (exports.Constants = Constants = {}));
|
|
22
|
+
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.js","sourceRoot":"","sources":["../../../../source/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants.ts"],"names":[],"mappings":";;;AAAA,sGAAoF;AAEpF,MAAa,SAAU,SAAQ,kDAAU;CACxC;AADD,8BACC;AAED,WAAiB,SAAS;IACtB,IAAiB,WAAW,CAU3B;IAVD,WAAiB,WAAW;QACxB,IAAY,WAEX;QAFD,WAAY,WAAW;YACnB,6CAA8B,CAAA;QAClC,CAAC,EAFW,WAAW,GAAX,uBAAW,KAAX,uBAAW,QAEtB;QAED,IAAY,aAEX;QAFD,WAAY,aAAa;YACrB,wDAAkC,CAAA;QACtC,CAAC,EAFW,aAAa,GAAb,yBAAa,KAAb,yBAAa,QAExB;QAEY,wBAAY,GAAW,MAAM,CAAC;IAC/C,CAAC,EAVgB,WAAW,GAAX,qBAAW,KAAX,qBAAW,QAU3B;AACL,CAAC,EAZgB,SAAS,yBAAT,SAAS,QAYzB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleRequest = void 0;
|
|
4
|
+
const Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1 = require("./Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants");
|
|
5
|
+
const Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Logic_1 = require("./Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Logic");
|
|
6
|
+
let handleRequest = async (req) => {
|
|
7
|
+
let event = req.params[Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.UrlParameters.ParamNames.Event];
|
|
8
|
+
switch (event) {
|
|
9
|
+
case Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.UrlParameters.EventNames.Create:
|
|
10
|
+
return (0, Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Logic_1.add)(req);
|
|
11
|
+
case Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.UrlParameters.EventNames.Update:
|
|
12
|
+
return (0, Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Logic_1.update)(req);
|
|
13
|
+
case Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.UrlParameters.EventNames.Remove:
|
|
14
|
+
return {
|
|
15
|
+
reqBody: req.json(),
|
|
16
|
+
resultMsg: 'Event "' + event + '" does not require any custom logic.',
|
|
17
|
+
resultState: 200
|
|
18
|
+
};
|
|
19
|
+
default:
|
|
20
|
+
return {
|
|
21
|
+
reqBody: req.json(),
|
|
22
|
+
resultMsg: 'Event "' + event + '" unknown or not supported. Valid events: ' + Object.values(Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.UrlParameters.EventNames).join(", ") + '"',
|
|
23
|
+
resultState: 400
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
exports.handleRequest = handleRequest;
|
|
28
|
+
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.js","sourceRoot":"","sources":["../../../../source/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Handler.ts"],"names":[],"mappings":";;;AACA,uHAA8E;AAC9E,+GAGsD;AAE/C,IAAI,aAAa,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE;IAErE,IAAI,KAAK,GAAW,GAAG,CAAC,MAAM,CAAC,2DAAS,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAExE,QAAQ,KAAK,EAAC;QACV,KAAK,2DAAS,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM;YACtC,OAAO,IAAA,iDAAG,EAAC,GAAG,CAAC,CAAC;QACxB,KAAK,2DAAS,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM;YACtC,OAAO,IAAA,oDAAM,EAAC,GAAG,CAAC,CAAC;QAC3B,KAAK,2DAAS,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM;YAC1C,OAAO;gBACH,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;gBACnB,SAAS,EAAE,SAAS,GAAE,KAAK,GAAE,sCAAsC;gBACnE,WAAW,EAAE,GAAG;aACnB,CAAC;QACN;YACI,OAAO;gBACH,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;gBACnB,SAAS,EAAE,SAAS,GAAE,KAAK,GAAE,4CAA4C,GAAE,MAAM,CAAC,MAAM,CAAC,2DAAS,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAE,GAAG;gBAC5I,WAAW,EAAE,GAAG;aACnB,CAAC;KACT;AACL,CAAC,CAAA;AAtBU,QAAA,aAAa,iBAsBvB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { IAfObject, IAfObjectField, IAfNewObject, IAfObjectNewField } from '../../../interfaces/Yaveon.ECM.d3d.Webhook.af.Interfaces';
|
|
2
|
+
export { IAfGenericIdProperty, IAfObjectField, IAfObjectFieldCollection } from '../../../interfaces/Yaveon.ECM.d3d.Webhook.af.Interfaces';
|
|
3
|
+
export { IWebhookResponse, IPersistedDocObject } from '../Yaveon.ECM.d3d.Webhook.af.QM.Interfaces';
|
|
4
|
+
export interface IAfQmReadReceiptObject extends IAfObject {
|
|
5
|
+
field: {
|
|
6
|
+
yavApprovalHistoryObjectId: IAfObjectField;
|
|
7
|
+
yavDocumentOpened: IAfObjectField;
|
|
8
|
+
yavDocumentRef: IAfObjectField;
|
|
9
|
+
yavDocumentRefId: IAfObjectField;
|
|
10
|
+
yavDocumentTitle: IAfObjectField;
|
|
11
|
+
yavDocumentUrl: IAfObjectField;
|
|
12
|
+
yavDocumentVersion: IAfObjectField;
|
|
13
|
+
yavOrganisation: IAfObjectField;
|
|
14
|
+
yavResponsible: IAfObjectField;
|
|
15
|
+
yavResponsibleIdpId: IAfObjectField;
|
|
16
|
+
yavStatus: IAfObjectField;
|
|
17
|
+
yavWorkflowId: IAfObjectField;
|
|
18
|
+
};
|
|
19
|
+
accountingField: [];
|
|
20
|
+
}
|
|
21
|
+
export interface IAfNewQmReadReceiptObject extends IAfNewObject {
|
|
22
|
+
field: {
|
|
23
|
+
yavApprovalHistoryObjectId: IAfObjectNewField;
|
|
24
|
+
yavDocumentOpened: IAfObjectNewField;
|
|
25
|
+
yavDocumentRef: IAfObjectNewField;
|
|
26
|
+
yavDocumentRefId: IAfObjectNewField;
|
|
27
|
+
yavDocumentTitle: IAfObjectNewField;
|
|
28
|
+
yavDocumentUrl: IAfObjectNewField;
|
|
29
|
+
yavDocumentVersion: IAfObjectNewField;
|
|
30
|
+
yavOrganisation: IAfObjectNewField;
|
|
31
|
+
yavResponsible: IAfObjectNewField;
|
|
32
|
+
yavResponsibleIdpId: IAfObjectNewField;
|
|
33
|
+
yavStatus: IAfObjectNewField;
|
|
34
|
+
yavWorkflowId: IAfObjectNewField;
|
|
35
|
+
};
|
|
36
|
+
accountingField: [];
|
|
37
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Interfaces.js","sourceRoot":"","sources":["../../../../source/features/QM/ReadReceipt/Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Interfaces.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.update = exports.add = void 0;
|
|
4
|
+
const Yaveon_ECM_d3d_Webhook_Client_1 = require("../../../clients/Yaveon.ECM.d3d.Webhook.Client");
|
|
5
|
+
const Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1 = require("./Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Utility");
|
|
6
|
+
const Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1 = require("./Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Constants");
|
|
7
|
+
const Yaveon_ECM_af_QM_Client_1 = require("../../../clients/Yaveon.ECM.af.QM.Client");
|
|
8
|
+
let add = async (req) => { return runWebHook(req); };
|
|
9
|
+
exports.add = add;
|
|
10
|
+
let update = async (req) => { return runWebHook(req); };
|
|
11
|
+
exports.update = update;
|
|
12
|
+
let runWebHook = async (req) => {
|
|
13
|
+
var _a;
|
|
14
|
+
const tenantUrl = req.get('x-dv-baseuri') || req.get('origin');
|
|
15
|
+
const repositoryId = req.get('x-dv-repository-id') || req.get('x-yav-repository-id');
|
|
16
|
+
const categoryId = req.get('x-yav-category-id') || null;
|
|
17
|
+
let webHookResponse = {
|
|
18
|
+
reqBody: req.json(),
|
|
19
|
+
resultMsg: '',
|
|
20
|
+
resultState: 200
|
|
21
|
+
};
|
|
22
|
+
let qmObject = webHookResponse.reqBody.doc;
|
|
23
|
+
try {
|
|
24
|
+
webHookResponse.resultMsg += 'Creating D3dWebhookClient object... ';
|
|
25
|
+
const whClient = new Yaveon_ECM_d3d_Webhook_Client_1.D3dWebhookClient(tenantUrl, repositoryId, 'Bearer ' + req.get('Authorization').replace('Bearer ', ''));
|
|
26
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
27
|
+
webHookResponse.resultMsg += 'Creating AfClient object... ';
|
|
28
|
+
const afQmClient = new Yaveon_ECM_af_QM_Client_1.AfQmClient(tenantUrl, 'Bearer ' + req.get('Authorization').replace('Bearer ', ''));
|
|
29
|
+
webHookResponse.resultMsg += ' done\r\n';
|
|
30
|
+
const currentState = qmObject.field.yavStatus.value;
|
|
31
|
+
if (currentState === Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.Qm.ApprovalStages.Published) {
|
|
32
|
+
const afFieldId = (_a = (await whClient.getFieldDefinitionByName(Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.Af.AlphaflowObjectIdField.name))) === null || _a === void 0 ? void 0 : _a.key;
|
|
33
|
+
if (afFieldId === null || afFieldId === undefined) {
|
|
34
|
+
throw 'Unable to retrieve guid of field "' + Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.Af.AlphaflowObjectIdField.name + '". Please ensure the field exists.';
|
|
35
|
+
}
|
|
36
|
+
const searchProps = new Map();
|
|
37
|
+
searchProps.set(afFieldId, [qmObject.id]);
|
|
38
|
+
const docs = await Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1.ReadReceiptUtility.getQmDocuments(categoryId, qmObject.id, searchProps);
|
|
39
|
+
if (docs.length > 0) {
|
|
40
|
+
const approvalObject = await afQmClient.getApprovalObjectById(qmObject.field.yavApprovalHistoryObjectId.value);
|
|
41
|
+
const aoa = qmObject.field.yavWfAreaOfApplicationMembers.value;
|
|
42
|
+
if (typeof aoa === 'string' && aoa !== '') {
|
|
43
|
+
const userIds = await Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1.ReadReceiptUtility.resolveGroups(aoa.split(','), true);
|
|
44
|
+
if (userIds !== null && userIds !== undefined) {
|
|
45
|
+
const template = Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1.ReadReceiptUtility.getNewReadReceiptObject();
|
|
46
|
+
template.field.yavOrganisation.value = { id: qmObject.field.Organisation.value.id };
|
|
47
|
+
template.field.yavDocumentUrl.value = tenantUrl + '/dms/r/' + repositoryId + '/o2/';
|
|
48
|
+
template.field.yavDocumentOpened.value = 0;
|
|
49
|
+
for (const doc of docs) {
|
|
50
|
+
for (const userId of userIds) {
|
|
51
|
+
const user = await afQmClient.getUserById(userId);
|
|
52
|
+
const body = JSON.parse(JSON.stringify(template));
|
|
53
|
+
body.field.yavApprovalHistoryObjectId.value = approvalObject.id;
|
|
54
|
+
body.field.yavDocumentRef.value = { id: qmObject.id };
|
|
55
|
+
body.field.yavDocumentRefId.value = qmObject.id;
|
|
56
|
+
body.field.yavDocumentTitle.value = doc.caption;
|
|
57
|
+
body.field.yavDocumentUrl.value += doc.id;
|
|
58
|
+
body.field.yavDocumentVersion.value = qmObject.field.yavTargetVersion.value;
|
|
59
|
+
body.field.yavResponsible.value = { id: userId };
|
|
60
|
+
body.field.yavResponsibleIdpId.value = user.idpUserId;
|
|
61
|
+
body.field.yavStatus.value = Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.ReadReceipt.StatusOpenId;
|
|
62
|
+
const responseReadReceipt = await afQmClient.setReadReceiptObject(body);
|
|
63
|
+
Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1.ReadReceiptUtility.startReadReceiptWorkflow(responseReadReceipt.id);
|
|
64
|
+
const approvalEntry = Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Utility_1.ReadReceiptUtility.getNewIAfQmApprovalObjectAccountingEntry();
|
|
65
|
+
approvalEntry.yavApprovalStage = Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.Qm.ApprovalStages.ReadReceipt;
|
|
66
|
+
approvalEntry.yavApproverId = userId;
|
|
67
|
+
approvalEntry.yavApproverIdpId = user.idpUserId;
|
|
68
|
+
approvalEntry.yavApproverName = user.displayName + ' (' + user.email + ')';
|
|
69
|
+
approvalEntry.yavOutcome = Yaveon_ECM_d3d_Webhook_af_ReadReceipt_Constants_1.Constants.ReadReceipt.StatusOpenId;
|
|
70
|
+
approvalEntry.yavReadReceiptId = responseReadReceipt.id || '';
|
|
71
|
+
approvalEntry.yavStartedDate = new Date().toISOString();
|
|
72
|
+
if (approvalObject.accountingField.some(af => af.yavReadReceiptId === approvalEntry.yavReadReceiptId)) {
|
|
73
|
+
approvalObject.accountingField.splice(approvalObject.accountingField.findIndex(af => af.yavReadReceiptId === approvalEntry.yavReadReceiptId), 1, approvalEntry);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
approvalObject.accountingField.push(approvalEntry);
|
|
77
|
+
}
|
|
78
|
+
const responseApprovalObject = await afQmClient.setApprovalObject(approvalObject);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (ex) {
|
|
87
|
+
webHookResponse.resultState = 400;
|
|
88
|
+
webHookResponse.resultMsg += 'error\r\n';
|
|
89
|
+
if (ex.hasOwnProperty('response')) {
|
|
90
|
+
if (ex.response.hasOwnProperty('data')) {
|
|
91
|
+
webHookResponse.resultMsg += ex.response.data;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
webHookResponse.resultMsg += ex.response;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else if (ex.Message) {
|
|
98
|
+
webHookResponse.resultMsg += ex.Message;
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
webHookResponse.resultMsg += ex.toString();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return webHookResponse;
|
|
105
|
+
};
|
|
106
|
+
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.af.ReadReceipt.Logic.js.map
|