Built motion from commit (unavailable).|2.5.22
[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 _0xafc0=['filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','map','options','CmCompany','includeAll','rows','catch','show','params','rawAttributes','include','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','body','CmContact','ids','omit','getContacts','findOne','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','reject','save','then','destroy','get','Companies','UserProfileResource','error','stack','name','send','index','describe','model','keys','query'];(function(_0x3b8e52,_0x2ac683){var _0x281a8d=function(_0x1ac2bd){while(--_0x1ac2bd){_0x3b8e52['push'](_0x3b8e52['shift']());}};_0x281a8d(++_0x2ac683);}(_0xafc0,0xd7));var _0x0afc=function(_0x151cdd,_0x32462f){_0x151cdd=_0x151cdd-0x0;var _0xd7dbd3=_0xafc0[_0x151cdd];return _0xd7dbd3;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x0afc('0x0'));var rimraf=require(_0x0afc('0x1'));var zipdir=require(_0x0afc('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x0afc('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x0afc('0x4'));var util=require(_0x0afc('0x5'));var path=require(_0x0afc('0x6'));var sox=require(_0x0afc('0x7'));var csv=require(_0x0afc('0x8'));var ejs=require(_0x0afc('0x9'));var fs=require('fs');var _=require(_0x0afc('0xa'));var squel=require(_0x0afc('0xb'));var crypto=require(_0x0afc('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x0afc('0xd'));var toCsv=require(_0x0afc('0x8'));var querystring=require(_0x0afc('0xe'));var Papa=require('papaparse');var Redis=require(_0x0afc('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x0afc('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x0afc('0x11'));var logger=require(_0x0afc('0x12'))(_0x0afc('0x13'));var utils=require(_0x0afc('0x14'));var config=require(_0x0afc('0x15'));var licenseUtil=require(_0x0afc('0x16'));var db=require(_0x0afc('0x17'))['db'];function respondWithStatusCode(_0x249291,_0x1fbe2a){_0x1fbe2a=_0x1fbe2a||0xcc;return function(_0x3c207b){if(_0x3c207b){return _0x249291[_0x0afc('0x18')](_0x1fbe2a);}return _0x249291[_0x0afc('0x19')](_0x1fbe2a)[_0x0afc('0x1a')]();};}function respondWithResult(_0xeab5cf,_0x4522f4){_0x4522f4=_0x4522f4||0xc8;return function(_0x413e25){if(_0x413e25){return _0xeab5cf[_0x0afc('0x19')](_0x4522f4)[_0x0afc('0x1b')](_0x413e25);}};}function respondWithFilteredResult(_0x4e8e71,_0x11723c){return function(_0x21ba79){if(_0x21ba79){var _0x45aa85=_0x21ba79[_0x0afc('0x1c')],_0x58c340=_0x11723c[_0x0afc('0x1d')],_0x4ded20=_0x11723c['offset']+_0x11723c[_0x0afc('0x1e')],_0x1ebb35;if(_0x4ded20>=_0x45aa85){_0x4ded20=_0x45aa85;_0x1ebb35=0xc8;}else{_0x1ebb35=0xce;}_0x4e8e71['status'](_0x1ebb35);return _0x4e8e71['set'](_0x0afc('0x1f'),_0x58c340+'-'+_0x4ded20+'/'+_0x45aa85)[_0x0afc('0x1b')](_0x21ba79);}return null;};}function patchUpdates(_0x29b6ec){return function(_0x396f59){try{jsonpatch[_0x0afc('0x20')](_0x396f59,_0x29b6ec,!![]);}catch(_0x485d71){return BPromise[_0x0afc('0x21')](_0x485d71);}return _0x396f59[_0x0afc('0x22')]();};}function saveUpdates(_0x21ba86,_0x7f158c){return function(_0xece5e5){if(_0xece5e5){return _0xece5e5['update'](_0x21ba86)[_0x0afc('0x23')](function(_0x52ed8f){return _0x52ed8f;});}return null;};}function removeEntity(_0x478a92,_0x9e19dd){return function(_0x1bd10d){if(_0x1bd10d){return _0x1bd10d[_0x0afc('0x24')]()[_0x0afc('0x23')](function(){var _0x61bf8a=_0x1bd10d[_0x0afc('0x25')]({'plain':!![]});var _0x5b4a4b=_0x0afc('0x26');return db[_0x0afc('0x27')][_0x0afc('0x24')]({'where':{'type':_0x5b4a4b,'resourceId':_0x61bf8a['id']}})['then'](function(){return _0x1bd10d;});})[_0x0afc('0x23')](function(){_0x478a92[_0x0afc('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x52f1cc,_0x5daa38){return function(_0x59e3cb){if(!_0x59e3cb){_0x52f1cc[_0x0afc('0x18')](0x194);}return _0x59e3cb;};}function handleError(_0x232464,_0x42b260){_0x42b260=_0x42b260||0x1f4;return function(_0x1359bc){logger[_0x0afc('0x28')](_0x1359bc[_0x0afc('0x29')]);if(_0x1359bc[_0x0afc('0x2a')]){delete _0x1359bc['name'];}_0x232464[_0x0afc('0x19')](_0x42b260)[_0x0afc('0x2b')](_0x1359bc);};}exports[_0x0afc('0x2c')]=function(_0x73e9e7,_0x5340c8){var _0x5e2b85={},_0x34e597={},_0x4c0c2b={'count':0x0,'rows':[]};return db['CmCompany'][_0x0afc('0x2d')]()[_0x0afc('0x23')](function(_0x2dc1f1){_0x34e597[_0x0afc('0x2e')]=_[_0x0afc('0x2f')](_0x2dc1f1);_0x34e597[_0x0afc('0x30')]=_[_0x0afc('0x2f')](_0x73e9e7[_0x0afc('0x30')]);_0x34e597[_0x0afc('0x31')]=_[_0x0afc('0x32')](_0x34e597[_0x0afc('0x2e')],_0x34e597[_0x0afc('0x30')]);_0x5e2b85['attributes']=_[_0x0afc('0x32')](_0x34e597[_0x0afc('0x2e')],qs[_0x0afc('0x33')](_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x33')]));_0x5e2b85[_0x0afc('0x34')]=_0x5e2b85['attributes'][_0x0afc('0x35')]?_0x5e2b85[_0x0afc('0x34')]:_0x34e597[_0x0afc('0x2e')];if(!_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x36')](_0x0afc('0x37'))){_0x5e2b85[_0x0afc('0x1e')]=qs['limit'](_0x73e9e7[_0x0afc('0x30')]['limit']);_0x5e2b85[_0x0afc('0x1d')]=qs[_0x0afc('0x1d')](_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x1d')]);}_0x5e2b85[_0x0afc('0x38')]=qs['sort'](_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x39')]);_0x5e2b85['where']=qs[_0x0afc('0x31')](_[_0x0afc('0x3a')](_0x73e9e7['query'],_0x34e597[_0x0afc('0x31')]),_0x2dc1f1);if(_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x3b')]){_0x5e2b85[_0x0afc('0x3c')]=_[_0x0afc('0x3d')](_0x5e2b85[_0x0afc('0x3c')],{'$or':_[_0x0afc('0x3e')](_0x5e2b85[_0x0afc('0x34')],function(_0xfef15b){var _0x2a701e={};_0x2a701e[_0xfef15b]={'$like':'%'+_0x73e9e7['query'][_0x0afc('0x3b')]+'%'};return _0x2a701e;})});}_0x5e2b85=_[_0x0afc('0x3d')]({},_0x5e2b85,_0x73e9e7[_0x0afc('0x3f')]);var _0x111406={'where':_0x5e2b85[_0x0afc('0x3c')]};return db[_0x0afc('0x40')][_0x0afc('0x1c')](_0x111406)[_0x0afc('0x23')](function(_0x40b343){_0x4c0c2b[_0x0afc('0x1c')]=_0x40b343;if(_0x73e9e7[_0x0afc('0x30')][_0x0afc('0x41')]){_0x5e2b85['include']=[{'all':!![]}];}return db['CmCompany']['findAll'](_0x5e2b85);})['then'](function(_0xadf2ff){_0x4c0c2b[_0x0afc('0x42')]=_0xadf2ff;return _0x4c0c2b;})[_0x0afc('0x23')](respondWithFilteredResult(_0x5340c8,_0x5e2b85))[_0x0afc('0x43')](handleError(_0x5340c8,null));})['catch'](handleError(_0x5340c8,null));};exports[_0x0afc('0x44')]=function(_0x4128c6,_0x3cb2f3){var _0x22de3f={'raw':![],'where':{'id':_0x4128c6[_0x0afc('0x45')]['id']}},_0x29f9b1={};_0x29f9b1[_0x0afc('0x2e')]=_[_0x0afc('0x2f')](db['CmCompany'][_0x0afc('0x46')]);_0x29f9b1[_0x0afc('0x30')]=_['keys'](_0x4128c6[_0x0afc('0x30')]);_0x29f9b1['filters']=_[_0x0afc('0x32')](_0x29f9b1[_0x0afc('0x2e')],_0x29f9b1[_0x0afc('0x30')]);_0x22de3f[_0x0afc('0x34')]=_[_0x0afc('0x32')](_0x29f9b1['model'],qs[_0x0afc('0x33')](_0x4128c6['query'][_0x0afc('0x33')]));_0x22de3f['attributes']=_0x22de3f[_0x0afc('0x34')][_0x0afc('0x35')]?_0x22de3f[_0x0afc('0x34')]:_0x29f9b1[_0x0afc('0x2e')];if(_0x4128c6[_0x0afc('0x30')][_0x0afc('0x41')]){_0x22de3f[_0x0afc('0x47')]=[{'all':!![]}];}_0x22de3f=_[_0x0afc('0x3d')]({},_0x22de3f,_0x4128c6['options']);return db[_0x0afc('0x40')][_0x0afc('0x48')](_0x22de3f)[_0x0afc('0x23')](handleEntityNotFound(_0x3cb2f3,null))[_0x0afc('0x23')](respondWithResult(_0x3cb2f3,null))[_0x0afc('0x43')](handleError(_0x3cb2f3,null));};exports[_0x0afc('0x49')]=function(_0x392f6a,_0xd81e4){return db[_0x0afc('0x40')][_0x0afc('0x49')](_0x392f6a['body'],{})[_0x0afc('0x23')](function(_0x5d33ff){var _0x5cd214=_0x392f6a[_0x0afc('0x4a')][_0x0afc('0x25')]({'plain':!![]});if(!_0x5cd214)throw new Error(_0x0afc('0x4b'));if(_0x5cd214[_0x0afc('0x4c')]===_0x0afc('0x4a')){var _0x5ecba5=_0x5d33ff[_0x0afc('0x25')]({'plain':!![]});var _0x3b32a4=_0x0afc('0x26');return db[_0x0afc('0x4d')]['find']({'where':{'name':_0x3b32a4,'userProfileId':_0x5cd214[_0x0afc('0x4e')]},'raw':!![]})[_0x0afc('0x23')](function(_0x202238){if(_0x202238&&_0x202238[_0x0afc('0x4f')]===0x0){return db[_0x0afc('0x27')][_0x0afc('0x49')]({'name':_0x5ecba5[_0x0afc('0x2a')],'resourceId':_0x5ecba5['id'],'type':_0x202238[_0x0afc('0x2a')],'sectionId':_0x202238['id']},{})[_0x0afc('0x23')](function(){return _0x5d33ff;});}else{return _0x5d33ff;}})['catch'](function(_0x4d8d27){logger['error'](_0x0afc('0x50'),_0x4d8d27);throw _0x4d8d27;});}return _0x5d33ff;})[_0x0afc('0x23')](respondWithResult(_0xd81e4,0xc9))[_0x0afc('0x43')](handleError(_0xd81e4,null));};exports[_0x0afc('0x51')]=function(_0x58287f,_0x5b3eee){if(_0x58287f[_0x0afc('0x52')]['id']){delete _0x58287f[_0x0afc('0x52')]['id'];}return db[_0x0afc('0x40')][_0x0afc('0x48')]({'where':{'id':_0x58287f[_0x0afc('0x45')]['id']}})['then'](handleEntityNotFound(_0x5b3eee,null))[_0x0afc('0x23')](saveUpdates(_0x58287f[_0x0afc('0x52')],null))[_0x0afc('0x23')](respondWithResult(_0x5b3eee,null))['catch'](handleError(_0x5b3eee,null));};exports['destroy']=function(_0x5dc196,_0x768c7a){return db[_0x0afc('0x40')]['find']({'where':{'id':_0x5dc196[_0x0afc('0x45')]['id']}})[_0x0afc('0x23')](handleEntityNotFound(_0x768c7a,null))['then'](removeEntity(_0x768c7a,null))[_0x0afc('0x43')](handleError(_0x768c7a,null));};exports[_0x0afc('0x2d')]=function(_0x55d380,_0x938ee2){return db[_0x0afc('0x40')][_0x0afc('0x2d')]()[_0x0afc('0x23')](respondWithResult(_0x938ee2,null))[_0x0afc('0x43')](handleError(_0x938ee2,null));};exports['addContacts']=function(_0x3eee11,_0xa0a52b,_0x3aaa2b){return db[_0x0afc('0x53')][_0x0afc('0x48')]({'where':{'id':_0x3eee11['params']['id']}})['then'](handleEntityNotFound(_0xa0a52b,null))[_0x0afc('0x23')](function(_0x469e5e){if(_0x469e5e){return _0x469e5e['addContacts'](_0x3eee11[_0x0afc('0x52')][_0x0afc('0x54')],_[_0x0afc('0x55')](_0x3eee11['body'],[_0x0afc('0x54'),'id'])||{});}})[_0x0afc('0x23')](respondWithResult(_0xa0a52b,null))[_0x0afc('0x43')](handleError(_0xa0a52b,null));};exports[_0x0afc('0x56')]=function(_0x29dc9d,_0x1a8d31,_0x2b7098){var _0x560c51={};var _0x23896f={};var _0x58e0c2;var _0x50e712;return db[_0x0afc('0x40')][_0x0afc('0x57')]({'where':{'id':_0x29dc9d[_0x0afc('0x45')]['id']}})[_0x0afc('0x23')](handleEntityNotFound(_0x1a8d31,null))[_0x0afc('0x23')](function(_0x240e94){if(_0x240e94){_0x58e0c2=_0x240e94;_0x23896f[_0x0afc('0x2e')]=_[_0x0afc('0x2f')](db['CmContact'][_0x0afc('0x46')]);_0x23896f[_0x0afc('0x30')]=_[_0x0afc('0x2f')](_0x29dc9d[_0x0afc('0x30')]);_0x23896f[_0x0afc('0x31')]=_[_0x0afc('0x32')](_0x23896f['model'],_0x23896f['query']);_0x560c51[_0x0afc('0x34')]=_[_0x0afc('0x32')](_0x23896f['model'],qs[_0x0afc('0x33')](_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x33')]));_0x560c51['attributes']=_0x560c51['attributes'][_0x0afc('0x35')]?_0x560c51[_0x0afc('0x34')]:_0x23896f['model'];_0x560c51[_0x0afc('0x38')]=qs[_0x0afc('0x39')](_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x39')]);_0x560c51[_0x0afc('0x3c')]=qs[_0x0afc('0x31')](_[_0x0afc('0x3a')](_0x29dc9d['query'],_0x23896f[_0x0afc('0x31')]));if(_0x29dc9d[_0x0afc('0x30')]['filter']){_0x560c51[_0x0afc('0x3c')]=_[_0x0afc('0x3d')](_0x560c51[_0x0afc('0x3c')],{'$or':_['map'](_0x560c51['attributes'],function(_0x1d6765){var _0x2fef0b={};_0x2fef0b[_0x1d6765]={'$like':'%'+_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x3b')]+'%'};return _0x2fef0b;})});}_0x560c51=_['merge']({},_0x560c51,_0x29dc9d[_0x0afc('0x3f')]);return _0x58e0c2['getContacts'](_0x560c51);}})[_0x0afc('0x23')](function(_0x592b41){if(_0x592b41){_0x50e712=_0x592b41[_0x0afc('0x35')];if(!_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x36')](_0x0afc('0x37'))){_0x560c51[_0x0afc('0x1e')]=qs[_0x0afc('0x1e')](_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x1e')]);_0x560c51[_0x0afc('0x1d')]=qs[_0x0afc('0x1d')](_0x29dc9d[_0x0afc('0x30')][_0x0afc('0x1d')]);}return _0x58e0c2[_0x0afc('0x56')](_0x560c51);}})['then'](function(_0x19ee3b){if(_0x19ee3b){return _0x19ee3b?{'count':_0x50e712,'rows':_0x19ee3b}:null;}})[_0x0afc('0x23')](respondWithResult(_0x1a8d31,null))['catch'](handleError(_0x1a8d31,null));};