Built motion from commit (unavailable).|2.5.26
[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 _0xbb14=['count','offset','limit','json','apply','update','then','name','send','map','FreshsalesAccount','key','model','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','pick','filter','where','merge','type','VIRTUAL','include','findAll','rows','catch','show','params','keys','rawAttributes','options','find','create','body','destroy','findOne','FreshsalesConfiguration','order','getConfigurations','addConfiguration','Subjects','getSubjects','channel','Descriptions','getFields','username','remoteUri','apiKey','slice','substring','lastIndexOf','GET','format','%s%s','/api/selector/owners','Token\x20token=','email','Requested\x20Resource\x20not\x20Found','test','statusCode','getFields,\x20%s,\x20%s,\x20%s','stringify','Wrong\x20credentials','eml-format','zip-dir','moment','bluebird','mustache','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','info','FreshsalesAccount,\x20%s,\x20%s','request\x20sent','debug','FreshsalesAccount,\x20%s,\x20%s,\x20%s','error','code','message','result','sendStatus','status','end'];(function(_0x2d4f80,_0x544bbd){var _0x5e884d=function(_0x17f4a6){while(--_0x17f4a6){_0x2d4f80['push'](_0x2d4f80['shift']());}};_0x5e884d(++_0x544bbd);}(_0xbb14,0xb1));var _0x4bb1=function(_0x1ac595,_0x5d2081){_0x1ac595=_0x1ac595-0x0;var _0x455fff=_0xbb14[_0x1ac595];return _0x455fff;};'use strict';var emlformat=require(_0x4bb1('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4bb1('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x4bb1('0x2'));var BPromise=require(_0x4bb1('0x3'));var Mustache=require(_0x4bb1('0x4'));var util=require('util');var path=require(_0x4bb1('0x5'));var sox=require(_0x4bb1('0x6'));var csv=require(_0x4bb1('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4bb1('0x8'));var _=require(_0x4bb1('0x9'));var squel=require(_0x4bb1('0xa'));var crypto=require(_0x4bb1('0xb'));var jsforce=require(_0x4bb1('0xc'));var deskjs=require(_0x4bb1('0xd'));var toCsv=require(_0x4bb1('0x7'));var querystring=require(_0x4bb1('0xe'));var Papa=require('papaparse');var Redis=require(_0x4bb1('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x4bb1('0x10'));var as=require(_0x4bb1('0x11'));var hardwareService=require(_0x4bb1('0x12'));var logger=require(_0x4bb1('0x13'))(_0x4bb1('0x14'));var utils=require(_0x4bb1('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x4bb1('0x16'));var db=require(_0x4bb1('0x17'))['db'];var integrations=require(_0x4bb1('0x18'));var jayson=require(_0x4bb1('0x19'));var client=jayson[_0x4bb1('0x1a')]['http']({'port':0x232a});function respondWithRpcPromise(_0x2d5cf4,_0x4651d1,_0x26ddb3,_0xeea40d){return new BPromise(function(_0x2753fb,_0x33a851){var _0x206cfd=_0xeea40d||client;return _0x206cfd['request'](_0x2d5cf4,_0x26ddb3)['then'](function(_0x1c7d4f){logger[_0x4bb1('0x1b')](_0x4bb1('0x1c'),_0x4651d1,_0x4bb1('0x1d'));logger[_0x4bb1('0x1e')](_0x4bb1('0x1f'),_0x4651d1,'request\x20sent',JSON['stringify'](_0x1c7d4f));if(_0x1c7d4f[_0x4bb1('0x20')]){if(_0x1c7d4f[_0x4bb1('0x20')][_0x4bb1('0x21')]===0x1f4){logger['error'](_0x4bb1('0x1c'),_0x4651d1,_0x1c7d4f[_0x4bb1('0x20')][_0x4bb1('0x22')]);return _0x33a851(_0x1c7d4f[_0x4bb1('0x20')][_0x4bb1('0x22')]);}logger[_0x4bb1('0x20')](_0x4bb1('0x1c'),_0x4651d1,_0x1c7d4f[_0x4bb1('0x20')][_0x4bb1('0x22')]);return _0x2753fb(_0x1c7d4f['error'][_0x4bb1('0x22')]);}else{logger['info'](_0x4bb1('0x1c'),_0x4651d1,_0x4bb1('0x1d'));_0x2753fb(_0x1c7d4f[_0x4bb1('0x23')][_0x4bb1('0x22')]);}})['catch'](function(_0x3df5ff){logger[_0x4bb1('0x20')](_0x4bb1('0x1c'),_0x4651d1,_0x3df5ff);_0x33a851(_0x3df5ff);});});}function respondWithStatusCode(_0x39d401,_0x41b1d3){_0x41b1d3=_0x41b1d3||0xcc;return function(_0x58d7f9){if(_0x58d7f9){return _0x39d401[_0x4bb1('0x24')](_0x41b1d3);}return _0x39d401[_0x4bb1('0x25')](_0x41b1d3)[_0x4bb1('0x26')]();};}function respondWithResult(_0x5c5689,_0x3c018c){_0x3c018c=_0x3c018c||0xc8;return function(_0x3b9194){if(_0x3b9194){return _0x5c5689[_0x4bb1('0x25')](_0x3c018c)['json'](_0x3b9194);}};}function respondWithFilteredResult(_0x3dbc70,_0x2dd188){return function(_0x543179){if(_0x543179){var _0x27c3c7=_0x543179[_0x4bb1('0x27')],_0x51fdb0=_0x2dd188['offset'],_0xc2f321=_0x2dd188[_0x4bb1('0x28')]+_0x2dd188[_0x4bb1('0x29')],_0x1b7535;if(_0xc2f321>=_0x27c3c7){_0xc2f321=_0x27c3c7;_0x1b7535=0xc8;}else{_0x1b7535=0xce;}_0x3dbc70[_0x4bb1('0x25')](_0x1b7535);return _0x3dbc70['set']('Content-Range',_0x51fdb0+'-'+_0xc2f321+'/'+_0x27c3c7)[_0x4bb1('0x2a')](_0x543179);}return null;};}function patchUpdates(_0x287545){return function(_0x1d158c){try{jsonpatch[_0x4bb1('0x2b')](_0x1d158c,_0x287545,!![]);}catch(_0x52c7b4){return BPromise['reject'](_0x52c7b4);}return _0x1d158c['save']();};}function saveUpdates(_0x243309,_0x52375b){return function(_0x43e0ab){if(_0x43e0ab){return _0x43e0ab[_0x4bb1('0x2c')](_0x243309)['then'](function(_0x542c85){return _0x542c85;});}return null;};}function removeEntity(_0x1877b1,_0x4d4532){return function(_0x2ddb25){if(_0x2ddb25){return _0x2ddb25['destroy']()[_0x4bb1('0x2d')](function(){_0x1877b1['status'](0xcc)[_0x4bb1('0x26')]();});}};}function handleEntityNotFound(_0x13e645,_0x5b7288){return function(_0x5a83c8){if(!_0x5a83c8){_0x13e645['sendStatus'](0x194);}return _0x5a83c8;};}function handleError(_0x36b5f2,_0x5694c9){_0x5694c9=_0x5694c9||0x1f4;return function(_0x245d95){logger[_0x4bb1('0x20')](_0x245d95['stack']);if(_0x245d95[_0x4bb1('0x2e')]){delete _0x245d95['name'];}_0x36b5f2['status'](_0x5694c9)[_0x4bb1('0x2f')](_0x245d95);};}exports['index']=function(_0x2578ad,_0x247a3e){var _0x409edc={},_0x147d3d={},_0x2ce9fd={'count':0x0,'rows':[]};var _0x30a8e8=_[_0x4bb1('0x30')](db[_0x4bb1('0x31')]['rawAttributes'],function(_0x475525){return{'name':_0x475525['fieldName'],'type':_0x475525['type'][_0x4bb1('0x32')]};});_0x147d3d[_0x4bb1('0x33')]=_[_0x4bb1('0x30')](_0x30a8e8,'name');_0x147d3d[_0x4bb1('0x34')]=_['keys'](_0x2578ad[_0x4bb1('0x34')]);_0x147d3d[_0x4bb1('0x35')]=_['intersection'](_0x147d3d['model'],_0x147d3d[_0x4bb1('0x34')]);_0x409edc[_0x4bb1('0x36')]=_[_0x4bb1('0x37')](_0x147d3d[_0x4bb1('0x33')],qs[_0x4bb1('0x38')](_0x2578ad[_0x4bb1('0x34')][_0x4bb1('0x38')]));_0x409edc[_0x4bb1('0x36')]=_0x409edc[_0x4bb1('0x36')][_0x4bb1('0x39')]?_0x409edc[_0x4bb1('0x36')]:_0x147d3d[_0x4bb1('0x33')];if(!_0x2578ad['query'][_0x4bb1('0x3a')](_0x4bb1('0x3b'))){_0x409edc[_0x4bb1('0x29')]=qs[_0x4bb1('0x29')](_0x2578ad[_0x4bb1('0x34')][_0x4bb1('0x29')]);_0x409edc[_0x4bb1('0x28')]=qs[_0x4bb1('0x28')](_0x2578ad[_0x4bb1('0x34')][_0x4bb1('0x28')]);}_0x409edc['order']=qs[_0x4bb1('0x3c')](_0x2578ad['query'][_0x4bb1('0x3c')]);_0x409edc['where']=qs['filters'](_[_0x4bb1('0x3d')](_0x2578ad[_0x4bb1('0x34')],_0x147d3d['filters']),_0x30a8e8);if(_0x2578ad[_0x4bb1('0x34')][_0x4bb1('0x3e')]){_0x409edc[_0x4bb1('0x3f')]=_[_0x4bb1('0x40')](_0x409edc['where'],{'$or':_[_0x4bb1('0x30')](_0x30a8e8,function(_0x40c339){if(_0x40c339[_0x4bb1('0x41')]!==_0x4bb1('0x42')){var _0x406325={};_0x406325[_0x40c339[_0x4bb1('0x2e')]]={'$like':'%'+_0x2578ad['query'][_0x4bb1('0x3e')]+'%'};return _0x406325;}})});}_0x409edc=_[_0x4bb1('0x40')]({},_0x409edc,_0x2578ad['options']);var _0x33d247={'where':_0x409edc[_0x4bb1('0x3f')]};return db[_0x4bb1('0x31')]['count'](_0x33d247)[_0x4bb1('0x2d')](function(_0x5f5f6f){_0x2ce9fd[_0x4bb1('0x27')]=_0x5f5f6f;if(_0x2578ad[_0x4bb1('0x34')]['includeAll']){_0x409edc[_0x4bb1('0x43')]=[{'all':!![]}];}return db[_0x4bb1('0x31')][_0x4bb1('0x44')](_0x409edc);})['then'](function(_0x409674){_0x2ce9fd[_0x4bb1('0x45')]=_0x409674;return _0x2ce9fd;})['then'](respondWithFilteredResult(_0x247a3e,_0x409edc))[_0x4bb1('0x46')](handleError(_0x247a3e,null));};exports[_0x4bb1('0x47')]=function(_0x3e3e74,_0x3db47c){var _0x1df786={'raw':![],'where':{'id':_0x3e3e74[_0x4bb1('0x48')]['id']}},_0x4b3d96={};_0x4b3d96[_0x4bb1('0x33')]=_[_0x4bb1('0x49')](db[_0x4bb1('0x31')][_0x4bb1('0x4a')]);_0x4b3d96[_0x4bb1('0x34')]=_[_0x4bb1('0x49')](_0x3e3e74['query']);_0x4b3d96['filters']=_[_0x4bb1('0x37')](_0x4b3d96[_0x4bb1('0x33')],_0x4b3d96['query']);_0x1df786[_0x4bb1('0x36')]=_[_0x4bb1('0x37')](_0x4b3d96['model'],qs[_0x4bb1('0x38')](_0x3e3e74[_0x4bb1('0x34')]['fields']));_0x1df786[_0x4bb1('0x36')]=_0x1df786[_0x4bb1('0x36')]['length']?_0x1df786[_0x4bb1('0x36')]:_0x4b3d96[_0x4bb1('0x33')];if(_0x3e3e74[_0x4bb1('0x34')]['includeAll']){_0x1df786[_0x4bb1('0x43')]=[{'all':!![]}];}_0x1df786=_['merge']({},_0x1df786,_0x3e3e74[_0x4bb1('0x4b')]);return db['FreshsalesAccount'][_0x4bb1('0x4c')](_0x1df786)[_0x4bb1('0x2d')](handleEntityNotFound(_0x3db47c,null))[_0x4bb1('0x2d')](respondWithResult(_0x3db47c,null))[_0x4bb1('0x46')](handleError(_0x3db47c,null));};exports[_0x4bb1('0x4d')]=function(_0x1df50f,_0x234047){return db[_0x4bb1('0x31')][_0x4bb1('0x4d')](_0x1df50f[_0x4bb1('0x4e')],{})['then'](respondWithResult(_0x234047,0xc9))[_0x4bb1('0x46')](handleError(_0x234047,null));};exports[_0x4bb1('0x2c')]=function(_0xe57b6a,_0x41880f){if(_0xe57b6a['body']['id']){delete _0xe57b6a[_0x4bb1('0x4e')]['id'];}return db[_0x4bb1('0x31')][_0x4bb1('0x4c')]({'where':{'id':_0xe57b6a[_0x4bb1('0x48')]['id']}})[_0x4bb1('0x2d')](handleEntityNotFound(_0x41880f,null))[_0x4bb1('0x2d')](saveUpdates(_0xe57b6a[_0x4bb1('0x4e')],null))[_0x4bb1('0x2d')](respondWithResult(_0x41880f,null))['catch'](handleError(_0x41880f,null));};exports[_0x4bb1('0x4f')]=function(_0x2d8347,_0x9de3d0){return db[_0x4bb1('0x31')][_0x4bb1('0x4c')]({'where':{'id':_0x2d8347[_0x4bb1('0x48')]['id']}})[_0x4bb1('0x2d')](handleEntityNotFound(_0x9de3d0,null))['then'](removeEntity(_0x9de3d0,null))[_0x4bb1('0x46')](handleError(_0x9de3d0,null));};exports['getConfigurations']=function(_0x33edd1,_0x175eb3,_0x1011f8){var _0x3df2a2={};var _0x2071b2={};var _0x314625;var _0x3a0d45;return db[_0x4bb1('0x31')][_0x4bb1('0x50')]({'where':{'id':_0x33edd1[_0x4bb1('0x48')]['id']}})[_0x4bb1('0x2d')](handleEntityNotFound(_0x175eb3,null))['then'](function(_0x197dfe){if(_0x197dfe){_0x314625=_0x197dfe;_0x2071b2['model']=_['keys'](db[_0x4bb1('0x51')][_0x4bb1('0x4a')]);_0x2071b2[_0x4bb1('0x34')]=_[_0x4bb1('0x49')](_0x33edd1[_0x4bb1('0x34')]);_0x2071b2['filters']=_['intersection'](_0x2071b2['model'],_0x2071b2[_0x4bb1('0x34')]);_0x3df2a2[_0x4bb1('0x36')]=_[_0x4bb1('0x37')](_0x2071b2[_0x4bb1('0x33')],qs[_0x4bb1('0x38')](_0x33edd1[_0x4bb1('0x34')][_0x4bb1('0x38')]));_0x3df2a2[_0x4bb1('0x36')]=_0x3df2a2[_0x4bb1('0x36')][_0x4bb1('0x39')]?_0x3df2a2['attributes']:_0x2071b2[_0x4bb1('0x33')];_0x3df2a2[_0x4bb1('0x52')]=qs[_0x4bb1('0x3c')](_0x33edd1[_0x4bb1('0x34')]['sort']);_0x3df2a2[_0x4bb1('0x3f')]=qs[_0x4bb1('0x35')](_[_0x4bb1('0x3d')](_0x33edd1['query'],_0x2071b2[_0x4bb1('0x35')]));if(_0x33edd1['query'][_0x4bb1('0x3e')]){_0x3df2a2[_0x4bb1('0x3f')]=_[_0x4bb1('0x40')](_0x3df2a2[_0x4bb1('0x3f')],{'$or':_[_0x4bb1('0x30')](_0x3df2a2[_0x4bb1('0x36')],function(_0x453f6f){var _0x3ce75e={};_0x3ce75e[_0x453f6f]={'$like':'%'+_0x33edd1[_0x4bb1('0x34')][_0x4bb1('0x3e')]+'%'};return _0x3ce75e;})});}_0x3df2a2=_[_0x4bb1('0x40')]({},_0x3df2a2,_0x33edd1[_0x4bb1('0x4b')]);return _0x314625[_0x4bb1('0x53')](_0x3df2a2);}})[_0x4bb1('0x2d')](function(_0x4a65fd){if(_0x4a65fd){_0x3a0d45=_0x4a65fd[_0x4bb1('0x39')];if(!_0x33edd1[_0x4bb1('0x34')]['hasOwnProperty']('nolimit')){_0x3df2a2[_0x4bb1('0x29')]=qs[_0x4bb1('0x29')](_0x33edd1[_0x4bb1('0x34')][_0x4bb1('0x29')]);_0x3df2a2[_0x4bb1('0x28')]=qs[_0x4bb1('0x28')](_0x33edd1[_0x4bb1('0x34')][_0x4bb1('0x28')]);}return _0x314625['getConfigurations'](_0x3df2a2);}})[_0x4bb1('0x2d')](function(_0x56fa3a){if(_0x56fa3a){return _0x56fa3a?{'count':_0x3a0d45,'rows':_0x56fa3a}:null;}})[_0x4bb1('0x2d')](respondWithResult(_0x175eb3,null))[_0x4bb1('0x46')](handleError(_0x175eb3,null));};exports[_0x4bb1('0x54')]=function(_0x20bc80,_0x5abcac,_0x506c7a){if(_0x20bc80[_0x4bb1('0x4e')]['id']){delete _0x20bc80[_0x4bb1('0x4e')]['id'];}return db['FreshsalesAccount'][_0x4bb1('0x50')]({'where':{'id':_0x20bc80[_0x4bb1('0x48')]['id']}})['then'](handleEntityNotFound(_0x5abcac,null))[_0x4bb1('0x2d')](function(_0x49975e){if(_0x49975e){_0x20bc80[_0x4bb1('0x4e')]['AccountId']=_0x49975e['id'];_0x20bc80['body'][_0x4bb1('0x55')]=integrations[_0x4bb1('0x56')](_0x20bc80[_0x4bb1('0x4e')][_0x4bb1('0x57')],_0x20bc80[_0x4bb1('0x4e')][_0x4bb1('0x41')]);_0x20bc80[_0x4bb1('0x4e')]['Descriptions']=integrations['getDescriptions'](_0x20bc80[_0x4bb1('0x4e')][_0x4bb1('0x57')],_0x20bc80[_0x4bb1('0x4e')][_0x4bb1('0x41')]);return db[_0x4bb1('0x51')]['create'](_0x20bc80[_0x4bb1('0x4e')],{'include':[{'model':db['FreshsalesField'],'as':_0x4bb1('0x55')},{'model':db['FreshsalesField'],'as':_0x4bb1('0x58')}]});}return null;})[_0x4bb1('0x2d')](respondWithResult(_0x5abcac,null))[_0x4bb1('0x46')](handleError(_0x5abcac,null));};exports[_0x4bb1('0x59')]=function(_0x228285,_0x3a5b36,_0x492feb){var _0x292829='';var _0xd44311='';return db[_0x4bb1('0x31')][_0x4bb1('0x50')]({'where':{'id':_0x228285[_0x4bb1('0x48')]['id']},'attributes':['id',_0x4bb1('0x5a'),_0x4bb1('0x5b'),_0x4bb1('0x5c')]})['then'](handleEntityNotFound(_0x3a5b36,null))[_0x4bb1('0x2d')](function(_0x4734f3){if(_0x4734f3){_0xd44311=_0x4734f3[_0x4bb1('0x5a')];_0x292829=_0x4734f3['remoteUri'];var _0x1d4187=_0x4734f3[_0x4bb1('0x5b')][_0x4bb1('0x5d')](-0x1);if(_0x1d4187==='/'){_0x292829=_0x292829[_0x4bb1('0x5e')](0x0,_0x292829[_0x4bb1('0x5f')](_0x1d4187));}return rp({'method':_0x4bb1('0x60'),'uri':util[_0x4bb1('0x61')](_0x4bb1('0x62'),_0x292829,_0x4bb1('0x63')),'headers':{'Authorization':_0x4bb1('0x64')+_0x4734f3[_0x4bb1('0x5c')]},'json':!![]});}})[_0x4bb1('0x2d')](function(_0x388857){if(_0x388857){var _0x3b57ca=_0x388857['users'];var _0x1c6f6a=![];var _0x298ca5=null;for(_0x298ca5=0x0;_0x298ca5<_0x3b57ca[_0x4bb1('0x39')];_0x298ca5++){if(_0x3b57ca[_0x298ca5][_0x4bb1('0x65')]===_0xd44311){_0x1c6f6a=!![];}}if(_0x1c6f6a){return!![];}else{throw new Error({'statusCode':0x194,'message':_0x4bb1('0x66')});}}})[_0x4bb1('0x2d')](respondWithResult(_0x3a5b36,null))[_0x4bb1('0x46')](function(_0x4fc193){var _0x2ac754=_0x228285['query'][_0x4bb1('0x67')]?0x1f4:_0x4fc193[_0x4bb1('0x68')]||0x1f4;logger['error'](_0x4bb1('0x69'),'getFields',_0x2ac754,JSON[_0x4bb1('0x6a')](_0x4fc193));delete _0x4fc193[_0x4bb1('0x2e')];if(_0x2ac754===0x191){_0x2ac754=0x190;}_0x3a5b36[_0x4bb1('0x25')](_0x2ac754)[_0x4bb1('0x2f')](_0x228285[_0x4bb1('0x34')]['test']?{'message':_0x4bb1('0x6b'),'statusCode':_0x4fc193[_0x4bb1('0x68')]}:_0x4fc193);});};