882218b6ca17e333d4ea961cf71644b6f2a5b2ee
[motion2.git] / server / api / openchannelQueue / openchannelQueue.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 _0xc55a=['role','UserProfileSection','userProfileId','catch','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','describe','findOne','intersection','hasOwnProperty','OpenchannelQueueId','UserOpenchannelQueue','User','findAndCountAll','UserId','agent','openchannelPause','updatedAt','createdAt','%s/%s','SIP','getTeams','Team','addTeams','ids','Agents','online','voicePause','interface','transaction','each','findOrCreate','forEach','userOpenchannelQueue:save','removeTeams','field','tq.TeamId','team_has_openchannel_queues','join','user_has_teams','OpenchannelQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','sequelize','QueryTypes','SELECT','every','TeamId','compact','value','isEmpty','removeAgents','emit','userOpenchannelQueue:remove','addAgents','omit','spread','isArray','getAgents','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./openchannelQueue.socket','register','sendStatus','status','end','count','offset','set','Content-Range','json','apply','reject','save','update','then','get','OpenchannelQueues','UserProfileResource','destroy','error','name','send','index','OpenchannelQueue','rawAttributes','fieldName','type','key','model','map','keys','query','filters','fields','attributes','length','nolimit','limit','order','sort','where','pick','filter','merge','options','includeAll','findAll','rows','show','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user'];(function(_0x3b7d4e,_0x2dc56b){var _0x16be58=function(_0x4299bb){while(--_0x4299bb){_0x3b7d4e['push'](_0x3b7d4e['shift']());}};_0x16be58(++_0x2dc56b);}(_0xc55a,0x1ec));var _0xac55=function(_0x4d613c,_0x55f220){_0x4d613c=_0x4d613c-0x0;var _0x301fe3=_0xc55a[_0x4d613c];return _0x301fe3;};'use strict';var pdf=require(_0xac55('0x0'));var emlformat=require(_0xac55('0x1'));var rimraf=require(_0xac55('0x2'));var zipdir=require(_0xac55('0x3'));var jsonpatch=require(_0xac55('0x4'));var rp=require(_0xac55('0x5'));var moment=require(_0xac55('0x6'));var BPromise=require(_0xac55('0x7'));var Mustache=require(_0xac55('0x8'));var util=require('util');var path=require('path');var sox=require(_0xac55('0x9'));var csv=require(_0xac55('0xa'));var ejs=require(_0xac55('0xb'));var fs=require('fs');var _=require(_0xac55('0xc'));var squel=require(_0xac55('0xd'));var crypto=require(_0xac55('0xe'));var jsforce=require(_0xac55('0xf'));var deskjs=require(_0xac55('0x10'));var toCsv=require(_0xac55('0xa'));var querystring=require(_0xac55('0x11'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xac55('0x12'));var qs=require(_0xac55('0x13'));var as=require(_0xac55('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xac55('0x15'))(_0xac55('0x16'));var utils=require(_0xac55('0x17'));var config=require(_0xac55('0x18'));var licenseUtil=require(_0xac55('0x19'));var db=require(_0xac55('0x1a'))['db'];config['redis']=_[_0xac55('0x1b')](config[_0xac55('0x1c')],{'host':_0xac55('0x1d'),'port':0x18eb});var socket=require(_0xac55('0x1e'))(new Redis(config[_0xac55('0x1c')]));require(_0xac55('0x1f'))[_0xac55('0x20')](socket);function respondWithStatusCode(_0x1a5375,_0x31bcfd){_0x31bcfd=_0x31bcfd||0xcc;return function(_0x5f3ded){if(_0x5f3ded){return _0x1a5375[_0xac55('0x21')](_0x31bcfd);}return _0x1a5375[_0xac55('0x22')](_0x31bcfd)[_0xac55('0x23')]();};}function respondWithResult(_0x459119,_0x5c769d){_0x5c769d=_0x5c769d||0xc8;return function(_0x2b28bc){if(_0x2b28bc){return _0x459119[_0xac55('0x22')](_0x5c769d)['json'](_0x2b28bc);}};}function respondWithFilteredResult(_0x34f2b1,_0x14ad39){return function(_0x91d1ac){if(_0x91d1ac){var _0x3842e3=_0x91d1ac[_0xac55('0x24')],_0x44684d=_0x14ad39[_0xac55('0x25')],_0x236486=_0x14ad39[_0xac55('0x25')]+_0x14ad39['limit'],_0xd1fff9;if(_0x236486>=_0x3842e3){_0x236486=_0x3842e3;_0xd1fff9=0xc8;}else{_0xd1fff9=0xce;}_0x34f2b1[_0xac55('0x22')](_0xd1fff9);return _0x34f2b1[_0xac55('0x26')](_0xac55('0x27'),_0x44684d+'-'+_0x236486+'/'+_0x3842e3)[_0xac55('0x28')](_0x91d1ac);}return null;};}function patchUpdates(_0x5488fa){return function(_0x33d074){try{jsonpatch[_0xac55('0x29')](_0x33d074,_0x5488fa,!![]);}catch(_0x569905){return BPromise[_0xac55('0x2a')](_0x569905);}return _0x33d074[_0xac55('0x2b')]();};}function saveUpdates(_0x55c818,_0x110129){return function(_0x49fcca){if(_0x49fcca){return _0x49fcca[_0xac55('0x2c')](_0x55c818)['then'](function(_0xe0f6a1){return _0xe0f6a1;});}return null;};}function removeEntity(_0x26821e,_0x560ded){return function(_0x2b2fe7){if(_0x2b2fe7){return _0x2b2fe7['destroy']()[_0xac55('0x2d')](function(){var _0x4303ca=_0x2b2fe7[_0xac55('0x2e')]({'plain':!![]});var _0x49b7f8=_0xac55('0x2f');return db[_0xac55('0x30')][_0xac55('0x31')]({'where':{'type':_0x49b7f8,'resourceId':_0x4303ca['id']}})['then'](function(){return _0x2b2fe7;});})['then'](function(){_0x26821e['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x387711,_0x4169b1){return function(_0x2e8bba){if(!_0x2e8bba){_0x387711['sendStatus'](0x194);}return _0x2e8bba;};}function handleError(_0x2d46a4,_0x2a6ace){_0x2a6ace=_0x2a6ace||0x1f4;return function(_0x164f0b){logger[_0xac55('0x32')](_0x164f0b['stack']);if(_0x164f0b[_0xac55('0x33')]){delete _0x164f0b[_0xac55('0x33')];}_0x2d46a4['status'](_0x2a6ace)[_0xac55('0x34')](_0x164f0b);};}exports[_0xac55('0x35')]=function(_0x4e953e,_0x2bf4f8){var _0xa39992={},_0x244892={},_0x16bc49={'count':0x0,'rows':[]};var _0x581785=_['map'](db[_0xac55('0x36')][_0xac55('0x37')],function(_0x588c27){return{'name':_0x588c27[_0xac55('0x38')],'type':_0x588c27[_0xac55('0x39')][_0xac55('0x3a')]};});_0x244892[_0xac55('0x3b')]=_[_0xac55('0x3c')](_0x581785,_0xac55('0x33'));_0x244892['query']=_[_0xac55('0x3d')](_0x4e953e[_0xac55('0x3e')]);_0x244892[_0xac55('0x3f')]=_['intersection'](_0x244892[_0xac55('0x3b')],_0x244892[_0xac55('0x3e')]);_0xa39992['attributes']=_['intersection'](_0x244892[_0xac55('0x3b')],qs['fields'](_0x4e953e[_0xac55('0x3e')][_0xac55('0x40')]));_0xa39992[_0xac55('0x41')]=_0xa39992[_0xac55('0x41')][_0xac55('0x42')]?_0xa39992[_0xac55('0x41')]:_0x244892[_0xac55('0x3b')];if(!_0x4e953e[_0xac55('0x3e')]['hasOwnProperty'](_0xac55('0x43'))){_0xa39992[_0xac55('0x44')]=qs[_0xac55('0x44')](_0x4e953e['query'][_0xac55('0x44')]);_0xa39992[_0xac55('0x25')]=qs[_0xac55('0x25')](_0x4e953e[_0xac55('0x3e')][_0xac55('0x25')]);}_0xa39992[_0xac55('0x45')]=qs['sort'](_0x4e953e[_0xac55('0x3e')][_0xac55('0x46')]);_0xa39992[_0xac55('0x47')]=qs[_0xac55('0x3f')](_[_0xac55('0x48')](_0x4e953e[_0xac55('0x3e')],_0x244892['filters']),_0x581785);if(_0x4e953e[_0xac55('0x3e')][_0xac55('0x49')]){_0xa39992['where']=_[_0xac55('0x4a')](_0xa39992[_0xac55('0x47')],{'$or':_[_0xac55('0x3c')](_0x581785,function(_0x49b04c){if(_0x49b04c[_0xac55('0x39')]!=='VIRTUAL'){var _0x32d1b3={};_0x32d1b3[_0x49b04c[_0xac55('0x33')]]={'$like':'%'+_0x4e953e[_0xac55('0x3e')][_0xac55('0x49')]+'%'};return _0x32d1b3;}})});}_0xa39992=_[_0xac55('0x4a')]({},_0xa39992,_0x4e953e[_0xac55('0x4b')]);var _0x5d0d23={'where':_0xa39992[_0xac55('0x47')]};return db[_0xac55('0x36')][_0xac55('0x24')](_0x5d0d23)[_0xac55('0x2d')](function(_0xa1dff1){_0x16bc49[_0xac55('0x24')]=_0xa1dff1;if(_0x4e953e['query'][_0xac55('0x4c')]){_0xa39992['include']=[{'all':!![]}];}return db[_0xac55('0x36')][_0xac55('0x4d')](_0xa39992);})['then'](function(_0x23efec){_0x16bc49[_0xac55('0x4e')]=_0x23efec;return _0x16bc49;})[_0xac55('0x2d')](respondWithFilteredResult(_0x2bf4f8,_0xa39992))['catch'](handleError(_0x2bf4f8,null));};exports[_0xac55('0x4f')]=function(_0x1bc127,_0x579029){var _0x354370={'raw':!![],'where':{'id':_0x1bc127['params']['id']}},_0xba9bcb={};_0xba9bcb[_0xac55('0x3b')]=_[_0xac55('0x3d')](db[_0xac55('0x36')][_0xac55('0x37')]);_0xba9bcb[_0xac55('0x3e')]=_['keys'](_0x1bc127[_0xac55('0x3e')]);_0xba9bcb[_0xac55('0x3f')]=_['intersection'](_0xba9bcb[_0xac55('0x3b')],_0xba9bcb['query']);_0x354370['attributes']=_['intersection'](_0xba9bcb[_0xac55('0x3b')],qs[_0xac55('0x40')](_0x1bc127[_0xac55('0x3e')]['fields']));_0x354370[_0xac55('0x41')]=_0x354370['attributes'][_0xac55('0x42')]?_0x354370[_0xac55('0x41')]:_0xba9bcb[_0xac55('0x3b')];if(_0x1bc127[_0xac55('0x3e')][_0xac55('0x4c')]){_0x354370['include']=[{'all':!![]}];}_0x354370=_['merge']({},_0x354370,_0x1bc127['options']);return db[_0xac55('0x36')][_0xac55('0x50')](_0x354370)[_0xac55('0x2d')](handleEntityNotFound(_0x579029,null))[_0xac55('0x2d')](respondWithResult(_0x579029,null))['catch'](handleError(_0x579029,null));};exports[_0xac55('0x51')]=function(_0x45e286,_0x3e28b4){return db[_0xac55('0x36')]['create'](_0x45e286[_0xac55('0x52')],{})[_0xac55('0x2d')](function(_0xb2d8d8){var _0xd33148=_0x45e286['user'][_0xac55('0x2e')]({'plain':!![]});if(!_0xd33148)throw new Error(_0xac55('0x53'));if(_0xd33148[_0xac55('0x54')]==='user'){var _0x2cba5d=_0xb2d8d8[_0xac55('0x2e')]({'plain':!![]});var _0x4c6ef4='OpenchannelQueues';return db[_0xac55('0x55')]['find']({'where':{'name':_0x4c6ef4,'userProfileId':_0xd33148[_0xac55('0x56')]},'raw':!![]})[_0xac55('0x2d')](function(_0x13e1a9){if(_0x13e1a9&&_0x13e1a9['autoAssociation']===0x0){return db[_0xac55('0x30')][_0xac55('0x51')]({'name':_0x2cba5d[_0xac55('0x33')],'resourceId':_0x2cba5d['id'],'type':_0x13e1a9['name'],'sectionId':_0x13e1a9['id']},{})['then'](function(){return _0xb2d8d8;});}else{return _0xb2d8d8;}})[_0xac55('0x57')](function(_0x514770){logger[_0xac55('0x32')](_0xac55('0x58'),_0x514770);throw _0x514770;});}return _0xb2d8d8;})[_0xac55('0x2d')](respondWithResult(_0x3e28b4,0xc9))[_0xac55('0x57')](handleError(_0x3e28b4,null));};exports[_0xac55('0x2c')]=function(_0x2e98cd,_0x1b578c){if(_0x2e98cd[_0xac55('0x52')]['id']){delete _0x2e98cd['body']['id'];}return db[_0xac55('0x36')][_0xac55('0x50')]({'where':{'id':_0x2e98cd[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x1b578c,null))[_0xac55('0x2d')](saveUpdates(_0x2e98cd[_0xac55('0x52')],null))['then'](respondWithResult(_0x1b578c,null))[_0xac55('0x57')](handleError(_0x1b578c,null));};exports['destroy']=function(_0x341255,_0x16874b){return db['OpenchannelQueue'][_0xac55('0x50')]({'where':{'id':_0x341255[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x16874b,null))[_0xac55('0x2d')](removeEntity(_0x16874b,null))['catch'](handleError(_0x16874b,null));};exports[_0xac55('0x5a')]=function(_0x296293,_0xeeee57){return db[_0xac55('0x36')][_0xac55('0x5a')]()[_0xac55('0x2d')](respondWithResult(_0xeeee57,null))[_0xac55('0x57')](handleError(_0xeeee57,null));};exports['getMembers']=function(_0x20245a,_0x49a9d1,_0x2eba6c){var _0x117dc4={'raw':!![],'where':{}},_0x210fa8={},_0x4af2d1;return db[_0xac55('0x36')][_0xac55('0x5b')]({'where':{'id':_0x20245a[_0xac55('0x59')]['id']}})['then'](handleEntityNotFound(_0x49a9d1,null))['then'](function(_0x2c29cd){if(_0x2c29cd){_0x4af2d1=_0x2c29cd[_0xac55('0x2e')]({'plain':!![]});_0x210fa8[_0xac55('0x3b')]=_[_0xac55('0x3d')](db['UserOpenchannelQueue'][_0xac55('0x37')]);_0x210fa8[_0xac55('0x3e')]=_[_0xac55('0x3d')](_0x20245a[_0xac55('0x3e')]);_0x210fa8['filters']=_[_0xac55('0x5c')](_0x210fa8[_0xac55('0x3b')],_0x210fa8[_0xac55('0x3e')]);_0x117dc4[_0xac55('0x41')]=_[_0xac55('0x5c')](_0x210fa8['model'],qs[_0xac55('0x40')](_0x20245a[_0xac55('0x3e')]['fields']));_0x117dc4[_0xac55('0x41')]=_0x117dc4[_0xac55('0x41')][_0xac55('0x42')]?_0x117dc4['attributes']:_0x210fa8[_0xac55('0x3b')];if(!_0x20245a[_0xac55('0x3e')][_0xac55('0x5d')](_0xac55('0x43'))){_0x117dc4[_0xac55('0x44')]=qs[_0xac55('0x44')](_0x20245a[_0xac55('0x3e')][_0xac55('0x44')]);_0x117dc4[_0xac55('0x25')]=qs[_0xac55('0x25')](_0x20245a['query'][_0xac55('0x25')]);}_0x117dc4[_0xac55('0x45')]=qs[_0xac55('0x46')](_0x20245a[_0xac55('0x3e')][_0xac55('0x46')]);_0x117dc4[_0xac55('0x47')]=qs['filters'](_[_0xac55('0x48')](_0x20245a['query'],_0x210fa8['filters']));_0x117dc4['where'][_0xac55('0x5e')]=_0x2c29cd['id'];if(_0x20245a['query'][_0xac55('0x49')]){_0x117dc4['where']=_[_0xac55('0x4a')](_0x117dc4[_0xac55('0x47')],{'$or':_[_0xac55('0x3c')](_0x117dc4[_0xac55('0x41')],function(_0x577bb1){var _0x3a7833={};_0x3a7833[_0x577bb1]={'$like':'%'+_0x20245a['query'][_0xac55('0x49')]+'%'};return _0x3a7833;})});}_0x117dc4=_['merge']({},_0x117dc4,_0x20245a[_0xac55('0x4b')]);return db[_0xac55('0x5f')][_0xac55('0x4d')](_0x117dc4);}})[_0xac55('0x2d')](function(_0x5351c7){if(_0x5351c7){return db[_0xac55('0x60')][_0xac55('0x61')]({'where':{'id':_[_0xac55('0x3c')](_0x5351c7,_0xac55('0x62')),'role':_0xac55('0x63')},'attributes':['id',_0xac55('0x33'),_0xac55('0x64'),_0xac55('0x65'),_0xac55('0x66')]});}})[_0xac55('0x2d')](function(_0x5ae44e){if(_0x5ae44e){return{'count':_0x5ae44e['count'],'rows':_[_0xac55('0x3c')](_0x5ae44e[_0xac55('0x4e')],function(_0xc11c2d){return{'membername':_0xc11c2d['name'],'UserId':_0xc11c2d['id'],'queue_name':_0x4af2d1[_0xac55('0x33')],'OpenchannelQueueId':_0x4af2d1['id'],'interface':util['format'](_0xac55('0x67'),_0xac55('0x68'),_0xc11c2d['name']),'penalty':0x0,'paused':_0xc11c2d[_0xac55('0x64')],'createdAt':_0xc11c2d[_0xac55('0x66')],'updatedAt':_0xc11c2d[_0xac55('0x65')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xac55('0x2d')](respondWithFilteredResult(_0x49a9d1,_0x117dc4))['catch'](handleError(_0x49a9d1,null));};exports[_0xac55('0x69')]=function(_0x4837fa,_0x32d903,_0xfc07fb){var _0xd1fc75={};var _0x43dc31={};var _0xa06c65;var _0x24ea9f;return db[_0xac55('0x36')][_0xac55('0x5b')]({'where':{'id':_0x4837fa[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x32d903,null))[_0xac55('0x2d')](function(_0x6df08a){if(_0x6df08a){_0xa06c65=_0x6df08a;_0x43dc31['model']=_[_0xac55('0x3d')](db[_0xac55('0x6a')][_0xac55('0x37')]);_0x43dc31[_0xac55('0x3e')]=_['keys'](_0x4837fa[_0xac55('0x3e')]);_0x43dc31[_0xac55('0x3f')]=_[_0xac55('0x5c')](_0x43dc31['model'],_0x43dc31['query']);_0xd1fc75[_0xac55('0x41')]=_[_0xac55('0x5c')](_0x43dc31[_0xac55('0x3b')],qs[_0xac55('0x40')](_0x4837fa[_0xac55('0x3e')][_0xac55('0x40')]));_0xd1fc75[_0xac55('0x41')]=_0xd1fc75[_0xac55('0x41')][_0xac55('0x42')]?_0xd1fc75['attributes']:_0x43dc31[_0xac55('0x3b')];_0xd1fc75['order']=qs[_0xac55('0x46')](_0x4837fa[_0xac55('0x3e')][_0xac55('0x46')]);_0xd1fc75['where']=qs[_0xac55('0x3f')](_[_0xac55('0x48')](_0x4837fa['query'],_0x43dc31[_0xac55('0x3f')]));if(_0x4837fa['query'][_0xac55('0x49')]){_0xd1fc75[_0xac55('0x47')]=_['merge'](_0xd1fc75[_0xac55('0x47')],{'$or':_[_0xac55('0x3c')](_0xd1fc75[_0xac55('0x41')],function(_0x55ff85){var _0x450fd3={};_0x450fd3[_0x55ff85]={'$like':'%'+_0x4837fa[_0xac55('0x3e')][_0xac55('0x49')]+'%'};return _0x450fd3;})});}_0xd1fc75=_['merge']({},_0xd1fc75,_0x4837fa[_0xac55('0x4b')]);return _0xa06c65[_0xac55('0x69')](_0xd1fc75);}})[_0xac55('0x2d')](function(_0x519b5e){if(_0x519b5e){_0x24ea9f=_0x519b5e[_0xac55('0x42')];if(!_0x4837fa[_0xac55('0x3e')][_0xac55('0x5d')](_0xac55('0x43'))){_0xd1fc75[_0xac55('0x44')]=qs[_0xac55('0x44')](_0x4837fa[_0xac55('0x3e')][_0xac55('0x44')]);_0xd1fc75[_0xac55('0x25')]=qs['offset'](_0x4837fa[_0xac55('0x3e')][_0xac55('0x25')]);}return _0xa06c65[_0xac55('0x69')](_0xd1fc75);}})[_0xac55('0x2d')](function(_0x30de33){if(_0x30de33){return _0x30de33?{'count':_0x24ea9f,'rows':_0x30de33}:null;}})[_0xac55('0x2d')](respondWithResult(_0x32d903,null))['catch'](handleError(_0x32d903,null));};exports[_0xac55('0x6b')]=function(_0x51bf24,_0x513b92,_0x1ca466){var _0x5ceea4=_0x51bf24[_0xac55('0x52')][_0xac55('0x6c')];return db['Team'][_0xac55('0x4d')]({'where':{'id':_0x5ceea4},'attributes':['id'],'include':[{'model':db[_0xac55('0x60')],'as':_0xac55('0x6d'),'attributes':['id',_0xac55('0x33'),_0xac55('0x6e'),_0xac55('0x6f'),_0xac55('0x70')],'raw':!![]}]})[_0xac55('0x2d')](function(_0x53081d){if(_0x53081d){var _0x452e7d=_['flatMap'](_0x53081d,function(_0x78cdae){var _0x21e39b=_0x78cdae[_0xac55('0x2e')]({'plain':!![]});return _0x21e39b['Agents'];});return db[_0xac55('0x36')][_0xac55('0x50')]({'where':{'id':_0x51bf24['params']['id']}})[_0xac55('0x2d')](function(_0x29a2ad){return db['sequelize'][_0xac55('0x71')](function(_0x1c5230){return _0x29a2ad[_0xac55('0x6b')](_0x5ceea4,{'transaction':_0x1c5230})[_0xac55('0x2d')](function(){return BPromise[_0xac55('0x72')](_0x452e7d,function(_0x4bb09f){return db[_0xac55('0x5f')][_0xac55('0x73')]({'where':{'UserId':_0x4bb09f['id'],'OpenchannelQueueId':_0x51bf24[_0xac55('0x59')]['id']},'transaction':_0x1c5230});});})[_0xac55('0x2d')](function(){_0x452e7d[_0xac55('0x74')](function(_0x42bef9){socket['emit'](_0xac55('0x75'),{'UserId':_0x42bef9['id'],'OpenchannelQueueId':_0x29a2ad['id']});});});});});}})[_0xac55('0x2d')](respondWithStatusCode(_0x513b92,null))[_0xac55('0x57')](handleError(_0x513b92,null));};exports[_0xac55('0x76')]=function(_0x519ab7,_0x1bfd52,_0x1e51c6){return db[_0xac55('0x6a')][_0xac55('0x4d')]({'where':{'id':_0x519ab7[_0xac55('0x3e')][_0xac55('0x6c')]},'attributes':['id'],'include':[{'model':db[_0xac55('0x60')],'as':'Agents','attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x1bfd52,null))[_0xac55('0x2d')](function(_0x5b9797){var _0x3a7925=_[_0xac55('0x3c')](_0x5b9797,'id');var _0x22c120=[];var _0x202833=[];var _0x577904=squel['select']();_0x577904[_0xac55('0x77')](_0xac55('0x78'))['from'](_0xac55('0x79'),'tq')[_0xac55('0x7a')](_0xac55('0x7b'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0xac55('0x47')](_0xac55('0x7c'),_0x519ab7[_0xac55('0x59')]['id']);for(var _0x2c3f2f=0x0;_0x2c3f2f<_0x5b9797['length'];_0x2c3f2f+=0x1){let _0x39b340=_0x5b9797[_0x2c3f2f];for(var _0x5418e3=0x0;_0x5418e3<_0x39b340[_0xac55('0x6d')][_0xac55('0x42')];_0x5418e3+=0x1){let _0x1388f7=_0x39b340[_0xac55('0x6d')][_0x5418e3];var _0x531090=_0x577904[_0xac55('0x7d')]();_0x531090[_0xac55('0x47')](_0xac55('0x7e'),_0x1388f7['id']);_0x202833[_0xac55('0x7f')](db['sequelize']['query'](_0x531090['toString'](),{'type':db[_0xac55('0x80')][_0xac55('0x81')][_0xac55('0x82')]})[_0xac55('0x2d')](function(_0x1a9f0b){if(_0x1a9f0b['length']===0x1){return _0x1388f7['id'];}else{var _0x24b1c5=_[_0xac55('0x83')](_[_0xac55('0x3c')](_0x1a9f0b,_0xac55('0x84')),function(_0x5b0a7d){return _['includes'](_0x3a7925,_0x5b0a7d);});if(_0x24b1c5){return _0x1388f7['id'];}}}));}}return BPromise['all'](_0x202833)[_0xac55('0x2d')](function(_0x433d43){_0x22c120=_(_0x22c120)['union'](_0x433d43)[_0xac55('0x85')]()[_0xac55('0x86')]();return db['OpenchannelQueue'][_0xac55('0x50')]({'where':{'id':_0x519ab7[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](function(_0x8c2604){return db[_0xac55('0x80')][_0xac55('0x71')](function(_0x4b9609){return _0x8c2604[_0xac55('0x76')](_0x519ab7[_0xac55('0x3e')][_0xac55('0x6c')],{'transaction':_0x4b9609})['then'](function(){if(!_[_0xac55('0x87')](_0x22c120)){return _0x8c2604[_0xac55('0x88')](_0x22c120,{'transaction':_0x4b9609});}})[_0xac55('0x2d')](function(){_0x22c120['forEach'](function(_0xddde31){socket[_0xac55('0x89')](_0xac55('0x8a'),{'UserId':_0xddde31,'OpenchannelQueueId':_0x8c2604['id']});});});});});});})['then'](respondWithStatusCode(_0x1bfd52,null))['catch'](handleError(_0x1bfd52,null));};exports[_0xac55('0x8b')]=function(_0x5bd7dc,_0x232678,_0x295cd7){return db[_0xac55('0x36')]['find']({'where':{'id':_0x5bd7dc[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x232678,null))['then'](function(_0x1f2481){if(_0x1f2481){return _0x1f2481[_0xac55('0x8b')](_0x5bd7dc[_0xac55('0x52')][_0xac55('0x6c')],_[_0xac55('0x8c')](_0x5bd7dc[_0xac55('0x52')],['ids','id'])||{})[_0xac55('0x8d')](function(_0x3977c3){for(var _0x360fb6=0x0;_0x360fb6<_0x5bd7dc[_0xac55('0x52')][_0xac55('0x6c')][_0xac55('0x42')];_0x360fb6+=0x1){socket[_0xac55('0x89')](_0xac55('0x75'),{'UserId':_0x5bd7dc[_0xac55('0x52')][_0xac55('0x6c')][_0x360fb6],'OpenchannelQueueId':_0x5bd7dc['params']['id']});}return _0x3977c3;});}})[_0xac55('0x2d')](respondWithResult(_0x232678,null))[_0xac55('0x57')](handleError(_0x232678,null));};exports[_0xac55('0x88')]=function(_0x8fd89,_0x5d0adc,_0x2a097e){return db[_0xac55('0x36')][_0xac55('0x50')]({'where':{'id':_0x8fd89[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x5d0adc,null))['then'](function(_0x99baf6){if(_0x99baf6){return _0x99baf6[_0xac55('0x88')](_0x8fd89[_0xac55('0x3e')][_0xac55('0x6c')])['then'](function(){if(_[_0xac55('0x8e')](_0x8fd89[_0xac55('0x3e')][_0xac55('0x6c')])){for(var _0x11dc41=0x0;_0x11dc41<_0x8fd89['query'][_0xac55('0x6c')][_0xac55('0x42')];_0x11dc41+=0x1){socket[_0xac55('0x89')]('userOpenchannelQueue:remove',{'UserId':Number(_0x8fd89[_0xac55('0x3e')]['ids'][_0x11dc41]),'OpenchannelQueueId':Number(_0x8fd89[_0xac55('0x59')]['id'])});}}else{socket[_0xac55('0x89')](_0xac55('0x8a'),{'UserId':Number(_0x8fd89[_0xac55('0x3e')][_0xac55('0x6c')]),'OpenchannelQueueId':Number(_0x8fd89[_0xac55('0x59')]['id'])});}});}})[_0xac55('0x2d')](respondWithStatusCode(_0x5d0adc,null))[_0xac55('0x57')](handleError(_0x5d0adc,null));};exports[_0xac55('0x8f')]=function(_0x2ecd26,_0x1ca76e,_0x26f2e8){var _0x139273={};var _0x3a6dfb={};var _0x59334b;var _0x132555;return db['OpenchannelQueue'][_0xac55('0x5b')]({'where':{'id':_0x2ecd26[_0xac55('0x59')]['id']}})[_0xac55('0x2d')](handleEntityNotFound(_0x1ca76e,null))[_0xac55('0x2d')](function(_0x310cb0){if(_0x310cb0){_0x59334b=_0x310cb0;_0x3a6dfb[_0xac55('0x3b')]=_[_0xac55('0x3d')](db[_0xac55('0x60')]['rawAttributes']);_0x3a6dfb['query']=_[_0xac55('0x3d')](_0x2ecd26[_0xac55('0x3e')]);_0x3a6dfb[_0xac55('0x3f')]=_[_0xac55('0x5c')](_0x3a6dfb[_0xac55('0x3b')],_0x3a6dfb[_0xac55('0x3e')]);_0x139273[_0xac55('0x41')]=_['intersection'](_0x3a6dfb[_0xac55('0x3b')],qs['fields'](_0x2ecd26[_0xac55('0x3e')][_0xac55('0x40')]));_0x139273[_0xac55('0x41')]=_0x139273[_0xac55('0x41')][_0xac55('0x42')]?_0x139273[_0xac55('0x41')]:_0x3a6dfb[_0xac55('0x3b')];_0x139273[_0xac55('0x45')]=qs[_0xac55('0x46')](_0x2ecd26[_0xac55('0x3e')][_0xac55('0x46')]);_0x139273[_0xac55('0x47')]=qs[_0xac55('0x3f')](_[_0xac55('0x48')](_0x2ecd26[_0xac55('0x3e')],_0x3a6dfb['filters']));if(_0x2ecd26[_0xac55('0x3e')][_0xac55('0x49')]){_0x139273[_0xac55('0x47')]=_['merge'](_0x139273['where'],{'$or':_[_0xac55('0x3c')](_0x139273[_0xac55('0x41')],function(_0x329fa3){var _0x5b69cd={};_0x5b69cd[_0x329fa3]={'$like':'%'+_0x2ecd26[_0xac55('0x3e')]['filter']+'%'};return _0x5b69cd;})});}_0x139273=_['merge']({},_0x139273,_0x2ecd26[_0xac55('0x4b')]);return _0x59334b[_0xac55('0x8f')](_0x139273);}})[_0xac55('0x2d')](function(_0x2ea696){if(_0x2ea696){_0x132555=_0x2ea696[_0xac55('0x42')];if(!_0x2ecd26[_0xac55('0x3e')][_0xac55('0x5d')](_0xac55('0x43'))){_0x139273[_0xac55('0x44')]=qs['limit'](_0x2ecd26[_0xac55('0x3e')]['limit']);_0x139273['offset']=qs['offset'](_0x2ecd26[_0xac55('0x3e')][_0xac55('0x25')]);}return _0x59334b[_0xac55('0x8f')](_0x139273);}})[_0xac55('0x2d')](function(_0x1d9343){if(_0x1d9343){return _0x1d9343?{'count':_0x132555,'rows':_0x1d9343}:null;}})[_0xac55('0x2d')](respondWithResult(_0x1ca76e,null))[_0xac55('0x57')](handleError(_0x1ca76e,null));};