Built motion from commit (unavailable).|2.5.10
[motion2.git] / server / api / intSalesforceConfiguration / intSalesforceConfiguration.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 _0x51e7=['includeAll','include','merge','create','body','getFields','findOne','SalesforceField','hasOwnProperty','getSubjects','getDescriptions','html-pdf','eml-format','rimraf','zip-dir','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../mysqldb','client','http','request','info','SalesforceConfiguration,\x20%s,\x20%s','SalesforceConfiguration,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','result','catch','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','name','send','index','map','rawAttributes','type','key','query','keys','intersection','model','attributes','fields','length','nolimit','order','sort','where','pick','filters','filter','options','SalesforceConfiguration','rows','show','params'];(function(_0x19950b,_0x53d0d7){var _0x3c6b41=function(_0x3924ad){while(--_0x3924ad){_0x19950b['push'](_0x19950b['shift']());}};_0x3c6b41(++_0x53d0d7);}(_0x51e7,0x15f));var _0x751e=function(_0x55db9f,_0x2b0e8d){_0x55db9f=_0x55db9f-0x0;var _0x4a2cfd=_0x51e7[_0x55db9f];return _0x4a2cfd;};'use strict';var pdf=require(_0x751e('0x0'));var emlformat=require(_0x751e('0x1'));var rimraf=require(_0x751e('0x2'));var zipdir=require(_0x751e('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x751e('0x4'));var BPromise=require(_0x751e('0x5'));var Mustache=require(_0x751e('0x6'));var util=require(_0x751e('0x7'));var path=require('path');var sox=require(_0x751e('0x8'));var csv=require(_0x751e('0x9'));var ejs=require(_0x751e('0xa'));var fs=require('fs');var _=require(_0x751e('0xb'));var squel=require(_0x751e('0xc'));var crypto=require('crypto');var jsforce=require(_0x751e('0xd'));var deskjs=require(_0x751e('0xe'));var toCsv=require(_0x751e('0x9'));var querystring=require('querystring');var Papa=require(_0x751e('0xf'));var Redis=require('ioredis');var authService=require(_0x751e('0x10'));var qs=require(_0x751e('0x11'));var as=require(_0x751e('0x12'));var hardwareService=require(_0x751e('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x751e('0x14'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x751e('0x15'))['db'];var jayson=require('jayson/promise');var client=jayson[_0x751e('0x16')][_0x751e('0x17')]({'port':0x232a});function respondWithRpcPromise(_0x3e8e9f,_0x1af5cf,_0x4dae94,_0x1ba274){return new BPromise(function(_0x2178ab,_0xb3e4ed){var _0x374538=_0x1ba274||client;return _0x374538[_0x751e('0x18')](_0x3e8e9f,_0x4dae94)['then'](function(_0x38751e){logger[_0x751e('0x19')](_0x751e('0x1a'),_0x1af5cf,'request\x20sent');logger['debug'](_0x751e('0x1b'),_0x1af5cf,_0x751e('0x1c'),JSON[_0x751e('0x1d')](_0x38751e));if(_0x38751e[_0x751e('0x1e')]){if(_0x38751e[_0x751e('0x1e')]['code']===0x1f4){logger[_0x751e('0x1e')]('SalesforceConfiguration,\x20%s,\x20%s',_0x1af5cf,_0x38751e[_0x751e('0x1e')][_0x751e('0x1f')]);return _0xb3e4ed(_0x38751e['error']['message']);}logger[_0x751e('0x1e')]('SalesforceConfiguration,\x20%s,\x20%s',_0x1af5cf,_0x38751e[_0x751e('0x1e')][_0x751e('0x1f')]);return _0x2178ab(_0x38751e[_0x751e('0x1e')]['message']);}else{logger[_0x751e('0x19')](_0x751e('0x1a'),_0x1af5cf,_0x751e('0x1c'));_0x2178ab(_0x38751e[_0x751e('0x20')][_0x751e('0x1f')]);}})[_0x751e('0x21')](function(_0x414787){logger[_0x751e('0x1e')](_0x751e('0x1a'),_0x1af5cf,_0x414787);_0xb3e4ed(_0x414787);});});}function respondWithStatusCode(_0x4f2937,_0x885aaa){_0x885aaa=_0x885aaa||0xcc;return function(_0x16aaff){if(_0x16aaff){return _0x4f2937[_0x751e('0x22')](_0x885aaa);}return _0x4f2937[_0x751e('0x23')](_0x885aaa)[_0x751e('0x24')]();};}function respondWithResult(_0x42249c,_0x11a292){_0x11a292=_0x11a292||0xc8;return function(_0x4f9e29){if(_0x4f9e29){return _0x42249c[_0x751e('0x23')](_0x11a292)[_0x751e('0x25')](_0x4f9e29);}};}function respondWithFilteredResult(_0x13412a,_0x8520c7){return function(_0x1f1ef0){if(_0x1f1ef0){var _0x381c3c=_0x1f1ef0[_0x751e('0x26')],_0x273f5a=_0x8520c7[_0x751e('0x27')],_0x5d0ddc=_0x8520c7[_0x751e('0x27')]+_0x8520c7[_0x751e('0x28')],_0xe7edc0;if(_0x5d0ddc>=_0x381c3c){_0x5d0ddc=_0x381c3c;_0xe7edc0=0xc8;}else{_0xe7edc0=0xce;}_0x13412a['status'](_0xe7edc0);return _0x13412a['set'](_0x751e('0x29'),_0x273f5a+'-'+_0x5d0ddc+'/'+_0x381c3c)[_0x751e('0x25')](_0x1f1ef0);}return null;};}function patchUpdates(_0x23cd15){return function(_0x6159d6){try{jsonpatch[_0x751e('0x2a')](_0x6159d6,_0x23cd15,!![]);}catch(_0x4e50c2){return BPromise[_0x751e('0x2b')](_0x4e50c2);}return _0x6159d6[_0x751e('0x2c')]();};}function saveUpdates(_0x189f8d,_0xbc0296){return function(_0x4ff035){if(_0x4ff035){return _0x4ff035[_0x751e('0x2d')](_0x189f8d)[_0x751e('0x2e')](function(_0x5ca602){return _0x5ca602;});}return null;};}function removeEntity(_0xff72c5,_0x12b89b){return function(_0x513558){if(_0x513558){return _0x513558[_0x751e('0x2f')]()[_0x751e('0x2e')](function(){_0xff72c5['status'](0xcc)[_0x751e('0x24')]();});}};}function handleEntityNotFound(_0x30dfd8,_0x18e5c5){return function(_0x251f49){if(!_0x251f49){_0x30dfd8[_0x751e('0x22')](0x194);}return _0x251f49;};}function handleError(_0x19dfbb,_0xd9dd64){_0xd9dd64=_0xd9dd64||0x1f4;return function(_0x1f882e){logger[_0x751e('0x1e')](_0x1f882e['stack']);if(_0x1f882e[_0x751e('0x30')]){delete _0x1f882e[_0x751e('0x30')];}_0x19dfbb[_0x751e('0x23')](_0xd9dd64)[_0x751e('0x31')](_0x1f882e);};}exports[_0x751e('0x32')]=function(_0x27e925,_0xce816e){var _0x49932d={},_0x34e83e={},_0x451bcb={'count':0x0,'rows':[]};var _0x35df30=_[_0x751e('0x33')](db['SalesforceConfiguration'][_0x751e('0x34')],function(_0x1616c3){return{'name':_0x1616c3['fieldName'],'type':_0x1616c3[_0x751e('0x35')][_0x751e('0x36')]};});_0x34e83e['model']=_[_0x751e('0x33')](_0x35df30,'name');_0x34e83e[_0x751e('0x37')]=_[_0x751e('0x38')](_0x27e925[_0x751e('0x37')]);_0x34e83e['filters']=_[_0x751e('0x39')](_0x34e83e[_0x751e('0x3a')],_0x34e83e[_0x751e('0x37')]);_0x49932d[_0x751e('0x3b')]=_[_0x751e('0x39')](_0x34e83e[_0x751e('0x3a')],qs[_0x751e('0x3c')](_0x27e925[_0x751e('0x37')][_0x751e('0x3c')]));_0x49932d[_0x751e('0x3b')]=_0x49932d[_0x751e('0x3b')][_0x751e('0x3d')]?_0x49932d[_0x751e('0x3b')]:_0x34e83e[_0x751e('0x3a')];if(!_0x27e925[_0x751e('0x37')]['hasOwnProperty'](_0x751e('0x3e'))){_0x49932d[_0x751e('0x28')]=qs['limit'](_0x27e925[_0x751e('0x37')][_0x751e('0x28')]);_0x49932d[_0x751e('0x27')]=qs[_0x751e('0x27')](_0x27e925[_0x751e('0x37')][_0x751e('0x27')]);}_0x49932d[_0x751e('0x3f')]=qs[_0x751e('0x40')](_0x27e925['query']['sort']);_0x49932d[_0x751e('0x41')]=qs['filters'](_[_0x751e('0x42')](_0x27e925['query'],_0x34e83e[_0x751e('0x43')]),_0x35df30);if(_0x27e925[_0x751e('0x37')]['filter']){_0x49932d['where']=_['merge'](_0x49932d[_0x751e('0x41')],{'$or':_[_0x751e('0x33')](_0x35df30,function(_0x4e79e6){if(_0x4e79e6[_0x751e('0x35')]!=='VIRTUAL'){var _0x5b43df={};_0x5b43df[_0x4e79e6[_0x751e('0x30')]]={'$like':'%'+_0x27e925[_0x751e('0x37')][_0x751e('0x44')]+'%'};return _0x5b43df;}})});}_0x49932d=_['merge']({},_0x49932d,_0x27e925[_0x751e('0x45')]);var _0x4d26d2={'where':_0x49932d[_0x751e('0x41')]};return db[_0x751e('0x46')][_0x751e('0x26')](_0x4d26d2)['then'](function(_0x46a6a5){_0x451bcb[_0x751e('0x26')]=_0x46a6a5;if(_0x27e925['query']['includeAll']){_0x49932d['include']=[{'all':!![]}];}return db[_0x751e('0x46')]['findAll'](_0x49932d);})[_0x751e('0x2e')](function(_0x1abe28){_0x451bcb[_0x751e('0x47')]=_0x1abe28;return _0x451bcb;})[_0x751e('0x2e')](respondWithFilteredResult(_0xce816e,_0x49932d))[_0x751e('0x21')](handleError(_0xce816e,null));};exports[_0x751e('0x48')]=function(_0x505f3a,_0x13cf49){var _0xd41a93={'raw':![],'where':{'id':_0x505f3a[_0x751e('0x49')]['id']}},_0x110fd4={};_0x110fd4[_0x751e('0x3a')]=_[_0x751e('0x38')](db[_0x751e('0x46')][_0x751e('0x34')]);_0x110fd4[_0x751e('0x37')]=_[_0x751e('0x38')](_0x505f3a[_0x751e('0x37')]);_0x110fd4['filters']=_['intersection'](_0x110fd4[_0x751e('0x3a')],_0x110fd4[_0x751e('0x37')]);_0xd41a93['attributes']=_[_0x751e('0x39')](_0x110fd4['model'],qs[_0x751e('0x3c')](_0x505f3a['query'][_0x751e('0x3c')]));_0xd41a93['attributes']=_0xd41a93['attributes'][_0x751e('0x3d')]?_0xd41a93[_0x751e('0x3b')]:_0x110fd4[_0x751e('0x3a')];if(_0x505f3a[_0x751e('0x37')][_0x751e('0x4a')]){_0xd41a93[_0x751e('0x4b')]=[{'all':!![]}];}_0xd41a93=_[_0x751e('0x4c')]({},_0xd41a93,_0x505f3a[_0x751e('0x45')]);return db[_0x751e('0x46')]['find'](_0xd41a93)[_0x751e('0x2e')](handleEntityNotFound(_0x13cf49,null))[_0x751e('0x2e')](respondWithResult(_0x13cf49,null))['catch'](handleError(_0x13cf49,null));};exports[_0x751e('0x4d')]=function(_0x4319c3,_0x279b91){return db[_0x751e('0x46')]['create'](_0x4319c3[_0x751e('0x4e')],{})[_0x751e('0x2e')](respondWithResult(_0x279b91,0xc9))['catch'](handleError(_0x279b91,null));};exports[_0x751e('0x2d')]=function(_0x1eb388,_0x1cedc3){if(_0x1eb388[_0x751e('0x4e')]['id']){delete _0x1eb388[_0x751e('0x4e')]['id'];}return db[_0x751e('0x46')]['find']({'where':{'id':_0x1eb388[_0x751e('0x49')]['id']}})[_0x751e('0x2e')](handleEntityNotFound(_0x1cedc3,null))[_0x751e('0x2e')](saveUpdates(_0x1eb388[_0x751e('0x4e')],null))[_0x751e('0x2e')](respondWithResult(_0x1cedc3,null))['catch'](handleError(_0x1cedc3,null));};exports[_0x751e('0x2f')]=function(_0x17b459,_0x4b7cee){return db[_0x751e('0x46')]['find']({'where':{'id':_0x17b459[_0x751e('0x49')]['id']}})['then'](handleEntityNotFound(_0x4b7cee,null))[_0x751e('0x2e')](removeEntity(_0x4b7cee,null))[_0x751e('0x21')](handleError(_0x4b7cee,null));};exports[_0x751e('0x4f')]=function(_0x235d6c,_0x21a1e8,_0x303e26){var _0x1e9f9a={};var _0x34e148={};var _0x3c639d;var _0xaba9b0;return db[_0x751e('0x46')][_0x751e('0x50')]({'where':{'id':_0x235d6c[_0x751e('0x49')]['id']}})[_0x751e('0x2e')](handleEntityNotFound(_0x21a1e8,null))[_0x751e('0x2e')](function(_0x1b82c6){if(_0x1b82c6){_0x3c639d=_0x1b82c6;_0x34e148[_0x751e('0x3a')]=_[_0x751e('0x38')](db[_0x751e('0x51')][_0x751e('0x34')]);_0x34e148[_0x751e('0x37')]=_['keys'](_0x235d6c[_0x751e('0x37')]);_0x34e148['filters']=_[_0x751e('0x39')](_0x34e148[_0x751e('0x3a')],_0x34e148['query']);_0x1e9f9a['attributes']=_[_0x751e('0x39')](_0x34e148[_0x751e('0x3a')],qs[_0x751e('0x3c')](_0x235d6c['query'][_0x751e('0x3c')]));_0x1e9f9a[_0x751e('0x3b')]=_0x1e9f9a['attributes'][_0x751e('0x3d')]?_0x1e9f9a[_0x751e('0x3b')]:_0x34e148[_0x751e('0x3a')];_0x1e9f9a[_0x751e('0x3f')]=qs['sort'](_0x235d6c['query'][_0x751e('0x40')]);_0x1e9f9a['where']=qs[_0x751e('0x43')](_[_0x751e('0x42')](_0x235d6c[_0x751e('0x37')],_0x34e148[_0x751e('0x43')]));if(_0x235d6c[_0x751e('0x37')]['filter']){_0x1e9f9a[_0x751e('0x41')]=_[_0x751e('0x4c')](_0x1e9f9a[_0x751e('0x41')],{'$or':_[_0x751e('0x33')](_0x1e9f9a[_0x751e('0x3b')],function(_0x1d0d01){var _0x47457e={};_0x47457e[_0x1d0d01]={'$like':'%'+_0x235d6c['query'][_0x751e('0x44')]+'%'};return _0x47457e;})});}_0x1e9f9a=_[_0x751e('0x4c')]({},_0x1e9f9a,_0x235d6c[_0x751e('0x45')]);return _0x3c639d[_0x751e('0x4f')](_0x1e9f9a);}})[_0x751e('0x2e')](function(_0x50fa2e){if(_0x50fa2e){_0xaba9b0=_0x50fa2e[_0x751e('0x3d')];if(!_0x235d6c[_0x751e('0x37')][_0x751e('0x52')](_0x751e('0x3e'))){_0x1e9f9a[_0x751e('0x28')]=qs[_0x751e('0x28')](_0x235d6c[_0x751e('0x37')][_0x751e('0x28')]);_0x1e9f9a[_0x751e('0x27')]=qs[_0x751e('0x27')](_0x235d6c[_0x751e('0x37')][_0x751e('0x27')]);}return _0x3c639d[_0x751e('0x4f')](_0x1e9f9a);}})['then'](function(_0x51fd16){if(_0x51fd16){return _0x51fd16?{'count':_0xaba9b0,'rows':_0x51fd16}:null;}})[_0x751e('0x2e')](respondWithResult(_0x21a1e8,null))[_0x751e('0x21')](handleError(_0x21a1e8,null));};exports[_0x751e('0x53')]=function(_0x6a9539,_0x3ad58e,_0x421f87){var _0x2e6de5={};var _0x4160f6={};var _0xdf601c;var _0x3e236f;return db[_0x751e('0x46')][_0x751e('0x50')]({'where':{'id':_0x6a9539[_0x751e('0x49')]['id']}})[_0x751e('0x2e')](handleEntityNotFound(_0x3ad58e,null))[_0x751e('0x2e')](function(_0x35a35f){if(_0x35a35f){_0xdf601c=_0x35a35f;_0x4160f6[_0x751e('0x3a')]=_[_0x751e('0x38')](db['SalesforceField']['rawAttributes']);_0x4160f6[_0x751e('0x37')]=_[_0x751e('0x38')](_0x6a9539[_0x751e('0x37')]);_0x4160f6[_0x751e('0x43')]=_[_0x751e('0x39')](_0x4160f6[_0x751e('0x3a')],_0x4160f6[_0x751e('0x37')]);_0x2e6de5['attributes']=_['intersection'](_0x4160f6[_0x751e('0x3a')],qs[_0x751e('0x3c')](_0x6a9539[_0x751e('0x37')][_0x751e('0x3c')]));_0x2e6de5[_0x751e('0x3b')]=_0x2e6de5[_0x751e('0x3b')][_0x751e('0x3d')]?_0x2e6de5[_0x751e('0x3b')]:_0x4160f6[_0x751e('0x3a')];_0x2e6de5[_0x751e('0x3f')]=qs[_0x751e('0x40')](_0x6a9539[_0x751e('0x37')][_0x751e('0x40')]);_0x2e6de5[_0x751e('0x41')]=qs['filters'](_[_0x751e('0x42')](_0x6a9539[_0x751e('0x37')],_0x4160f6['filters']));if(_0x6a9539[_0x751e('0x37')][_0x751e('0x44')]){_0x2e6de5[_0x751e('0x41')]=_['merge'](_0x2e6de5[_0x751e('0x41')],{'$or':_['map'](_0x2e6de5[_0x751e('0x3b')],function(_0x33f044){var _0x2ef65a={};_0x2ef65a[_0x33f044]={'$like':'%'+_0x6a9539[_0x751e('0x37')][_0x751e('0x44')]+'%'};return _0x2ef65a;})});}_0x2e6de5=_[_0x751e('0x4c')]({},_0x2e6de5,_0x6a9539[_0x751e('0x45')]);return _0xdf601c['getSubjects'](_0x2e6de5);}})[_0x751e('0x2e')](function(_0x422051){if(_0x422051){_0x3e236f=_0x422051[_0x751e('0x3d')];if(!_0x6a9539[_0x751e('0x37')][_0x751e('0x52')](_0x751e('0x3e'))){_0x2e6de5[_0x751e('0x28')]=qs['limit'](_0x6a9539[_0x751e('0x37')][_0x751e('0x28')]);_0x2e6de5['offset']=qs[_0x751e('0x27')](_0x6a9539[_0x751e('0x37')][_0x751e('0x27')]);}return _0xdf601c[_0x751e('0x53')](_0x2e6de5);}})[_0x751e('0x2e')](function(_0x3652a7){if(_0x3652a7){return _0x3652a7?{'count':_0x3e236f,'rows':_0x3652a7}:null;}})[_0x751e('0x2e')](respondWithResult(_0x3ad58e,null))['catch'](handleError(_0x3ad58e,null));};exports[_0x751e('0x54')]=function(_0x5a6b8b,_0x5449ee,_0x2f53bb){var _0x9675a1={};var _0x14a46b={};var _0x9aa44;var _0x237631;return db[_0x751e('0x46')][_0x751e('0x50')]({'where':{'id':_0x5a6b8b['params']['id']}})[_0x751e('0x2e')](handleEntityNotFound(_0x5449ee,null))[_0x751e('0x2e')](function(_0x12ba73){if(_0x12ba73){_0x9aa44=_0x12ba73;_0x14a46b[_0x751e('0x3a')]=_[_0x751e('0x38')](db[_0x751e('0x51')][_0x751e('0x34')]);_0x14a46b[_0x751e('0x37')]=_[_0x751e('0x38')](_0x5a6b8b[_0x751e('0x37')]);_0x14a46b[_0x751e('0x43')]=_[_0x751e('0x39')](_0x14a46b['model'],_0x14a46b['query']);_0x9675a1[_0x751e('0x3b')]=_[_0x751e('0x39')](_0x14a46b['model'],qs[_0x751e('0x3c')](_0x5a6b8b['query']['fields']));_0x9675a1[_0x751e('0x3b')]=_0x9675a1['attributes'][_0x751e('0x3d')]?_0x9675a1[_0x751e('0x3b')]:_0x14a46b[_0x751e('0x3a')];_0x9675a1['order']=qs[_0x751e('0x40')](_0x5a6b8b[_0x751e('0x37')][_0x751e('0x40')]);_0x9675a1['where']=qs['filters'](_[_0x751e('0x42')](_0x5a6b8b[_0x751e('0x37')],_0x14a46b['filters']));if(_0x5a6b8b[_0x751e('0x37')][_0x751e('0x44')]){_0x9675a1[_0x751e('0x41')]=_[_0x751e('0x4c')](_0x9675a1[_0x751e('0x41')],{'$or':_['map'](_0x9675a1[_0x751e('0x3b')],function(_0x11b705){var _0xc8640b={};_0xc8640b[_0x11b705]={'$like':'%'+_0x5a6b8b['query']['filter']+'%'};return _0xc8640b;})});}_0x9675a1=_[_0x751e('0x4c')]({},_0x9675a1,_0x5a6b8b[_0x751e('0x45')]);return _0x9aa44['getDescriptions'](_0x9675a1);}})[_0x751e('0x2e')](function(_0xbd8aa1){if(_0xbd8aa1){_0x237631=_0xbd8aa1[_0x751e('0x3d')];if(!_0x5a6b8b[_0x751e('0x37')][_0x751e('0x52')](_0x751e('0x3e'))){_0x9675a1['limit']=qs[_0x751e('0x28')](_0x5a6b8b[_0x751e('0x37')][_0x751e('0x28')]);_0x9675a1['offset']=qs['offset'](_0x5a6b8b[_0x751e('0x37')][_0x751e('0x27')]);}return _0x9aa44[_0x751e('0x54')](_0x9675a1);}})[_0x751e('0x2e')](function(_0x1ab873){if(_0x1ab873){return _0x1ab873?{'count':_0x237631,'rows':_0x1ab873}:null;}})['then'](respondWithResult(_0x5449ee,null))['catch'](handleError(_0x5449ee,null));};