1a806a9a566537c6252650a96c60721b2b10fd3b
[motion2.git] / server / api / intDynamics365Account / intDynamics365Account.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x7c09=['concat','username','password','remoteUri','tenantId','clientSecret','slice','substring','lastIndexOf','format','%s/api/data/v9.0/','https://login.microsoftonline.com/','/oauth2/token','clientId','access_token','GET','Bearer\x20','4.0','value','MetadataId','EntityDefinitions(','remove','includes','LogicalName','forEach','@odata.type','PicklistAttributeMetadata','push','all','BooleanAttributeMetadata','DoubleAttributeMetadata','BigIntAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','StatusAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','DecimalAttributeMetadata','test','statusCode',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','OptionSet','Label','Value','DisplayName','UserLocalizedLabel',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','false',')/Attributes(',')/Microsoft.Dynamics.CRM.','?$select=DisplayName,LogicalName','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','then','info','Dynamics365Account,\x20%s,\x20%s','request\x20sent','Dynamics365Account,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','sendStatus','end','status','json','count','offset','limit','set','apply','destroy','stack','name','send','index','Dynamics365Account','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','hasOwnProperty','nolimit','sort','where','pick','filter','merge','options','includeAll','include','findAll','rows','show','params','fields','create','body','update','find','getConfigurations','findOne','Dynamics365Configuration','length','addConfiguration','AccountId','Subjects','Descriptions','getDescriptions','channel','Dynamics365Field','getFields','ticketType','incident','PhoneCall','description','caseorigincode','subject','regardingobjectid','phonecall_activity_parties','accountidyominame','contactidyominame','contractdetailidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname','createdbyyominame','createdon','createdonbehalfbyname','createdonbehalfbyyominame','customeridname','customeridyominame','entityimage_timestamp','escalatedon','exchangerate','followupby','importsequencenumber','influencescore','kbarticleidname','lastonholdtime','modifiedbyexternalpartyname','modifiedbyexternalpartyyominame','modifiedbyname','modifiedon','modifiedonbehalfbyname','modifiedonbehalfbyyominame','msdyn_incidenttypename','numberofchildincidents','onholdtime','overriddencreatedon','owneridname','owneridtype','parentcaseidname','primarycontactidname','productidname','productserialnumber','resolveby','responsiblecontactidname','sentimentvalue','slainvokedidname','slaname','socialprofileidname','statecode','statuscode','subjectidname','timezoneruleversionnumber','transactioncurrencyidname','traversedpath','utcconversiontimezonecode','versionnumber'];(function(_0x16df1f,_0x502dd7){var _0x3f1563=function(_0x1929c2){while(--_0x1929c2){_0x16df1f['push'](_0x16df1f['shift']());}};_0x3f1563(++_0x502dd7);}(_0x7c09,0x102));var _0x97c0=function(_0x5c5e9b,_0x5ebec1){_0x5c5e9b=_0x5c5e9b-0x0;var _0x128162=_0x7c09[_0x5c5e9b];return _0x128162;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x97c0('0x0'));var rimraf=require(_0x97c0('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x97c0('0x2'));var rp=require(_0x97c0('0x3'));var moment=require(_0x97c0('0x4'));var BPromise=require(_0x97c0('0x5'));var Mustache=require(_0x97c0('0x6'));var util=require(_0x97c0('0x7'));var path=require(_0x97c0('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x97c0('0x9'));var squel=require(_0x97c0('0xa'));var crypto=require(_0x97c0('0xb'));var jsforce=require(_0x97c0('0xc'));var deskjs=require(_0x97c0('0xd'));var toCsv=require('to-csv');var querystring=require(_0x97c0('0xe'));var Papa=require('papaparse');var Redis=require(_0x97c0('0xf'));var authService=require(_0x97c0('0x10'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x97c0('0x11'));var logger=require(_0x97c0('0x12'))(_0x97c0('0x13'));var utils=require(_0x97c0('0x14'));var config=require(_0x97c0('0x15'));var licenseUtil=require(_0x97c0('0x16'));var db=require(_0x97c0('0x17'))['db'];var integrations=require(_0x97c0('0x18'));var jayson=require(_0x97c0('0x19'));var client=jayson[_0x97c0('0x1a')][_0x97c0('0x1b')]({'port':0x232a});function respondWithRpcPromise(_0x132865,_0x20acfa,_0x514782,_0x3f2fc2){return new BPromise(function(_0x15b336,_0xcac10b){var _0x496017=_0x3f2fc2||client;return _0x496017[_0x97c0('0x1c')](_0x132865,_0x514782)[_0x97c0('0x1d')](function(_0x379951){logger[_0x97c0('0x1e')](_0x97c0('0x1f'),_0x20acfa,_0x97c0('0x20'));logger['debug'](_0x97c0('0x21'),_0x20acfa,_0x97c0('0x20'),JSON['stringify'](_0x379951));if(_0x379951[_0x97c0('0x22')]){if(_0x379951[_0x97c0('0x22')][_0x97c0('0x23')]===0x1f4){logger[_0x97c0('0x22')](_0x97c0('0x1f'),_0x20acfa,_0x379951[_0x97c0('0x22')][_0x97c0('0x24')]);return _0xcac10b(_0x379951[_0x97c0('0x22')][_0x97c0('0x24')]);}logger[_0x97c0('0x22')]('Dynamics365Account,\x20%s,\x20%s',_0x20acfa,_0x379951['error'][_0x97c0('0x24')]);return _0x15b336(_0x379951[_0x97c0('0x22')][_0x97c0('0x24')]);}else{logger['info'](_0x97c0('0x1f'),_0x20acfa,_0x97c0('0x20'));_0x15b336(_0x379951[_0x97c0('0x25')][_0x97c0('0x24')]);}})[_0x97c0('0x26')](function(_0x3a0bfb){logger[_0x97c0('0x22')]('Dynamics365Account,\x20%s,\x20%s',_0x20acfa,_0x3a0bfb);_0xcac10b(_0x3a0bfb);});});}function respondWithStatusCode(_0x60ab00,_0x29b3aa){_0x29b3aa=_0x29b3aa||0xcc;return function(_0x1f7adb){if(_0x1f7adb){return _0x60ab00[_0x97c0('0x27')](_0x29b3aa);}return _0x60ab00['status'](_0x29b3aa)[_0x97c0('0x28')]();};}function respondWithResult(_0x14cada,_0x52a429){_0x52a429=_0x52a429||0xc8;return function(_0x2ec9d6){if(_0x2ec9d6){return _0x14cada[_0x97c0('0x29')](_0x52a429)[_0x97c0('0x2a')](_0x2ec9d6);}};}function respondWithFilteredResult(_0x4af5a5,_0x4f11ba){return function(_0x51f258){if(_0x51f258){var _0x11b8ad=_0x51f258[_0x97c0('0x2b')],_0x8e3ee7=_0x4f11ba[_0x97c0('0x2c')],_0x3a744c=_0x4f11ba['offset']+_0x4f11ba[_0x97c0('0x2d')],_0x225e43;if(_0x3a744c>=_0x11b8ad){_0x3a744c=_0x11b8ad;_0x225e43=0xc8;}else{_0x225e43=0xce;}_0x4af5a5[_0x97c0('0x29')](_0x225e43);return _0x4af5a5[_0x97c0('0x2e')]('Content-Range',_0x8e3ee7+'-'+_0x3a744c+'/'+_0x11b8ad)[_0x97c0('0x2a')](_0x51f258);}return null;};}function patchUpdates(_0x148e95){return function(_0x21ba0d){try{jsonpatch[_0x97c0('0x2f')](_0x21ba0d,_0x148e95,!![]);}catch(_0x2a7b2b){return BPromise['reject'](_0x2a7b2b);}return _0x21ba0d['save']();};}function saveUpdates(_0x29ad98,_0x353fc9){return function(_0x23080c){if(_0x23080c){return _0x23080c['update'](_0x29ad98)[_0x97c0('0x1d')](function(_0x1cebe7){return _0x1cebe7;});}return null;};}function removeEntity(_0x52bdfe,_0x30147b){return function(_0x22833e){if(_0x22833e){return _0x22833e[_0x97c0('0x30')]()[_0x97c0('0x1d')](function(){_0x52bdfe[_0x97c0('0x29')](0xcc)[_0x97c0('0x28')]();});}};}function handleEntityNotFound(_0x4624ed,_0x1a6c4b){return function(_0x30b927){if(!_0x30b927){_0x4624ed[_0x97c0('0x27')](0x194);}return _0x30b927;};}function handleError(_0x107adc,_0x356b73){_0x356b73=_0x356b73||0x1f4;return function(_0x1de938){logger[_0x97c0('0x22')](_0x1de938[_0x97c0('0x31')]);if(_0x1de938['name']){delete _0x1de938[_0x97c0('0x32')];}_0x107adc[_0x97c0('0x29')](_0x356b73)[_0x97c0('0x33')](_0x1de938);};}exports[_0x97c0('0x34')]=function(_0x325eb9,_0x2cef66){var _0x40a780={},_0x46c9b9={},_0x582828={'count':0x0,'rows':[]};var _0xd72d47=_['map'](db[_0x97c0('0x35')][_0x97c0('0x36')],function(_0xc4c795){return{'name':_0xc4c795[_0x97c0('0x37')],'type':_0xc4c795[_0x97c0('0x38')][_0x97c0('0x39')]};});_0x46c9b9[_0x97c0('0x3a')]=_[_0x97c0('0x3b')](_0xd72d47,_0x97c0('0x32'));_0x46c9b9[_0x97c0('0x3c')]=_[_0x97c0('0x3d')](_0x325eb9['query']);_0x46c9b9[_0x97c0('0x3e')]=_[_0x97c0('0x3f')](_0x46c9b9['model'],_0x46c9b9[_0x97c0('0x3c')]);_0x40a780[_0x97c0('0x40')]=_[_0x97c0('0x3f')](_0x46c9b9[_0x97c0('0x3a')],qs['fields'](_0x325eb9[_0x97c0('0x3c')]['fields']));_0x40a780[_0x97c0('0x40')]=_0x40a780[_0x97c0('0x40')]['length']?_0x40a780[_0x97c0('0x40')]:_0x46c9b9[_0x97c0('0x3a')];if(!_0x325eb9[_0x97c0('0x3c')][_0x97c0('0x41')](_0x97c0('0x42'))){_0x40a780[_0x97c0('0x2d')]=qs[_0x97c0('0x2d')](_0x325eb9[_0x97c0('0x3c')][_0x97c0('0x2d')]);_0x40a780[_0x97c0('0x2c')]=qs[_0x97c0('0x2c')](_0x325eb9[_0x97c0('0x3c')][_0x97c0('0x2c')]);}_0x40a780['order']=qs[_0x97c0('0x43')](_0x325eb9[_0x97c0('0x3c')][_0x97c0('0x43')]);_0x40a780[_0x97c0('0x44')]=qs[_0x97c0('0x3e')](_[_0x97c0('0x45')](_0x325eb9[_0x97c0('0x3c')],_0x46c9b9['filters']),_0xd72d47);if(_0x325eb9['query'][_0x97c0('0x46')]){_0x40a780[_0x97c0('0x44')]=_[_0x97c0('0x47')](_0x40a780[_0x97c0('0x44')],{'$or':_[_0x97c0('0x3b')](_0xd72d47,function(_0x5556e8){if(_0x5556e8['type']!=='VIRTUAL'){var _0x2984e2={};_0x2984e2[_0x5556e8['name']]={'$like':'%'+_0x325eb9['query'][_0x97c0('0x46')]+'%'};return _0x2984e2;}})});}_0x40a780=_[_0x97c0('0x47')]({},_0x40a780,_0x325eb9[_0x97c0('0x48')]);var _0x15e427={'where':_0x40a780[_0x97c0('0x44')]};return db['Dynamics365Account'][_0x97c0('0x2b')](_0x15e427)[_0x97c0('0x1d')](function(_0x342eeb){_0x582828[_0x97c0('0x2b')]=_0x342eeb;if(_0x325eb9[_0x97c0('0x3c')][_0x97c0('0x49')]){_0x40a780[_0x97c0('0x4a')]=[{'all':!![]}];}return db[_0x97c0('0x35')][_0x97c0('0x4b')](_0x40a780);})[_0x97c0('0x1d')](function(_0x4b1a6e){_0x582828[_0x97c0('0x4c')]=_0x4b1a6e;return _0x582828;})[_0x97c0('0x1d')](respondWithFilteredResult(_0x2cef66,_0x40a780))[_0x97c0('0x26')](handleError(_0x2cef66,null));};exports[_0x97c0('0x4d')]=function(_0x4ff0a5,_0x597a0f){var _0x207620={'raw':![],'where':{'id':_0x4ff0a5[_0x97c0('0x4e')]['id']}},_0x2b54fb={};_0x2b54fb['model']=_[_0x97c0('0x3d')](db[_0x97c0('0x35')][_0x97c0('0x36')]);_0x2b54fb[_0x97c0('0x3c')]=_[_0x97c0('0x3d')](_0x4ff0a5['query']);_0x2b54fb[_0x97c0('0x3e')]=_[_0x97c0('0x3f')](_0x2b54fb[_0x97c0('0x3a')],_0x2b54fb['query']);_0x207620['attributes']=_[_0x97c0('0x3f')](_0x2b54fb['model'],qs['fields'](_0x4ff0a5[_0x97c0('0x3c')][_0x97c0('0x4f')]));_0x207620[_0x97c0('0x40')]=_0x207620['attributes']['length']?_0x207620['attributes']:_0x2b54fb[_0x97c0('0x3a')];if(_0x4ff0a5[_0x97c0('0x3c')][_0x97c0('0x49')]){_0x207620[_0x97c0('0x4a')]=[{'all':!![]}];}_0x207620=_[_0x97c0('0x47')]({},_0x207620,_0x4ff0a5[_0x97c0('0x48')]);return db[_0x97c0('0x35')]['find'](_0x207620)[_0x97c0('0x1d')](handleEntityNotFound(_0x597a0f,null))[_0x97c0('0x1d')](respondWithResult(_0x597a0f,null))[_0x97c0('0x26')](handleError(_0x597a0f,null));};exports[_0x97c0('0x50')]=function(_0x426947,_0x1ae422){return db['Dynamics365Account'][_0x97c0('0x50')](_0x426947[_0x97c0('0x51')],{})['then'](respondWithResult(_0x1ae422,0xc9))[_0x97c0('0x26')](handleError(_0x1ae422,null));};exports[_0x97c0('0x52')]=function(_0xa84af8,_0x3c610d){if(_0xa84af8[_0x97c0('0x51')]['id']){delete _0xa84af8[_0x97c0('0x51')]['id'];}return db[_0x97c0('0x35')]['find']({'where':{'id':_0xa84af8[_0x97c0('0x4e')]['id']}})[_0x97c0('0x1d')](handleEntityNotFound(_0x3c610d,null))[_0x97c0('0x1d')](saveUpdates(_0xa84af8[_0x97c0('0x51')],null))[_0x97c0('0x1d')](respondWithResult(_0x3c610d,null))[_0x97c0('0x26')](handleError(_0x3c610d,null));};exports[_0x97c0('0x30')]=function(_0x2b4a8b,_0x11780e){return db[_0x97c0('0x35')][_0x97c0('0x53')]({'where':{'id':_0x2b4a8b[_0x97c0('0x4e')]['id']}})[_0x97c0('0x1d')](handleEntityNotFound(_0x11780e,null))['then'](removeEntity(_0x11780e,null))[_0x97c0('0x26')](handleError(_0x11780e,null));};exports[_0x97c0('0x54')]=function(_0x405cda,_0x3dfce8,_0x11d252){var _0x3f197b={};var _0x481f5b={};var _0x18a6c0;var _0x1ad855;return db['Dynamics365Account'][_0x97c0('0x55')]({'where':{'id':_0x405cda[_0x97c0('0x4e')]['id']}})[_0x97c0('0x1d')](handleEntityNotFound(_0x3dfce8,null))['then'](function(_0x829ca8){if(_0x829ca8){_0x18a6c0=_0x829ca8;_0x481f5b['model']=_[_0x97c0('0x3d')](db[_0x97c0('0x56')][_0x97c0('0x36')]);_0x481f5b[_0x97c0('0x3c')]=_[_0x97c0('0x3d')](_0x405cda[_0x97c0('0x3c')]);_0x481f5b[_0x97c0('0x3e')]=_[_0x97c0('0x3f')](_0x481f5b[_0x97c0('0x3a')],_0x481f5b[_0x97c0('0x3c')]);_0x3f197b[_0x97c0('0x40')]=_['intersection'](_0x481f5b[_0x97c0('0x3a')],qs[_0x97c0('0x4f')](_0x405cda[_0x97c0('0x3c')][_0x97c0('0x4f')]));_0x3f197b['attributes']=_0x3f197b[_0x97c0('0x40')][_0x97c0('0x57')]?_0x3f197b[_0x97c0('0x40')]:_0x481f5b[_0x97c0('0x3a')];_0x3f197b['order']=qs[_0x97c0('0x43')](_0x405cda[_0x97c0('0x3c')][_0x97c0('0x43')]);_0x3f197b['where']=qs[_0x97c0('0x3e')](_[_0x97c0('0x45')](_0x405cda[_0x97c0('0x3c')],_0x481f5b[_0x97c0('0x3e')]));if(_0x405cda[_0x97c0('0x3c')][_0x97c0('0x46')]){_0x3f197b[_0x97c0('0x44')]=_['merge'](_0x3f197b['where'],{'$or':_[_0x97c0('0x3b')](_0x3f197b[_0x97c0('0x40')],function(_0x517c5a){var _0x366a01={};_0x366a01[_0x517c5a]={'$like':'%'+_0x405cda['query']['filter']+'%'};return _0x366a01;})});}_0x3f197b=_[_0x97c0('0x47')]({},_0x3f197b,_0x405cda['options']);return _0x18a6c0[_0x97c0('0x54')](_0x3f197b);}})[_0x97c0('0x1d')](function(_0x56be23){if(_0x56be23){_0x1ad855=_0x56be23['length'];if(!_0x405cda['query'][_0x97c0('0x41')]('nolimit')){_0x3f197b[_0x97c0('0x2d')]=qs[_0x97c0('0x2d')](_0x405cda[_0x97c0('0x3c')][_0x97c0('0x2d')]);_0x3f197b[_0x97c0('0x2c')]=qs[_0x97c0('0x2c')](_0x405cda[_0x97c0('0x3c')][_0x97c0('0x2c')]);}return _0x18a6c0[_0x97c0('0x54')](_0x3f197b);}})[_0x97c0('0x1d')](function(_0x340c6a){if(_0x340c6a){return _0x340c6a?{'count':_0x1ad855,'rows':_0x340c6a}:null;}})['then'](respondWithResult(_0x3dfce8,null))[_0x97c0('0x26')](handleError(_0x3dfce8,null));};exports[_0x97c0('0x58')]=function(_0xa97d53,_0x38d0ea,_0x7063a1){if(_0xa97d53['body']['id']){delete _0xa97d53[_0x97c0('0x51')]['id'];}return db[_0x97c0('0x35')]['findOne']({'where':{'id':_0xa97d53[_0x97c0('0x4e')]['id']}})[_0x97c0('0x1d')](handleEntityNotFound(_0x38d0ea,null))[_0x97c0('0x1d')](function(_0x4f52f4){if(_0x4f52f4){_0xa97d53[_0x97c0('0x51')][_0x97c0('0x59')]=_0x4f52f4['id'];_0xa97d53[_0x97c0('0x51')][_0x97c0('0x5a')]=integrations['getSubjects'](_0xa97d53['body']['channel'],_0xa97d53[_0x97c0('0x51')][_0x97c0('0x38')]);_0xa97d53[_0x97c0('0x51')][_0x97c0('0x5b')]=integrations[_0x97c0('0x5c')](_0xa97d53[_0x97c0('0x51')][_0x97c0('0x5d')],_0xa97d53[_0x97c0('0x51')]['type']);return db['Dynamics365Configuration'][_0x97c0('0x50')](_0xa97d53['body'],{'include':[{'model':db['Dynamics365Field'],'as':'Subjects'},{'model':db[_0x97c0('0x5e')],'as':_0x97c0('0x5b')}]});}return null;})[_0x97c0('0x1d')](respondWithResult(_0x38d0ea,null))[_0x97c0('0x26')](handleError(_0x38d0ea,null));};exports[_0x97c0('0x5f')]=function(_0x4dccd6,_0x4b9523,_0x35ced3){var _0x388081=_0x4dccd6[_0x97c0('0x3c')][_0x97c0('0x60')];var _0x526bd5=_0x388081===_0x97c0('0x61')?'Incident':_0x97c0('0x62');var _0x17cc7f='';var _0x1f9c10='';var _0x3da4e5='';var _0x11b52c='';var _0x18dd46='';var _0x2c00c4='';var _0x41a6b5='';var _0x465a92='';var _0x8a333f=['title',_0x97c0('0x63'),'customerid','ownerid',_0x97c0('0x64'),_0x97c0('0x65'),'phonenumber',_0x97c0('0x66'),'directioncode',_0x97c0('0x67')];var _0x24a81c=['accountidname',_0x97c0('0x68'),'actualserviceunits','billedserviceunits','contactidname',_0x97c0('0x69'),_0x97c0('0x6a'),'contractidname',_0x97c0('0x6b'),_0x97c0('0x6c'),_0x97c0('0x6d'),_0x97c0('0x6e'),_0x97c0('0x6f'),_0x97c0('0x70'),_0x97c0('0x71'),_0x97c0('0x72'),'customeridtype',_0x97c0('0x73'),'emailaddress','entitlementidname',_0x97c0('0x74'),'entityimage_url',_0x97c0('0x75'),_0x97c0('0x76'),'firstresponsebykpiidname',_0x97c0('0x77'),_0x97c0('0x78'),_0x97c0('0x79'),_0x97c0('0x7a'),_0x97c0('0x7b'),'masteridname',_0x97c0('0x7c'),_0x97c0('0x7d'),_0x97c0('0x7e'),'modifiedbyyominame',_0x97c0('0x7f'),_0x97c0('0x80'),_0x97c0('0x81'),_0x97c0('0x82'),'msdyn_iotalertname',_0x97c0('0x83'),_0x97c0('0x84'),_0x97c0('0x85'),_0x97c0('0x86'),_0x97c0('0x87'),'owneridyominame',_0x97c0('0x88'),_0x97c0('0x89'),'primarycontactidyominame','prioritycodename',_0x97c0('0x8a'),_0x97c0('0x8b'),_0x97c0('0x8c'),'resolvebykpiidname','responseby',_0x97c0('0x8d'),'responsiblecontactidyominame',_0x97c0('0x8e'),_0x97c0('0x8f'),_0x97c0('0x90'),_0x97c0('0x91'),_0x97c0('0x92'),_0x97c0('0x93'),_0x97c0('0x94'),'ticketnumber',_0x97c0('0x95'),_0x97c0('0x96'),_0x97c0('0x97'),_0x97c0('0x98'),_0x97c0('0x99')];var _0x215ae3=_0x8a333f[_0x97c0('0x9a')](_0x24a81c);return db[_0x97c0('0x35')][_0x97c0('0x55')]({'where':{'id':_0x4dccd6[_0x97c0('0x4e')]['id']},'attributes':['id',_0x97c0('0x9b'),_0x97c0('0x9c'),_0x97c0('0x9d'),_0x97c0('0x9e'),'clientId',_0x97c0('0x9f')]})[_0x97c0('0x1d')](handleEntityNotFound(_0x4b9523,null))[_0x97c0('0x1d')](function(_0xfb7b2c){if(_0xfb7b2c){_0x465a92=_0xfb7b2c['remoteUri'];var _0x1eb0c7=_0x465a92[_0x97c0('0xa0')](-0x1);if(_0x1eb0c7==='/'){_0x465a92=_0x465a92[_0x97c0('0xa1')](0x0,_0x465a92[_0x97c0('0xa2')](_0x1eb0c7));}_0x41a6b5=util[_0x97c0('0xa3')](_0x97c0('0xa4'),_0x465a92);var _0xf4a5c8={'method':'POST','uri':_0x97c0('0xa5')+_0xfb7b2c['tenantId']+_0x97c0('0xa6'),'form':{'client_id':_0xfb7b2c[_0x97c0('0xa7')],'resource':_0x465a92,'username':_0xfb7b2c[_0x97c0('0x9b')],'password':_0xfb7b2c['password'],'grant_type':_0x97c0('0x9c'),'client_secret':_0xfb7b2c[_0x97c0('0x9f')]},'json':!![]};return rp(_0xf4a5c8);}})[_0x97c0('0x1d')](function(_0x3e154e){_0x2c00c4=_0x3e154e[_0x97c0('0xa8')];var _0x4ba445={'method':_0x97c0('0xa9'),'uri':encodeURI(_0x41a6b5+'EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27'+_0x526bd5+'\x27'),'headers':{'Authorization':_0x97c0('0xaa')+_0x2c00c4,'If-None-Match':null,'OData-Version':_0x97c0('0xab')},'json':!![]};return rp(_0x4ba445);})['then'](function(_0x2b562c){var _0xe2e83e=_0x2b562c[_0x97c0('0xac')][0x0];var _0x429077=_0xe2e83e[_0x97c0('0xad')];var _0x14dd7a={'method':_0x97c0('0xa9'),'uri':_0x41a6b5+_0x97c0('0xae')+_0x429077+')?$select=LogicalName&$expand=Attributes($select=LogicalName)','headers':{'Authorization':_0x97c0('0xaa')+_0x2c00c4,'If-None-Match':null,'OData-Version':_0x97c0('0xab')},'json':!![]};return rp(_0x14dd7a);})[_0x97c0('0x1d')](function(_0x511904){_0x17cc7f=_0x511904;_0x1f9c10=_0x17cc7f['Attributes'];_0x1f9c10=_[_0x97c0('0xaf')](_0x1f9c10,function(_0x2b6ea5){return!_0x215ae3[_0x97c0('0xb0')](_0x2b6ea5[_0x97c0('0xb1')]);});var _0x38f115=[];var _0x120d78=[];_0x1f9c10[_0x97c0('0xb2')](function(_0x34e0ef){if(_0x34e0ef[_0x97c0('0xb3')]){var _0x32e9db=_0x34e0ef[_0x97c0('0xb3')][_0x97c0('0xa1')](_0x34e0ef[_0x97c0('0xb3')]['lastIndexOf']('.')+0x1);if(_0x32e9db===_0x97c0('0xb4')){_0x38f115[_0x97c0('0xb5')](getSelectList(_0x41a6b5,_0x388081,_0x120d78,_0x17cc7f[_0x97c0('0xad')],_0x34e0ef[_0x97c0('0xad')],_0x2c00c4));}}});return Promise[_0x97c0('0xb6')](_0x38f115);})['then'](function(_0x46249e){_0x3da4e5=_0x46249e[0x0];var _0x5aba7e=[];var _0x4ad1ac=[];_0x1f9c10[_0x97c0('0xb2')](function(_0x124124){if(!_['isNil'](_0x124124['@odata.type'])){var _0x57fd6c=_0x124124[_0x97c0('0xb3')][_0x97c0('0xa1')](_0x124124[_0x97c0('0xb3')][_0x97c0('0xa2')]('.')+0x1);if(_0x57fd6c===_0x97c0('0xb7')){_0x5aba7e[_0x97c0('0xb5')](getBooleanList(_0x41a6b5,_0x388081,_0x4ad1ac,_0x17cc7f['MetadataId'],_0x124124[_0x97c0('0xad')],_0x2c00c4));}}});return Promise[_0x97c0('0xb6')](_0x5aba7e);})['then'](function(_0x3e5eb6){_0x11b52c=_0x3e5eb6[0x0];var _0x5a2f78=[];var _0x2bad51=[];_0x1f9c10[_0x97c0('0xb2')](function(_0x4217a3){if(_0x4217a3[_0x97c0('0xb3')]){var _0x1f2d19=_0x4217a3['@odata.type'][_0x97c0('0xa1')](_0x4217a3[_0x97c0('0xb3')][_0x97c0('0xa2')]('.')+0x1);if(_0x1f2d19==='StringAttributeMetadata'||_0x1f2d19===_0x97c0('0xb8')||_0x1f2d19===_0x97c0('0xb9')||_0x1f2d19==='IntegerAttributeMetadata'||_0x1f2d19===_0x97c0('0xba')||_0x1f2d19===_0x97c0('0xbb')||_0x1f2d19===_0x97c0('0xbc')||_0x1f2d19===_0x97c0('0xbd')||_0x1f2d19===_0x97c0('0xbe')||_0x1f2d19===_0x97c0('0xbf')){_0x5a2f78[_0x97c0('0xb5')](getInputList(_0x41a6b5,_0x388081,_0x1f2d19,_0x2bad51,_0x17cc7f[_0x97c0('0xad')],_0x4217a3[_0x97c0('0xad')],_0x2c00c4));}}});return Promise[_0x97c0('0xb6')](_0x5a2f78);})[_0x97c0('0x1d')](function(_0x4d7d88){_0x18dd46=_0x4d7d88[0x0];var _0x2a9c50=_0x3da4e5[_0x97c0('0x9a')](_0x11b52c)['concat'](_0x18dd46);var _0x509ebf={'count':_0x2a9c50[_0x97c0('0x57')],'rows':_0x2a9c50};return _0x509ebf;})[_0x97c0('0x1d')](respondWithResult(_0x4b9523,null))[_0x97c0('0x26')](function(_0x2aeb6a){var _0x1b3ef9=_0x4dccd6[_0x97c0('0x3c')][_0x97c0('0xc0')]?0x1f4:_0x2aeb6a['statusCode']||0x1f4;logger[_0x97c0('0x22')](_0x2aeb6a['stack']);delete _0x2aeb6a[_0x97c0('0x32')];if(_0x1b3ef9===0x191){_0x1b3ef9=0x190;}_0x4b9523['status'](_0x1b3ef9)[_0x97c0('0x33')](_0x4dccd6[_0x97c0('0x3c')][_0x97c0('0xc0')]?{'message':'Wrong\x20credentials','statusCode':_0x2aeb6a[_0x97c0('0xc1')]}:_0x2aeb6a);});};function getSelectList(_0x40beae,_0x59677d,_0x27deae,_0x3c9c9b,_0x1ef770,_0x883352){var _0x585922={'method':'GET','uri':_0x40beae+_0x97c0('0xae')+_0x3c9c9b+')/Attributes('+_0x1ef770+_0x97c0('0xc2')+'$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','headers':{'Authorization':_0x97c0('0xaa')+_0x883352,'If-None-Match':null,'OData-Version':_0x97c0('0xab')},'json':!![]};return rp(_0x585922)[_0x97c0('0x1d')](function(_0x14727a){var _0x5a8027=[];var _0x4529dc=_0x14727a[_0x97c0('0xc3')]['Options'];_0x4529dc['forEach'](function(_0xae9306){_0x5a8027[_0x97c0('0xb5')]({'name':_0xae9306[_0x97c0('0xc4')]['UserLocalizedLabel']['Label'],'value':String(_0xae9306[_0x97c0('0xc5')])});});var _0x5192e4={'id':_0x59677d+'_'+_0x14727a[_0x97c0('0xb1')],'name':_0x14727a[_0x97c0('0xc6')][_0x97c0('0xc7')][_0x97c0('0xc4')],'custom':![],'options':_0x5a8027};_0x27deae['push'](_0x5192e4);return _0x27deae;});}function getBooleanList(_0x1aed8c,_0x2e8fd8,_0x167b53,_0x5e7cb9,_0x1a7c55,_0x2756d3){var _0x243215={'method':_0x97c0('0xa9'),'uri':_0x1aed8c+_0x97c0('0xae')+_0x5e7cb9+')/Attributes('+_0x1a7c55+_0x97c0('0xc8'),'headers':{'Authorization':_0x97c0('0xaa')+_0x2756d3,'If-None-Match':null,'OData-Version':_0x97c0('0xab')},'json':!![]};return rp(_0x243215)[_0x97c0('0x1d')](function(_0x1c9e4d){var _0x5d0337=[];_0x5d0337[_0x97c0('0xb5')]({'name':_0x1c9e4d[_0x97c0('0xc3')][_0x97c0('0xc9')][_0x97c0('0xc4')][_0x97c0('0xc7')]['Label'],'value':'true'},{'name':_0x1c9e4d[_0x97c0('0xc3')]['FalseOption']['Label'][_0x97c0('0xc7')][_0x97c0('0xc4')],'value':_0x97c0('0xca')});var _0x591c81={'id':_0x2e8fd8+'_'+_0x1c9e4d[_0x97c0('0xb1')],'name':_0x1c9e4d[_0x97c0('0xc6')][_0x97c0('0xc7')]['Label'],'custom':![],'options':_0x5d0337};_0x167b53['push'](_0x591c81);return _0x167b53;});}function getInputList(_0x269831,_0x598736,_0x2a3474,_0x597903,_0x2e09a5,_0xc642f7,_0x137997){var _0x585ca0={'method':_0x97c0('0xa9'),'uri':_0x269831+_0x97c0('0xae')+_0x2e09a5+_0x97c0('0xcb')+_0xc642f7+_0x97c0('0xcc')+_0x2a3474+_0x97c0('0xcd'),'headers':{'Authorization':'Bearer\x20'+_0x137997,'If-None-Match':null,'OData-Version':_0x97c0('0xab')},'json':!![]};return rp(_0x585ca0)[_0x97c0('0x1d')](function(_0x2159cf){var _0x23915c={'id':_0x598736+'_'+_0x2159cf[_0x97c0('0xb1')],'name':_0x2159cf[_0x97c0('0xc6')][_0x97c0('0xc7')]?_0x2159cf[_0x97c0('0xc6')][_0x97c0('0xc7')][_0x97c0('0xc4')]:_0x2159cf[_0x97c0('0xb1')],'custom':![],'options':[]};_0x597903[_0x97c0('0xb5')](_0x23915c);return _0x597903;});}