Built motion from commit (unavailable).|2.5.13
[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 _0xc368=['/api/selector/owners','Token\x20token=','users','email','test','statusCode','getFields,\x20%s,\x20%s,\x20%s','getFields','stringify','send','Wrong\x20credentials','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','then','info','FreshsalesAccount,\x20%s,\x20%s','request\x20sent','debug','FreshsalesAccount,\x20%s,\x20%s,\x20%s','error','code','message','result','sendStatus','status','json','offset','limit','set','Content-Range','apply','reject','save','update','destroy','end','stack','name','index','map','FreshsalesAccount','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','pick','where','merge','filter','options','count','includeAll','include','findAll','catch','show','params','find','create','body','findOne','getConfigurations','hasOwnProperty','addConfiguration','Subjects','getSubjects','channel','Descriptions','FreshsalesConfiguration','FreshsalesField','username','remoteUri','apiKey','substring','format'];(function(_0x11155f,_0x57b687){var _0xd07e48=function(_0x592615){while(--_0x592615){_0x11155f['push'](_0x11155f['shift']());}};_0xd07e48(++_0x57b687);}(_0xc368,0x7b));var _0x8c36=function(_0x24932a,_0x277193){_0x24932a=_0x24932a-0x0;var _0x2297da=_0xc368[_0x24932a];return _0x2297da;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x8c36('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x8c36('0x1'));var jsonpatch=require(_0x8c36('0x2'));var rp=require(_0x8c36('0x3'));var moment=require(_0x8c36('0x4'));var BPromise=require(_0x8c36('0x5'));var Mustache=require('mustache');var util=require(_0x8c36('0x6'));var path=require(_0x8c36('0x7'));var sox=require(_0x8c36('0x8'));var csv=require(_0x8c36('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x8c36('0xa'));var crypto=require(_0x8c36('0xb'));var jsforce=require(_0x8c36('0xc'));var deskjs=require(_0x8c36('0xd'));var toCsv=require(_0x8c36('0x9'));var querystring=require(_0x8c36('0xe'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x8c36('0xf'));var as=require(_0x8c36('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x8c36('0x11'))(_0x8c36('0x12'));var utils=require(_0x8c36('0x13'));var config=require(_0x8c36('0x14'));var licenseUtil=require(_0x8c36('0x15'));var db=require(_0x8c36('0x16'))['db'];var integrations=require(_0x8c36('0x17'));var jayson=require(_0x8c36('0x18'));var client=jayson[_0x8c36('0x19')][_0x8c36('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x43736d,_0x25a83e,_0x3c824b,_0x220f18){return new BPromise(function(_0x5dfcd5,_0x31d8bf){var _0x5e32ad=_0x220f18||client;return _0x5e32ad[_0x8c36('0x1b')](_0x43736d,_0x3c824b)[_0x8c36('0x1c')](function(_0x29e791){logger[_0x8c36('0x1d')](_0x8c36('0x1e'),_0x25a83e,_0x8c36('0x1f'));logger[_0x8c36('0x20')](_0x8c36('0x21'),_0x25a83e,_0x8c36('0x1f'),JSON['stringify'](_0x29e791));if(_0x29e791[_0x8c36('0x22')]){if(_0x29e791[_0x8c36('0x22')][_0x8c36('0x23')]===0x1f4){logger[_0x8c36('0x22')](_0x8c36('0x1e'),_0x25a83e,_0x29e791['error'][_0x8c36('0x24')]);return _0x31d8bf(_0x29e791[_0x8c36('0x22')][_0x8c36('0x24')]);}logger[_0x8c36('0x22')](_0x8c36('0x1e'),_0x25a83e,_0x29e791[_0x8c36('0x22')][_0x8c36('0x24')]);return _0x5dfcd5(_0x29e791[_0x8c36('0x22')][_0x8c36('0x24')]);}else{logger[_0x8c36('0x1d')](_0x8c36('0x1e'),_0x25a83e,_0x8c36('0x1f'));_0x5dfcd5(_0x29e791[_0x8c36('0x25')]['message']);}})['catch'](function(_0x5dc1e1){logger['error'](_0x8c36('0x1e'),_0x25a83e,_0x5dc1e1);_0x31d8bf(_0x5dc1e1);});});}function respondWithStatusCode(_0x7effb8,_0x2088aa){_0x2088aa=_0x2088aa||0xcc;return function(_0x2c9e9a){if(_0x2c9e9a){return _0x7effb8[_0x8c36('0x26')](_0x2088aa);}return _0x7effb8[_0x8c36('0x27')](_0x2088aa)['end']();};}function respondWithResult(_0x1d39ca,_0x49f6f9){_0x49f6f9=_0x49f6f9||0xc8;return function(_0x40b66f){if(_0x40b66f){return _0x1d39ca['status'](_0x49f6f9)[_0x8c36('0x28')](_0x40b66f);}};}function respondWithFilteredResult(_0x1afee4,_0x271ec4){return function(_0x1010c8){if(_0x1010c8){var _0x50aa48=_0x1010c8['count'],_0x55cbfb=_0x271ec4['offset'],_0x7e7e56=_0x271ec4[_0x8c36('0x29')]+_0x271ec4[_0x8c36('0x2a')],_0x28fa76;if(_0x7e7e56>=_0x50aa48){_0x7e7e56=_0x50aa48;_0x28fa76=0xc8;}else{_0x28fa76=0xce;}_0x1afee4['status'](_0x28fa76);return _0x1afee4[_0x8c36('0x2b')](_0x8c36('0x2c'),_0x55cbfb+'-'+_0x7e7e56+'/'+_0x50aa48)[_0x8c36('0x28')](_0x1010c8);}return null;};}function patchUpdates(_0x4bc057){return function(_0x49b737){try{jsonpatch[_0x8c36('0x2d')](_0x49b737,_0x4bc057,!![]);}catch(_0x1531fc){return BPromise[_0x8c36('0x2e')](_0x1531fc);}return _0x49b737[_0x8c36('0x2f')]();};}function saveUpdates(_0x3ae970,_0x2e8855){return function(_0x387e66){if(_0x387e66){return _0x387e66[_0x8c36('0x30')](_0x3ae970)[_0x8c36('0x1c')](function(_0x2d6476){return _0x2d6476;});}return null;};}function removeEntity(_0x35a349,_0x36648e){return function(_0x3d6b69){if(_0x3d6b69){return _0x3d6b69[_0x8c36('0x31')]()[_0x8c36('0x1c')](function(){_0x35a349[_0x8c36('0x27')](0xcc)[_0x8c36('0x32')]();});}};}function handleEntityNotFound(_0x5eae0a,_0x4e8d12){return function(_0x5c110d){if(!_0x5c110d){_0x5eae0a[_0x8c36('0x26')](0x194);}return _0x5c110d;};}function handleError(_0x2c9a8c,_0x22c68b){_0x22c68b=_0x22c68b||0x1f4;return function(_0x2fedd6){logger[_0x8c36('0x22')](_0x2fedd6[_0x8c36('0x33')]);if(_0x2fedd6[_0x8c36('0x34')]){delete _0x2fedd6['name'];}_0x2c9a8c[_0x8c36('0x27')](_0x22c68b)['send'](_0x2fedd6);};}exports[_0x8c36('0x35')]=function(_0x5c743b,_0x43b465){var _0x2c876e={},_0x54d796={},_0x4857b0={'count':0x0,'rows':[]};var _0x1f0f9a=_[_0x8c36('0x36')](db[_0x8c36('0x37')][_0x8c36('0x38')],function(_0x3d548f){return{'name':_0x3d548f[_0x8c36('0x39')],'type':_0x3d548f[_0x8c36('0x3a')][_0x8c36('0x3b')]};});_0x54d796[_0x8c36('0x3c')]=_[_0x8c36('0x36')](_0x1f0f9a,_0x8c36('0x34'));_0x54d796[_0x8c36('0x3d')]=_[_0x8c36('0x3e')](_0x5c743b[_0x8c36('0x3d')]);_0x54d796[_0x8c36('0x3f')]=_[_0x8c36('0x40')](_0x54d796[_0x8c36('0x3c')],_0x54d796['query']);_0x2c876e[_0x8c36('0x41')]=_['intersection'](_0x54d796[_0x8c36('0x3c')],qs[_0x8c36('0x42')](_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x42')]));_0x2c876e['attributes']=_0x2c876e['attributes'][_0x8c36('0x43')]?_0x2c876e[_0x8c36('0x41')]:_0x54d796[_0x8c36('0x3c')];if(!_0x5c743b['query']['hasOwnProperty'](_0x8c36('0x44'))){_0x2c876e['limit']=qs['limit'](_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x2a')]);_0x2c876e[_0x8c36('0x29')]=qs[_0x8c36('0x29')](_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x29')]);}_0x2c876e[_0x8c36('0x45')]=qs[_0x8c36('0x46')](_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x46')]);_0x2c876e['where']=qs[_0x8c36('0x3f')](_[_0x8c36('0x47')](_0x5c743b[_0x8c36('0x3d')],_0x54d796[_0x8c36('0x3f')]),_0x1f0f9a);if(_0x5c743b[_0x8c36('0x3d')]['filter']){_0x2c876e[_0x8c36('0x48')]=_[_0x8c36('0x49')](_0x2c876e[_0x8c36('0x48')],{'$or':_[_0x8c36('0x36')](_0x1f0f9a,function(_0x62a72){if(_0x62a72[_0x8c36('0x3a')]!=='VIRTUAL'){var _0x1d85fd={};_0x1d85fd[_0x62a72[_0x8c36('0x34')]]={'$like':'%'+_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x4a')]+'%'};return _0x1d85fd;}})});}_0x2c876e=_[_0x8c36('0x49')]({},_0x2c876e,_0x5c743b[_0x8c36('0x4b')]);var _0xf230cb={'where':_0x2c876e['where']};return db[_0x8c36('0x37')][_0x8c36('0x4c')](_0xf230cb)[_0x8c36('0x1c')](function(_0x35fef3){_0x4857b0[_0x8c36('0x4c')]=_0x35fef3;if(_0x5c743b[_0x8c36('0x3d')][_0x8c36('0x4d')]){_0x2c876e[_0x8c36('0x4e')]=[{'all':!![]}];}return db[_0x8c36('0x37')][_0x8c36('0x4f')](_0x2c876e);})[_0x8c36('0x1c')](function(_0x114d10){_0x4857b0['rows']=_0x114d10;return _0x4857b0;})['then'](respondWithFilteredResult(_0x43b465,_0x2c876e))[_0x8c36('0x50')](handleError(_0x43b465,null));};exports[_0x8c36('0x51')]=function(_0xd46608,_0x3e61d2){var _0x5ea64d={'raw':![],'where':{'id':_0xd46608[_0x8c36('0x52')]['id']}},_0xb3373e={};_0xb3373e['model']=_['keys'](db['FreshsalesAccount'][_0x8c36('0x38')]);_0xb3373e[_0x8c36('0x3d')]=_[_0x8c36('0x3e')](_0xd46608[_0x8c36('0x3d')]);_0xb3373e[_0x8c36('0x3f')]=_[_0x8c36('0x40')](_0xb3373e['model'],_0xb3373e[_0x8c36('0x3d')]);_0x5ea64d[_0x8c36('0x41')]=_[_0x8c36('0x40')](_0xb3373e[_0x8c36('0x3c')],qs['fields'](_0xd46608['query']['fields']));_0x5ea64d[_0x8c36('0x41')]=_0x5ea64d[_0x8c36('0x41')][_0x8c36('0x43')]?_0x5ea64d[_0x8c36('0x41')]:_0xb3373e[_0x8c36('0x3c')];if(_0xd46608[_0x8c36('0x3d')][_0x8c36('0x4d')]){_0x5ea64d[_0x8c36('0x4e')]=[{'all':!![]}];}_0x5ea64d=_[_0x8c36('0x49')]({},_0x5ea64d,_0xd46608['options']);return db['FreshsalesAccount'][_0x8c36('0x53')](_0x5ea64d)['then'](handleEntityNotFound(_0x3e61d2,null))['then'](respondWithResult(_0x3e61d2,null))[_0x8c36('0x50')](handleError(_0x3e61d2,null));};exports['create']=function(_0x273dcd,_0x44ec08){return db['FreshsalesAccount'][_0x8c36('0x54')](_0x273dcd['body'],{})[_0x8c36('0x1c')](respondWithResult(_0x44ec08,0xc9))[_0x8c36('0x50')](handleError(_0x44ec08,null));};exports[_0x8c36('0x30')]=function(_0x52726e,_0xa9f691){if(_0x52726e[_0x8c36('0x55')]['id']){delete _0x52726e[_0x8c36('0x55')]['id'];}return db[_0x8c36('0x37')][_0x8c36('0x53')]({'where':{'id':_0x52726e[_0x8c36('0x52')]['id']}})[_0x8c36('0x1c')](handleEntityNotFound(_0xa9f691,null))[_0x8c36('0x1c')](saveUpdates(_0x52726e[_0x8c36('0x55')],null))['then'](respondWithResult(_0xa9f691,null))['catch'](handleError(_0xa9f691,null));};exports['destroy']=function(_0x20c1b0,_0x4b401b){return db['FreshsalesAccount'][_0x8c36('0x53')]({'where':{'id':_0x20c1b0[_0x8c36('0x52')]['id']}})[_0x8c36('0x1c')](handleEntityNotFound(_0x4b401b,null))[_0x8c36('0x1c')](removeEntity(_0x4b401b,null))[_0x8c36('0x50')](handleError(_0x4b401b,null));};exports['getConfigurations']=function(_0x499bb3,_0x54c675,_0x1edc3b){var _0x243c1a={};var _0x47c012={};var _0x214068;var _0x3fcad4;return db[_0x8c36('0x37')][_0x8c36('0x56')]({'where':{'id':_0x499bb3[_0x8c36('0x52')]['id']}})[_0x8c36('0x1c')](handleEntityNotFound(_0x54c675,null))[_0x8c36('0x1c')](function(_0x273325){if(_0x273325){_0x214068=_0x273325;_0x47c012[_0x8c36('0x3c')]=_['keys'](db['FreshsalesConfiguration']['rawAttributes']);_0x47c012[_0x8c36('0x3d')]=_[_0x8c36('0x3e')](_0x499bb3[_0x8c36('0x3d')]);_0x47c012[_0x8c36('0x3f')]=_[_0x8c36('0x40')](_0x47c012[_0x8c36('0x3c')],_0x47c012['query']);_0x243c1a[_0x8c36('0x41')]=_['intersection'](_0x47c012[_0x8c36('0x3c')],qs[_0x8c36('0x42')](_0x499bb3[_0x8c36('0x3d')]['fields']));_0x243c1a[_0x8c36('0x41')]=_0x243c1a['attributes'][_0x8c36('0x43')]?_0x243c1a[_0x8c36('0x41')]:_0x47c012[_0x8c36('0x3c')];_0x243c1a[_0x8c36('0x45')]=qs[_0x8c36('0x46')](_0x499bb3['query'][_0x8c36('0x46')]);_0x243c1a['where']=qs[_0x8c36('0x3f')](_[_0x8c36('0x47')](_0x499bb3['query'],_0x47c012[_0x8c36('0x3f')]));if(_0x499bb3[_0x8c36('0x3d')][_0x8c36('0x4a')]){_0x243c1a['where']=_[_0x8c36('0x49')](_0x243c1a[_0x8c36('0x48')],{'$or':_[_0x8c36('0x36')](_0x243c1a[_0x8c36('0x41')],function(_0x4f67eb){var _0x41dbd5={};_0x41dbd5[_0x4f67eb]={'$like':'%'+_0x499bb3[_0x8c36('0x3d')]['filter']+'%'};return _0x41dbd5;})});}_0x243c1a=_[_0x8c36('0x49')]({},_0x243c1a,_0x499bb3[_0x8c36('0x4b')]);return _0x214068[_0x8c36('0x57')](_0x243c1a);}})['then'](function(_0x20479f){if(_0x20479f){_0x3fcad4=_0x20479f[_0x8c36('0x43')];if(!_0x499bb3['query'][_0x8c36('0x58')](_0x8c36('0x44'))){_0x243c1a[_0x8c36('0x2a')]=qs[_0x8c36('0x2a')](_0x499bb3['query'][_0x8c36('0x2a')]);_0x243c1a['offset']=qs[_0x8c36('0x29')](_0x499bb3[_0x8c36('0x3d')]['offset']);}return _0x214068[_0x8c36('0x57')](_0x243c1a);}})[_0x8c36('0x1c')](function(_0x9fed73){if(_0x9fed73){return _0x9fed73?{'count':_0x3fcad4,'rows':_0x9fed73}:null;}})[_0x8c36('0x1c')](respondWithResult(_0x54c675,null))[_0x8c36('0x50')](handleError(_0x54c675,null));};exports[_0x8c36('0x59')]=function(_0x19bd1c,_0x3471d0,_0x4fc492){if(_0x19bd1c[_0x8c36('0x55')]['id']){delete _0x19bd1c[_0x8c36('0x55')]['id'];}return db[_0x8c36('0x37')]['findOne']({'where':{'id':_0x19bd1c[_0x8c36('0x52')]['id']}})[_0x8c36('0x1c')](handleEntityNotFound(_0x3471d0,null))[_0x8c36('0x1c')](function(_0x287d7f){if(_0x287d7f){_0x19bd1c[_0x8c36('0x55')]['AccountId']=_0x287d7f['id'];_0x19bd1c[_0x8c36('0x55')][_0x8c36('0x5a')]=integrations[_0x8c36('0x5b')](_0x19bd1c['body'][_0x8c36('0x5c')],_0x19bd1c[_0x8c36('0x55')][_0x8c36('0x3a')]);_0x19bd1c[_0x8c36('0x55')][_0x8c36('0x5d')]=integrations['getDescriptions'](_0x19bd1c[_0x8c36('0x55')][_0x8c36('0x5c')],_0x19bd1c[_0x8c36('0x55')]['type']);return db[_0x8c36('0x5e')][_0x8c36('0x54')](_0x19bd1c[_0x8c36('0x55')],{'include':[{'model':db[_0x8c36('0x5f')],'as':_0x8c36('0x5a')},{'model':db[_0x8c36('0x5f')],'as':_0x8c36('0x5d')}]});}return null;})['then'](respondWithResult(_0x3471d0,null))['catch'](handleError(_0x3471d0,null));};exports['getFields']=function(_0x3c0616,_0x38ddf8,_0x322b2a){var _0x243743='';var _0x3a7a7f='';return db[_0x8c36('0x37')][_0x8c36('0x56')]({'where':{'id':_0x3c0616[_0x8c36('0x52')]['id']},'attributes':['id',_0x8c36('0x60'),_0x8c36('0x61'),_0x8c36('0x62')]})[_0x8c36('0x1c')](handleEntityNotFound(_0x38ddf8,null))[_0x8c36('0x1c')](function(_0x3fa488){if(_0x3fa488){_0x3a7a7f=_0x3fa488[_0x8c36('0x60')];_0x243743=_0x3fa488[_0x8c36('0x61')];var _0xc75ca1=_0x3fa488[_0x8c36('0x61')]['slice'](-0x1);if(_0xc75ca1==='/'){_0x243743=_0x243743[_0x8c36('0x63')](0x0,_0x243743['lastIndexOf'](_0xc75ca1));}return rp({'method':'GET','uri':util[_0x8c36('0x64')]('%s%s',_0x243743,_0x8c36('0x65')),'headers':{'Authorization':_0x8c36('0x66')+_0x3fa488[_0x8c36('0x62')]},'json':!![]});}})[_0x8c36('0x1c')](function(_0x778c03){if(_0x778c03){var _0x438224=_0x778c03[_0x8c36('0x67')];var _0x5e13de=![];var _0x4c3350=null;for(_0x4c3350=0x0;_0x4c3350<_0x438224[_0x8c36('0x43')];_0x4c3350++){if(_0x438224[_0x4c3350][_0x8c36('0x68')]===_0x3a7a7f){_0x5e13de=!![];}}if(_0x5e13de){return!![];}else{throw new Error({'statusCode':0x194,'message':'Requested\x20Resource\x20not\x20Found'});}}})[_0x8c36('0x1c')](respondWithResult(_0x38ddf8,null))[_0x8c36('0x50')](function(_0x402306){var _0x1fb78e=_0x3c0616['query'][_0x8c36('0x69')]?0x1f4:_0x402306[_0x8c36('0x6a')]||0x1f4;logger[_0x8c36('0x22')](_0x8c36('0x6b'),_0x8c36('0x6c'),_0x1fb78e,JSON[_0x8c36('0x6d')](_0x402306));delete _0x402306['name'];if(_0x1fb78e===0x191){_0x1fb78e=0x190;}_0x38ddf8[_0x8c36('0x27')](_0x1fb78e)[_0x8c36('0x6e')](_0x3c0616[_0x8c36('0x3d')][_0x8c36('0x69')]?{'message':_0x8c36('0x6f'),'statusCode':_0x402306[_0x8c36('0x6a')]}:_0x402306);});};