Built motion from commit (unavailable).|2.5.17
[motion2.git] / server / api / cmCompany / cmCompany.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 _0x13b2=['get','UserProfileResource','end','stack','name','send','index','CmCompany','describe','keys','query','filters','intersection','model','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','map','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Companies','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','destroy','addContacts','CmContact','ids','omit','getContacts','findOne','hasOwnProperty','html-pdf','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','status','json','count','offset','limit','set','Content-Range','reject','save','update','then'];(function(_0x228d87,_0x4640a2){var _0x2301af=function(_0x2876b2){while(--_0x2876b2){_0x228d87['push'](_0x228d87['shift']());}};_0x2301af(++_0x4640a2);}(_0x13b2,0x1e7));var _0x213b=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x13b2[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0x213b('0x0'));var emlformat=require(_0x213b('0x1'));var rimraf=require(_0x213b('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x213b('0x3'));var rp=require('request-promise');var moment=require(_0x213b('0x4'));var BPromise=require(_0x213b('0x5'));var Mustache=require(_0x213b('0x6'));var util=require('util');var path=require(_0x213b('0x7'));var sox=require(_0x213b('0x8'));var csv=require(_0x213b('0x9'));var ejs=require(_0x213b('0xa'));var fs=require('fs');var _=require(_0x213b('0xb'));var squel=require('squel');var crypto=require(_0x213b('0xc'));var jsforce=require(_0x213b('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x213b('0x9'));var querystring=require(_0x213b('0xe'));var Papa=require('papaparse');var Redis=require(_0x213b('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x213b('0x10'));var as=require(_0x213b('0x11'));var hardwareService=require(_0x213b('0x12'));var logger=require(_0x213b('0x13'))(_0x213b('0x14'));var utils=require('../../config/utils');var config=require(_0x213b('0x15'));var licenseUtil=require(_0x213b('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x552ace,_0x63b0e5){_0x63b0e5=_0x63b0e5||0xcc;return function(_0x2152eb){if(_0x2152eb){return _0x552ace[_0x213b('0x17')](_0x63b0e5);}return _0x552ace[_0x213b('0x18')](_0x63b0e5)['end']();};}function respondWithResult(_0x5297b9,_0x1510aa){_0x1510aa=_0x1510aa||0xc8;return function(_0xdd67e5){if(_0xdd67e5){return _0x5297b9[_0x213b('0x18')](_0x1510aa)[_0x213b('0x19')](_0xdd67e5);}};}function respondWithFilteredResult(_0x33feaa,_0x1152df){return function(_0x348d34){if(_0x348d34){var _0x47d352=_0x348d34[_0x213b('0x1a')],_0x4f832a=_0x1152df[_0x213b('0x1b')],_0x4fdc60=_0x1152df[_0x213b('0x1b')]+_0x1152df[_0x213b('0x1c')],_0x2cfa3e;if(_0x4fdc60>=_0x47d352){_0x4fdc60=_0x47d352;_0x2cfa3e=0xc8;}else{_0x2cfa3e=0xce;}_0x33feaa[_0x213b('0x18')](_0x2cfa3e);return _0x33feaa[_0x213b('0x1d')](_0x213b('0x1e'),_0x4f832a+'-'+_0x4fdc60+'/'+_0x47d352)['json'](_0x348d34);}return null;};}function patchUpdates(_0x7919f0){return function(_0x567195){try{jsonpatch['apply'](_0x567195,_0x7919f0,!![]);}catch(_0x5858cc){return BPromise[_0x213b('0x1f')](_0x5858cc);}return _0x567195[_0x213b('0x20')]();};}function saveUpdates(_0x1f60cd,_0x5a2396){return function(_0x59fdb5){if(_0x59fdb5){return _0x59fdb5[_0x213b('0x21')](_0x1f60cd)[_0x213b('0x22')](function(_0xf9b485){return _0xf9b485;});}return null;};}function removeEntity(_0x1b8c28,_0x316ad8){return function(_0x4a83ea){if(_0x4a83ea){return _0x4a83ea['destroy']()[_0x213b('0x22')](function(){var _0x39c26a=_0x4a83ea[_0x213b('0x23')]({'plain':!![]});var _0x1afed5='Companies';return db[_0x213b('0x24')]['destroy']({'where':{'type':_0x1afed5,'resourceId':_0x39c26a['id']}})[_0x213b('0x22')](function(){return _0x4a83ea;});})['then'](function(){_0x1b8c28['status'](0xcc)[_0x213b('0x25')]();});}};}function handleEntityNotFound(_0x4c0c82,_0xe38562){return function(_0x235dc1){if(!_0x235dc1){_0x4c0c82[_0x213b('0x17')](0x194);}return _0x235dc1;};}function handleError(_0x4f8f10,_0x5958fc){_0x5958fc=_0x5958fc||0x1f4;return function(_0x5d4dc9){logger['error'](_0x5d4dc9[_0x213b('0x26')]);if(_0x5d4dc9[_0x213b('0x27')]){delete _0x5d4dc9[_0x213b('0x27')];}_0x4f8f10[_0x213b('0x18')](_0x5958fc)[_0x213b('0x28')](_0x5d4dc9);};}exports[_0x213b('0x29')]=function(_0x340837,_0x8d70e7){var _0x5d9773={},_0x5cbc20={},_0x1e7457={'count':0x0,'rows':[]};return db[_0x213b('0x2a')][_0x213b('0x2b')]()[_0x213b('0x22')](function(_0x5b5641){_0x5cbc20['model']=_[_0x213b('0x2c')](_0x5b5641);_0x5cbc20[_0x213b('0x2d')]=_[_0x213b('0x2c')](_0x340837[_0x213b('0x2d')]);_0x5cbc20[_0x213b('0x2e')]=_[_0x213b('0x2f')](_0x5cbc20[_0x213b('0x30')],_0x5cbc20['query']);_0x5d9773[_0x213b('0x31')]=_[_0x213b('0x2f')](_0x5cbc20[_0x213b('0x30')],qs[_0x213b('0x32')](_0x340837[_0x213b('0x2d')][_0x213b('0x32')]));_0x5d9773[_0x213b('0x31')]=_0x5d9773[_0x213b('0x31')][_0x213b('0x33')]?_0x5d9773[_0x213b('0x31')]:_0x5cbc20[_0x213b('0x30')];if(!_0x340837['query']['hasOwnProperty'](_0x213b('0x34'))){_0x5d9773['limit']=qs[_0x213b('0x1c')](_0x340837[_0x213b('0x2d')][_0x213b('0x1c')]);_0x5d9773['offset']=qs[_0x213b('0x1b')](_0x340837[_0x213b('0x2d')][_0x213b('0x1b')]);}_0x5d9773[_0x213b('0x35')]=qs[_0x213b('0x36')](_0x340837[_0x213b('0x2d')]['sort']);_0x5d9773[_0x213b('0x37')]=qs[_0x213b('0x2e')](_[_0x213b('0x38')](_0x340837[_0x213b('0x2d')],_0x5cbc20['filters']),_0x5b5641);if(_0x340837[_0x213b('0x2d')][_0x213b('0x39')]){_0x5d9773[_0x213b('0x37')]=_[_0x213b('0x3a')](_0x5d9773[_0x213b('0x37')],{'$or':_[_0x213b('0x3b')](_0x5d9773[_0x213b('0x31')],function(_0x11ab39){var _0x575908={};_0x575908[_0x11ab39]={'$like':'%'+_0x340837['query']['filter']+'%'};return _0x575908;})});}_0x5d9773=_[_0x213b('0x3a')]({},_0x5d9773,_0x340837[_0x213b('0x3c')]);var _0x2e0a3a={'where':_0x5d9773[_0x213b('0x37')]};return db[_0x213b('0x2a')][_0x213b('0x1a')](_0x2e0a3a)[_0x213b('0x22')](function(_0x36a202){_0x1e7457[_0x213b('0x1a')]=_0x36a202;if(_0x340837[_0x213b('0x2d')][_0x213b('0x3d')]){_0x5d9773[_0x213b('0x3e')]=[{'all':!![]}];}return db[_0x213b('0x2a')][_0x213b('0x3f')](_0x5d9773);})[_0x213b('0x22')](function(_0x581e07){_0x1e7457[_0x213b('0x40')]=_0x581e07;return _0x1e7457;})['then'](respondWithFilteredResult(_0x8d70e7,_0x5d9773))['catch'](handleError(_0x8d70e7,null));})[_0x213b('0x41')](handleError(_0x8d70e7,null));};exports[_0x213b('0x42')]=function(_0x260b2c,_0x375363){var _0x51e817={'raw':![],'where':{'id':_0x260b2c[_0x213b('0x43')]['id']}},_0x467917={};_0x467917[_0x213b('0x30')]=_[_0x213b('0x2c')](db[_0x213b('0x2a')][_0x213b('0x44')]);_0x467917[_0x213b('0x2d')]=_[_0x213b('0x2c')](_0x260b2c[_0x213b('0x2d')]);_0x467917[_0x213b('0x2e')]=_[_0x213b('0x2f')](_0x467917[_0x213b('0x30')],_0x467917['query']);_0x51e817['attributes']=_[_0x213b('0x2f')](_0x467917[_0x213b('0x30')],qs[_0x213b('0x32')](_0x260b2c['query']['fields']));_0x51e817[_0x213b('0x31')]=_0x51e817[_0x213b('0x31')][_0x213b('0x33')]?_0x51e817[_0x213b('0x31')]:_0x467917[_0x213b('0x30')];if(_0x260b2c[_0x213b('0x2d')]['includeAll']){_0x51e817[_0x213b('0x3e')]=[{'all':!![]}];}_0x51e817=_[_0x213b('0x3a')]({},_0x51e817,_0x260b2c['options']);return db['CmCompany'][_0x213b('0x45')](_0x51e817)[_0x213b('0x22')](handleEntityNotFound(_0x375363,null))['then'](respondWithResult(_0x375363,null))['catch'](handleError(_0x375363,null));};exports[_0x213b('0x46')]=function(_0x1afca0,_0x48e90c){return db[_0x213b('0x2a')][_0x213b('0x46')](_0x1afca0[_0x213b('0x47')],{})['then'](function(_0x32155b){var _0x1c3082=_0x1afca0['user'][_0x213b('0x23')]({'plain':!![]});if(!_0x1c3082)throw new Error(_0x213b('0x48'));if(_0x1c3082[_0x213b('0x49')]==='user'){var _0x8166bf=_0x32155b[_0x213b('0x23')]({'plain':!![]});var _0x45ea69=_0x213b('0x4a');return db[_0x213b('0x4b')][_0x213b('0x45')]({'where':{'name':_0x45ea69,'userProfileId':_0x1c3082[_0x213b('0x4c')]},'raw':!![]})[_0x213b('0x22')](function(_0xba45cc){if(_0xba45cc&&_0xba45cc[_0x213b('0x4d')]===0x0){return db[_0x213b('0x24')][_0x213b('0x46')]({'name':_0x8166bf['name'],'resourceId':_0x8166bf['id'],'type':_0xba45cc[_0x213b('0x27')],'sectionId':_0xba45cc['id']},{})[_0x213b('0x22')](function(){return _0x32155b;});}else{return _0x32155b;}})[_0x213b('0x41')](function(_0x288a0d){logger['error'](_0x213b('0x4e'),_0x288a0d);throw _0x288a0d;});}return _0x32155b;})[_0x213b('0x22')](respondWithResult(_0x48e90c,0xc9))[_0x213b('0x41')](handleError(_0x48e90c,null));};exports['update']=function(_0x4eb63d,_0x1d8a9c){if(_0x4eb63d[_0x213b('0x47')]['id']){delete _0x4eb63d['body']['id'];}return db[_0x213b('0x2a')][_0x213b('0x45')]({'where':{'id':_0x4eb63d[_0x213b('0x43')]['id']}})[_0x213b('0x22')](handleEntityNotFound(_0x1d8a9c,null))[_0x213b('0x22')](saveUpdates(_0x4eb63d[_0x213b('0x47')],null))['then'](respondWithResult(_0x1d8a9c,null))['catch'](handleError(_0x1d8a9c,null));};exports[_0x213b('0x4f')]=function(_0x3c11a7,_0x4de913){return db[_0x213b('0x2a')][_0x213b('0x45')]({'where':{'id':_0x3c11a7[_0x213b('0x43')]['id']}})['then'](handleEntityNotFound(_0x4de913,null))[_0x213b('0x22')](removeEntity(_0x4de913,null))[_0x213b('0x41')](handleError(_0x4de913,null));};exports[_0x213b('0x2b')]=function(_0x101d7f,_0x2ed5d4){return db[_0x213b('0x2a')]['describe']()[_0x213b('0x22')](respondWithResult(_0x2ed5d4,null))['catch'](handleError(_0x2ed5d4,null));};exports[_0x213b('0x50')]=function(_0x5e579f,_0x24bd51,_0x8e625c){return db[_0x213b('0x51')][_0x213b('0x45')]({'where':{'id':_0x5e579f[_0x213b('0x43')]['id']}})[_0x213b('0x22')](handleEntityNotFound(_0x24bd51,null))['then'](function(_0x16fb0b){if(_0x16fb0b){return _0x16fb0b[_0x213b('0x50')](_0x5e579f[_0x213b('0x47')][_0x213b('0x52')],_[_0x213b('0x53')](_0x5e579f['body'],['ids','id'])||{});}})[_0x213b('0x22')](respondWithResult(_0x24bd51,null))[_0x213b('0x41')](handleError(_0x24bd51,null));};exports[_0x213b('0x54')]=function(_0x4c5bf4,_0x524c4d,_0x64ee0c){var _0x92bbdf={};var _0x17721c={};var _0x1c8c7f;var _0x22bbca;return db[_0x213b('0x2a')][_0x213b('0x55')]({'where':{'id':_0x4c5bf4[_0x213b('0x43')]['id']}})[_0x213b('0x22')](handleEntityNotFound(_0x524c4d,null))[_0x213b('0x22')](function(_0x30859d){if(_0x30859d){_0x1c8c7f=_0x30859d;_0x17721c['model']=_['keys'](db[_0x213b('0x51')][_0x213b('0x44')]);_0x17721c[_0x213b('0x2d')]=_[_0x213b('0x2c')](_0x4c5bf4[_0x213b('0x2d')]);_0x17721c[_0x213b('0x2e')]=_[_0x213b('0x2f')](_0x17721c[_0x213b('0x30')],_0x17721c[_0x213b('0x2d')]);_0x92bbdf[_0x213b('0x31')]=_[_0x213b('0x2f')](_0x17721c['model'],qs['fields'](_0x4c5bf4[_0x213b('0x2d')][_0x213b('0x32')]));_0x92bbdf['attributes']=_0x92bbdf[_0x213b('0x31')][_0x213b('0x33')]?_0x92bbdf[_0x213b('0x31')]:_0x17721c[_0x213b('0x30')];_0x92bbdf[_0x213b('0x35')]=qs[_0x213b('0x36')](_0x4c5bf4[_0x213b('0x2d')][_0x213b('0x36')]);_0x92bbdf['where']=qs[_0x213b('0x2e')](_[_0x213b('0x38')](_0x4c5bf4['query'],_0x17721c[_0x213b('0x2e')]));if(_0x4c5bf4['query']['filter']){_0x92bbdf[_0x213b('0x37')]=_['merge'](_0x92bbdf[_0x213b('0x37')],{'$or':_[_0x213b('0x3b')](_0x92bbdf['attributes'],function(_0x431f6e){var _0x9e6cf2={};_0x9e6cf2[_0x431f6e]={'$like':'%'+_0x4c5bf4[_0x213b('0x2d')][_0x213b('0x39')]+'%'};return _0x9e6cf2;})});}_0x92bbdf=_[_0x213b('0x3a')]({},_0x92bbdf,_0x4c5bf4[_0x213b('0x3c')]);return _0x1c8c7f[_0x213b('0x54')](_0x92bbdf);}})[_0x213b('0x22')](function(_0x190ebe){if(_0x190ebe){_0x22bbca=_0x190ebe[_0x213b('0x33')];if(!_0x4c5bf4[_0x213b('0x2d')][_0x213b('0x56')](_0x213b('0x34'))){_0x92bbdf['limit']=qs['limit'](_0x4c5bf4['query']['limit']);_0x92bbdf[_0x213b('0x1b')]=qs[_0x213b('0x1b')](_0x4c5bf4[_0x213b('0x2d')][_0x213b('0x1b')]);}return _0x1c8c7f[_0x213b('0x54')](_0x92bbdf);}})[_0x213b('0x22')](function(_0x17f050){if(_0x17f050){return _0x17f050?{'count':_0x22bbca,'rows':_0x17f050}:null;}})[_0x213b('0x22')](respondWithResult(_0x524c4d,null))[_0x213b('0x41')](handleError(_0x524c4d,null));};