Built motion from commit (unavailable).|2.5.24
[motion2.git] / server / api / intFreshsalesAccount / intFreshsalesAccount.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 _0x6f0d=['findOne','nolimit','AccountId','getSubjects','channel','Descriptions','getDescriptions','FreshsalesConfiguration','FreshsalesField','Subjects','getFields','username','remoteUri','apiKey','slice','substring','lastIndexOf','GET','/api/selector/owners','Token\x20token=','users','Requested\x20Resource\x20not\x20Found','test','statusCode','Wrong\x20credentials','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','info','FreshsalesAccount,\x20%s,\x20%s','request\x20sent','debug','FreshsalesAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','end','json','offset','status','set','Content-Range','apply','reject','save','update','then','destroy','name','send','index','FreshsalesAccount','fieldName','type','key','model','map','query','filters','intersection','attributes','fields','hasOwnProperty','limit','order','sort','pick','filter','where','merge','options','count','includeAll','include','findAll','show','params','keys','length','find','create','body','getConfigurations'];(function(_0x5c6244,_0x112ab8){var _0x5800ce=function(_0x304e3d){while(--_0x304e3d){_0x5c6244['push'](_0x5c6244['shift']());}};_0x5800ce(++_0x112ab8);}(_0x6f0d,0x16c));var _0xd6f0=function(_0x11e607,_0x17bbce){_0x11e607=_0x11e607-0x0;var _0x5778b5=_0x6f0d[_0x11e607];return _0x5778b5;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xd6f0('0x0'));var rimraf=require(_0xd6f0('0x1'));var zipdir=require(_0xd6f0('0x2'));var jsonpatch=require(_0xd6f0('0x3'));var rp=require('request-promise');var moment=require(_0xd6f0('0x4'));var BPromise=require(_0xd6f0('0x5'));var Mustache=require(_0xd6f0('0x6'));var util=require(_0xd6f0('0x7'));var path=require(_0xd6f0('0x8'));var sox=require('sox');var csv=require(_0xd6f0('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xd6f0('0xa'));var squel=require(_0xd6f0('0xb'));var crypto=require(_0xd6f0('0xc'));var jsforce=require(_0xd6f0('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xd6f0('0xe'));var Papa=require(_0xd6f0('0xf'));var Redis=require(_0xd6f0('0x10'));var authService=require(_0xd6f0('0x11'));var qs=require(_0xd6f0('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd6f0('0x13'));var logger=require(_0xd6f0('0x14'))(_0xd6f0('0x15'));var utils=require(_0xd6f0('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xd6f0('0x17'));var db=require(_0xd6f0('0x18'))['db'];var integrations=require(_0xd6f0('0x19'));var jayson=require(_0xd6f0('0x1a'));var client=jayson[_0xd6f0('0x1b')][_0xd6f0('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x2bf5b8,_0x250999,_0x246dad,_0x4ab979){return new BPromise(function(_0x2b3f32,_0x354846){var _0x4c1559=_0x4ab979||client;return _0x4c1559[_0xd6f0('0x1d')](_0x2bf5b8,_0x246dad)['then'](function(_0x3f4851){logger[_0xd6f0('0x1e')](_0xd6f0('0x1f'),_0x250999,_0xd6f0('0x20'));logger[_0xd6f0('0x21')](_0xd6f0('0x22'),_0x250999,_0xd6f0('0x20'),JSON[_0xd6f0('0x23')](_0x3f4851));if(_0x3f4851[_0xd6f0('0x24')]){if(_0x3f4851[_0xd6f0('0x24')][_0xd6f0('0x25')]===0x1f4){logger[_0xd6f0('0x24')](_0xd6f0('0x1f'),_0x250999,_0x3f4851[_0xd6f0('0x24')][_0xd6f0('0x26')]);return _0x354846(_0x3f4851[_0xd6f0('0x24')]['message']);}logger['error'](_0xd6f0('0x1f'),_0x250999,_0x3f4851[_0xd6f0('0x24')][_0xd6f0('0x26')]);return _0x2b3f32(_0x3f4851['error'][_0xd6f0('0x26')]);}else{logger[_0xd6f0('0x1e')]('FreshsalesAccount,\x20%s,\x20%s',_0x250999,_0xd6f0('0x20'));_0x2b3f32(_0x3f4851['result'][_0xd6f0('0x26')]);}})[_0xd6f0('0x27')](function(_0x5dbe1c){logger[_0xd6f0('0x24')](_0xd6f0('0x1f'),_0x250999,_0x5dbe1c);_0x354846(_0x5dbe1c);});});}function respondWithStatusCode(_0x5ea2dd,_0x3dbdc3){_0x3dbdc3=_0x3dbdc3||0xcc;return function(_0x402070){if(_0x402070){return _0x5ea2dd[_0xd6f0('0x28')](_0x3dbdc3);}return _0x5ea2dd['status'](_0x3dbdc3)[_0xd6f0('0x29')]();};}function respondWithResult(_0x3dc166,_0x5ecb16){_0x5ecb16=_0x5ecb16||0xc8;return function(_0xcea0ae){if(_0xcea0ae){return _0x3dc166['status'](_0x5ecb16)[_0xd6f0('0x2a')](_0xcea0ae);}};}function respondWithFilteredResult(_0x3fb5c3,_0x1630dc){return function(_0x3c1bff){if(_0x3c1bff){var _0x4101bd=_0x3c1bff['count'],_0x715aab=_0x1630dc[_0xd6f0('0x2b')],_0x12d6ec=_0x1630dc[_0xd6f0('0x2b')]+_0x1630dc['limit'],_0x26799c;if(_0x12d6ec>=_0x4101bd){_0x12d6ec=_0x4101bd;_0x26799c=0xc8;}else{_0x26799c=0xce;}_0x3fb5c3[_0xd6f0('0x2c')](_0x26799c);return _0x3fb5c3[_0xd6f0('0x2d')](_0xd6f0('0x2e'),_0x715aab+'-'+_0x12d6ec+'/'+_0x4101bd)[_0xd6f0('0x2a')](_0x3c1bff);}return null;};}function patchUpdates(_0x1a3967){return function(_0x39e96a){try{jsonpatch[_0xd6f0('0x2f')](_0x39e96a,_0x1a3967,!![]);}catch(_0x3151f8){return BPromise[_0xd6f0('0x30')](_0x3151f8);}return _0x39e96a[_0xd6f0('0x31')]();};}function saveUpdates(_0x1dff9b,_0x3e913a){return function(_0x348529){if(_0x348529){return _0x348529[_0xd6f0('0x32')](_0x1dff9b)[_0xd6f0('0x33')](function(_0x2d7c90){return _0x2d7c90;});}return null;};}function removeEntity(_0x31c493,_0x376890){return function(_0x1086d6){if(_0x1086d6){return _0x1086d6[_0xd6f0('0x34')]()[_0xd6f0('0x33')](function(){_0x31c493[_0xd6f0('0x2c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x11124c,_0x4ed523){return function(_0x58d2c5){if(!_0x58d2c5){_0x11124c[_0xd6f0('0x28')](0x194);}return _0x58d2c5;};}function handleError(_0x52e894,_0x12a6fa){_0x12a6fa=_0x12a6fa||0x1f4;return function(_0x27ad7e){logger[_0xd6f0('0x24')](_0x27ad7e['stack']);if(_0x27ad7e[_0xd6f0('0x35')]){delete _0x27ad7e['name'];}_0x52e894[_0xd6f0('0x2c')](_0x12a6fa)[_0xd6f0('0x36')](_0x27ad7e);};}exports[_0xd6f0('0x37')]=function(_0x1eecf0,_0x518751){var _0x5c3132={},_0x47b33d={},_0x3b6463={'count':0x0,'rows':[]};var _0xe2958d=_['map'](db[_0xd6f0('0x38')]['rawAttributes'],function(_0x507f66){return{'name':_0x507f66[_0xd6f0('0x39')],'type':_0x507f66[_0xd6f0('0x3a')][_0xd6f0('0x3b')]};});_0x47b33d[_0xd6f0('0x3c')]=_[_0xd6f0('0x3d')](_0xe2958d,_0xd6f0('0x35'));_0x47b33d['query']=_['keys'](_0x1eecf0[_0xd6f0('0x3e')]);_0x47b33d[_0xd6f0('0x3f')]=_[_0xd6f0('0x40')](_0x47b33d['model'],_0x47b33d['query']);_0x5c3132[_0xd6f0('0x41')]=_[_0xd6f0('0x40')](_0x47b33d[_0xd6f0('0x3c')],qs[_0xd6f0('0x42')](_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x42')]));_0x5c3132[_0xd6f0('0x41')]=_0x5c3132[_0xd6f0('0x41')]['length']?_0x5c3132[_0xd6f0('0x41')]:_0x47b33d[_0xd6f0('0x3c')];if(!_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x43')]('nolimit')){_0x5c3132[_0xd6f0('0x44')]=qs[_0xd6f0('0x44')](_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x44')]);_0x5c3132[_0xd6f0('0x2b')]=qs['offset'](_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x2b')]);}_0x5c3132[_0xd6f0('0x45')]=qs['sort'](_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x46')]);_0x5c3132['where']=qs['filters'](_[_0xd6f0('0x47')](_0x1eecf0[_0xd6f0('0x3e')],_0x47b33d[_0xd6f0('0x3f')]),_0xe2958d);if(_0x1eecf0['query'][_0xd6f0('0x48')]){_0x5c3132[_0xd6f0('0x49')]=_['merge'](_0x5c3132[_0xd6f0('0x49')],{'$or':_[_0xd6f0('0x3d')](_0xe2958d,function(_0x2930c5){if(_0x2930c5[_0xd6f0('0x3a')]!=='VIRTUAL'){var _0x664096={};_0x664096[_0x2930c5[_0xd6f0('0x35')]]={'$like':'%'+_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x48')]+'%'};return _0x664096;}})});}_0x5c3132=_[_0xd6f0('0x4a')]({},_0x5c3132,_0x1eecf0[_0xd6f0('0x4b')]);var _0x60f250={'where':_0x5c3132[_0xd6f0('0x49')]};return db['FreshsalesAccount'][_0xd6f0('0x4c')](_0x60f250)[_0xd6f0('0x33')](function(_0x55e93b){_0x3b6463[_0xd6f0('0x4c')]=_0x55e93b;if(_0x1eecf0[_0xd6f0('0x3e')][_0xd6f0('0x4d')]){_0x5c3132[_0xd6f0('0x4e')]=[{'all':!![]}];}return db['FreshsalesAccount'][_0xd6f0('0x4f')](_0x5c3132);})[_0xd6f0('0x33')](function(_0x494542){_0x3b6463['rows']=_0x494542;return _0x3b6463;})[_0xd6f0('0x33')](respondWithFilteredResult(_0x518751,_0x5c3132))['catch'](handleError(_0x518751,null));};exports[_0xd6f0('0x50')]=function(_0x61b354,_0x259827){var _0x52913b={'raw':![],'where':{'id':_0x61b354[_0xd6f0('0x51')]['id']}},_0x1ddce2={};_0x1ddce2[_0xd6f0('0x3c')]=_[_0xd6f0('0x52')](db[_0xd6f0('0x38')]['rawAttributes']);_0x1ddce2[_0xd6f0('0x3e')]=_['keys'](_0x61b354[_0xd6f0('0x3e')]);_0x1ddce2[_0xd6f0('0x3f')]=_[_0xd6f0('0x40')](_0x1ddce2[_0xd6f0('0x3c')],_0x1ddce2['query']);_0x52913b['attributes']=_[_0xd6f0('0x40')](_0x1ddce2[_0xd6f0('0x3c')],qs['fields'](_0x61b354[_0xd6f0('0x3e')]['fields']));_0x52913b[_0xd6f0('0x41')]=_0x52913b[_0xd6f0('0x41')][_0xd6f0('0x53')]?_0x52913b[_0xd6f0('0x41')]:_0x1ddce2[_0xd6f0('0x3c')];if(_0x61b354['query'][_0xd6f0('0x4d')]){_0x52913b[_0xd6f0('0x4e')]=[{'all':!![]}];}_0x52913b=_[_0xd6f0('0x4a')]({},_0x52913b,_0x61b354[_0xd6f0('0x4b')]);return db[_0xd6f0('0x38')][_0xd6f0('0x54')](_0x52913b)[_0xd6f0('0x33')](handleEntityNotFound(_0x259827,null))[_0xd6f0('0x33')](respondWithResult(_0x259827,null))['catch'](handleError(_0x259827,null));};exports[_0xd6f0('0x55')]=function(_0x3eb4dc,_0x469e92){return db[_0xd6f0('0x38')][_0xd6f0('0x55')](_0x3eb4dc[_0xd6f0('0x56')],{})[_0xd6f0('0x33')](respondWithResult(_0x469e92,0xc9))[_0xd6f0('0x27')](handleError(_0x469e92,null));};exports[_0xd6f0('0x32')]=function(_0x5216d8,_0x250805){if(_0x5216d8['body']['id']){delete _0x5216d8['body']['id'];}return db[_0xd6f0('0x38')]['find']({'where':{'id':_0x5216d8['params']['id']}})[_0xd6f0('0x33')](handleEntityNotFound(_0x250805,null))[_0xd6f0('0x33')](saveUpdates(_0x5216d8[_0xd6f0('0x56')],null))['then'](respondWithResult(_0x250805,null))[_0xd6f0('0x27')](handleError(_0x250805,null));};exports[_0xd6f0('0x34')]=function(_0xf297d2,_0x57daaa){return db[_0xd6f0('0x38')][_0xd6f0('0x54')]({'where':{'id':_0xf297d2['params']['id']}})[_0xd6f0('0x33')](handleEntityNotFound(_0x57daaa,null))[_0xd6f0('0x33')](removeEntity(_0x57daaa,null))['catch'](handleError(_0x57daaa,null));};exports[_0xd6f0('0x57')]=function(_0x25eb90,_0x22e511,_0x1d9972){var _0x3e6533={};var _0x48bfb3={};var _0x291e7b;var _0x43254c;return db['FreshsalesAccount'][_0xd6f0('0x58')]({'where':{'id':_0x25eb90[_0xd6f0('0x51')]['id']}})[_0xd6f0('0x33')](handleEntityNotFound(_0x22e511,null))['then'](function(_0x229f19){if(_0x229f19){_0x291e7b=_0x229f19;_0x48bfb3['model']=_['keys'](db['FreshsalesConfiguration']['rawAttributes']);_0x48bfb3[_0xd6f0('0x3e')]=_[_0xd6f0('0x52')](_0x25eb90[_0xd6f0('0x3e')]);_0x48bfb3[_0xd6f0('0x3f')]=_['intersection'](_0x48bfb3[_0xd6f0('0x3c')],_0x48bfb3['query']);_0x3e6533[_0xd6f0('0x41')]=_[_0xd6f0('0x40')](_0x48bfb3[_0xd6f0('0x3c')],qs['fields'](_0x25eb90[_0xd6f0('0x3e')][_0xd6f0('0x42')]));_0x3e6533[_0xd6f0('0x41')]=_0x3e6533[_0xd6f0('0x41')]['length']?_0x3e6533[_0xd6f0('0x41')]:_0x48bfb3[_0xd6f0('0x3c')];_0x3e6533[_0xd6f0('0x45')]=qs['sort'](_0x25eb90[_0xd6f0('0x3e')][_0xd6f0('0x46')]);_0x3e6533[_0xd6f0('0x49')]=qs[_0xd6f0('0x3f')](_['pick'](_0x25eb90[_0xd6f0('0x3e')],_0x48bfb3[_0xd6f0('0x3f')]));if(_0x25eb90[_0xd6f0('0x3e')][_0xd6f0('0x48')]){_0x3e6533['where']=_['merge'](_0x3e6533['where'],{'$or':_['map'](_0x3e6533[_0xd6f0('0x41')],function(_0x46a3b3){var _0xa1ff68={};_0xa1ff68[_0x46a3b3]={'$like':'%'+_0x25eb90[_0xd6f0('0x3e')][_0xd6f0('0x48')]+'%'};return _0xa1ff68;})});}_0x3e6533=_[_0xd6f0('0x4a')]({},_0x3e6533,_0x25eb90[_0xd6f0('0x4b')]);return _0x291e7b[_0xd6f0('0x57')](_0x3e6533);}})[_0xd6f0('0x33')](function(_0x5ad146){if(_0x5ad146){_0x43254c=_0x5ad146['length'];if(!_0x25eb90[_0xd6f0('0x3e')]['hasOwnProperty'](_0xd6f0('0x59'))){_0x3e6533[_0xd6f0('0x44')]=qs[_0xd6f0('0x44')](_0x25eb90[_0xd6f0('0x3e')][_0xd6f0('0x44')]);_0x3e6533[_0xd6f0('0x2b')]=qs[_0xd6f0('0x2b')](_0x25eb90['query'][_0xd6f0('0x2b')]);}return _0x291e7b[_0xd6f0('0x57')](_0x3e6533);}})[_0xd6f0('0x33')](function(_0x5b687f){if(_0x5b687f){return _0x5b687f?{'count':_0x43254c,'rows':_0x5b687f}:null;}})[_0xd6f0('0x33')](respondWithResult(_0x22e511,null))[_0xd6f0('0x27')](handleError(_0x22e511,null));};exports['addConfiguration']=function(_0xad50ac,_0x80f21c,_0x1bf313){if(_0xad50ac[_0xd6f0('0x56')]['id']){delete _0xad50ac[_0xd6f0('0x56')]['id'];}return db[_0xd6f0('0x38')][_0xd6f0('0x58')]({'where':{'id':_0xad50ac[_0xd6f0('0x51')]['id']}})[_0xd6f0('0x33')](handleEntityNotFound(_0x80f21c,null))['then'](function(_0x2e657b){if(_0x2e657b){_0xad50ac[_0xd6f0('0x56')][_0xd6f0('0x5a')]=_0x2e657b['id'];_0xad50ac[_0xd6f0('0x56')]['Subjects']=integrations[_0xd6f0('0x5b')](_0xad50ac[_0xd6f0('0x56')][_0xd6f0('0x5c')],_0xad50ac[_0xd6f0('0x56')][_0xd6f0('0x3a')]);_0xad50ac[_0xd6f0('0x56')][_0xd6f0('0x5d')]=integrations[_0xd6f0('0x5e')](_0xad50ac[_0xd6f0('0x56')][_0xd6f0('0x5c')],_0xad50ac['body'][_0xd6f0('0x3a')]);return db[_0xd6f0('0x5f')][_0xd6f0('0x55')](_0xad50ac['body'],{'include':[{'model':db[_0xd6f0('0x60')],'as':_0xd6f0('0x61')},{'model':db[_0xd6f0('0x60')],'as':_0xd6f0('0x5d')}]});}return null;})[_0xd6f0('0x33')](respondWithResult(_0x80f21c,null))[_0xd6f0('0x27')](handleError(_0x80f21c,null));};exports[_0xd6f0('0x62')]=function(_0x14fa20,_0x412731,_0x39b833){var _0x27ad68='';var _0x5b3155='';return db['FreshsalesAccount'][_0xd6f0('0x58')]({'where':{'id':_0x14fa20[_0xd6f0('0x51')]['id']},'attributes':['id',_0xd6f0('0x63'),_0xd6f0('0x64'),_0xd6f0('0x65')]})['then'](handleEntityNotFound(_0x412731,null))[_0xd6f0('0x33')](function(_0x2d38e6){if(_0x2d38e6){_0x5b3155=_0x2d38e6['username'];_0x27ad68=_0x2d38e6[_0xd6f0('0x64')];var _0x5afb1c=_0x2d38e6[_0xd6f0('0x64')][_0xd6f0('0x66')](-0x1);if(_0x5afb1c==='/'){_0x27ad68=_0x27ad68[_0xd6f0('0x67')](0x0,_0x27ad68[_0xd6f0('0x68')](_0x5afb1c));}return rp({'method':_0xd6f0('0x69'),'uri':util['format']('%s%s',_0x27ad68,_0xd6f0('0x6a')),'headers':{'Authorization':_0xd6f0('0x6b')+_0x2d38e6['apiKey']},'json':!![]});}})[_0xd6f0('0x33')](function(_0x5819e2){if(_0x5819e2){var _0x52bf7f=_0x5819e2[_0xd6f0('0x6c')];var _0x56b272=![];var _0x5dc1c7=null;for(_0x5dc1c7=0x0;_0x5dc1c7<_0x52bf7f['length'];_0x5dc1c7++){if(_0x52bf7f[_0x5dc1c7]['email']===_0x5b3155){_0x56b272=!![];}}if(_0x56b272){return!![];}else{throw new Error({'statusCode':0x194,'message':_0xd6f0('0x6d')});}}})[_0xd6f0('0x33')](respondWithResult(_0x412731,null))[_0xd6f0('0x27')](function(_0xcfed18){var _0x40a954=_0x14fa20[_0xd6f0('0x3e')][_0xd6f0('0x6e')]?0x1f4:_0xcfed18[_0xd6f0('0x6f')]||0x1f4;logger[_0xd6f0('0x24')]('getFields,\x20%s,\x20%s,\x20%s',_0xd6f0('0x62'),_0x40a954,JSON['stringify'](_0xcfed18));delete _0xcfed18['name'];if(_0x40a954===0x191){_0x40a954=0x190;}_0x412731[_0xd6f0('0x2c')](_0x40a954)[_0xd6f0('0x36')](_0x14fa20[_0xd6f0('0x3e')]['test']?{'message':_0xd6f0('0x70'),'statusCode':_0xcfed18[_0xd6f0('0x6f')]}:_0xcfed18);});};