189398832634b608b6eccff7452aac90d98b8e5f
[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 _0x6732=['createdon','createdonbehalfbyname','createdonbehalfbyyominame','customeridname','customeridtype','customeridyominame','emailaddress','entitlementidname','escalatedon','exchangerate','firstresponsebykpiidname','followupby','importsequencenumber','kbarticleidname','lastonholdtime','masteridname','modifiedbyexternalpartyname','modifiedbyexternalpartyyominame','modifiedbyname','modifiedbyyominame','modifiedon','modifiedonbehalfbyyominame','msdyn_iotalertname','onholdtime','overriddencreatedon','owneridname','owneridtype','parentcaseidname','primarycontactidname','primarycontactidyominame','prioritycodename','productidname','resolveby','resolvebykpiidname','responseby','responsiblecontactidyominame','sentimentvalue','slainvokedidname','socialprofileidname','statecode','statuscode','subjectidname','ticketnumber','timezoneruleversionnumber','transactioncurrencyidname','traversedpath','utcconversiontimezonecode','concat','username','password','clientId','clientSecret','remoteUri','slice','lastIndexOf','format','%s/api/data/v9.0/','https://login.microsoftonline.com/','tenantId','/oauth2/token','access_token','GET','EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27','Bearer\x20','4.0','value','MetadataId','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','remove','forEach','@odata.type','PicklistAttributeMetadata','push','all','isNil','substring','BooleanAttributeMetadata','DoubleAttributeMetadata','BigIntAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','EntityNameAttributeMetadata','StateAttributeMetadata','test','statusCode','stack','Wrong\x20credentials','$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','OptionSet','Options','Label','Value','LogicalName','UserLocalizedLabel',')/Attributes(',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','true','FalseOption','DisplayName',')/Microsoft.Dynamics.CRM.','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','util','path','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','name','send','map','Dynamics365Account','rawAttributes','fieldName','key','query','keys','filters','intersection','model','fields','attributes','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','include','rows','catch','show','find','create','body','params','getConfigurations','findOne','Dynamics365Configuration','length','hasOwnProperty','addConfiguration','AccountId','Subjects','channel','Descriptions','Dynamics365Field','ticketType','incident','Incident','PhoneCall','title','customerid','ownerid','caseorigincode','subject','phonecall_activity_parties','accountidname','actualserviceunits','contactidname','contractidname','createdbyexternalpartyname','createdbyexternalpartyyominame','createdbyname'];(function(_0x2b70c4,_0x1a7da8){var _0x49f2d6=function(_0x4a9be2){while(--_0x4a9be2){_0x2b70c4['push'](_0x2b70c4['shift']());}};_0x49f2d6(++_0x1a7da8);}(_0x6732,0x66));var _0x2673=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x6732[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x2673('0x0'));var rimraf=require(_0x2673('0x1'));var zipdir=require(_0x2673('0x2'));var jsonpatch=require(_0x2673('0x3'));var rp=require('request-promise');var moment=require(_0x2673('0x4'));var BPromise=require(_0x2673('0x5'));var Mustache=require('mustache');var util=require(_0x2673('0x6'));var path=require(_0x2673('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x2673('0x8'));var fs=require('fs');var fs_extra=require(_0x2673('0x9'));var _=require(_0x2673('0xa'));var squel=require(_0x2673('0xb'));var crypto=require(_0x2673('0xc'));var jsforce=require(_0x2673('0xd'));var deskjs=require(_0x2673('0xe'));var toCsv=require(_0x2673('0xf'));var querystring=require(_0x2673('0x10'));var Papa=require(_0x2673('0x11'));var Redis=require(_0x2673('0x12'));var authService=require(_0x2673('0x13'));var qs=require(_0x2673('0x14'));var as=require(_0x2673('0x15'));var hardwareService=require(_0x2673('0x16'));var logger=require(_0x2673('0x17'))(_0x2673('0x18'));var utils=require(_0x2673('0x19'));var config=require(_0x2673('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0x2673('0x1b'))['db'];var integrations=require('../../components/integrations/configuration');function respondWithStatusCode(_0x991e0d,_0x41956b){_0x41956b=_0x41956b||0xcc;return function(_0x443d0c){if(_0x443d0c){return _0x991e0d[_0x2673('0x1c')](_0x41956b);}return _0x991e0d[_0x2673('0x1d')](_0x41956b)['end']();};}function respondWithResult(_0x4d63b1,_0x4688bd){_0x4688bd=_0x4688bd||0xc8;return function(_0x2cd904){if(_0x2cd904){return _0x4d63b1[_0x2673('0x1d')](_0x4688bd)[_0x2673('0x1e')](_0x2cd904);}};}function respondWithFilteredResult(_0x38fc5f,_0x47e313){return function(_0x404134){if(_0x404134){var _0x3dd54a=typeof _0x47e313[_0x2673('0x1f')]===_0x2673('0x20')&&typeof _0x47e313['limit']===_0x2673('0x20');var _0x2d9413=_0x404134[_0x2673('0x21')];var _0x20df10=_0x3dd54a?0x0:_0x47e313[_0x2673('0x1f')];var _0x525423=_0x3dd54a?_0x404134['count']:_0x47e313[_0x2673('0x1f')]+_0x47e313[_0x2673('0x22')];var _0x8bd589;if(_0x525423>=_0x2d9413){_0x525423=_0x2d9413;_0x8bd589=0xc8;}else{_0x8bd589=0xce;}_0x38fc5f[_0x2673('0x1d')](_0x8bd589);return _0x38fc5f[_0x2673('0x23')](_0x2673('0x24'),_0x20df10+'-'+_0x525423+'/'+_0x2d9413)[_0x2673('0x1e')](_0x404134);}return null;};}function patchUpdates(_0x362d15){return function(_0x5eefcb){try{jsonpatch[_0x2673('0x25')](_0x5eefcb,_0x362d15,!![]);}catch(_0x515a82){return BPromise[_0x2673('0x26')](_0x515a82);}return _0x5eefcb[_0x2673('0x27')]();};}function saveUpdates(_0x3b7f09,_0x3af6bb){return function(_0x105fdd){if(_0x105fdd){return _0x105fdd[_0x2673('0x28')](_0x3b7f09)[_0x2673('0x29')](function(_0x48b3fb){return _0x48b3fb;});}return null;};}function removeEntity(_0x17812a,_0x282045){return function(_0x2e3c05){if(_0x2e3c05){return _0x2e3c05[_0x2673('0x2a')]()['then'](function(){_0x17812a[_0x2673('0x1d')](0xcc)[_0x2673('0x2b')]();});}};}function handleEntityNotFound(_0x528bd1,_0x597216){return function(_0x48999c){if(!_0x48999c){_0x528bd1[_0x2673('0x1c')](0x194);}return _0x48999c;};}function handleError(_0x5695e2,_0xcd7375){_0xcd7375=_0xcd7375||0x1f4;return function(_0x3bcbfe){logger['error'](_0x3bcbfe['stack']);if(_0x3bcbfe[_0x2673('0x2c')]){delete _0x3bcbfe[_0x2673('0x2c')];}_0x5695e2[_0x2673('0x1d')](_0xcd7375)[_0x2673('0x2d')](_0x3bcbfe);};}exports['index']=function(_0x44dc6f,_0x5d64b7){var _0x40723f={},_0x16d431={},_0x11ca8b={'count':0x0,'rows':[]};var _0x54dfec=_[_0x2673('0x2e')](db[_0x2673('0x2f')][_0x2673('0x30')],function(_0x39eb78){return{'name':_0x39eb78[_0x2673('0x31')],'type':_0x39eb78['type'][_0x2673('0x32')]};});_0x16d431['model']=_[_0x2673('0x2e')](_0x54dfec,_0x2673('0x2c'));_0x16d431[_0x2673('0x33')]=_[_0x2673('0x34')](_0x44dc6f[_0x2673('0x33')]);_0x16d431[_0x2673('0x35')]=_[_0x2673('0x36')](_0x16d431[_0x2673('0x37')],_0x16d431[_0x2673('0x33')]);_0x40723f['attributes']=_[_0x2673('0x36')](_0x16d431[_0x2673('0x37')],qs[_0x2673('0x38')](_0x44dc6f[_0x2673('0x33')][_0x2673('0x38')]));_0x40723f['attributes']=_0x40723f['attributes']['length']?_0x40723f[_0x2673('0x39')]:_0x16d431[_0x2673('0x37')];if(!_0x44dc6f[_0x2673('0x33')]['hasOwnProperty'](_0x2673('0x3a'))){_0x40723f[_0x2673('0x22')]=qs[_0x2673('0x22')](_0x44dc6f['query'][_0x2673('0x22')]);_0x40723f[_0x2673('0x1f')]=qs[_0x2673('0x1f')](_0x44dc6f[_0x2673('0x33')][_0x2673('0x1f')]);}_0x40723f[_0x2673('0x3b')]=qs['sort'](_0x44dc6f['query'][_0x2673('0x3c')]);_0x40723f[_0x2673('0x3d')]=qs[_0x2673('0x35')](_[_0x2673('0x3e')](_0x44dc6f[_0x2673('0x33')],_0x16d431[_0x2673('0x35')]),_0x54dfec);if(_0x44dc6f[_0x2673('0x33')][_0x2673('0x3f')]){_0x40723f['where']=_[_0x2673('0x40')](_0x40723f[_0x2673('0x3d')],{'$or':_['map'](_0x54dfec,function(_0x578170){if(_0x578170[_0x2673('0x41')]!==_0x2673('0x42')){var _0x214e72={};_0x214e72[_0x578170['name']]={'$like':'%'+_0x44dc6f[_0x2673('0x33')][_0x2673('0x3f')]+'%'};return _0x214e72;}})});}_0x40723f=_[_0x2673('0x40')]({},_0x40723f,_0x44dc6f[_0x2673('0x43')]);var _0x1e63a9={'where':_0x40723f[_0x2673('0x3d')]};return db[_0x2673('0x2f')][_0x2673('0x21')](_0x1e63a9)[_0x2673('0x29')](function(_0x381d91){_0x11ca8b[_0x2673('0x21')]=_0x381d91;if(_0x44dc6f[_0x2673('0x33')][_0x2673('0x44')]){_0x40723f[_0x2673('0x45')]=[{'all':!![]}];}return db[_0x2673('0x2f')]['findAll'](_0x40723f);})['then'](function(_0x35856a){_0x11ca8b[_0x2673('0x46')]=_0x35856a;return _0x11ca8b;})[_0x2673('0x29')](respondWithFilteredResult(_0x5d64b7,_0x40723f))[_0x2673('0x47')](handleError(_0x5d64b7,null));};exports[_0x2673('0x48')]=function(_0x493966,_0x28237f){var _0x9b42aa={'raw':![],'where':{'id':_0x493966['params']['id']}},_0x501d95={};_0x501d95[_0x2673('0x37')]=_['keys'](db['Dynamics365Account']['rawAttributes']);_0x501d95[_0x2673('0x33')]=_[_0x2673('0x34')](_0x493966[_0x2673('0x33')]);_0x501d95[_0x2673('0x35')]=_[_0x2673('0x36')](_0x501d95[_0x2673('0x37')],_0x501d95[_0x2673('0x33')]);_0x9b42aa[_0x2673('0x39')]=_[_0x2673('0x36')](_0x501d95['model'],qs[_0x2673('0x38')](_0x493966[_0x2673('0x33')]['fields']));_0x9b42aa['attributes']=_0x9b42aa[_0x2673('0x39')]['length']?_0x9b42aa[_0x2673('0x39')]:_0x501d95[_0x2673('0x37')];if(_0x493966[_0x2673('0x33')][_0x2673('0x44')]){_0x9b42aa[_0x2673('0x45')]=[{'all':!![]}];}_0x9b42aa=_[_0x2673('0x40')]({},_0x9b42aa,_0x493966[_0x2673('0x43')]);return db['Dynamics365Account'][_0x2673('0x49')](_0x9b42aa)[_0x2673('0x29')](handleEntityNotFound(_0x28237f,null))['then'](respondWithResult(_0x28237f,null))['catch'](handleError(_0x28237f,null));};exports['create']=function(_0x2d5a60,_0x1559f7){return db[_0x2673('0x2f')][_0x2673('0x4a')](_0x2d5a60['body'],{})[_0x2673('0x29')](respondWithResult(_0x1559f7,0xc9))[_0x2673('0x47')](handleError(_0x1559f7,null));};exports['update']=function(_0x46c183,_0x3dc054){if(_0x46c183[_0x2673('0x4b')]['id']){delete _0x46c183[_0x2673('0x4b')]['id'];}return db[_0x2673('0x2f')][_0x2673('0x49')]({'where':{'id':_0x46c183[_0x2673('0x4c')]['id']}})[_0x2673('0x29')](handleEntityNotFound(_0x3dc054,null))[_0x2673('0x29')](saveUpdates(_0x46c183[_0x2673('0x4b')],null))[_0x2673('0x29')](respondWithResult(_0x3dc054,null))[_0x2673('0x47')](handleError(_0x3dc054,null));};exports[_0x2673('0x2a')]=function(_0x3b90b1,_0x43a221){return db[_0x2673('0x2f')][_0x2673('0x49')]({'where':{'id':_0x3b90b1[_0x2673('0x4c')]['id']}})[_0x2673('0x29')](handleEntityNotFound(_0x43a221,null))[_0x2673('0x29')](removeEntity(_0x43a221,null))[_0x2673('0x47')](handleError(_0x43a221,null));};exports[_0x2673('0x4d')]=function(_0x46a355,_0x3e48a5,_0x2f4982){var _0x28b60a={};var _0x294969={};var _0x3945e2;var _0x10cdf9;return db['Dynamics365Account'][_0x2673('0x4e')]({'where':{'id':_0x46a355[_0x2673('0x4c')]['id']}})[_0x2673('0x29')](handleEntityNotFound(_0x3e48a5,null))[_0x2673('0x29')](function(_0x1b3536){if(_0x1b3536){_0x3945e2=_0x1b3536;_0x294969[_0x2673('0x37')]=_[_0x2673('0x34')](db[_0x2673('0x4f')]['rawAttributes']);_0x294969[_0x2673('0x33')]=_[_0x2673('0x34')](_0x46a355['query']);_0x294969['filters']=_['intersection'](_0x294969[_0x2673('0x37')],_0x294969[_0x2673('0x33')]);_0x28b60a[_0x2673('0x39')]=_['intersection'](_0x294969[_0x2673('0x37')],qs[_0x2673('0x38')](_0x46a355[_0x2673('0x33')][_0x2673('0x38')]));_0x28b60a[_0x2673('0x39')]=_0x28b60a[_0x2673('0x39')][_0x2673('0x50')]?_0x28b60a[_0x2673('0x39')]:_0x294969[_0x2673('0x37')];_0x28b60a['order']=qs[_0x2673('0x3c')](_0x46a355[_0x2673('0x33')]['sort']);_0x28b60a[_0x2673('0x3d')]=qs[_0x2673('0x35')](_['pick'](_0x46a355[_0x2673('0x33')],_0x294969['filters']));if(_0x46a355['query']['filter']){_0x28b60a[_0x2673('0x3d')]=_[_0x2673('0x40')](_0x28b60a[_0x2673('0x3d')],{'$or':_[_0x2673('0x2e')](_0x28b60a[_0x2673('0x39')],function(_0x182812){var _0x4cd863={};_0x4cd863[_0x182812]={'$like':'%'+_0x46a355[_0x2673('0x33')]['filter']+'%'};return _0x4cd863;})});}_0x28b60a=_['merge']({},_0x28b60a,_0x46a355['options']);return _0x3945e2[_0x2673('0x4d')](_0x28b60a);}})[_0x2673('0x29')](function(_0x32839c){if(_0x32839c){_0x10cdf9=_0x32839c[_0x2673('0x50')];if(!_0x46a355[_0x2673('0x33')][_0x2673('0x51')]('nolimit')){_0x28b60a['limit']=qs[_0x2673('0x22')](_0x46a355[_0x2673('0x33')]['limit']);_0x28b60a[_0x2673('0x1f')]=qs[_0x2673('0x1f')](_0x46a355[_0x2673('0x33')][_0x2673('0x1f')]);}return _0x3945e2['getConfigurations'](_0x28b60a);}})[_0x2673('0x29')](function(_0x2debe4){if(_0x2debe4){return _0x2debe4?{'count':_0x10cdf9,'rows':_0x2debe4}:null;}})[_0x2673('0x29')](respondWithResult(_0x3e48a5,null))[_0x2673('0x47')](handleError(_0x3e48a5,null));};exports[_0x2673('0x52')]=function(_0xf163d3,_0x21b410,_0x249162){if(_0xf163d3['body']['id']){delete _0xf163d3[_0x2673('0x4b')]['id'];}return db[_0x2673('0x2f')][_0x2673('0x4e')]({'where':{'id':_0xf163d3[_0x2673('0x4c')]['id']}})[_0x2673('0x29')](handleEntityNotFound(_0x21b410,null))[_0x2673('0x29')](function(_0x4ba209){if(_0x4ba209){_0xf163d3['body'][_0x2673('0x53')]=_0x4ba209['id'];_0xf163d3[_0x2673('0x4b')][_0x2673('0x54')]=integrations['getSubjects'](_0xf163d3['body'][_0x2673('0x55')],_0xf163d3[_0x2673('0x4b')]['type']);_0xf163d3[_0x2673('0x4b')][_0x2673('0x56')]=integrations['getDescriptions'](_0xf163d3[_0x2673('0x4b')][_0x2673('0x55')],_0xf163d3[_0x2673('0x4b')][_0x2673('0x41')]);return db[_0x2673('0x4f')]['create'](_0xf163d3[_0x2673('0x4b')],{'include':[{'model':db[_0x2673('0x57')],'as':'Subjects'},{'model':db[_0x2673('0x57')],'as':_0x2673('0x56')}]});}return null;})[_0x2673('0x29')](respondWithResult(_0x21b410,null))[_0x2673('0x47')](handleError(_0x21b410,null));};exports['getFields']=function(_0x5a92ea,_0x5c762a,_0x352736){var _0x5b378e=_0x5a92ea[_0x2673('0x33')][_0x2673('0x58')];var _0x9deaf3=_0x5b378e===_0x2673('0x59')?_0x2673('0x5a'):_0x2673('0x5b');var _0x491359='';var _0x539955='';var _0x222ca3='';var _0x58eb0e='';var _0x30e4b9='';var _0x3e229a='';var _0x4dcc74='';var _0x235053='';var _0x3e9e15=[_0x2673('0x5c'),'description',_0x2673('0x5d'),_0x2673('0x5e'),_0x2673('0x5f'),_0x2673('0x60'),'phonenumber','regardingobjectid','directioncode',_0x2673('0x61')];var _0x5adedb=[_0x2673('0x62'),'accountidyominame',_0x2673('0x63'),'billedserviceunits',_0x2673('0x64'),'contactidyominame','contractdetailidname',_0x2673('0x65'),_0x2673('0x66'),_0x2673('0x67'),_0x2673('0x68'),'createdbyyominame',_0x2673('0x69'),_0x2673('0x6a'),_0x2673('0x6b'),_0x2673('0x6c'),_0x2673('0x6d'),_0x2673('0x6e'),_0x2673('0x6f'),_0x2673('0x70'),'entityimage_timestamp','entityimage_url',_0x2673('0x71'),_0x2673('0x72'),_0x2673('0x73'),_0x2673('0x74'),_0x2673('0x75'),'influencescore',_0x2673('0x76'),_0x2673('0x77'),_0x2673('0x78'),_0x2673('0x79'),_0x2673('0x7a'),_0x2673('0x7b'),_0x2673('0x7c'),_0x2673('0x7d'),'modifiedonbehalfbyname',_0x2673('0x7e'),'msdyn_incidenttypename',_0x2673('0x7f'),'numberofchildincidents',_0x2673('0x80'),_0x2673('0x81'),_0x2673('0x82'),_0x2673('0x83'),'owneridyominame',_0x2673('0x84'),_0x2673('0x85'),_0x2673('0x86'),_0x2673('0x87'),_0x2673('0x88'),'productserialnumber',_0x2673('0x89'),_0x2673('0x8a'),_0x2673('0x8b'),'responsiblecontactidname',_0x2673('0x8c'),_0x2673('0x8d'),_0x2673('0x8e'),'slaname',_0x2673('0x8f'),_0x2673('0x90'),_0x2673('0x91'),_0x2673('0x92'),_0x2673('0x93'),_0x2673('0x94'),_0x2673('0x95'),_0x2673('0x96'),_0x2673('0x97'),'versionnumber'];var _0x39f113=_0x3e9e15[_0x2673('0x98')](_0x5adedb);return db[_0x2673('0x2f')][_0x2673('0x4e')]({'where':{'id':_0x5a92ea[_0x2673('0x4c')]['id']},'attributes':['id',_0x2673('0x99'),_0x2673('0x9a'),'remoteUri','tenantId',_0x2673('0x9b'),_0x2673('0x9c')]})['then'](handleEntityNotFound(_0x5c762a,null))[_0x2673('0x29')](function(_0xa4cbf6){if(_0xa4cbf6){_0x235053=_0xa4cbf6[_0x2673('0x9d')];var _0x48b821=_0x235053[_0x2673('0x9e')](-0x1);if(_0x48b821==='/'){_0x235053=_0x235053['substring'](0x0,_0x235053[_0x2673('0x9f')](_0x48b821));}_0x4dcc74=util[_0x2673('0xa0')](_0x2673('0xa1'),_0x235053);var _0x34dca4={'method':'POST','uri':_0x2673('0xa2')+_0xa4cbf6[_0x2673('0xa3')]+_0x2673('0xa4'),'form':{'client_id':_0xa4cbf6[_0x2673('0x9b')],'resource':_0x235053,'username':_0xa4cbf6[_0x2673('0x99')],'password':_0xa4cbf6[_0x2673('0x9a')],'grant_type':_0x2673('0x9a'),'client_secret':_0xa4cbf6[_0x2673('0x9c')]},'json':!![]};return rp(_0x34dca4);}})[_0x2673('0x29')](function(_0x846234){_0x3e229a=_0x846234[_0x2673('0xa5')];var _0x1ec073={'method':_0x2673('0xa6'),'uri':encodeURI(_0x4dcc74+_0x2673('0xa7')+_0x9deaf3+'\x27'),'headers':{'Authorization':_0x2673('0xa8')+_0x3e229a,'If-None-Match':null,'OData-Version':_0x2673('0xa9')},'json':!![]};return rp(_0x1ec073);})[_0x2673('0x29')](function(_0x2e88b9){var _0x1e2f03=_0x2e88b9[_0x2673('0xaa')][0x0];var _0xa32a9=_0x1e2f03[_0x2673('0xab')];var _0x7d55b0={'method':_0x2673('0xa6'),'uri':_0x4dcc74+_0x2673('0xac')+_0xa32a9+_0x2673('0xad'),'headers':{'Authorization':_0x2673('0xa8')+_0x3e229a,'If-None-Match':null,'OData-Version':_0x2673('0xa9')},'json':!![]};return rp(_0x7d55b0);})[_0x2673('0x29')](function(_0x384c36){_0x491359=_0x384c36;_0x539955=_0x491359['Attributes'];_0x539955=_[_0x2673('0xae')](_0x539955,function(_0x5e19db){return!_0x39f113['includes'](_0x5e19db['LogicalName']);});var _0x5ee9c8=[];var _0x10b568=[];_0x539955[_0x2673('0xaf')](function(_0x33efee){if(_0x33efee[_0x2673('0xb0')]){var _0x517227=_0x33efee[_0x2673('0xb0')]['substring'](_0x33efee[_0x2673('0xb0')][_0x2673('0x9f')]('.')+0x1);if(_0x517227===_0x2673('0xb1')){_0x5ee9c8[_0x2673('0xb2')](getSelectList(_0x4dcc74,_0x5b378e,_0x10b568,_0x491359[_0x2673('0xab')],_0x33efee[_0x2673('0xab')],_0x3e229a));}}});return Promise[_0x2673('0xb3')](_0x5ee9c8);})[_0x2673('0x29')](function(_0x46826a){_0x222ca3=_0x46826a[0x0];var _0x2fe26a=[];var _0x29176d=[];_0x539955['forEach'](function(_0x310f68){if(!_[_0x2673('0xb4')](_0x310f68[_0x2673('0xb0')])){var _0x271d50=_0x310f68[_0x2673('0xb0')][_0x2673('0xb5')](_0x310f68[_0x2673('0xb0')][_0x2673('0x9f')]('.')+0x1);if(_0x271d50===_0x2673('0xb6')){_0x2fe26a[_0x2673('0xb2')](getBooleanList(_0x4dcc74,_0x5b378e,_0x29176d,_0x491359[_0x2673('0xab')],_0x310f68['MetadataId'],_0x3e229a));}}});return Promise[_0x2673('0xb3')](_0x2fe26a);})['then'](function(_0x200b0d){_0x58eb0e=_0x200b0d[0x0];var _0x58c3a8=[];var _0x198f84=[];_0x539955[_0x2673('0xaf')](function(_0x69ab8c){if(_0x69ab8c[_0x2673('0xb0')]){var _0xe57523=_0x69ab8c[_0x2673('0xb0')][_0x2673('0xb5')](_0x69ab8c[_0x2673('0xb0')]['lastIndexOf']('.')+0x1);if(_0xe57523==='StringAttributeMetadata'||_0xe57523===_0x2673('0xb7')||_0xe57523===_0x2673('0xb8')||_0xe57523==='IntegerAttributeMetadata'||_0xe57523===_0x2673('0xb9')||_0xe57523===_0x2673('0xba')||_0xe57523==='StatusAttributeMetadata'||_0xe57523===_0x2673('0xbb')||_0xe57523===_0x2673('0xbc')||_0xe57523==='DecimalAttributeMetadata'){_0x58c3a8[_0x2673('0xb2')](getInputList(_0x4dcc74,_0x5b378e,_0xe57523,_0x198f84,_0x491359[_0x2673('0xab')],_0x69ab8c[_0x2673('0xab')],_0x3e229a));}}});return Promise[_0x2673('0xb3')](_0x58c3a8);})[_0x2673('0x29')](function(_0x17a245){_0x30e4b9=_0x17a245[0x0];var _0x512690=_0x222ca3[_0x2673('0x98')](_0x58eb0e)['concat'](_0x30e4b9);var _0x4f28bd={'count':_0x512690[_0x2673('0x50')],'rows':_0x512690};return _0x4f28bd;})[_0x2673('0x29')](respondWithResult(_0x5c762a,null))[_0x2673('0x47')](function(_0x15800a){var _0xc2fda4=_0x5a92ea[_0x2673('0x33')][_0x2673('0xbd')]?0x1f4:_0x15800a[_0x2673('0xbe')]||0x1f4;logger['error'](_0x15800a[_0x2673('0xbf')]);delete _0x15800a[_0x2673('0x2c')];if(_0xc2fda4===0x191){_0xc2fda4=0x190;}_0x5c762a[_0x2673('0x1d')](_0xc2fda4)['send'](_0x5a92ea[_0x2673('0x33')][_0x2673('0xbd')]?{'message':_0x2673('0xc0'),'statusCode':_0x15800a[_0x2673('0xbe')]}:_0x15800a);});};function getSelectList(_0x46f19a,_0x5ef417,_0x25d892,_0xd37916,_0x5df888,_0x38d36b){var _0x51196b={'method':_0x2673('0xa6'),'uri':_0x46f19a+_0x2673('0xac')+_0xd37916+')/Attributes('+_0x5df888+')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?'+_0x2673('0xc1'),'headers':{'Authorization':_0x2673('0xa8')+_0x38d36b,'If-None-Match':null,'OData-Version':_0x2673('0xa9')},'json':!![]};return rp(_0x51196b)[_0x2673('0x29')](function(_0x2ae2b3){var _0x487eac=[];var _0x4d55d7=_0x2ae2b3[_0x2673('0xc2')][_0x2673('0xc3')];_0x4d55d7[_0x2673('0xaf')](function(_0x4061f8){_0x487eac[_0x2673('0xb2')]({'name':_0x4061f8[_0x2673('0xc4')]['UserLocalizedLabel']['Label'],'value':String(_0x4061f8[_0x2673('0xc5')])});});var _0x52cd59={'id':_0x5ef417+'_'+_0x2ae2b3[_0x2673('0xc6')],'name':_0x2ae2b3['DisplayName'][_0x2673('0xc7')][_0x2673('0xc4')],'custom':![],'options':_0x487eac};_0x25d892['push'](_0x52cd59);return _0x25d892;});}function getBooleanList(_0x14d571,_0x354b5e,_0x3860eb,_0xe7a7c2,_0x2105e4,_0x5c7523){var _0x3ab897={'method':_0x2673('0xa6'),'uri':_0x14d571+_0x2673('0xac')+_0xe7a7c2+_0x2673('0xc8')+_0x2105e4+_0x2673('0xc9'),'headers':{'Authorization':'Bearer\x20'+_0x5c7523,'If-None-Match':null,'OData-Version':_0x2673('0xa9')},'json':!![]};return rp(_0x3ab897)['then'](function(_0x157bc2){var _0x27fb4b=[];_0x27fb4b[_0x2673('0xb2')]({'name':_0x157bc2[_0x2673('0xc2')][_0x2673('0xca')]['Label'][_0x2673('0xc7')][_0x2673('0xc4')],'value':_0x2673('0xcb')},{'name':_0x157bc2[_0x2673('0xc2')][_0x2673('0xcc')][_0x2673('0xc4')][_0x2673('0xc7')][_0x2673('0xc4')],'value':'false'});var _0x22b9da={'id':_0x354b5e+'_'+_0x157bc2[_0x2673('0xc6')],'name':_0x157bc2[_0x2673('0xcd')][_0x2673('0xc7')][_0x2673('0xc4')],'custom':![],'options':_0x27fb4b};_0x3860eb[_0x2673('0xb2')](_0x22b9da);return _0x3860eb;});}function getInputList(_0x1ee5af,_0x12dae2,_0x1a103f,_0x4ed014,_0x142d16,_0x4406eb,_0x3cb037){var _0x1730dc={'method':_0x2673('0xa6'),'uri':_0x1ee5af+_0x2673('0xac')+_0x142d16+_0x2673('0xc8')+_0x4406eb+_0x2673('0xce')+_0x1a103f+'?$select=DisplayName,LogicalName','headers':{'Authorization':'Bearer\x20'+_0x3cb037,'If-None-Match':null,'OData-Version':_0x2673('0xa9')},'json':!![]};return rp(_0x1730dc)['then'](function(_0x247f78){var _0x1c13a6={'id':_0x12dae2+'_'+_0x247f78[_0x2673('0xc6')],'name':_0x247f78[_0x2673('0xcd')][_0x2673('0xc7')]?_0x247f78['DisplayName'][_0x2673('0xc7')][_0x2673('0xc4')]:_0x247f78[_0x2673('0xc6')],'custom':![],'options':[]};_0x4ed014[_0x2673('0xb2')](_0x1c13a6);return _0x4ed014;});}