Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / api / mailQueue / mailQueue.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 _0x07e3=['send','map','rawAttributes','fieldName','key','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort','where','filter','merge','options','MailQueue','includeAll','include','findAll','rows','catch','show','find','create','body','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','describe','findOne','UserMailQueue','MailQueueId','User','findAndCountAll','UserId','mailPause','createdAt','format','%s/%s','SIP','updatedAt','getTeams','Team','order','pick','addTeams','ids','Agents','online','voicePause','interface','flatMap','sequelize','transaction','each','findOrCreate','forEach','emit','userMailQueue:save','select','field','tq.TeamId','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','MailQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','QueryTypes','every','TeamId','includes','all','union','value','removeTeams','isEmpty','userMailQueue:remove','addAgents','omit','spread','removeAgents','getAgents','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','squel','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./mailQueue.socket','register','sendStatus','status','count','offset','limit','set','Content-Range','json','reject','save','update','then','destroy','MailQueues','UserProfileResource','end','error','stack','name'];(function(_0xb23bfe,_0x54c0ce){var _0xe3d28e=function(_0x44e000){while(--_0x44e000){_0xb23bfe['push'](_0xb23bfe['shift']());}};_0xe3d28e(++_0x54c0ce);}(_0x07e3,0xed));var _0x307e=function(_0xbe40ad,_0x44343c){_0xbe40ad=_0xbe40ad-0x0;var _0x50fac9=_0x07e3[_0xbe40ad];return _0x50fac9;};'use strict';var pdf=require(_0x307e('0x0'));var emlformat=require(_0x307e('0x1'));var rimraf=require(_0x307e('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x307e('0x3'));var rp=require(_0x307e('0x4'));var moment=require(_0x307e('0x5'));var BPromise=require(_0x307e('0x6'));var Mustache=require(_0x307e('0x7'));var util=require(_0x307e('0x8'));var path=require(_0x307e('0x9'));var sox=require('sox');var csv=require(_0x307e('0xa'));var ejs=require(_0x307e('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x307e('0xc'));var crypto=require('crypto');var jsforce=require(_0x307e('0xd'));var deskjs=require(_0x307e('0xe'));var toCsv=require(_0x307e('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x307e('0xf'));var authService=require(_0x307e('0x10'));var qs=require(_0x307e('0x11'));var as=require(_0x307e('0x12'));var hardwareService=require(_0x307e('0x13'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x307e('0x14'));var db=require(_0x307e('0x15'))['db'];config[_0x307e('0x16')]=_[_0x307e('0x17')](config[_0x307e('0x16')],{'host':_0x307e('0x18'),'port':0x18eb});var socket=require(_0x307e('0x19'))(new Redis(config[_0x307e('0x16')]));require(_0x307e('0x1a'))[_0x307e('0x1b')](socket);function respondWithStatusCode(_0x111b90,_0x55a7b9){_0x55a7b9=_0x55a7b9||0xcc;return function(_0x54f861){if(_0x54f861){return _0x111b90[_0x307e('0x1c')](_0x55a7b9);}return _0x111b90['status'](_0x55a7b9)['end']();};}function respondWithResult(_0xd79bd4,_0x22317b){_0x22317b=_0x22317b||0xc8;return function(_0x5f0c8c){if(_0x5f0c8c){return _0xd79bd4[_0x307e('0x1d')](_0x22317b)['json'](_0x5f0c8c);}};}function respondWithFilteredResult(_0x3756cb,_0x4de828){return function(_0x4a7f8e){if(_0x4a7f8e){var _0xb5906e=_0x4a7f8e[_0x307e('0x1e')],_0x12e3f7=_0x4de828['offset'],_0x4ee549=_0x4de828[_0x307e('0x1f')]+_0x4de828[_0x307e('0x20')],_0x57ad10;if(_0x4ee549>=_0xb5906e){_0x4ee549=_0xb5906e;_0x57ad10=0xc8;}else{_0x57ad10=0xce;}_0x3756cb[_0x307e('0x1d')](_0x57ad10);return _0x3756cb[_0x307e('0x21')](_0x307e('0x22'),_0x12e3f7+'-'+_0x4ee549+'/'+_0xb5906e)[_0x307e('0x23')](_0x4a7f8e);}return null;};}function patchUpdates(_0x8fe150){return function(_0x5b2981){try{jsonpatch['apply'](_0x5b2981,_0x8fe150,!![]);}catch(_0x299a38){return BPromise[_0x307e('0x24')](_0x299a38);}return _0x5b2981[_0x307e('0x25')]();};}function saveUpdates(_0x268c79,_0x2d388){return function(_0x28ed9d){if(_0x28ed9d){return _0x28ed9d[_0x307e('0x26')](_0x268c79)[_0x307e('0x27')](function(_0x32c97e){return _0x32c97e;});}return null;};}function removeEntity(_0x6929c0,_0xba9bc){return function(_0x22e614){if(_0x22e614){return _0x22e614[_0x307e('0x28')]()['then'](function(){var _0x334f8f=_0x22e614['get']({'plain':!![]});var _0x39a44c=_0x307e('0x29');return db[_0x307e('0x2a')][_0x307e('0x28')]({'where':{'type':_0x39a44c,'resourceId':_0x334f8f['id']}})[_0x307e('0x27')](function(){return _0x22e614;});})['then'](function(){_0x6929c0['status'](0xcc)[_0x307e('0x2b')]();});}};}function handleEntityNotFound(_0x27c6bb,_0x7f88a1){return function(_0x2d2e9c){if(!_0x2d2e9c){_0x27c6bb['sendStatus'](0x194);}return _0x2d2e9c;};}function handleError(_0x32393b,_0x56b9c5){_0x56b9c5=_0x56b9c5||0x1f4;return function(_0x3725b6){logger[_0x307e('0x2c')](_0x3725b6[_0x307e('0x2d')]);if(_0x3725b6[_0x307e('0x2e')]){delete _0x3725b6[_0x307e('0x2e')];}_0x32393b['status'](_0x56b9c5)[_0x307e('0x2f')](_0x3725b6);};}exports['index']=function(_0x2fc146,_0x6cff33){var _0x5e9755={},_0x18b7bc={},_0x1de137={'count':0x0,'rows':[]};var _0x42b02c=_[_0x307e('0x30')](db['MailQueue'][_0x307e('0x31')],function(_0x43b95c){return{'name':_0x43b95c[_0x307e('0x32')],'type':_0x43b95c['type'][_0x307e('0x33')]};});_0x18b7bc[_0x307e('0x34')]=_['map'](_0x42b02c,_0x307e('0x2e'));_0x18b7bc['query']=_[_0x307e('0x35')](_0x2fc146[_0x307e('0x36')]);_0x18b7bc[_0x307e('0x37')]=_[_0x307e('0x38')](_0x18b7bc[_0x307e('0x34')],_0x18b7bc[_0x307e('0x36')]);_0x5e9755['attributes']=_['intersection'](_0x18b7bc[_0x307e('0x34')],qs[_0x307e('0x39')](_0x2fc146['query'][_0x307e('0x39')]));_0x5e9755[_0x307e('0x3a')]=_0x5e9755[_0x307e('0x3a')][_0x307e('0x3b')]?_0x5e9755[_0x307e('0x3a')]:_0x18b7bc[_0x307e('0x34')];if(!_0x2fc146[_0x307e('0x36')][_0x307e('0x3c')](_0x307e('0x3d'))){_0x5e9755['limit']=qs[_0x307e('0x20')](_0x2fc146['query'][_0x307e('0x20')]);_0x5e9755[_0x307e('0x1f')]=qs[_0x307e('0x1f')](_0x2fc146[_0x307e('0x36')]['offset']);}_0x5e9755['order']=qs['sort'](_0x2fc146[_0x307e('0x36')][_0x307e('0x3e')]);_0x5e9755[_0x307e('0x3f')]=qs[_0x307e('0x37')](_['pick'](_0x2fc146[_0x307e('0x36')],_0x18b7bc[_0x307e('0x37')]),_0x42b02c);if(_0x2fc146[_0x307e('0x36')][_0x307e('0x40')]){_0x5e9755['where']=_['merge'](_0x5e9755[_0x307e('0x3f')],{'$or':_[_0x307e('0x30')](_0x42b02c,function(_0x27af77){if(_0x27af77['type']!=='VIRTUAL'){var _0x3ec956={};_0x3ec956[_0x27af77['name']]={'$like':'%'+_0x2fc146[_0x307e('0x36')][_0x307e('0x40')]+'%'};return _0x3ec956;}})});}_0x5e9755=_[_0x307e('0x41')]({},_0x5e9755,_0x2fc146[_0x307e('0x42')]);var _0x50cc4c={'where':_0x5e9755[_0x307e('0x3f')]};return db[_0x307e('0x43')]['count'](_0x50cc4c)[_0x307e('0x27')](function(_0x3d3a38){_0x1de137[_0x307e('0x1e')]=_0x3d3a38;if(_0x2fc146[_0x307e('0x36')][_0x307e('0x44')]){_0x5e9755[_0x307e('0x45')]=[{'all':!![]}];}return db[_0x307e('0x43')][_0x307e('0x46')](_0x5e9755);})[_0x307e('0x27')](function(_0x4ffe7c){_0x1de137[_0x307e('0x47')]=_0x4ffe7c;return _0x1de137;})[_0x307e('0x27')](respondWithFilteredResult(_0x6cff33,_0x5e9755))[_0x307e('0x48')](handleError(_0x6cff33,null));};exports[_0x307e('0x49')]=function(_0x550ffc,_0x1682fb){var _0xdcb384={'raw':!![],'where':{'id':_0x550ffc['params']['id']}},_0x228ac3={};_0x228ac3[_0x307e('0x34')]=_[_0x307e('0x35')](db[_0x307e('0x43')][_0x307e('0x31')]);_0x228ac3[_0x307e('0x36')]=_['keys'](_0x550ffc[_0x307e('0x36')]);_0x228ac3[_0x307e('0x37')]=_['intersection'](_0x228ac3[_0x307e('0x34')],_0x228ac3[_0x307e('0x36')]);_0xdcb384[_0x307e('0x3a')]=_['intersection'](_0x228ac3[_0x307e('0x34')],qs[_0x307e('0x39')](_0x550ffc[_0x307e('0x36')]['fields']));_0xdcb384[_0x307e('0x3a')]=_0xdcb384[_0x307e('0x3a')][_0x307e('0x3b')]?_0xdcb384[_0x307e('0x3a')]:_0x228ac3['model'];if(_0x550ffc['query'][_0x307e('0x44')]){_0xdcb384[_0x307e('0x45')]=[{'all':!![]}];}_0xdcb384=_[_0x307e('0x41')]({},_0xdcb384,_0x550ffc[_0x307e('0x42')]);return db[_0x307e('0x43')][_0x307e('0x4a')](_0xdcb384)[_0x307e('0x27')](handleEntityNotFound(_0x1682fb,null))[_0x307e('0x27')](respondWithResult(_0x1682fb,null))[_0x307e('0x48')](handleError(_0x1682fb,null));};exports[_0x307e('0x4b')]=function(_0x43ddaf,_0x482fa4){return db[_0x307e('0x43')][_0x307e('0x4b')](_0x43ddaf[_0x307e('0x4c')],{})[_0x307e('0x27')](function(_0x44c280){var _0x96b75f=_0x43ddaf['user'][_0x307e('0x4d')]({'plain':!![]});if(!_0x96b75f)throw new Error(_0x307e('0x4e'));if(_0x96b75f[_0x307e('0x4f')]===_0x307e('0x50')){var _0x104ef7=_0x44c280[_0x307e('0x4d')]({'plain':!![]});var _0xd6dd70=_0x307e('0x29');return db[_0x307e('0x51')][_0x307e('0x4a')]({'where':{'name':_0xd6dd70,'userProfileId':_0x96b75f['userProfileId']},'raw':!![]})[_0x307e('0x27')](function(_0x2d8a87){if(_0x2d8a87&&_0x2d8a87[_0x307e('0x52')]===0x0){return db[_0x307e('0x2a')]['create']({'name':_0x104ef7[_0x307e('0x2e')],'resourceId':_0x104ef7['id'],'type':_0x2d8a87['name'],'sectionId':_0x2d8a87['id']},{})['then'](function(){return _0x44c280;});}else{return _0x44c280;}})[_0x307e('0x48')](function(_0xc87b29){logger[_0x307e('0x2c')](_0x307e('0x53'),_0xc87b29);throw _0xc87b29;});}return _0x44c280;})[_0x307e('0x27')](respondWithResult(_0x482fa4,0xc9))[_0x307e('0x48')](handleError(_0x482fa4,null));};exports[_0x307e('0x26')]=function(_0x2b50b9,_0xee601c){if(_0x2b50b9['body']['id']){delete _0x2b50b9['body']['id'];}return db['MailQueue'][_0x307e('0x4a')]({'where':{'id':_0x2b50b9[_0x307e('0x54')]['id']}})[_0x307e('0x27')](handleEntityNotFound(_0xee601c,null))[_0x307e('0x27')](saveUpdates(_0x2b50b9[_0x307e('0x4c')],null))[_0x307e('0x27')](respondWithResult(_0xee601c,null))['catch'](handleError(_0xee601c,null));};exports[_0x307e('0x28')]=function(_0x337ba8,_0x188999){return db['MailQueue'][_0x307e('0x4a')]({'where':{'id':_0x337ba8[_0x307e('0x54')]['id']}})[_0x307e('0x27')](handleEntityNotFound(_0x188999,null))['then'](removeEntity(_0x188999,null))['catch'](handleError(_0x188999,null));};exports[_0x307e('0x55')]=function(_0xb843a9,_0x43d163){return db[_0x307e('0x43')][_0x307e('0x55')]()['then'](respondWithResult(_0x43d163,null))[_0x307e('0x48')](handleError(_0x43d163,null));};exports['getMembers']=function(_0x94ee1b,_0x19b86e,_0x2cee4f){var _0x6e0f39={'raw':!![],'where':{}},_0x5ab580={},_0x10fb34;return db[_0x307e('0x43')][_0x307e('0x56')]({'where':{'id':_0x94ee1b['params']['id']}})[_0x307e('0x27')](handleEntityNotFound(_0x19b86e,null))[_0x307e('0x27')](function(_0x40fb97){if(_0x40fb97){_0x10fb34=_0x40fb97[_0x307e('0x4d')]({'plain':!![]});_0x5ab580['model']=_[_0x307e('0x35')](db[_0x307e('0x57')]['rawAttributes']);_0x5ab580[_0x307e('0x36')]=_[_0x307e('0x35')](_0x94ee1b['query']);_0x5ab580[_0x307e('0x37')]=_[_0x307e('0x38')](_0x5ab580[_0x307e('0x34')],_0x5ab580[_0x307e('0x36')]);_0x6e0f39[_0x307e('0x3a')]=_[_0x307e('0x38')](_0x5ab580[_0x307e('0x34')],qs[_0x307e('0x39')](_0x94ee1b[_0x307e('0x36')]['fields']));_0x6e0f39['attributes']=_0x6e0f39[_0x307e('0x3a')]['length']?_0x6e0f39[_0x307e('0x3a')]:_0x5ab580[_0x307e('0x34')];if(!_0x94ee1b['query'][_0x307e('0x3c')](_0x307e('0x3d'))){_0x6e0f39[_0x307e('0x20')]=qs[_0x307e('0x20')](_0x94ee1b['query'][_0x307e('0x20')]);_0x6e0f39[_0x307e('0x1f')]=qs['offset'](_0x94ee1b[_0x307e('0x36')]['offset']);}_0x6e0f39['order']=qs['sort'](_0x94ee1b[_0x307e('0x36')][_0x307e('0x3e')]);_0x6e0f39[_0x307e('0x3f')]=qs['filters'](_['pick'](_0x94ee1b['query'],_0x5ab580[_0x307e('0x37')]));_0x6e0f39[_0x307e('0x3f')][_0x307e('0x58')]=_0x40fb97['id'];if(_0x94ee1b[_0x307e('0x36')][_0x307e('0x40')]){_0x6e0f39[_0x307e('0x3f')]=_[_0x307e('0x41')](_0x6e0f39[_0x307e('0x3f')],{'$or':_[_0x307e('0x30')](_0x6e0f39[_0x307e('0x3a')],function(_0x402d77){var _0x53d5f7={};_0x53d5f7[_0x402d77]={'$like':'%'+_0x94ee1b[_0x307e('0x36')][_0x307e('0x40')]+'%'};return _0x53d5f7;})});}_0x6e0f39=_['merge']({},_0x6e0f39,_0x94ee1b[_0x307e('0x42')]);return db[_0x307e('0x57')][_0x307e('0x46')](_0x6e0f39);}})[_0x307e('0x27')](function(_0x471091){if(_0x471091){return db[_0x307e('0x59')][_0x307e('0x5a')]({'where':{'id':_[_0x307e('0x30')](_0x471091,_0x307e('0x5b')),'role':'agent'},'attributes':['id',_0x307e('0x2e'),_0x307e('0x5c'),'updatedAt',_0x307e('0x5d')]});}})[_0x307e('0x27')](function(_0x206c93){if(_0x206c93){return{'count':_0x206c93[_0x307e('0x1e')],'rows':_[_0x307e('0x30')](_0x206c93[_0x307e('0x47')],function(_0x31149d){return{'membername':_0x31149d[_0x307e('0x2e')],'UserId':_0x31149d['id'],'queue_name':_0x10fb34[_0x307e('0x2e')],'MailQueueId':_0x10fb34['id'],'interface':util[_0x307e('0x5e')](_0x307e('0x5f'),_0x307e('0x60'),_0x31149d['name']),'penalty':0x0,'paused':_0x31149d[_0x307e('0x5c')],'createdAt':_0x31149d[_0x307e('0x5d')],'updatedAt':_0x31149d[_0x307e('0x61')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x307e('0x27')](respondWithFilteredResult(_0x19b86e,_0x6e0f39))[_0x307e('0x48')](handleError(_0x19b86e,null));};exports[_0x307e('0x62')]=function(_0x5a2ef0,_0x2b4489,_0x2de5ba){var _0x449322={};var _0x3290f1={};var _0x1b4ec2;var _0x1406dc;return db['MailQueue'][_0x307e('0x56')]({'where':{'id':_0x5a2ef0[_0x307e('0x54')]['id']}})['then'](handleEntityNotFound(_0x2b4489,null))[_0x307e('0x27')](function(_0x87e700){if(_0x87e700){_0x1b4ec2=_0x87e700;_0x3290f1['model']=_[_0x307e('0x35')](db[_0x307e('0x63')][_0x307e('0x31')]);_0x3290f1[_0x307e('0x36')]=_['keys'](_0x5a2ef0[_0x307e('0x36')]);_0x3290f1[_0x307e('0x37')]=_['intersection'](_0x3290f1[_0x307e('0x34')],_0x3290f1[_0x307e('0x36')]);_0x449322['attributes']=_['intersection'](_0x3290f1[_0x307e('0x34')],qs[_0x307e('0x39')](_0x5a2ef0[_0x307e('0x36')][_0x307e('0x39')]));_0x449322[_0x307e('0x3a')]=_0x449322[_0x307e('0x3a')]['length']?_0x449322[_0x307e('0x3a')]:_0x3290f1[_0x307e('0x34')];_0x449322[_0x307e('0x64')]=qs[_0x307e('0x3e')](_0x5a2ef0[_0x307e('0x36')][_0x307e('0x3e')]);_0x449322['where']=qs[_0x307e('0x37')](_[_0x307e('0x65')](_0x5a2ef0[_0x307e('0x36')],_0x3290f1['filters']));if(_0x5a2ef0[_0x307e('0x36')][_0x307e('0x40')]){_0x449322['where']=_[_0x307e('0x41')](_0x449322[_0x307e('0x3f')],{'$or':_[_0x307e('0x30')](_0x449322[_0x307e('0x3a')],function(_0x181af6){var _0xf3e75a={};_0xf3e75a[_0x181af6]={'$like':'%'+_0x5a2ef0[_0x307e('0x36')][_0x307e('0x40')]+'%'};return _0xf3e75a;})});}_0x449322=_['merge']({},_0x449322,_0x5a2ef0[_0x307e('0x42')]);return _0x1b4ec2['getTeams'](_0x449322);}})['then'](function(_0xe038c4){if(_0xe038c4){_0x1406dc=_0xe038c4[_0x307e('0x3b')];if(!_0x5a2ef0[_0x307e('0x36')][_0x307e('0x3c')](_0x307e('0x3d'))){_0x449322['limit']=qs['limit'](_0x5a2ef0[_0x307e('0x36')]['limit']);_0x449322['offset']=qs[_0x307e('0x1f')](_0x5a2ef0['query'][_0x307e('0x1f')]);}return _0x1b4ec2['getTeams'](_0x449322);}})[_0x307e('0x27')](function(_0x2e5514){if(_0x2e5514){return _0x2e5514?{'count':_0x1406dc,'rows':_0x2e5514}:null;}})[_0x307e('0x27')](respondWithResult(_0x2b4489,null))[_0x307e('0x48')](handleError(_0x2b4489,null));};exports[_0x307e('0x66')]=function(_0x3c72f1,_0x5e0efb,_0x59196b){var _0x5280ed=_0x3c72f1['body'][_0x307e('0x67')];return db[_0x307e('0x63')][_0x307e('0x46')]({'where':{'id':_0x5280ed},'attributes':['id'],'include':[{'model':db[_0x307e('0x59')],'as':_0x307e('0x68'),'attributes':['id',_0x307e('0x2e'),_0x307e('0x69'),_0x307e('0x6a'),_0x307e('0x6b')],'raw':!![]}]})[_0x307e('0x27')](function(_0x41501b){if(_0x41501b){var _0x1ec90c=_[_0x307e('0x6c')](_0x41501b,function(_0xee6f60){var _0x2f8e04=_0xee6f60['get']({'plain':!![]});return _0x2f8e04[_0x307e('0x68')];});return db[_0x307e('0x43')][_0x307e('0x4a')]({'where':{'id':_0x3c72f1[_0x307e('0x54')]['id']}})[_0x307e('0x27')](function(_0x58e0f3){return db[_0x307e('0x6d')][_0x307e('0x6e')](function(_0x467dc4){return _0x58e0f3[_0x307e('0x66')](_0x5280ed,{'transaction':_0x467dc4})[_0x307e('0x27')](function(){return BPromise[_0x307e('0x6f')](_0x1ec90c,function(_0x19fcba){return db[_0x307e('0x57')][_0x307e('0x70')]({'where':{'UserId':_0x19fcba['id'],'MailQueueId':_0x3c72f1[_0x307e('0x54')]['id']},'transaction':_0x467dc4});});})['then'](function(){_0x1ec90c[_0x307e('0x71')](function(_0x65359c){socket[_0x307e('0x72')](_0x307e('0x73'),{'UserId':_0x65359c['id'],'MailQueueId':_0x58e0f3['id']});});});});});}})[_0x307e('0x27')](respondWithStatusCode(_0x5e0efb,null))[_0x307e('0x48')](handleError(_0x5e0efb,null));};exports['removeTeams']=function(_0x2f40a1,_0x373857,_0x644d5c){return db[_0x307e('0x63')][_0x307e('0x46')]({'where':{'id':_0x2f40a1[_0x307e('0x36')]['ids']},'attributes':['id'],'include':[{'model':db[_0x307e('0x59')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0x307e('0x27')](handleEntityNotFound(_0x373857,null))[_0x307e('0x27')](function(_0x1fb4b7){var _0x3a3ede=_[_0x307e('0x30')](_0x1fb4b7,'id');var _0x360d8e=[];var _0x56b382=[];var _0x30076e=squel[_0x307e('0x74')]();_0x30076e[_0x307e('0x75')](_0x307e('0x76'))[_0x307e('0x77')]('team_has_mail_queues','tq')[_0x307e('0x78')](_0x307e('0x79'),'ut',_0x307e('0x7a'))[_0x307e('0x3f')](_0x307e('0x7b'),_0x2f40a1[_0x307e('0x54')]['id']);for(var _0xa2c38b=0x0;_0xa2c38b<_0x1fb4b7['length'];_0xa2c38b+=0x1){let _0x141b19=_0x1fb4b7[_0xa2c38b];for(var _0x5752fa=0x0;_0x5752fa<_0x141b19['Agents'][_0x307e('0x3b')];_0x5752fa+=0x1){let _0x2621a9=_0x141b19[_0x307e('0x68')][_0x5752fa];var _0x46ef58=_0x30076e[_0x307e('0x7c')]();_0x46ef58['where'](_0x307e('0x7d'),_0x2621a9['id']);_0x56b382[_0x307e('0x7e')](db['sequelize']['query'](_0x46ef58['toString'](),{'type':db['sequelize'][_0x307e('0x7f')]['SELECT']})[_0x307e('0x27')](function(_0x45e07f){if(_0x45e07f[_0x307e('0x3b')]===0x1){return _0x2621a9['id'];}else{var _0x320200=_[_0x307e('0x80')](_['map'](_0x45e07f,_0x307e('0x81')),function(_0x1d0307){return _[_0x307e('0x82')](_0x3a3ede,_0x1d0307);});if(_0x320200){return _0x2621a9['id'];}}}));}}return BPromise[_0x307e('0x83')](_0x56b382)['then'](function(_0x37da29){_0x360d8e=_(_0x360d8e)[_0x307e('0x84')](_0x37da29)['compact']()[_0x307e('0x85')]();return db[_0x307e('0x43')][_0x307e('0x4a')]({'where':{'id':_0x2f40a1['params']['id']}})['then'](function(_0x411a33){return db[_0x307e('0x6d')][_0x307e('0x6e')](function(_0x3c01c4){return _0x411a33[_0x307e('0x86')](_0x2f40a1[_0x307e('0x36')][_0x307e('0x67')],{'transaction':_0x3c01c4})[_0x307e('0x27')](function(){if(!_[_0x307e('0x87')](_0x360d8e)){return _0x411a33['removeAgents'](_0x360d8e,{'transaction':_0x3c01c4});}})['then'](function(){_0x360d8e[_0x307e('0x71')](function(_0x1790a3){socket['emit'](_0x307e('0x88'),{'UserId':_0x1790a3,'MailQueueId':_0x411a33['id']});});});});});});})[_0x307e('0x27')](respondWithStatusCode(_0x373857,null))[_0x307e('0x48')](handleError(_0x373857,null));};exports[_0x307e('0x89')]=function(_0x49c906,_0x4a100e,_0xacd01b){return db[_0x307e('0x43')][_0x307e('0x4a')]({'where':{'id':_0x49c906[_0x307e('0x54')]['id']}})[_0x307e('0x27')](handleEntityNotFound(_0x4a100e,null))[_0x307e('0x27')](function(_0x2922f9){if(_0x2922f9){return _0x2922f9[_0x307e('0x89')](_0x49c906['body'][_0x307e('0x67')],_[_0x307e('0x8a')](_0x49c906[_0x307e('0x4c')],[_0x307e('0x67'),'id'])||{})[_0x307e('0x8b')](function(_0x396b53){for(var _0x85503b=0x0;_0x85503b<_0x49c906[_0x307e('0x4c')][_0x307e('0x67')][_0x307e('0x3b')];_0x85503b+=0x1){socket[_0x307e('0x72')](_0x307e('0x73'),{'UserId':_0x49c906['body'][_0x307e('0x67')][_0x85503b],'MailQueueId':_0x49c906['params']['id']});}return _0x396b53;});}})[_0x307e('0x27')](respondWithResult(_0x4a100e,null))[_0x307e('0x48')](handleError(_0x4a100e,null));};exports[_0x307e('0x8c')]=function(_0x4e7d87,_0x39e8e3,_0x1db384){return db['MailQueue'][_0x307e('0x4a')]({'where':{'id':_0x4e7d87[_0x307e('0x54')]['id']}})[_0x307e('0x27')](handleEntityNotFound(_0x39e8e3,null))[_0x307e('0x27')](function(_0x3a3bff){if(_0x3a3bff){return _0x3a3bff[_0x307e('0x8c')](_0x4e7d87[_0x307e('0x36')]['ids'])[_0x307e('0x27')](function(){if(_['isArray'](_0x4e7d87[_0x307e('0x36')][_0x307e('0x67')])){for(var _0x5602c3=0x0;_0x5602c3<_0x4e7d87[_0x307e('0x36')][_0x307e('0x67')][_0x307e('0x3b')];_0x5602c3+=0x1){socket[_0x307e('0x72')](_0x307e('0x88'),{'UserId':Number(_0x4e7d87[_0x307e('0x36')][_0x307e('0x67')][_0x5602c3]),'MailQueueId':Number(_0x4e7d87[_0x307e('0x54')]['id'])});}}else{socket['emit'](_0x307e('0x88'),{'UserId':Number(_0x4e7d87[_0x307e('0x36')][_0x307e('0x67')]),'MailQueueId':Number(_0x4e7d87['params']['id'])});}});}})[_0x307e('0x27')](respondWithStatusCode(_0x39e8e3,null))['catch'](handleError(_0x39e8e3,null));};exports[_0x307e('0x8d')]=function(_0x206765,_0x388704,_0x10578b){var _0x2bc164={};var _0x2cba80={};var _0x5a7e11;var _0x3a5e7d;return db[_0x307e('0x43')]['findOne']({'where':{'id':_0x206765['params']['id']}})[_0x307e('0x27')](handleEntityNotFound(_0x388704,null))[_0x307e('0x27')](function(_0x373b70){if(_0x373b70){_0x5a7e11=_0x373b70;_0x2cba80[_0x307e('0x34')]=_['keys'](db[_0x307e('0x59')][_0x307e('0x31')]);_0x2cba80[_0x307e('0x36')]=_[_0x307e('0x35')](_0x206765[_0x307e('0x36')]);_0x2cba80[_0x307e('0x37')]=_[_0x307e('0x38')](_0x2cba80[_0x307e('0x34')],_0x2cba80['query']);_0x2bc164['attributes']=_[_0x307e('0x38')](_0x2cba80[_0x307e('0x34')],qs['fields'](_0x206765[_0x307e('0x36')]['fields']));_0x2bc164['attributes']=_0x2bc164[_0x307e('0x3a')]['length']?_0x2bc164[_0x307e('0x3a')]:_0x2cba80[_0x307e('0x34')];_0x2bc164[_0x307e('0x64')]=qs[_0x307e('0x3e')](_0x206765['query'][_0x307e('0x3e')]);_0x2bc164['where']=qs[_0x307e('0x37')](_['pick'](_0x206765[_0x307e('0x36')],_0x2cba80[_0x307e('0x37')]));if(_0x206765['query'][_0x307e('0x40')]){_0x2bc164[_0x307e('0x3f')]=_[_0x307e('0x41')](_0x2bc164['where'],{'$or':_['map'](_0x2bc164[_0x307e('0x3a')],function(_0x4e3de1){var _0x10a4a2={};_0x10a4a2[_0x4e3de1]={'$like':'%'+_0x206765[_0x307e('0x36')][_0x307e('0x40')]+'%'};return _0x10a4a2;})});}_0x2bc164=_[_0x307e('0x41')]({},_0x2bc164,_0x206765['options']);return _0x5a7e11[_0x307e('0x8d')](_0x2bc164);}})[_0x307e('0x27')](function(_0x30a990){if(_0x30a990){_0x3a5e7d=_0x30a990[_0x307e('0x3b')];if(!_0x206765[_0x307e('0x36')]['hasOwnProperty'](_0x307e('0x3d'))){_0x2bc164[_0x307e('0x20')]=qs['limit'](_0x206765['query'][_0x307e('0x20')]);_0x2bc164[_0x307e('0x1f')]=qs['offset'](_0x206765[_0x307e('0x36')][_0x307e('0x1f')]);}return _0x5a7e11[_0x307e('0x8d')](_0x2bc164);}})[_0x307e('0x27')](function(_0x15bee){if(_0x15bee){return _0x15bee?{'count':_0x3a5e7d,'rows':_0x15bee}:null;}})['then'](respondWithResult(_0x388704,null))[_0x307e('0x48')](handleError(_0x388704,null));};