Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / api / intDynamics365Configuration / intDynamics365Configuration.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 _0x05c2=['status','end','json','count','offset','limit','set','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','index','rawAttributes','model','keys','intersection','attributes','fields','query','length','nolimit','order','sort','where','filters','pick','merge','map','type','key','VIRTUAL','field','Dynamics365Configuration','includeAll','include','findAll','show','options','find','create','body','params','getFields','Dynamics365Field','filter','hasOwnProperty','getSubjects','findOne','getDescriptions','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../mysqldb','test','info','request\x20sent','debug','Dynamics365Configuration,\x20%s,\x20%s,\x20%s','stringify','error','code','Dynamics365Configuration,\x20%s,\x20%s','message','result','catch'];(function(_0x81dcac,_0x8ff7db){var _0xc7803b=function(_0x499b29){while(--_0x499b29){_0x81dcac['push'](_0x81dcac['shift']());}};_0xc7803b(++_0x8ff7db);}(_0x05c2,0x94));var _0x205c=function(_0x3052e6,_0x3c8c3c){_0x3052e6=_0x3052e6-0x0;var _0x591322=_0x05c2[_0x3052e6];return _0x591322;};'use strict';var pdf=require(_0x205c('0x0'));var emlformat=require(_0x205c('0x1'));var rimraf=require(_0x205c('0x2'));var zipdir=require(_0x205c('0x3'));var jsonpatch=require(_0x205c('0x4'));var rp=require(_0x205c('0x5'));var moment=require(_0x205c('0x6'));var BPromise=require(_0x205c('0x7'));var Mustache=require(_0x205c('0x8'));var util=require(_0x205c('0x9'));var path=require(_0x205c('0xa'));var sox=require('sox');var csv=require(_0x205c('0xb'));var ejs=require(_0x205c('0xc'));var fs=require('fs');var _=require(_0x205c('0xd'));var squel=require(_0x205c('0xe'));var crypto=require(_0x205c('0xf'));var jsforce=require(_0x205c('0x10'));var deskjs=require(_0x205c('0x11'));var toCsv=require('to-csv');var querystring=require(_0x205c('0x12'));var Papa=require('papaparse');var Redis=require(_0x205c('0x13'));var authService=require(_0x205c('0x14'));var qs=require(_0x205c('0x15'));var hardwareService=require(_0x205c('0x16'));var logger=require('../../config/logger')(_0x205c('0x17'));var utils=require(_0x205c('0x18'));var config=require('../../config/environment');var db=require(_0x205c('0x19'))['db'];var jayson=require('jayson/promise');var client=jayson['client']['http']({'port':0x232a});function checkPasswordPattern(_0x39627d,_0x1b3b62,_0x3dd4f7){if(_0x3dd4f7){var _0x2b9e73=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x2b9e73[_0x205c('0x1a')](_0x1b3b62)){return _0x39627d;}else{throw new Error('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 _0x39627d;}}function respondWithRpcPromise(_0x3c0173,_0x419cad,_0x524202,_0x15042c){return new BPromise(function(_0xfd7ce7,_0x3fb43e){var _0x51ce8b=_0x15042c||client;return _0x51ce8b['request'](_0x3c0173,_0x524202)['then'](function(_0x59a735){logger[_0x205c('0x1b')]('Dynamics365Configuration,\x20%s,\x20%s',_0x419cad,_0x205c('0x1c'));logger[_0x205c('0x1d')](_0x205c('0x1e'),_0x419cad,'request\x20sent',JSON[_0x205c('0x1f')](_0x59a735));if(_0x59a735[_0x205c('0x20')]){if(_0x59a735['error'][_0x205c('0x21')]===0x1f4){logger[_0x205c('0x20')](_0x205c('0x22'),_0x419cad,_0x59a735[_0x205c('0x20')][_0x205c('0x23')]);return _0x3fb43e(_0x59a735[_0x205c('0x20')][_0x205c('0x23')]);}logger['error']('Dynamics365Configuration,\x20%s,\x20%s',_0x419cad,_0x59a735[_0x205c('0x20')][_0x205c('0x23')]);return _0xfd7ce7(_0x59a735['error'][_0x205c('0x23')]);}else{logger[_0x205c('0x1b')]('Dynamics365Configuration,\x20%s,\x20%s',_0x419cad,_0x205c('0x1c'));_0xfd7ce7(_0x59a735[_0x205c('0x24')][_0x205c('0x23')]);}})[_0x205c('0x25')](function(_0x4f3f82){logger[_0x205c('0x20')](_0x205c('0x22'),_0x419cad,_0x4f3f82);_0x3fb43e(_0x4f3f82);});});}function respondWithStatusCode(_0x433162,_0x553230){_0x553230=_0x553230||0xcc;return function(_0x4f836c){if(_0x4f836c){return _0x433162['sendStatus'](_0x553230);}return _0x433162[_0x205c('0x26')](_0x553230)[_0x205c('0x27')]();};}function respondWithResult(_0x3433b6,_0x1d3c73){_0x1d3c73=_0x1d3c73||0xc8;return function(_0x36c43f){if(_0x36c43f){return _0x3433b6[_0x205c('0x26')](_0x1d3c73)[_0x205c('0x28')](_0x36c43f);}};}function respondWithFilteredResult(_0xfa1fd2,_0x497cd2){return function(_0x4c3128){if(_0x4c3128){var _0x5b3596=_0x4c3128[_0x205c('0x29')],_0x51a27d=_0x497cd2[_0x205c('0x2a')],_0x22f327=_0x497cd2[_0x205c('0x2a')]+_0x497cd2[_0x205c('0x2b')],_0x1072fb;if(_0x22f327>=_0x5b3596){_0x22f327=_0x5b3596;_0x1072fb=0xc8;}else{_0x1072fb=0xce;}_0xfa1fd2[_0x205c('0x26')](_0x1072fb);return _0xfa1fd2[_0x205c('0x2c')]('Content-Range',_0x51a27d+'-'+_0x22f327+'/'+_0x5b3596)[_0x205c('0x28')](_0x4c3128);}return null;};}function patchUpdates(_0x1c1701){return function(_0x396eed){try{jsonpatch[_0x205c('0x2d')](_0x396eed,_0x1c1701,!![]);}catch(_0x27c87d){return BPromise[_0x205c('0x2e')](_0x27c87d);}return _0x396eed[_0x205c('0x2f')]();};}function saveUpdates(_0x4b130a,_0x72f4c3){return function(_0x5dbd1f){if(_0x5dbd1f){return _0x5dbd1f[_0x205c('0x30')](_0x4b130a)[_0x205c('0x31')](function(_0x565c12){return _0x565c12;});}return null;};}function removeEntity(_0x2c5b0d,_0x217f39){return function(_0x3832eb){if(_0x3832eb){return _0x3832eb[_0x205c('0x32')]()[_0x205c('0x31')](function(){_0x2c5b0d[_0x205c('0x26')](0xcc)[_0x205c('0x27')]();});}};}function handleEntityNotFound(_0x5a1354,_0x44b3ac){return function(_0x825aea){if(!_0x825aea){_0x5a1354[_0x205c('0x33')](0x194);}return _0x825aea;};}function handleError(_0x1e4e93,_0x204abb){_0x204abb=_0x204abb||0x1f4;return function(_0x5c516b){logger[_0x205c('0x20')](_0x5c516b[_0x205c('0x34')]);if(_0x5c516b['name']){delete _0x5c516b[_0x205c('0x35')];}_0x1e4e93[_0x205c('0x26')](_0x204abb)[_0x205c('0x36')](_0x5c516b);};}exports[_0x205c('0x37')]=function(_0x453052,_0x278f87){var _0x2e296a={},_0x1d3f6b={},_0x2085b6={'count':0x0,'rows':[]};var _0x9612fd=db['Dynamics365Configuration'][_0x205c('0x38')];_0x1d3f6b[_0x205c('0x39')]=_[_0x205c('0x3a')](_0x9612fd);_0x1d3f6b['query']=_[_0x205c('0x3a')](_0x453052['query']);_0x1d3f6b['filters']=_[_0x205c('0x3b')](_0x1d3f6b[_0x205c('0x39')],_0x1d3f6b['query']);_0x2e296a[_0x205c('0x3c')]=_['intersection'](_0x1d3f6b['model'],qs[_0x205c('0x3d')](_0x453052[_0x205c('0x3e')][_0x205c('0x3d')]));_0x2e296a[_0x205c('0x3c')]=_0x2e296a['attributes'][_0x205c('0x3f')]?_0x2e296a[_0x205c('0x3c')]:_0x1d3f6b[_0x205c('0x39')];if(!_0x453052[_0x205c('0x3e')]['hasOwnProperty'](_0x205c('0x40'))){_0x2e296a['limit']=qs[_0x205c('0x2b')](_0x453052[_0x205c('0x3e')][_0x205c('0x2b')]);_0x2e296a['offset']=qs[_0x205c('0x2a')](_0x453052[_0x205c('0x3e')]['offset']);}_0x2e296a[_0x205c('0x41')]=qs['sort'](_0x453052[_0x205c('0x3e')][_0x205c('0x42')]);_0x2e296a[_0x205c('0x43')]=qs[_0x205c('0x44')](_[_0x205c('0x45')](_0x453052[_0x205c('0x3e')],_0x1d3f6b[_0x205c('0x44')]));if(_0x453052[_0x205c('0x3e')]['filter']){_0x2e296a[_0x205c('0x43')]=_[_0x205c('0x46')](_0x2e296a[_0x205c('0x43')],{'$or':_[_0x205c('0x47')](_0x9612fd,function(_0x328fc4){if(_0x328fc4[_0x205c('0x48')][_0x205c('0x49')]!==_0x205c('0x4a')){var _0x38900d={};_0x38900d[_0x328fc4[_0x205c('0x4b')]]={'$like':'%'+_0x453052['query']['filter']+'%'};return _0x38900d;}})});}_0x2e296a=_[_0x205c('0x46')]({},_0x2e296a,_0x453052['options']);var _0x11e7ef={'where':_0x2e296a['where']};return db[_0x205c('0x4c')][_0x205c('0x29')](_0x11e7ef)[_0x205c('0x31')](function(_0x3bda5f){_0x2085b6[_0x205c('0x29')]=_0x3bda5f;if(_0x453052[_0x205c('0x3e')][_0x205c('0x4d')]){_0x2e296a[_0x205c('0x4e')]=[{'all':!![]}];}return db[_0x205c('0x4c')][_0x205c('0x4f')](_0x2e296a);})['then'](function(_0x5818ac){_0x2085b6['rows']=_0x5818ac;return _0x2085b6;})[_0x205c('0x31')](respondWithFilteredResult(_0x278f87,_0x2e296a))['catch'](handleError(_0x278f87,null));};exports[_0x205c('0x50')]=function(_0x3609d,_0x3abd29){var _0x489c38={'raw':![],'where':{'id':_0x3609d['params']['id']}},_0x47ea34={};_0x47ea34[_0x205c('0x39')]=_[_0x205c('0x3a')](db[_0x205c('0x4c')]['rawAttributes']);_0x47ea34[_0x205c('0x3e')]=_[_0x205c('0x3a')](_0x3609d['query']);_0x47ea34[_0x205c('0x44')]=_[_0x205c('0x3b')](_0x47ea34['model'],_0x47ea34[_0x205c('0x3e')]);_0x489c38['attributes']=_[_0x205c('0x3b')](_0x47ea34['model'],qs[_0x205c('0x3d')](_0x3609d[_0x205c('0x3e')][_0x205c('0x3d')]));_0x489c38['attributes']=_0x489c38[_0x205c('0x3c')][_0x205c('0x3f')]?_0x489c38[_0x205c('0x3c')]:_0x47ea34[_0x205c('0x39')];if(_0x3609d['query'][_0x205c('0x4d')]){_0x489c38[_0x205c('0x4e')]=[{'all':!![]}];}_0x489c38=_[_0x205c('0x46')]({},_0x489c38,_0x3609d[_0x205c('0x51')]);return db['Dynamics365Configuration'][_0x205c('0x52')](_0x489c38)['then'](handleEntityNotFound(_0x3abd29,null))[_0x205c('0x31')](respondWithResult(_0x3abd29,null))[_0x205c('0x25')](handleError(_0x3abd29,null));};exports[_0x205c('0x53')]=function(_0x2b61b3,_0x2de873){return db[_0x205c('0x4c')][_0x205c('0x53')](_0x2b61b3[_0x205c('0x54')],{})[_0x205c('0x31')](respondWithResult(_0x2de873,0xc9))[_0x205c('0x25')](handleError(_0x2de873,null));};exports[_0x205c('0x30')]=function(_0x5b8173,_0x36bbe3){if(_0x5b8173[_0x205c('0x54')]['id']){delete _0x5b8173[_0x205c('0x54')]['id'];}return db[_0x205c('0x4c')][_0x205c('0x52')]({'where':{'id':_0x5b8173['params']['id']}})[_0x205c('0x31')](handleEntityNotFound(_0x36bbe3,null))['then'](saveUpdates(_0x5b8173[_0x205c('0x54')],null))[_0x205c('0x31')](respondWithResult(_0x36bbe3,null))[_0x205c('0x25')](handleError(_0x36bbe3,null));};exports[_0x205c('0x32')]=function(_0x21997f,_0x6cc6a1){return db[_0x205c('0x4c')]['find']({'where':{'id':_0x21997f[_0x205c('0x55')]['id']}})['then'](handleEntityNotFound(_0x6cc6a1,null))[_0x205c('0x31')](removeEntity(_0x6cc6a1,null))[_0x205c('0x25')](handleError(_0x6cc6a1,null));};exports[_0x205c('0x56')]=function(_0x27853f,_0x1f2893,_0x2b18fe){var _0x9139d1={};var _0x15abb4={};var _0x165fa2;var _0x1f85d7;return db['Dynamics365Configuration']['findOne']({'where':{'id':_0x27853f['params']['id']}})[_0x205c('0x31')](handleEntityNotFound(_0x1f2893,null))[_0x205c('0x31')](function(_0x5015fc){if(_0x5015fc){_0x165fa2=_0x5015fc;_0x15abb4[_0x205c('0x39')]=_[_0x205c('0x3a')](db[_0x205c('0x57')][_0x205c('0x38')]);_0x15abb4[_0x205c('0x3e')]=_[_0x205c('0x3a')](_0x27853f[_0x205c('0x3e')]);_0x15abb4[_0x205c('0x44')]=_[_0x205c('0x3b')](_0x15abb4[_0x205c('0x39')],_0x15abb4['query']);_0x9139d1['attributes']=_[_0x205c('0x3b')](_0x15abb4[_0x205c('0x39')],qs[_0x205c('0x3d')](_0x27853f[_0x205c('0x3e')]['fields']));_0x9139d1[_0x205c('0x3c')]=_0x9139d1[_0x205c('0x3c')][_0x205c('0x3f')]?_0x9139d1[_0x205c('0x3c')]:_0x15abb4[_0x205c('0x39')];_0x9139d1[_0x205c('0x41')]=qs['sort'](_0x27853f[_0x205c('0x3e')][_0x205c('0x42')]);_0x9139d1[_0x205c('0x43')]=qs['filters'](_['pick'](_0x27853f[_0x205c('0x3e')],_0x15abb4[_0x205c('0x44')]));if(_0x27853f['query'][_0x205c('0x58')]){_0x9139d1[_0x205c('0x43')]=_['merge'](_0x9139d1[_0x205c('0x43')],{'$or':_[_0x205c('0x47')](_0x9139d1[_0x205c('0x3c')],function(_0x23a308){var _0x272dd0={};_0x272dd0[_0x23a308]={'$like':'%'+_0x27853f['query'][_0x205c('0x58')]+'%'};return _0x272dd0;})});}_0x9139d1=_['merge']({},_0x9139d1,_0x27853f[_0x205c('0x51')]);return _0x165fa2[_0x205c('0x56')](_0x9139d1);}})[_0x205c('0x31')](function(_0x10ceb6){if(_0x10ceb6){_0x1f85d7=_0x10ceb6[_0x205c('0x3f')];if(!_0x27853f['query'][_0x205c('0x59')](_0x205c('0x40'))){_0x9139d1[_0x205c('0x2b')]=qs[_0x205c('0x2b')](_0x27853f[_0x205c('0x3e')][_0x205c('0x2b')]);_0x9139d1['offset']=qs[_0x205c('0x2a')](_0x27853f[_0x205c('0x3e')]['offset']);}return _0x165fa2[_0x205c('0x56')](_0x9139d1);}})['then'](function(_0xc9aeac){if(_0xc9aeac){return _0xc9aeac?{'count':_0x1f85d7,'rows':_0xc9aeac}:null;}})['then'](respondWithResult(_0x1f2893,null))[_0x205c('0x25')](handleError(_0x1f2893,null));};exports[_0x205c('0x5a')]=function(_0x5ad4cc,_0x40dd42,_0x1c3a5c){var _0x421f58={};var _0x1c9fd4={};var _0x897884;var _0x4aacbc;return db['Dynamics365Configuration'][_0x205c('0x5b')]({'where':{'id':_0x5ad4cc[_0x205c('0x55')]['id']}})[_0x205c('0x31')](handleEntityNotFound(_0x40dd42,null))[_0x205c('0x31')](function(_0xf58397){if(_0xf58397){_0x897884=_0xf58397;_0x1c9fd4['model']=_[_0x205c('0x3a')](db[_0x205c('0x57')][_0x205c('0x38')]);_0x1c9fd4[_0x205c('0x3e')]=_['keys'](_0x5ad4cc['query']);_0x1c9fd4['filters']=_[_0x205c('0x3b')](_0x1c9fd4['model'],_0x1c9fd4[_0x205c('0x3e')]);_0x421f58[_0x205c('0x3c')]=_['intersection'](_0x1c9fd4['model'],qs[_0x205c('0x3d')](_0x5ad4cc[_0x205c('0x3e')][_0x205c('0x3d')]));_0x421f58[_0x205c('0x3c')]=_0x421f58['attributes']['length']?_0x421f58['attributes']:_0x1c9fd4[_0x205c('0x39')];_0x421f58[_0x205c('0x41')]=qs[_0x205c('0x42')](_0x5ad4cc[_0x205c('0x3e')][_0x205c('0x42')]);_0x421f58[_0x205c('0x43')]=qs[_0x205c('0x44')](_[_0x205c('0x45')](_0x5ad4cc['query'],_0x1c9fd4['filters']));if(_0x5ad4cc['query'][_0x205c('0x58')]){_0x421f58[_0x205c('0x43')]=_[_0x205c('0x46')](_0x421f58[_0x205c('0x43')],{'$or':_[_0x205c('0x47')](_0x421f58['attributes'],function(_0x223fee){var _0x5b7e9a={};_0x5b7e9a[_0x223fee]={'$like':'%'+_0x5ad4cc[_0x205c('0x3e')][_0x205c('0x58')]+'%'};return _0x5b7e9a;})});}_0x421f58=_[_0x205c('0x46')]({},_0x421f58,_0x5ad4cc[_0x205c('0x51')]);return _0x897884[_0x205c('0x5a')](_0x421f58);}})['then'](function(_0x5e48fe){if(_0x5e48fe){_0x4aacbc=_0x5e48fe[_0x205c('0x3f')];if(!_0x5ad4cc['query'][_0x205c('0x59')](_0x205c('0x40'))){_0x421f58[_0x205c('0x2b')]=qs[_0x205c('0x2b')](_0x5ad4cc[_0x205c('0x3e')][_0x205c('0x2b')]);_0x421f58[_0x205c('0x2a')]=qs[_0x205c('0x2a')](_0x5ad4cc['query'][_0x205c('0x2a')]);}return _0x897884['getSubjects'](_0x421f58);}})[_0x205c('0x31')](function(_0x4a2229){if(_0x4a2229){return _0x4a2229?{'count':_0x4aacbc,'rows':_0x4a2229}:null;}})[_0x205c('0x31')](respondWithResult(_0x40dd42,null))['catch'](handleError(_0x40dd42,null));};exports[_0x205c('0x5c')]=function(_0x3b19b1,_0x165ccc,_0x17f370){var _0x478ebe={};var _0x2941f5={};var _0x516927;var _0x4acac3;return db[_0x205c('0x4c')]['findOne']({'where':{'id':_0x3b19b1[_0x205c('0x55')]['id']}})[_0x205c('0x31')](handleEntityNotFound(_0x165ccc,null))[_0x205c('0x31')](function(_0x1f068e){if(_0x1f068e){_0x516927=_0x1f068e;_0x2941f5['model']=_[_0x205c('0x3a')](db[_0x205c('0x57')][_0x205c('0x38')]);_0x2941f5[_0x205c('0x3e')]=_['keys'](_0x3b19b1[_0x205c('0x3e')]);_0x2941f5[_0x205c('0x44')]=_[_0x205c('0x3b')](_0x2941f5[_0x205c('0x39')],_0x2941f5['query']);_0x478ebe[_0x205c('0x3c')]=_['intersection'](_0x2941f5[_0x205c('0x39')],qs[_0x205c('0x3d')](_0x3b19b1['query']['fields']));_0x478ebe[_0x205c('0x3c')]=_0x478ebe[_0x205c('0x3c')][_0x205c('0x3f')]?_0x478ebe[_0x205c('0x3c')]:_0x2941f5['model'];_0x478ebe[_0x205c('0x41')]=qs[_0x205c('0x42')](_0x3b19b1[_0x205c('0x3e')]['sort']);_0x478ebe[_0x205c('0x43')]=qs[_0x205c('0x44')](_[_0x205c('0x45')](_0x3b19b1['query'],_0x2941f5['filters']));if(_0x3b19b1[_0x205c('0x3e')][_0x205c('0x58')]){_0x478ebe['where']=_['merge'](_0x478ebe[_0x205c('0x43')],{'$or':_[_0x205c('0x47')](_0x478ebe[_0x205c('0x3c')],function(_0xaff82d){var _0x1c14f8={};_0x1c14f8[_0xaff82d]={'$like':'%'+_0x3b19b1[_0x205c('0x3e')][_0x205c('0x58')]+'%'};return _0x1c14f8;})});}_0x478ebe=_[_0x205c('0x46')]({},_0x478ebe,_0x3b19b1['options']);return _0x516927[_0x205c('0x5c')](_0x478ebe);}})[_0x205c('0x31')](function(_0x20b901){if(_0x20b901){_0x4acac3=_0x20b901[_0x205c('0x3f')];if(!_0x3b19b1[_0x205c('0x3e')]['hasOwnProperty'](_0x205c('0x40'))){_0x478ebe[_0x205c('0x2b')]=qs[_0x205c('0x2b')](_0x3b19b1['query'][_0x205c('0x2b')]);_0x478ebe[_0x205c('0x2a')]=qs[_0x205c('0x2a')](_0x3b19b1[_0x205c('0x3e')][_0x205c('0x2a')]);}return _0x516927[_0x205c('0x5c')](_0x478ebe);}})['then'](function(_0x1e38e9){if(_0x1e38e9){return _0x1e38e9?{'count':_0x4acac3,'rows':_0x1e38e9}:null;}})['then'](respondWithResult(_0x165ccc,null))[_0x205c('0x25')](handleError(_0x165ccc,null));};