e527674cc8fbe954e544b5c66d2a2be5f8fc19a0
[motion2.git] / server / api / team / team.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 _0x0d73=['send','index','map','Team','rawAttributes','fieldName','query','keys','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','type','options','includeAll','include','findAll','rows','catch','show','params','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','findOne','channel','isValidChannel','Sequelize','ValidationError','Unknown\x20channel','capitalize','toLowerCase','Queue','addQueues','add','Queues','ids','removeQueues','remove','addAgents','Chat','Mail','Sms','Fax','Openchannel','each','User','online','voicePause','interface','UserVoiceQueueRt','upsert','format','omit','spread','emit','userTeam:save','voice','chat','mail','sms','fax','openchannel','whatsapp','removeAgents','isArray','userTeam:remove','getAgents','html-pdf','zip-dir','moment','bluebird','mustache','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./team.socket','register','status','json','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','UserProfileResource','error','name'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x0d73,0x1cd));var _0x30d7=function(_0x1c3184,_0x169653){_0x1c3184=_0x1c3184-0x0;var _0x292555=_0x0d73[_0x1c3184];return _0x292555;};'use strict';var pdf=require(_0x30d7('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x30d7('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x30d7('0x2'));var BPromise=require(_0x30d7('0x3'));var Mustache=require(_0x30d7('0x4'));var util=require('util');var path=require(_0x30d7('0x5'));var sox=require(_0x30d7('0x6'));var csv=require(_0x30d7('0x7'));var ejs=require(_0x30d7('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0x30d7('0x9'));var crypto=require(_0x30d7('0xa'));var jsforce=require(_0x30d7('0xb'));var deskjs=require(_0x30d7('0xc'));var toCsv=require('to-csv');var querystring=require(_0x30d7('0xd'));var Papa=require('papaparse');var Redis=require(_0x30d7('0xe'));var authService=require(_0x30d7('0xf'));var qs=require(_0x30d7('0x10'));var as=require(_0x30d7('0x11'));var hardwareService=require(_0x30d7('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0x30d7('0x13'));var config=require(_0x30d7('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x30d7('0x15'))['db'];config['redis']=_['defaults'](config[_0x30d7('0x16')],{'host':_0x30d7('0x17'),'port':0x18eb});var socket=require(_0x30d7('0x18'))(new Redis(config[_0x30d7('0x16')]));require(_0x30d7('0x19'))[_0x30d7('0x1a')](socket);function respondWithStatusCode(_0x4aaa64,_0x17ee61){_0x17ee61=_0x17ee61||0xcc;return function(_0x192436){if(_0x192436){return _0x4aaa64['sendStatus'](_0x17ee61);}return _0x4aaa64[_0x30d7('0x1b')](_0x17ee61)['end']();};}function respondWithResult(_0x4145cc,_0x3b0864){_0x3b0864=_0x3b0864||0xc8;return function(_0x123b46){if(_0x123b46){return _0x4145cc[_0x30d7('0x1b')](_0x3b0864)[_0x30d7('0x1c')](_0x123b46);}};}function respondWithFilteredResult(_0x3e705a,_0x40580d){return function(_0x5c0a09){if(_0x5c0a09){var _0x545494=_0x5c0a09['count'],_0x5d468e=_0x40580d[_0x30d7('0x1d')],_0x37799b=_0x40580d['offset']+_0x40580d[_0x30d7('0x1e')],_0x3c7da5;if(_0x37799b>=_0x545494){_0x37799b=_0x545494;_0x3c7da5=0xc8;}else{_0x3c7da5=0xce;}_0x3e705a[_0x30d7('0x1b')](_0x3c7da5);return _0x3e705a[_0x30d7('0x1f')](_0x30d7('0x20'),_0x5d468e+'-'+_0x37799b+'/'+_0x545494)[_0x30d7('0x1c')](_0x5c0a09);}return null;};}function patchUpdates(_0x4af5e8){return function(_0x59a436){try{jsonpatch[_0x30d7('0x21')](_0x59a436,_0x4af5e8,!![]);}catch(_0xdeab3c){return BPromise[_0x30d7('0x22')](_0xdeab3c);}return _0x59a436[_0x30d7('0x23')]();};}function saveUpdates(_0x299d87,_0x588bb8){return function(_0x11fdbf){if(_0x11fdbf){return _0x11fdbf[_0x30d7('0x24')](_0x299d87)[_0x30d7('0x25')](function(_0x31453a){return _0x31453a;});}return null;};}function removeEntity(_0x198f46,_0x3e0f91){return function(_0x19602e){if(_0x19602e){return _0x19602e[_0x30d7('0x26')]()[_0x30d7('0x25')](function(){var _0x569768=_0x19602e[_0x30d7('0x27')]({'plain':!![]});var _0x4ca4c7='Teams';return db[_0x30d7('0x28')][_0x30d7('0x26')]({'where':{'type':_0x4ca4c7,'resourceId':_0x569768['id']}})[_0x30d7('0x25')](function(){return _0x19602e;});})['then'](function(){_0x198f46[_0x30d7('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4f9cf0,_0x4e4e86){return function(_0x6bd3e9){if(!_0x6bd3e9){_0x4f9cf0['sendStatus'](0x194);}return _0x6bd3e9;};}function handleError(_0x436667,_0x266abb){_0x266abb=_0x266abb||0x1f4;return function(_0x4586a1){logger[_0x30d7('0x29')](_0x4586a1['stack']);if(_0x4586a1[_0x30d7('0x2a')]){delete _0x4586a1[_0x30d7('0x2a')];}_0x436667[_0x30d7('0x1b')](_0x266abb)[_0x30d7('0x2b')](_0x4586a1);};}exports[_0x30d7('0x2c')]=function(_0x7a8252,_0x24eeba){var _0x5df31f={},_0x2e62e6={},_0x549b36={'count':0x0,'rows':[]};var _0x129ee5=_[_0x30d7('0x2d')](db[_0x30d7('0x2e')][_0x30d7('0x2f')],function(_0x4c0c0f){return{'name':_0x4c0c0f[_0x30d7('0x30')],'type':_0x4c0c0f['type']['key']};});_0x2e62e6['model']=_['map'](_0x129ee5,_0x30d7('0x2a'));_0x2e62e6[_0x30d7('0x31')]=_[_0x30d7('0x32')](_0x7a8252[_0x30d7('0x31')]);_0x2e62e6['filters']=_[_0x30d7('0x33')](_0x2e62e6[_0x30d7('0x34')],_0x2e62e6[_0x30d7('0x31')]);_0x5df31f['attributes']=_[_0x30d7('0x33')](_0x2e62e6[_0x30d7('0x34')],qs[_0x30d7('0x35')](_0x7a8252[_0x30d7('0x31')][_0x30d7('0x35')]));_0x5df31f[_0x30d7('0x36')]=_0x5df31f['attributes'][_0x30d7('0x37')]?_0x5df31f[_0x30d7('0x36')]:_0x2e62e6[_0x30d7('0x34')];if(!_0x7a8252[_0x30d7('0x31')][_0x30d7('0x38')](_0x30d7('0x39'))){_0x5df31f[_0x30d7('0x1e')]=qs[_0x30d7('0x1e')](_0x7a8252[_0x30d7('0x31')]['limit']);_0x5df31f[_0x30d7('0x1d')]=qs[_0x30d7('0x1d')](_0x7a8252[_0x30d7('0x31')]['offset']);}_0x5df31f[_0x30d7('0x3a')]=qs['sort'](_0x7a8252[_0x30d7('0x31')][_0x30d7('0x3b')]);_0x5df31f[_0x30d7('0x3c')]=qs[_0x30d7('0x3d')](_[_0x30d7('0x3e')](_0x7a8252[_0x30d7('0x31')],_0x2e62e6[_0x30d7('0x3d')]),_0x129ee5);if(_0x7a8252[_0x30d7('0x31')][_0x30d7('0x3f')]){_0x5df31f[_0x30d7('0x3c')]=_[_0x30d7('0x40')](_0x5df31f[_0x30d7('0x3c')],{'$or':_[_0x30d7('0x2d')](_0x129ee5,function(_0x194a49){if(_0x194a49[_0x30d7('0x41')]!=='VIRTUAL'){var _0x153482={};_0x153482[_0x194a49[_0x30d7('0x2a')]]={'$like':'%'+_0x7a8252['query'][_0x30d7('0x3f')]+'%'};return _0x153482;}})});}_0x5df31f=_[_0x30d7('0x40')]({},_0x5df31f,_0x7a8252[_0x30d7('0x42')]);var _0xf5173b={'where':_0x5df31f['where']};return db[_0x30d7('0x2e')]['count'](_0xf5173b)[_0x30d7('0x25')](function(_0x538a05){_0x549b36['count']=_0x538a05;if(_0x7a8252[_0x30d7('0x31')][_0x30d7('0x43')]){_0x5df31f[_0x30d7('0x44')]=[{'all':!![]}];}return db[_0x30d7('0x2e')][_0x30d7('0x45')](_0x5df31f);})['then'](function(_0x1c7724){_0x549b36[_0x30d7('0x46')]=_0x1c7724;return _0x549b36;})[_0x30d7('0x25')](respondWithFilteredResult(_0x24eeba,_0x5df31f))[_0x30d7('0x47')](handleError(_0x24eeba,null));};exports[_0x30d7('0x48')]=function(_0x35cfd7,_0x2b91ed){var _0xb867={'raw':![],'where':{'id':_0x35cfd7[_0x30d7('0x49')]['id']}},_0x4a9a60={};_0x4a9a60[_0x30d7('0x34')]=_[_0x30d7('0x32')](db[_0x30d7('0x2e')][_0x30d7('0x2f')]);_0x4a9a60[_0x30d7('0x31')]=_[_0x30d7('0x32')](_0x35cfd7['query']);_0x4a9a60[_0x30d7('0x3d')]=_[_0x30d7('0x33')](_0x4a9a60[_0x30d7('0x34')],_0x4a9a60['query']);_0xb867[_0x30d7('0x36')]=_[_0x30d7('0x33')](_0x4a9a60[_0x30d7('0x34')],qs[_0x30d7('0x35')](_0x35cfd7[_0x30d7('0x31')][_0x30d7('0x35')]));_0xb867[_0x30d7('0x36')]=_0xb867[_0x30d7('0x36')]['length']?_0xb867[_0x30d7('0x36')]:_0x4a9a60['model'];if(_0x35cfd7[_0x30d7('0x31')]['includeAll']){_0xb867['include']=[{'all':!![]}];}_0xb867=_['merge']({},_0xb867,_0x35cfd7['options']);return db[_0x30d7('0x2e')][_0x30d7('0x4a')](_0xb867)[_0x30d7('0x25')](handleEntityNotFound(_0x2b91ed,null))[_0x30d7('0x25')](respondWithResult(_0x2b91ed,null))[_0x30d7('0x47')](handleError(_0x2b91ed,null));};exports[_0x30d7('0x4b')]=function(_0x5e6a8a,_0x2659ef){return db[_0x30d7('0x2e')]['create'](_0x5e6a8a[_0x30d7('0x4c')],{})[_0x30d7('0x25')](function(_0x4ef8e0){var _0x478470=_0x5e6a8a[_0x30d7('0x4d')]['get']({'plain':!![]});if(!_0x478470)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x478470[_0x30d7('0x4e')]==='user'){var _0xa82e24=_0x4ef8e0[_0x30d7('0x27')]({'plain':!![]});var _0x4b1ac6='Teams';return db[_0x30d7('0x4f')][_0x30d7('0x4a')]({'where':{'name':_0x4b1ac6,'userProfileId':_0x478470[_0x30d7('0x50')]},'raw':!![]})['then'](function(_0x23f066){if(_0x23f066&&_0x23f066[_0x30d7('0x51')]===0x0){return db[_0x30d7('0x28')][_0x30d7('0x4b')]({'name':_0xa82e24[_0x30d7('0x2a')],'resourceId':_0xa82e24['id'],'type':_0x23f066[_0x30d7('0x2a')],'sectionId':_0x23f066['id']},{})[_0x30d7('0x25')](function(){return _0x4ef8e0;});}else{return _0x4ef8e0;}})[_0x30d7('0x47')](function(_0xf41738){logger[_0x30d7('0x29')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0xf41738);throw _0xf41738;});}return _0x4ef8e0;})[_0x30d7('0x25')](respondWithResult(_0x2659ef,0xc9))[_0x30d7('0x47')](handleError(_0x2659ef,null));};exports[_0x30d7('0x24')]=function(_0x2a3199,_0x514fdb){if(_0x2a3199[_0x30d7('0x4c')]['id']){delete _0x2a3199[_0x30d7('0x4c')]['id'];}return db[_0x30d7('0x2e')]['find']({'where':{'id':_0x2a3199[_0x30d7('0x49')]['id']}})[_0x30d7('0x25')](handleEntityNotFound(_0x514fdb,null))[_0x30d7('0x25')](saveUpdates(_0x2a3199[_0x30d7('0x4c')],null))[_0x30d7('0x25')](respondWithResult(_0x514fdb,null))[_0x30d7('0x47')](handleError(_0x514fdb,null));};exports['destroy']=function(_0x47f8e1,_0x203f6a){return db['Team'][_0x30d7('0x4a')]({'where':{'id':_0x47f8e1['params']['id']}})['then'](handleEntityNotFound(_0x203f6a,null))[_0x30d7('0x25')](removeEntity(_0x203f6a,null))[_0x30d7('0x47')](handleError(_0x203f6a,null));};exports['getQueues']=function(_0x26333d,_0x474236,_0x1f78ae){return db[_0x30d7('0x2e')][_0x30d7('0x52')]({'where':{'id':_0x26333d['params']['id']}})[_0x30d7('0x25')](handleEntityNotFound(_0x474236,null))['then'](function(_0x171026){if(!_0x26333d[_0x30d7('0x31')][_0x30d7('0x53')]||!utils[_0x30d7('0x54')](_0x26333d['query'][_0x30d7('0x53')])){throw new db[(_0x30d7('0x55'))][(_0x30d7('0x56'))](_0x30d7('0x57'));}var _0xb6d4e8={};var _0x19f5b9={};_0x19f5b9['model']=_['keys'](db[_[_0x30d7('0x58')](_0x26333d[_0x30d7('0x31')][_0x30d7('0x53')][_0x30d7('0x59')]())+_0x30d7('0x5a')][_0x30d7('0x2f')]);_0x19f5b9[_0x30d7('0x31')]=_[_0x30d7('0x32')](_0x26333d['query']);_0x19f5b9[_0x30d7('0x3d')]=_[_0x30d7('0x33')](_0x19f5b9[_0x30d7('0x34')],_0x19f5b9[_0x30d7('0x31')]);_0xb6d4e8[_0x30d7('0x36')]=_[_0x30d7('0x33')](_0x19f5b9['model'],qs[_0x30d7('0x35')](_0x26333d[_0x30d7('0x31')]['fields']));_0xb6d4e8['attributes']=_0xb6d4e8[_0x30d7('0x36')][_0x30d7('0x37')]?_0xb6d4e8['attributes']:_0x19f5b9['model'];_0xb6d4e8[_0x30d7('0x1e')]=qs[_0x30d7('0x1e')](_0x26333d[_0x30d7('0x31')][_0x30d7('0x1e')]);_0xb6d4e8[_0x30d7('0x1d')]=qs[_0x30d7('0x1d')](_0x26333d[_0x30d7('0x31')]['offset']);_0xb6d4e8[_0x30d7('0x3a')]=qs['sort'](_0x26333d[_0x30d7('0x31')][_0x30d7('0x3b')]);_0xb6d4e8[_0x30d7('0x3c')]=qs['filters'](_[_0x30d7('0x3e')](_0x26333d[_0x30d7('0x31')],_0x19f5b9[_0x30d7('0x3d')]));_0xb6d4e8=_[_0x30d7('0x40')]({},_0xb6d4e8,_0x26333d[_0x30d7('0x42')]);return _0x171026[_0x30d7('0x27')+_[_0x30d7('0x58')](_0x26333d['query'][_0x30d7('0x53')]['toLowerCase']())+'Queues'](_0xb6d4e8);})[_0x30d7('0x25')](respondWithResult(_0x474236,null))['catch'](handleError(_0x474236,null));};exports[_0x30d7('0x5b')]=function(_0x5caadc,_0x10838f,_0x3faf76){return db[_0x30d7('0x2e')][_0x30d7('0x52')]({'where':{'id':_0x5caadc[_0x30d7('0x49')]['id']}})[_0x30d7('0x25')](function(_0x17d78b){if(_0x17d78b){if(!_0x5caadc['body'][_0x30d7('0x53')]||!utils[_0x30d7('0x54')](_0x5caadc[_0x30d7('0x4c')][_0x30d7('0x53')])){throw new db[(_0x30d7('0x55'))][(_0x30d7('0x56'))]('Unknown\x20channel');}return _0x17d78b[_0x30d7('0x5c')+_[_0x30d7('0x58')](_0x5caadc['body'][_0x30d7('0x53')][_0x30d7('0x59')]())+_0x30d7('0x5d')](_0x5caadc['body'][_0x30d7('0x5e')]);}return null;})['then'](handleEntityNotFound(_0x10838f,null))[_0x30d7('0x25')](respondWithStatusCode(_0x10838f,null))[_0x30d7('0x47')](handleError(_0x10838f,null));};exports[_0x30d7('0x5f')]=function(_0x7903a8,_0x2876c0,_0x1f2a42){return db[_0x30d7('0x2e')][_0x30d7('0x52')]({'where':{'id':_0x7903a8[_0x30d7('0x49')]['id']}})[_0x30d7('0x25')](function(_0x2aeff1){if(_0x2aeff1){if(!_0x7903a8[_0x30d7('0x31')][_0x30d7('0x53')]||!utils[_0x30d7('0x54')](_0x7903a8['query']['channel'])){throw new db['Sequelize'][(_0x30d7('0x56'))](_0x30d7('0x57'));}return _0x2aeff1[_0x30d7('0x60')+_['capitalize'](_0x7903a8[_0x30d7('0x31')][_0x30d7('0x53')]['toLowerCase']())+'Queues'](_0x7903a8[_0x30d7('0x31')][_0x30d7('0x5e')]);}return null;})[_0x30d7('0x25')](handleEntityNotFound(_0x2876c0,null))['then'](respondWithStatusCode(_0x2876c0,null))[_0x30d7('0x47')](handleError(_0x2876c0,null));};exports[_0x30d7('0x61')]=function(_0x587d01,_0x27513d,_0x455479){return db[_0x30d7('0x2e')][_0x30d7('0x4a')]({'where':{'id':_0x587d01[_0x30d7('0x49')]['id']}})['then'](handleEntityNotFound(_0x27513d,null))[_0x30d7('0x25')](function(_0x17c85f){if(_0x17c85f){var _0x33c5e7=['Voice',_0x30d7('0x62'),_0x30d7('0x63'),_0x30d7('0x64'),_0x30d7('0x65'),_0x30d7('0x66'),'Whatsapp'];return BPromise[_0x30d7('0x67')](_0x33c5e7,function(_0x1e91c0){return _0x17c85f[_0x30d7('0x27')+_0x1e91c0+_0x30d7('0x5d')]({'attributes':['id','name']})[_0x30d7('0x25')](function(_0x1c2ca7){return BPromise[_0x30d7('0x67')](_0x1c2ca7,function(_0x1dcffa){return _0x1dcffa['addAgents'](_0x587d01['body'][_0x30d7('0x5e')])[_0x30d7('0x25')](function(){if(_0x1e91c0==='Voice'){return db[_0x30d7('0x68')]['findAll']({'where':{'id':_0x587d01[_0x30d7('0x4c')][_0x30d7('0x5e')]},'attributes':['id',_0x30d7('0x2a'),_0x30d7('0x69'),_0x30d7('0x6a'),_0x30d7('0x6b')],'raw':!![]})[_0x30d7('0x25')](function(_0x25a979){return BPromise[_0x30d7('0x67')](_[_0x30d7('0x3f')](_0x25a979,{'online':0x1}),function(_0x21c3a9){return db[_0x30d7('0x6c')][_0x30d7('0x6d')]({'membername':_0x21c3a9[_0x30d7('0x2a')],'UserId':_0x21c3a9['id'],'queue_name':_0x1dcffa[_0x30d7('0x2a')],'VoiceQueueId':_0x1dcffa['id'],'interface':_['isNil'](_0x21c3a9['interface'])?util[_0x30d7('0x6e')]('SIP/%s',_0x21c3a9[_0x30d7('0x2a')]):_0x21c3a9[_0x30d7('0x6b')],'paused':_0x21c3a9['voicePause']||![],'penalty':0x0});});});}});});})['then'](function(){return _0x17c85f;});})['then'](function(){return _0x17c85f;});}})[_0x30d7('0x25')](function(_0x4e0c20){if(_0x4e0c20){return _0x4e0c20[_0x30d7('0x61')](_0x587d01[_0x30d7('0x4c')][_0x30d7('0x5e')],_[_0x30d7('0x6f')](_0x587d01['body'],[_0x30d7('0x5e'),'id'])||{})[_0x30d7('0x70')](function(_0x2db04f){for(var _0x2e66c9=0x0;_0x2e66c9<_0x587d01['body'][_0x30d7('0x5e')][_0x30d7('0x37')];_0x2e66c9+=0x1){socket[_0x30d7('0x71')](_0x30d7('0x72'),{'UserId':_0x587d01['body'][_0x30d7('0x5e')][_0x2e66c9],'TeamId':_0x587d01[_0x30d7('0x49')]['id']});}return _0x2db04f;});}})['then'](respondWithResult(_0x27513d,null))[_0x30d7('0x47')](handleError(_0x27513d,null));};exports['removeAgents']=function(_0x2bdb92,_0xadf644,_0x3b8c7a){return db[_0x30d7('0x2e')]['find']({'where':{'id':_0x2bdb92[_0x30d7('0x49')]['id']}})[_0x30d7('0x25')](handleEntityNotFound(_0xadf644,null))[_0x30d7('0x25')](function(_0x39d788){if(_0x39d788){return BPromise[_0x30d7('0x67')]([_0x30d7('0x73'),_0x30d7('0x74'),_0x30d7('0x75'),_0x30d7('0x76'),_0x30d7('0x77'),_0x30d7('0x78'),_0x30d7('0x79')],function(_0x31436e){return _0x39d788[_0x30d7('0x27')+_[_0x30d7('0x58')](_0x31436e)+_0x30d7('0x5d')]({'attributes':['id','name']})['then'](function(_0x4bf6a4){return BPromise[_0x30d7('0x67')](_0x4bf6a4,function(_0x406c4b){return _0x406c4b[_0x30d7('0x7a')](_0x2bdb92[_0x30d7('0x31')][_0x30d7('0x5e')])[_0x30d7('0x25')](function(){if(_0x31436e==='voice'){return db[_0x30d7('0x6c')]['destroy']({'where':{'VoiceQueueId':_0x406c4b['id'],'UserId':_0x2bdb92['query'][_0x30d7('0x5e')]}});}});});})[_0x30d7('0x25')](function(){return _0x39d788;});})[_0x30d7('0x25')](function(){return _0x39d788;});}})[_0x30d7('0x25')](function(_0x1362be){if(_0x1362be){return _0x1362be[_0x30d7('0x7a')](_0x2bdb92[_0x30d7('0x31')][_0x30d7('0x5e')])[_0x30d7('0x25')](function(){if(_[_0x30d7('0x7b')](_0x2bdb92[_0x30d7('0x31')][_0x30d7('0x5e')])){for(var _0x24f798=0x0;_0x24f798<_0x2bdb92['query'][_0x30d7('0x5e')][_0x30d7('0x37')];_0x24f798+=0x1){socket[_0x30d7('0x71')](_0x30d7('0x7c'),{'UserId':Number(_0x2bdb92[_0x30d7('0x31')][_0x30d7('0x5e')][_0x24f798]),'TeamId':Number(_0x2bdb92[_0x30d7('0x49')]['id'])});}}else{socket[_0x30d7('0x71')]('userTeam:remove',{'UserId':Number(_0x2bdb92[_0x30d7('0x31')][_0x30d7('0x5e')]),'TeamId':Number(_0x2bdb92[_0x30d7('0x49')]['id'])});}});}})[_0x30d7('0x25')](respondWithStatusCode(_0xadf644,null))[_0x30d7('0x47')](handleError(_0xadf644,null));};exports[_0x30d7('0x7d')]=function(_0x12f595,_0x4361d8,_0x427920){var _0x31f63b={};var _0x353e21={};var _0x220740;var _0x272ecb;return db['Team'][_0x30d7('0x52')]({'where':{'id':_0x12f595[_0x30d7('0x49')]['id']}})['then'](handleEntityNotFound(_0x4361d8,null))['then'](function(_0xedbfa3){if(_0xedbfa3){_0x220740=_0xedbfa3;_0x353e21[_0x30d7('0x34')]=_[_0x30d7('0x32')](db[_0x30d7('0x68')][_0x30d7('0x2f')]);_0x353e21[_0x30d7('0x31')]=_[_0x30d7('0x32')](_0x12f595[_0x30d7('0x31')]);_0x353e21[_0x30d7('0x3d')]=_[_0x30d7('0x33')](_0x353e21['model'],_0x353e21[_0x30d7('0x31')]);_0x31f63b[_0x30d7('0x36')]=_['intersection'](_0x353e21['model'],qs[_0x30d7('0x35')](_0x12f595['query'][_0x30d7('0x35')]));_0x31f63b[_0x30d7('0x36')]=_0x31f63b[_0x30d7('0x36')][_0x30d7('0x37')]?_0x31f63b['attributes']:_0x353e21['model'];_0x31f63b['order']=qs[_0x30d7('0x3b')](_0x12f595['query']['sort']);_0x31f63b[_0x30d7('0x3c')]=qs[_0x30d7('0x3d')](_[_0x30d7('0x3e')](_0x12f595['query'],_0x353e21['filters']));if(_0x12f595[_0x30d7('0x31')]['filter']){_0x31f63b[_0x30d7('0x3c')]=_[_0x30d7('0x40')](_0x31f63b[_0x30d7('0x3c')],{'$or':_[_0x30d7('0x2d')](_0x31f63b[_0x30d7('0x36')],function(_0x5c6467){var _0x3edc1c={};_0x3edc1c[_0x5c6467]={'$like':'%'+_0x12f595[_0x30d7('0x31')]['filter']+'%'};return _0x3edc1c;})});}_0x31f63b=_[_0x30d7('0x40')]({},_0x31f63b,_0x12f595[_0x30d7('0x42')]);return _0x220740[_0x30d7('0x7d')](_0x31f63b);}})[_0x30d7('0x25')](function(_0x460d28){if(_0x460d28){_0x272ecb=_0x460d28[_0x30d7('0x37')];if(!_0x12f595[_0x30d7('0x31')][_0x30d7('0x38')](_0x30d7('0x39'))){_0x31f63b[_0x30d7('0x1e')]=qs['limit'](_0x12f595['query'][_0x30d7('0x1e')]);_0x31f63b['offset']=qs[_0x30d7('0x1d')](_0x12f595[_0x30d7('0x31')]['offset']);}return _0x220740['getAgents'](_0x31f63b);}})['then'](function(_0x4afc41){if(_0x4afc41){return _0x4afc41?{'count':_0x272ecb,'rows':_0x4afc41}:null;}})[_0x30d7('0x25')](respondWithResult(_0x4361d8,null))[_0x30d7('0x47')](handleError(_0x4361d8,null));};