805501ab16f47d38bd88f41959db23a863ba1233
[motion2.git] / server / api / cmHopperAdditionalPhone / cmHopperAdditionalPhone.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 _0x8d9c=['path','sox','to-csv','ejs','fs-extra','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','status','end','json','limit','undefined','count','Content-Range','update','then','CmHopperAdditionalPhones','UserProfileResource','destroy','error','stack','map','CmHopperAdditionalPhone','rawAttributes','fieldName','type','key','model','name','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','offset','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','eml-format','fast-json-patch','request-promise','moment','mustache','util'];(function(_0x1cc8fe,_0x105328){var _0x230054=function(_0x1a1b56){while(--_0x1a1b56){_0x1cc8fe['push'](_0x1cc8fe['shift']());}};_0x230054(++_0x105328);}(_0x8d9c,0x13e));var _0xc8d9=function(_0x37aac6,_0x571543){_0x37aac6=_0x37aac6-0x0;var _0x4eed98=_0x8d9c[_0x37aac6];return _0x4eed98;};'use strict';var emlformat=require(_0xc8d9('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xc8d9('0x1'));var rp=require(_0xc8d9('0x2'));var moment=require(_0xc8d9('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xc8d9('0x4'));var util=require(_0xc8d9('0x5'));var path=require(_0xc8d9('0x6'));var sox=require(_0xc8d9('0x7'));var csv=require(_0xc8d9('0x8'));var ejs=require(_0xc8d9('0x9'));var fs=require('fs');var fs_extra=require(_0xc8d9('0xa'));var _=require(_0xc8d9('0xb'));var squel=require('squel');var crypto=require(_0xc8d9('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xc8d9('0xd'));var toCsv=require(_0xc8d9('0x8'));var querystring=require(_0xc8d9('0xe'));var Papa=require(_0xc8d9('0xf'));var Redis=require(_0xc8d9('0x10'));var authService=require(_0xc8d9('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xc8d9('0x12'));var hardwareService=require(_0xc8d9('0x13'));var logger=require(_0xc8d9('0x14'))(_0xc8d9('0x15'));var utils=require(_0xc8d9('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xc8d9('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x2bcaa4,_0x13a35d){_0x13a35d=_0x13a35d||0xcc;return function(_0x4ce49d){if(_0x4ce49d){return _0x2bcaa4['sendStatus'](_0x13a35d);}return _0x2bcaa4[_0xc8d9('0x18')](_0x13a35d)[_0xc8d9('0x19')]();};}function respondWithResult(_0x1a3cb1,_0x3b41ea){_0x3b41ea=_0x3b41ea||0xc8;return function(_0x2d6919){if(_0x2d6919){return _0x1a3cb1[_0xc8d9('0x18')](_0x3b41ea)[_0xc8d9('0x1a')](_0x2d6919);}};}function respondWithFilteredResult(_0x27bada,_0x56b1b4){return function(_0x52f205){if(_0x52f205){var _0x59f31e=typeof _0x56b1b4['offset']==='undefined'&&typeof _0x56b1b4[_0xc8d9('0x1b')]===_0xc8d9('0x1c');var _0xa544f9=_0x52f205[_0xc8d9('0x1d')];var _0x1c20b7=_0x59f31e?0x0:_0x56b1b4['offset'];var _0xb700a9=_0x59f31e?_0x52f205[_0xc8d9('0x1d')]:_0x56b1b4['offset']+_0x56b1b4[_0xc8d9('0x1b')];var _0x1f21d4;if(_0xb700a9>=_0xa544f9){_0xb700a9=_0xa544f9;_0x1f21d4=0xc8;}else{_0x1f21d4=0xce;}_0x27bada[_0xc8d9('0x18')](_0x1f21d4);return _0x27bada['set'](_0xc8d9('0x1e'),_0x1c20b7+'-'+_0xb700a9+'/'+_0xa544f9)[_0xc8d9('0x1a')](_0x52f205);}return null;};}function patchUpdates(_0x152db8){return function(_0x31a282){try{jsonpatch['apply'](_0x31a282,_0x152db8,!![]);}catch(_0x41d545){return BPromise['reject'](_0x41d545);}return _0x31a282['save']();};}function saveUpdates(_0x3e7878,_0x42d4be){return function(_0x25d6d5){if(_0x25d6d5){return _0x25d6d5[_0xc8d9('0x1f')](_0x3e7878)[_0xc8d9('0x20')](function(_0x2e1bc4){return _0x2e1bc4;});}return null;};}function removeEntity(_0x2872d2,_0x3a86ee){return function(_0x2b52a6){if(_0x2b52a6){return _0x2b52a6['destroy']()[_0xc8d9('0x20')](function(){var _0x59c453=_0x2b52a6['get']({'plain':!![]});var _0x575933=_0xc8d9('0x21');return db[_0xc8d9('0x22')][_0xc8d9('0x23')]({'where':{'type':_0x575933,'resourceId':_0x59c453['id']}})[_0xc8d9('0x20')](function(){return _0x2b52a6;});})['then'](function(){_0x2872d2[_0xc8d9('0x18')](0xcc)[_0xc8d9('0x19')]();});}};}function handleEntityNotFound(_0x31a58b,_0x4e2588){return function(_0xbde4cb){if(!_0xbde4cb){_0x31a58b['sendStatus'](0x194);}return _0xbde4cb;};}function handleError(_0x4eb060,_0x2af780){_0x2af780=_0x2af780||0x1f4;return function(_0xcd872d){logger[_0xc8d9('0x24')](_0xcd872d[_0xc8d9('0x25')]);if(_0xcd872d['name']){delete _0xcd872d['name'];}_0x4eb060[_0xc8d9('0x18')](_0x2af780)['send'](_0xcd872d);};}exports['index']=function(_0x322a00,_0x58d9f0){var _0xaf3b1c={},_0x5c99eb={},_0x4c83b2={'count':0x0,'rows':[]};var _0x2ff611=_[_0xc8d9('0x26')](db[_0xc8d9('0x27')][_0xc8d9('0x28')],function(_0x187f6b){return{'name':_0x187f6b[_0xc8d9('0x29')],'type':_0x187f6b[_0xc8d9('0x2a')][_0xc8d9('0x2b')]};});_0x5c99eb[_0xc8d9('0x2c')]=_['map'](_0x2ff611,_0xc8d9('0x2d'));_0x5c99eb[_0xc8d9('0x2e')]=_[_0xc8d9('0x2f')](_0x322a00[_0xc8d9('0x2e')]);_0x5c99eb[_0xc8d9('0x30')]=_['intersection'](_0x5c99eb[_0xc8d9('0x2c')],_0x5c99eb[_0xc8d9('0x2e')]);_0xaf3b1c['attributes']=_[_0xc8d9('0x31')](_0x5c99eb[_0xc8d9('0x2c')],qs[_0xc8d9('0x32')](_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x32')]));_0xaf3b1c[_0xc8d9('0x33')]=_0xaf3b1c[_0xc8d9('0x33')][_0xc8d9('0x34')]?_0xaf3b1c[_0xc8d9('0x33')]:_0x5c99eb[_0xc8d9('0x2c')];if(!_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x35')](_0xc8d9('0x36'))){_0xaf3b1c[_0xc8d9('0x1b')]=qs[_0xc8d9('0x1b')](_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x1b')]);_0xaf3b1c['offset']=qs['offset'](_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x37')]);}_0xaf3b1c[_0xc8d9('0x38')]=qs[_0xc8d9('0x39')](_0x322a00[_0xc8d9('0x2e')]['sort']);_0xaf3b1c[_0xc8d9('0x3a')]=qs[_0xc8d9('0x30')](_[_0xc8d9('0x3b')](_0x322a00[_0xc8d9('0x2e')],_0x5c99eb[_0xc8d9('0x30')]),_0x2ff611);if(_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x3c')]){_0xaf3b1c[_0xc8d9('0x3a')]=_[_0xc8d9('0x3d')](_0xaf3b1c['where'],{'$or':_[_0xc8d9('0x26')](_0x2ff611,function(_0x54e59d){if(_0x54e59d[_0xc8d9('0x2a')]!==_0xc8d9('0x3e')){var _0x1565dd={};_0x1565dd[_0x54e59d[_0xc8d9('0x2d')]]={'$like':'%'+_0x322a00[_0xc8d9('0x2e')][_0xc8d9('0x3c')]+'%'};return _0x1565dd;}})});}_0xaf3b1c=_[_0xc8d9('0x3d')]({},_0xaf3b1c,_0x322a00[_0xc8d9('0x3f')]);var _0xd76449={'where':_0xaf3b1c[_0xc8d9('0x3a')]};return db[_0xc8d9('0x27')][_0xc8d9('0x1d')](_0xd76449)[_0xc8d9('0x20')](function(_0x213f8f){_0x4c83b2[_0xc8d9('0x1d')]=_0x213f8f;if(_0x322a00['query'][_0xc8d9('0x40')]){_0xaf3b1c[_0xc8d9('0x41')]=[{'all':!![]}];}return db['CmHopperAdditionalPhone'][_0xc8d9('0x42')](_0xaf3b1c);})['then'](function(_0x499400){_0x4c83b2[_0xc8d9('0x43')]=_0x499400;return _0x4c83b2;})['then'](respondWithFilteredResult(_0x58d9f0,_0xaf3b1c))[_0xc8d9('0x44')](handleError(_0x58d9f0,null));};exports[_0xc8d9('0x45')]=function(_0x3b30bc,_0x41ef03){var _0xa178dd={'raw':!![],'where':{'id':_0x3b30bc['params']['id']}},_0x1b8bdc={};_0x1b8bdc['model']=_[_0xc8d9('0x2f')](db[_0xc8d9('0x27')][_0xc8d9('0x28')]);_0x1b8bdc['query']=_[_0xc8d9('0x2f')](_0x3b30bc[_0xc8d9('0x2e')]);_0x1b8bdc[_0xc8d9('0x30')]=_[_0xc8d9('0x31')](_0x1b8bdc['model'],_0x1b8bdc[_0xc8d9('0x2e')]);_0xa178dd[_0xc8d9('0x33')]=_['intersection'](_0x1b8bdc['model'],qs['fields'](_0x3b30bc[_0xc8d9('0x2e')]['fields']));_0xa178dd[_0xc8d9('0x33')]=_0xa178dd['attributes'][_0xc8d9('0x34')]?_0xa178dd[_0xc8d9('0x33')]:_0x1b8bdc['model'];if(_0x3b30bc['query'][_0xc8d9('0x40')]){_0xa178dd[_0xc8d9('0x41')]=[{'all':!![]}];}_0xa178dd=_['merge']({},_0xa178dd,_0x3b30bc[_0xc8d9('0x3f')]);return db['CmHopperAdditionalPhone']['find'](_0xa178dd)[_0xc8d9('0x20')](handleEntityNotFound(_0x41ef03,null))[_0xc8d9('0x20')](respondWithResult(_0x41ef03,null))[_0xc8d9('0x44')](handleError(_0x41ef03,null));};exports[_0xc8d9('0x46')]=function(_0x14f43a,_0x4f8cf3){return db[_0xc8d9('0x27')][_0xc8d9('0x46')](_0x14f43a[_0xc8d9('0x47')],{})[_0xc8d9('0x20')](function(_0x59b017){var _0x3d27fc=_0x14f43a[_0xc8d9('0x48')]['get']({'plain':!![]});if(!_0x3d27fc)throw new Error(_0xc8d9('0x49'));if(_0x3d27fc[_0xc8d9('0x4a')]==='user'){var _0x2ae810=_0x59b017['get']({'plain':!![]});var _0x212284=_0xc8d9('0x21');return db[_0xc8d9('0x4b')][_0xc8d9('0x4c')]({'where':{'name':_0x212284,'userProfileId':_0x3d27fc[_0xc8d9('0x4d')]},'raw':!![]})[_0xc8d9('0x20')](function(_0x246cff){if(_0x246cff&&_0x246cff[_0xc8d9('0x4e')]===0x0){return db['UserProfileResource'][_0xc8d9('0x46')]({'name':_0x2ae810[_0xc8d9('0x2d')],'resourceId':_0x2ae810['id'],'type':_0x246cff['name'],'sectionId':_0x246cff['id']},{})[_0xc8d9('0x20')](function(){return _0x59b017;});}else{return _0x59b017;}})[_0xc8d9('0x44')](function(_0x369096){logger['error'](_0xc8d9('0x4f'),_0x369096);throw _0x369096;});}return _0x59b017;})[_0xc8d9('0x20')](respondWithResult(_0x4f8cf3,0xc9))[_0xc8d9('0x44')](handleError(_0x4f8cf3,null));};exports[_0xc8d9('0x1f')]=function(_0x5a7d11,_0x3f0b4f){if(_0x5a7d11[_0xc8d9('0x47')]['id']){delete _0x5a7d11[_0xc8d9('0x47')]['id'];}return db[_0xc8d9('0x27')][_0xc8d9('0x4c')]({'where':{'id':_0x5a7d11[_0xc8d9('0x50')]['id']}})[_0xc8d9('0x20')](handleEntityNotFound(_0x3f0b4f,null))[_0xc8d9('0x20')](saveUpdates(_0x5a7d11[_0xc8d9('0x47')],null))[_0xc8d9('0x20')](respondWithResult(_0x3f0b4f,null))[_0xc8d9('0x44')](handleError(_0x3f0b4f,null));};exports[_0xc8d9('0x23')]=function(_0x1d5b37,_0x25bb3c){return db[_0xc8d9('0x27')][_0xc8d9('0x4c')]({'where':{'id':_0x1d5b37['params']['id']}})[_0xc8d9('0x20')](handleEntityNotFound(_0x25bb3c,null))[_0xc8d9('0x20')](removeEntity(_0x25bb3c,null))[_0xc8d9('0x44')](handleError(_0x25bb3c,null));};