Built motion from commit (unavailable).|2.4.19
[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 _0x174b=['sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../components/integrations/configuration','jayson/promise','client','http','test','Sequelize','ValidationError','info','request\x20sent','debug','stringify','error','code','Dynamics365Account,\x20%s,\x20%s','message','catch','sendStatus','status','end','count','offset','set','Content-Range','json','apply','save','then','destroy','stack','name','send','index','map','Dynamics365Account','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','limit','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','findAll','show','params','include','find','create','update','body','getConfigurations','findOne','Dynamics365Configuration','length','hasOwnProperty','nolimit','addConfiguration','AccountId','Subjects','Descriptions','getDescriptions','channel','Dynamics365Field','getFields','incident','Incident','customerid','ownerid','caseorigincode','phonenumber','directioncode','phonecall_activity_parties','accountidname','accountidyominame','actualserviceunits','billedserviceunits','contactidname','contactidyominame','createdbyname','createdon','createdonbehalfbyyominame','customeridname','customeridtype','customeridyominame','emailaddress','entitlementidname','entityimage_timestamp','entityimage_url','escalatedon','firstresponsebykpiidname','followupby','influencescore','lastonholdtime','masteridname','modifiedbyexternalpartyname','modifiedbyexternalpartyyominame','modifiedbyname','modifiedon','modifiedonbehalfbyname','modifiedonbehalfbyyominame','msdyn_incidenttypename','msdyn_iotalertname','numberofchildincidents','overriddencreatedon','owneridname','owneridtype','owneridyominame','primarycontactidname','primarycontactidyominame','prioritycodename','productidname','productserialnumber','resolvebykpiidname','responsiblecontactidname','responsiblecontactidyominame','sentimentvalue','slainvokedidname','statecode','statuscode','subjectidname','ticketnumber','timezoneruleversionnumber','transactioncurrencyidname','traversedpath','versionnumber','concat','username','password','clientId','remoteUri','substring','lastIndexOf','%s/api/data/v9.0/','POST','https://login.microsoftonline.com/','tenantId','/oauth2/token','GET','Bearer\x20','4.0','MetadataId','EntityDefinitions(',')?$select=LogicalName&$expand=Attributes($select=LogicalName)','Attributes','remove','includes','LogicalName','@odata.type','PicklistAttributeMetadata','push','all','isNil','BooleanAttributeMetadata','forEach','StringAttributeMetadata','BigIntAttributeMetadata','IntegerAttributeMetadata','MemoAttributeMetadata','DateTimeAttributeMetadata','StatusAttributeMetadata','StateAttributeMetadata',')/Attributes(',')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?','OptionSet','Options','Label','Value','DisplayName','UserLocalizedLabel',')/Microsoft.Dynamics.CRM.BooleanAttributeMetadata?$select=DisplayName,LogicalName&$expand=OptionSet($select=FalseOption,\x20TrueOption)','TrueOption','true','FalseOption','false',')/Microsoft.Dynamics.CRM.','html-pdf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache'];(function(_0x432682,_0x253044){var _0x463d05=function(_0xa73403){while(--_0xa73403){_0x432682['push'](_0x432682['shift']());}};_0x463d05(++_0x253044);}(_0x174b,0x19d));var _0xb174=function(_0x12ad34,_0xa57253){_0x12ad34=_0x12ad34-0x0;var _0x7e78aa=_0x174b[_0x12ad34];return _0x7e78aa;};'use strict';var pdf=require(_0xb174('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xb174('0x1'));var jsonpatch=require(_0xb174('0x2'));var rp=require(_0xb174('0x3'));var moment=require(_0xb174('0x4'));var BPromise=require(_0xb174('0x5'));var Mustache=require(_0xb174('0x6'));var util=require('util');var path=require('path');var sox=require(_0xb174('0x7'));var csv=require(_0xb174('0x8'));var ejs=require(_0xb174('0x9'));var fs=require('fs');var _=require(_0xb174('0xa'));var squel=require(_0xb174('0xb'));var crypto=require(_0xb174('0xc'));var jsforce=require(_0xb174('0xd'));var deskjs=require(_0xb174('0xe'));var toCsv=require(_0xb174('0x8'));var querystring=require(_0xb174('0xf'));var Papa=require('papaparse');var Redis=require(_0xb174('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xb174('0x11'));var as=require(_0xb174('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xb174('0x13'))('api');var utils=require(_0xb174('0x14'));var config=require(_0xb174('0x15'));var db=require('../../mysqldb')['db'];var integrations=require(_0xb174('0x16'));var jayson=require(_0xb174('0x17'));var client=jayson[_0xb174('0x18')][_0xb174('0x19')]({'port':0x232a});function checkPasswordPattern(_0x533741,_0x2c7f82,_0x4f0080){if(_0x4f0080){var _0x30c02d=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x30c02d[_0xb174('0x1a')](_0x2c7f82)){return _0x533741;}else{throw new db[(_0xb174('0x1b'))][(_0xb174('0x1c'))]('The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.');}}else{return _0x533741;}}function respondWithRpcPromise(_0x3a9636,_0x2cc2cc,_0x30f414,_0x3e6388){return new BPromise(function(_0x12c2c5,_0x2cb9a8){var _0x5d31ac=_0x3e6388||client;return _0x5d31ac['request'](_0x3a9636,_0x30f414)['then'](function(_0x59091d){logger[_0xb174('0x1d')]('Dynamics365Account,\x20%s,\x20%s',_0x2cc2cc,_0xb174('0x1e'));logger[_0xb174('0x1f')]('Dynamics365Account,\x20%s,\x20%s,\x20%s',_0x2cc2cc,_0xb174('0x1e'),JSON[_0xb174('0x20')](_0x59091d));if(_0x59091d[_0xb174('0x21')]){if(_0x59091d[_0xb174('0x21')][_0xb174('0x22')]===0x1f4){logger[_0xb174('0x21')](_0xb174('0x23'),_0x2cc2cc,_0x59091d['error'][_0xb174('0x24')]);return _0x2cb9a8(_0x59091d[_0xb174('0x21')]['message']);}logger['error']('Dynamics365Account,\x20%s,\x20%s',_0x2cc2cc,_0x59091d[_0xb174('0x21')][_0xb174('0x24')]);return _0x12c2c5(_0x59091d[_0xb174('0x21')]['message']);}else{logger[_0xb174('0x1d')](_0xb174('0x23'),_0x2cc2cc,_0xb174('0x1e'));_0x12c2c5(_0x59091d['result'][_0xb174('0x24')]);}})[_0xb174('0x25')](function(_0x3b5abf){logger[_0xb174('0x21')](_0xb174('0x23'),_0x2cc2cc,_0x3b5abf);_0x2cb9a8(_0x3b5abf);});});}function respondWithStatusCode(_0x4c045b,_0x1f6a70){_0x1f6a70=_0x1f6a70||0xcc;return function(_0x57bae5){if(_0x57bae5){return _0x4c045b[_0xb174('0x26')](_0x1f6a70);}return _0x4c045b[_0xb174('0x27')](_0x1f6a70)[_0xb174('0x28')]();};}function respondWithResult(_0x534d4c,_0x59a348){_0x59a348=_0x59a348||0xc8;return function(_0x294890){if(_0x294890){return _0x534d4c[_0xb174('0x27')](_0x59a348)['json'](_0x294890);}};}function respondWithFilteredResult(_0x55312a,_0x17d31a){return function(_0x549fcf){if(_0x549fcf){var _0x291d6c=_0x549fcf[_0xb174('0x29')],_0x3dfdea=_0x17d31a[_0xb174('0x2a')],_0x2a0f77=_0x17d31a[_0xb174('0x2a')]+_0x17d31a['limit'],_0x2e9f7a;if(_0x2a0f77>=_0x291d6c){_0x2a0f77=_0x291d6c;_0x2e9f7a=0xc8;}else{_0x2e9f7a=0xce;}_0x55312a['status'](_0x2e9f7a);return _0x55312a[_0xb174('0x2b')](_0xb174('0x2c'),_0x3dfdea+'-'+_0x2a0f77+'/'+_0x291d6c)[_0xb174('0x2d')](_0x549fcf);}return null;};}function patchUpdates(_0xda026e){return function(_0x8828b0){try{jsonpatch[_0xb174('0x2e')](_0x8828b0,_0xda026e,!![]);}catch(_0x424652){return BPromise['reject'](_0x424652);}return _0x8828b0[_0xb174('0x2f')]();};}function saveUpdates(_0x3af043,_0x3e1659){return function(_0x362c5c){if(_0x362c5c){return _0x362c5c['update'](_0x3af043)[_0xb174('0x30')](function(_0x39ba53){return _0x39ba53;});}return null;};}function removeEntity(_0x3608e1,_0x4562d3){return function(_0xb23c6e){if(_0xb23c6e){return _0xb23c6e[_0xb174('0x31')]()[_0xb174('0x30')](function(){_0x3608e1[_0xb174('0x27')](0xcc)[_0xb174('0x28')]();});}};}function handleEntityNotFound(_0x325d6a,_0x45b1dd){return function(_0x92c170){if(!_0x92c170){_0x325d6a[_0xb174('0x26')](0x194);}return _0x92c170;};}function handleError(_0x390745,_0x3f3c30){_0x3f3c30=_0x3f3c30||0x1f4;return function(_0x361f7a){logger['error'](_0x361f7a[_0xb174('0x32')]);if(_0x361f7a[_0xb174('0x33')]){delete _0x361f7a['name'];}_0x390745[_0xb174('0x27')](_0x3f3c30)[_0xb174('0x34')](_0x361f7a);};}exports[_0xb174('0x35')]=function(_0x316375,_0x37a435){var _0x4ec40e={},_0x213ff5={},_0x469f72={'count':0x0,'rows':[]};var _0x2857a5=_[_0xb174('0x36')](db[_0xb174('0x37')][_0xb174('0x38')],function(_0x57b823){return{'name':_0x57b823[_0xb174('0x39')],'type':_0x57b823[_0xb174('0x3a')][_0xb174('0x3b')]};});_0x213ff5['model']=_[_0xb174('0x36')](_0x2857a5,_0xb174('0x33'));_0x213ff5[_0xb174('0x3c')]=_[_0xb174('0x3d')](_0x316375[_0xb174('0x3c')]);_0x213ff5[_0xb174('0x3e')]=_[_0xb174('0x3f')](_0x213ff5[_0xb174('0x40')],_0x213ff5[_0xb174('0x3c')]);_0x4ec40e[_0xb174('0x41')]=_['intersection'](_0x213ff5[_0xb174('0x40')],qs[_0xb174('0x42')](_0x316375[_0xb174('0x3c')][_0xb174('0x42')]));_0x4ec40e[_0xb174('0x41')]=_0x4ec40e[_0xb174('0x41')]['length']?_0x4ec40e['attributes']:_0x213ff5[_0xb174('0x40')];if(!_0x316375[_0xb174('0x3c')]['hasOwnProperty']('nolimit')){_0x4ec40e[_0xb174('0x43')]=qs[_0xb174('0x43')](_0x316375['query'][_0xb174('0x43')]);_0x4ec40e[_0xb174('0x2a')]=qs[_0xb174('0x2a')](_0x316375[_0xb174('0x3c')]['offset']);}_0x4ec40e[_0xb174('0x44')]=qs[_0xb174('0x45')](_0x316375['query'][_0xb174('0x45')]);_0x4ec40e[_0xb174('0x46')]=qs['filters'](_[_0xb174('0x47')](_0x316375['query'],_0x213ff5[_0xb174('0x3e')]));if(_0x316375[_0xb174('0x3c')][_0xb174('0x48')]){_0x4ec40e[_0xb174('0x46')]=_['merge'](_0x4ec40e[_0xb174('0x46')],{'$or':_['map'](_0x2857a5,function(_0x3e5efb){if(_0x3e5efb[_0xb174('0x3a')]!==_0xb174('0x49')){var _0x323070={};_0x323070[_0x3e5efb[_0xb174('0x33')]]={'$like':'%'+_0x316375[_0xb174('0x3c')]['filter']+'%'};return _0x323070;}})});}_0x4ec40e=_[_0xb174('0x4a')]({},_0x4ec40e,_0x316375[_0xb174('0x4b')]);var _0x3a8d39={'where':_0x4ec40e[_0xb174('0x46')]};return db[_0xb174('0x37')][_0xb174('0x29')](_0x3a8d39)[_0xb174('0x30')](function(_0x580587){_0x469f72[_0xb174('0x29')]=_0x580587;if(_0x316375[_0xb174('0x3c')][_0xb174('0x4c')]){_0x4ec40e['include']=[{'all':!![]}];}return db['Dynamics365Account'][_0xb174('0x4d')](_0x4ec40e);})['then'](function(_0x2b0018){_0x469f72['rows']=_0x2b0018;return _0x469f72;})['then'](respondWithFilteredResult(_0x37a435,_0x4ec40e))['catch'](handleError(_0x37a435,null));};exports[_0xb174('0x4e')]=function(_0x87a856,_0x1a6a2d){var _0x56c799={'raw':![],'where':{'id':_0x87a856[_0xb174('0x4f')]['id']}},_0x1e3f4f={};_0x1e3f4f[_0xb174('0x40')]=_[_0xb174('0x3d')](db[_0xb174('0x37')]['rawAttributes']);_0x1e3f4f[_0xb174('0x3c')]=_[_0xb174('0x3d')](_0x87a856[_0xb174('0x3c')]);_0x1e3f4f['filters']=_[_0xb174('0x3f')](_0x1e3f4f[_0xb174('0x40')],_0x1e3f4f['query']);_0x56c799[_0xb174('0x41')]=_['intersection'](_0x1e3f4f[_0xb174('0x40')],qs[_0xb174('0x42')](_0x87a856[_0xb174('0x3c')]['fields']));_0x56c799['attributes']=_0x56c799['attributes']['length']?_0x56c799[_0xb174('0x41')]:_0x1e3f4f['model'];if(_0x87a856['query'][_0xb174('0x4c')]){_0x56c799[_0xb174('0x50')]=[{'all':!![]}];}_0x56c799=_['merge']({},_0x56c799,_0x87a856[_0xb174('0x4b')]);return db['Dynamics365Account'][_0xb174('0x51')](_0x56c799)[_0xb174('0x30')](handleEntityNotFound(_0x1a6a2d,null))[_0xb174('0x30')](respondWithResult(_0x1a6a2d,null))[_0xb174('0x25')](handleError(_0x1a6a2d,null));};exports[_0xb174('0x52')]=function(_0x3db005,_0x494749){return db[_0xb174('0x37')][_0xb174('0x52')](_0x3db005['body'],{})[_0xb174('0x30')](respondWithResult(_0x494749,0xc9))[_0xb174('0x25')](handleError(_0x494749,null));};exports[_0xb174('0x53')]=function(_0x243c34,_0xecf2a){if(_0x243c34[_0xb174('0x54')]['id']){delete _0x243c34['body']['id'];}return db['Dynamics365Account']['find']({'where':{'id':_0x243c34[_0xb174('0x4f')]['id']}})[_0xb174('0x30')](handleEntityNotFound(_0xecf2a,null))[_0xb174('0x30')](saveUpdates(_0x243c34[_0xb174('0x54')],null))[_0xb174('0x30')](respondWithResult(_0xecf2a,null))[_0xb174('0x25')](handleError(_0xecf2a,null));};exports['destroy']=function(_0x147c2a,_0x3afff4){return db['Dynamics365Account'][_0xb174('0x51')]({'where':{'id':_0x147c2a[_0xb174('0x4f')]['id']}})['then'](handleEntityNotFound(_0x3afff4,null))[_0xb174('0x30')](removeEntity(_0x3afff4,null))['catch'](handleError(_0x3afff4,null));};exports[_0xb174('0x55')]=function(_0x2e6021,_0x3c2ea1,_0x5275f8){var _0x55db31={};var _0x5b90bb={};var _0x49dd2c;var _0x1b74cf;return db[_0xb174('0x37')][_0xb174('0x56')]({'where':{'id':_0x2e6021[_0xb174('0x4f')]['id']}})['then'](handleEntityNotFound(_0x3c2ea1,null))[_0xb174('0x30')](function(_0x366848){if(_0x366848){_0x49dd2c=_0x366848;_0x5b90bb[_0xb174('0x40')]=_['keys'](db[_0xb174('0x57')]['rawAttributes']);_0x5b90bb[_0xb174('0x3c')]=_[_0xb174('0x3d')](_0x2e6021[_0xb174('0x3c')]);_0x5b90bb[_0xb174('0x3e')]=_[_0xb174('0x3f')](_0x5b90bb[_0xb174('0x40')],_0x5b90bb[_0xb174('0x3c')]);_0x55db31[_0xb174('0x41')]=_['intersection'](_0x5b90bb[_0xb174('0x40')],qs['fields'](_0x2e6021['query']['fields']));_0x55db31[_0xb174('0x41')]=_0x55db31[_0xb174('0x41')][_0xb174('0x58')]?_0x55db31['attributes']:_0x5b90bb[_0xb174('0x40')];_0x55db31[_0xb174('0x44')]=qs[_0xb174('0x45')](_0x2e6021[_0xb174('0x3c')]['sort']);_0x55db31[_0xb174('0x46')]=qs[_0xb174('0x3e')](_[_0xb174('0x47')](_0x2e6021['query'],_0x5b90bb[_0xb174('0x3e')]));if(_0x2e6021['query'][_0xb174('0x48')]){_0x55db31['where']=_[_0xb174('0x4a')](_0x55db31['where'],{'$or':_['map'](_0x55db31[_0xb174('0x41')],function(_0xa8bb92){var _0x20a179={};_0x20a179[_0xa8bb92]={'$like':'%'+_0x2e6021[_0xb174('0x3c')][_0xb174('0x48')]+'%'};return _0x20a179;})});}_0x55db31=_[_0xb174('0x4a')]({},_0x55db31,_0x2e6021['options']);return _0x49dd2c['getConfigurations'](_0x55db31);}})[_0xb174('0x30')](function(_0x55cf69){if(_0x55cf69){_0x1b74cf=_0x55cf69[_0xb174('0x58')];if(!_0x2e6021[_0xb174('0x3c')][_0xb174('0x59')](_0xb174('0x5a'))){_0x55db31[_0xb174('0x43')]=qs[_0xb174('0x43')](_0x2e6021['query'][_0xb174('0x43')]);_0x55db31['offset']=qs[_0xb174('0x2a')](_0x2e6021[_0xb174('0x3c')][_0xb174('0x2a')]);}return _0x49dd2c[_0xb174('0x55')](_0x55db31);}})['then'](function(_0x1a1808){if(_0x1a1808){return _0x1a1808?{'count':_0x1b74cf,'rows':_0x1a1808}:null;}})[_0xb174('0x30')](respondWithResult(_0x3c2ea1,null))['catch'](handleError(_0x3c2ea1,null));};exports[_0xb174('0x5b')]=function(_0x1c6e73,_0x21dc75,_0x21f5bf){if(_0x1c6e73[_0xb174('0x54')]['id']){delete _0x1c6e73[_0xb174('0x54')]['id'];}return db[_0xb174('0x37')][_0xb174('0x56')]({'where':{'id':_0x1c6e73[_0xb174('0x4f')]['id']}})[_0xb174('0x30')](handleEntityNotFound(_0x21dc75,null))['then'](function(_0x41a5b5){if(_0x41a5b5){_0x1c6e73[_0xb174('0x54')][_0xb174('0x5c')]=_0x41a5b5['id'];_0x1c6e73[_0xb174('0x54')][_0xb174('0x5d')]=integrations['getSubjects'](_0x1c6e73['body']['channel'],_0x1c6e73[_0xb174('0x54')][_0xb174('0x3a')]);_0x1c6e73[_0xb174('0x54')][_0xb174('0x5e')]=integrations[_0xb174('0x5f')](_0x1c6e73['body'][_0xb174('0x60')],_0x1c6e73[_0xb174('0x54')]['type']);return db[_0xb174('0x57')][_0xb174('0x52')](_0x1c6e73[_0xb174('0x54')],{'include':[{'model':db[_0xb174('0x61')],'as':_0xb174('0x5d')},{'model':db[_0xb174('0x61')],'as':_0xb174('0x5e')}]});}return null;})['then'](respondWithResult(_0x21dc75,null))[_0xb174('0x25')](handleError(_0x21dc75,null));};exports[_0xb174('0x62')]=function(_0x1ccfe1,_0x544849,_0x3a05b1){var _0x4e704c=_0x1ccfe1[_0xb174('0x3c')]['ticketType'];var _0x178901=_0x4e704c===_0xb174('0x63')?_0xb174('0x64'):'PhoneCall';var _0x14f185='';var _0x4f12e0='';var _0x593eb6='';var _0x5e155d='';var _0x4e0264='';var _0x1822f5='';var _0x143278='';var _0x109f3e='';var _0x38ba66=['title','description',_0xb174('0x65'),_0xb174('0x66'),_0xb174('0x67'),'subject',_0xb174('0x68'),'regardingobjectid',_0xb174('0x69'),_0xb174('0x6a')];var _0x376761=[_0xb174('0x6b'),_0xb174('0x6c'),_0xb174('0x6d'),_0xb174('0x6e'),_0xb174('0x6f'),_0xb174('0x70'),'contractdetailidname','contractidname','createdbyexternalpartyname','createdbyexternalpartyyominame',_0xb174('0x71'),'createdbyyominame',_0xb174('0x72'),'createdonbehalfbyname',_0xb174('0x73'),_0xb174('0x74'),_0xb174('0x75'),_0xb174('0x76'),_0xb174('0x77'),_0xb174('0x78'),_0xb174('0x79'),_0xb174('0x7a'),_0xb174('0x7b'),'exchangerate',_0xb174('0x7c'),_0xb174('0x7d'),'importsequencenumber',_0xb174('0x7e'),'kbarticleidname',_0xb174('0x7f'),_0xb174('0x80'),_0xb174('0x81'),_0xb174('0x82'),_0xb174('0x83'),'modifiedbyyominame',_0xb174('0x84'),_0xb174('0x85'),_0xb174('0x86'),_0xb174('0x87'),_0xb174('0x88'),_0xb174('0x89'),'onholdtime',_0xb174('0x8a'),_0xb174('0x8b'),_0xb174('0x8c'),_0xb174('0x8d'),'parentcaseidname',_0xb174('0x8e'),_0xb174('0x8f'),_0xb174('0x90'),_0xb174('0x91'),_0xb174('0x92'),'resolveby',_0xb174('0x93'),'responseby',_0xb174('0x94'),_0xb174('0x95'),_0xb174('0x96'),_0xb174('0x97'),'slaname','socialprofileidname',_0xb174('0x98'),_0xb174('0x99'),_0xb174('0x9a'),_0xb174('0x9b'),_0xb174('0x9c'),_0xb174('0x9d'),_0xb174('0x9e'),'utcconversiontimezonecode',_0xb174('0x9f')];var _0x4c68ef=_0x38ba66[_0xb174('0xa0')](_0x376761);return db[_0xb174('0x37')]['findOne']({'where':{'id':_0x1ccfe1[_0xb174('0x4f')]['id']},'attributes':['id',_0xb174('0xa1'),_0xb174('0xa2'),'remoteUri','tenantId',_0xb174('0xa3'),'clientSecret']})['then'](handleEntityNotFound(_0x544849,null))[_0xb174('0x30')](function(_0x503fcd){if(_0x503fcd){_0x109f3e=_0x503fcd[_0xb174('0xa4')];var _0x5d94a1=_0x109f3e['slice'](-0x1);if(_0x5d94a1==='/'){_0x109f3e=_0x109f3e[_0xb174('0xa5')](0x0,_0x109f3e[_0xb174('0xa6')](_0x5d94a1));}_0x143278=util['format'](_0xb174('0xa7'),_0x109f3e);var _0x1b655f={'method':_0xb174('0xa8'),'uri':_0xb174('0xa9')+_0x503fcd[_0xb174('0xaa')]+_0xb174('0xab'),'form':{'client_id':_0x503fcd[_0xb174('0xa3')],'resource':_0x109f3e,'username':_0x503fcd[_0xb174('0xa1')],'password':_0x503fcd['password'],'grant_type':_0xb174('0xa2'),'client_secret':_0x503fcd['clientSecret']},'json':!![]};return rp(_0x1b655f);}})[_0xb174('0x30')](function(_0x21d49b){_0x1822f5=_0x21d49b['access_token'];var _0x10681={'method':_0xb174('0xac'),'uri':encodeURI(_0x143278+'EntityDefinitions?$select=DisplayName,EntitySetName&$filter=SchemaName\x20eq\x20\x27'+_0x178901+'\x27'),'headers':{'Authorization':_0xb174('0xad')+_0x1822f5,'If-None-Match':null,'OData-Version':_0xb174('0xae')},'json':!![]};return rp(_0x10681);})[_0xb174('0x30')](function(_0x29b192){var _0x1d863c=_0x29b192['value'][0x0];var _0x3b3160=_0x1d863c[_0xb174('0xaf')];var _0xeadfce={'method':'GET','uri':_0x143278+_0xb174('0xb0')+_0x3b3160+_0xb174('0xb1'),'headers':{'Authorization':_0xb174('0xad')+_0x1822f5,'If-None-Match':null,'OData-Version':_0xb174('0xae')},'json':!![]};return rp(_0xeadfce);})['then'](function(_0x3aec81){_0x14f185=_0x3aec81;_0x4f12e0=_0x14f185[_0xb174('0xb2')];_0x4f12e0=_[_0xb174('0xb3')](_0x4f12e0,function(_0x352d93){return!_0x4c68ef[_0xb174('0xb4')](_0x352d93[_0xb174('0xb5')]);});var _0x24f428=[];var _0xbfcf62=[];_0x4f12e0['forEach'](function(_0x53af64){if(_0x53af64[_0xb174('0xb6')]){var _0x112afb=_0x53af64['@odata.type']['substring'](_0x53af64[_0xb174('0xb6')][_0xb174('0xa6')]('.')+0x1);if(_0x112afb===_0xb174('0xb7')){_0x24f428[_0xb174('0xb8')](getSelectList(_0x143278,_0x4e704c,_0xbfcf62,_0x14f185['MetadataId'],_0x53af64[_0xb174('0xaf')],_0x1822f5));}}});return Promise[_0xb174('0xb9')](_0x24f428);})['then'](function(_0x2142e4){_0x593eb6=_0x2142e4[0x0];var _0x3ec78d=[];var _0x2dc8f3=[];_0x4f12e0['forEach'](function(_0x584426){if(!_[_0xb174('0xba')](_0x584426['@odata.type'])){var _0x388e2a=_0x584426[_0xb174('0xb6')][_0xb174('0xa5')](_0x584426[_0xb174('0xb6')][_0xb174('0xa6')]('.')+0x1);if(_0x388e2a===_0xb174('0xbb')){_0x3ec78d[_0xb174('0xb8')](getBooleanList(_0x143278,_0x4e704c,_0x2dc8f3,_0x14f185[_0xb174('0xaf')],_0x584426[_0xb174('0xaf')],_0x1822f5));}}});return Promise[_0xb174('0xb9')](_0x3ec78d);})[_0xb174('0x30')](function(_0x1dbd62){_0x5e155d=_0x1dbd62[0x0];var _0x4734e1=[];var _0x46beee=[];_0x4f12e0[_0xb174('0xbc')](function(_0x4ec9ad){if(_0x4ec9ad[_0xb174('0xb6')]){var _0x3dd4b2=_0x4ec9ad[_0xb174('0xb6')][_0xb174('0xa5')](_0x4ec9ad['@odata.type'][_0xb174('0xa6')]('.')+0x1);if(_0x3dd4b2===_0xb174('0xbd')||_0x3dd4b2==='DoubleAttributeMetadata'||_0x3dd4b2===_0xb174('0xbe')||_0x3dd4b2===_0xb174('0xbf')||_0x3dd4b2===_0xb174('0xc0')||_0x3dd4b2===_0xb174('0xc1')||_0x3dd4b2===_0xb174('0xc2')||_0x3dd4b2==='EntityNameAttributeMetadata'||_0x3dd4b2===_0xb174('0xc3')||_0x3dd4b2==='DecimalAttributeMetadata'){_0x4734e1[_0xb174('0xb8')](getInputList(_0x143278,_0x4e704c,_0x3dd4b2,_0x46beee,_0x14f185[_0xb174('0xaf')],_0x4ec9ad[_0xb174('0xaf')],_0x1822f5));}}});return Promise[_0xb174('0xb9')](_0x4734e1);})[_0xb174('0x30')](function(_0x1ed788){_0x4e0264=_0x1ed788[0x0];var _0x221965=_0x593eb6['concat'](_0x5e155d)[_0xb174('0xa0')](_0x4e0264);var _0x41c03d={'count':_0x221965[_0xb174('0x58')],'rows':_0x221965};return _0x41c03d;})[_0xb174('0x30')](respondWithResult(_0x544849,null))['catch'](function(_0xde5a16){var _0x59cb48=_0x1ccfe1['query'][_0xb174('0x1a')]?0x1f4:_0xde5a16['statusCode']||0x1f4;logger[_0xb174('0x21')](_0xde5a16[_0xb174('0x32')]);delete _0xde5a16['name'];if(_0x59cb48===0x191){_0x59cb48=0x190;}_0x544849[_0xb174('0x27')](_0x59cb48)[_0xb174('0x34')](_0x1ccfe1[_0xb174('0x3c')][_0xb174('0x1a')]?{'message':'Wrong\x20credentials','statusCode':_0xde5a16['statusCode']}:_0xde5a16);});};function getSelectList(_0x50910b,_0x2c6ad2,_0x1b2b8b,_0x2dc8f4,_0x34af5c,_0x18e9df){var _0x33cc0d={'method':_0xb174('0xac'),'uri':_0x50910b+'EntityDefinitions('+_0x2dc8f4+_0xb174('0xc4')+_0x34af5c+_0xb174('0xc5')+'$select=DisplayName,LogicalName&$expand=OptionSet($select=Options)','headers':{'Authorization':'Bearer\x20'+_0x18e9df,'If-None-Match':null,'OData-Version':_0xb174('0xae')},'json':!![]};return rp(_0x33cc0d)[_0xb174('0x30')](function(_0x8f14b0){var _0x2441ee=[];var _0x47ff33=_0x8f14b0[_0xb174('0xc6')][_0xb174('0xc7')];_0x47ff33[_0xb174('0xbc')](function(_0x47e791){_0x2441ee[_0xb174('0xb8')]({'name':_0x47e791['Label']['UserLocalizedLabel'][_0xb174('0xc8')],'value':String(_0x47e791[_0xb174('0xc9')])});});var _0x19a3eb={'id':_0x2c6ad2+'_'+_0x8f14b0[_0xb174('0xb5')],'name':_0x8f14b0[_0xb174('0xca')][_0xb174('0xcb')][_0xb174('0xc8')],'custom':![],'options':_0x2441ee};_0x1b2b8b[_0xb174('0xb8')](_0x19a3eb);return _0x1b2b8b;});}function getBooleanList(_0x59baa9,_0xc6ac5e,_0x4fa4f7,_0x389ad6,_0xb8f3b8,_0x33fc23){var _0x389b2e={'method':_0xb174('0xac'),'uri':_0x59baa9+_0xb174('0xb0')+_0x389ad6+')/Attributes('+_0xb8f3b8+_0xb174('0xcc'),'headers':{'Authorization':_0xb174('0xad')+_0x33fc23,'If-None-Match':null,'OData-Version':_0xb174('0xae')},'json':!![]};return rp(_0x389b2e)[_0xb174('0x30')](function(_0x19bd93){var _0x6aa53c=[];_0x6aa53c['push']({'name':_0x19bd93[_0xb174('0xc6')][_0xb174('0xcd')][_0xb174('0xc8')]['UserLocalizedLabel'][_0xb174('0xc8')],'value':_0xb174('0xce')},{'name':_0x19bd93[_0xb174('0xc6')][_0xb174('0xcf')][_0xb174('0xc8')][_0xb174('0xcb')][_0xb174('0xc8')],'value':_0xb174('0xd0')});var _0x2685de={'id':_0xc6ac5e+'_'+_0x19bd93[_0xb174('0xb5')],'name':_0x19bd93[_0xb174('0xca')]['UserLocalizedLabel'][_0xb174('0xc8')],'custom':![],'options':_0x6aa53c};_0x4fa4f7[_0xb174('0xb8')](_0x2685de);return _0x4fa4f7;});}function getInputList(_0x2a2eeb,_0x47fcd6,_0x304472,_0x2fd678,_0x237743,_0x4f9ab1,_0x13055f){var _0x11ebe0={'method':_0xb174('0xac'),'uri':_0x2a2eeb+_0xb174('0xb0')+_0x237743+_0xb174('0xc4')+_0x4f9ab1+_0xb174('0xd1')+_0x304472+'?$select=DisplayName,LogicalName','headers':{'Authorization':'Bearer\x20'+_0x13055f,'If-None-Match':null,'OData-Version':_0xb174('0xae')},'json':!![]};return rp(_0x11ebe0)[_0xb174('0x30')](function(_0x278371){var _0x24c86f={'id':_0x47fcd6+'_'+_0x278371[_0xb174('0xb5')],'name':_0x278371[_0xb174('0xca')][_0xb174('0xcb')]?_0x278371[_0xb174('0xca')]['UserLocalizedLabel']['Label']:_0x278371[_0xb174('0xb5')],'custom':![],'options':[]};_0x2fd678[_0xb174('0xb8')](_0x24c86f);return _0x2fd678;});}