Built motion from commit (unavailable).|2.5.7
[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 _0xb9e7=['sort','where','filter','merge','count','includeAll','include','findAll','rows','show','options','find','catch','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','describe','UserMailQueue','pick','User','agent','mailPause','format','%s/%s','SIP','createdAt','updatedAt','getTeams','findOne','Team','order','Agents','online','interface','transaction','addTeams','each','findOrCreate','forEach','userMailQueue:save','removeTeams','ids','select','field','tq.TeamId','team_has_mail_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','MailQueueId\x20=\x20?','clone','toString','sequelize','QueryTypes','SELECT','TeamId','all','union','compact','value','isEmpty','removeAgents','emit','userMailQueue:remove','addAgents','omit','spread','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','ejs','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/license/util','redis','localhost','socket.io-emitter','register','sendStatus','status','end','json','offset','limit','Content-Range','apply','reject','save','update','then','destroy','get','MailQueues','UserProfileResource','error','name','send','index','map','MailQueue','rawAttributes','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0xb9e7,0x1df));var _0x7b9e=function(_0x49fcfb,_0x504dec){_0x49fcfb=_0x49fcfb-0x0;var _0x964926=_0xb9e7[_0x49fcfb];return _0x964926;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x7b9e('0x0'));var rimraf=require(_0x7b9e('0x1'));var zipdir=require(_0x7b9e('0x2'));var jsonpatch=require(_0x7b9e('0x3'));var rp=require(_0x7b9e('0x4'));var moment=require(_0x7b9e('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x7b9e('0x6'));var util=require(_0x7b9e('0x7'));var path=require('path');var sox=require(_0x7b9e('0x8'));var csv=require('to-csv');var ejs=require(_0x7b9e('0x9'));var fs=require('fs');var _=require(_0x7b9e('0xa'));var squel=require(_0x7b9e('0xb'));var crypto=require(_0x7b9e('0xc'));var jsforce=require(_0x7b9e('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x7b9e('0xe'));var querystring=require(_0x7b9e('0xf'));var Papa=require(_0x7b9e('0x10'));var Redis=require('ioredis');var authService=require(_0x7b9e('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x7b9e('0x12'));var hardwareService=require(_0x7b9e('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x7b9e('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x7b9e('0x15'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0x7b9e('0x16')],{'host':_0x7b9e('0x17'),'port':0x18eb});var socket=require(_0x7b9e('0x18'))(new Redis(config[_0x7b9e('0x16')]));require('./mailQueue.socket')[_0x7b9e('0x19')](socket);function respondWithStatusCode(_0x1fa0e8,_0x27d807){_0x27d807=_0x27d807||0xcc;return function(_0x13ddc0){if(_0x13ddc0){return _0x1fa0e8[_0x7b9e('0x1a')](_0x27d807);}return _0x1fa0e8[_0x7b9e('0x1b')](_0x27d807)[_0x7b9e('0x1c')]();};}function respondWithResult(_0x504954,_0x1c573f){_0x1c573f=_0x1c573f||0xc8;return function(_0x6f90f8){if(_0x6f90f8){return _0x504954['status'](_0x1c573f)[_0x7b9e('0x1d')](_0x6f90f8);}};}function respondWithFilteredResult(_0x53a085,_0x2afe9f){return function(_0x455b45){if(_0x455b45){var _0x4c8728=_0x455b45['count'],_0x447269=_0x2afe9f[_0x7b9e('0x1e')],_0x153906=_0x2afe9f[_0x7b9e('0x1e')]+_0x2afe9f[_0x7b9e('0x1f')],_0x5cbc8b;if(_0x153906>=_0x4c8728){_0x153906=_0x4c8728;_0x5cbc8b=0xc8;}else{_0x5cbc8b=0xce;}_0x53a085[_0x7b9e('0x1b')](_0x5cbc8b);return _0x53a085['set'](_0x7b9e('0x20'),_0x447269+'-'+_0x153906+'/'+_0x4c8728)[_0x7b9e('0x1d')](_0x455b45);}return null;};}function patchUpdates(_0x3bdbd8){return function(_0x112374){try{jsonpatch[_0x7b9e('0x21')](_0x112374,_0x3bdbd8,!![]);}catch(_0x535433){return BPromise[_0x7b9e('0x22')](_0x535433);}return _0x112374[_0x7b9e('0x23')]();};}function saveUpdates(_0x7db95f,_0x9b24da){return function(_0x45cb41){if(_0x45cb41){return _0x45cb41[_0x7b9e('0x24')](_0x7db95f)[_0x7b9e('0x25')](function(_0x39575a){return _0x39575a;});}return null;};}function removeEntity(_0x2b4b86,_0x5dcd42){return function(_0xf8b578){if(_0xf8b578){return _0xf8b578[_0x7b9e('0x26')]()[_0x7b9e('0x25')](function(){var _0x1033b0=_0xf8b578[_0x7b9e('0x27')]({'plain':!![]});var _0x2fde42=_0x7b9e('0x28');return db[_0x7b9e('0x29')][_0x7b9e('0x26')]({'where':{'type':_0x2fde42,'resourceId':_0x1033b0['id']}})[_0x7b9e('0x25')](function(){return _0xf8b578;});})['then'](function(){_0x2b4b86[_0x7b9e('0x1b')](0xcc)[_0x7b9e('0x1c')]();});}};}function handleEntityNotFound(_0x1a541c,_0x2dbe2a){return function(_0x2ac45e){if(!_0x2ac45e){_0x1a541c[_0x7b9e('0x1a')](0x194);}return _0x2ac45e;};}function handleError(_0x5b9db4,_0x22612e){_0x22612e=_0x22612e||0x1f4;return function(_0x5ca745){logger[_0x7b9e('0x2a')](_0x5ca745['stack']);if(_0x5ca745[_0x7b9e('0x2b')]){delete _0x5ca745[_0x7b9e('0x2b')];}_0x5b9db4[_0x7b9e('0x1b')](_0x22612e)[_0x7b9e('0x2c')](_0x5ca745);};}exports[_0x7b9e('0x2d')]=function(_0x1979d7,_0x17d5b2){var _0x11329f={},_0x8ef2f2={},_0x56e87e={'count':0x0,'rows':[]};var _0x3ebcd6=_[_0x7b9e('0x2e')](db[_0x7b9e('0x2f')][_0x7b9e('0x30')],function(_0xe53f7b){return{'name':_0xe53f7b['fieldName'],'type':_0xe53f7b[_0x7b9e('0x31')][_0x7b9e('0x32')]};});_0x8ef2f2[_0x7b9e('0x33')]=_[_0x7b9e('0x2e')](_0x3ebcd6,_0x7b9e('0x2b'));_0x8ef2f2['query']=_[_0x7b9e('0x34')](_0x1979d7[_0x7b9e('0x35')]);_0x8ef2f2[_0x7b9e('0x36')]=_[_0x7b9e('0x37')](_0x8ef2f2['model'],_0x8ef2f2['query']);_0x11329f[_0x7b9e('0x38')]=_['intersection'](_0x8ef2f2['model'],qs[_0x7b9e('0x39')](_0x1979d7['query'][_0x7b9e('0x39')]));_0x11329f['attributes']=_0x11329f[_0x7b9e('0x38')][_0x7b9e('0x3a')]?_0x11329f['attributes']:_0x8ef2f2[_0x7b9e('0x33')];if(!_0x1979d7[_0x7b9e('0x35')][_0x7b9e('0x3b')](_0x7b9e('0x3c'))){_0x11329f['limit']=qs[_0x7b9e('0x1f')](_0x1979d7[_0x7b9e('0x35')][_0x7b9e('0x1f')]);_0x11329f[_0x7b9e('0x1e')]=qs[_0x7b9e('0x1e')](_0x1979d7['query']['offset']);}_0x11329f['order']=qs[_0x7b9e('0x3d')](_0x1979d7['query'][_0x7b9e('0x3d')]);_0x11329f[_0x7b9e('0x3e')]=qs[_0x7b9e('0x36')](_['pick'](_0x1979d7[_0x7b9e('0x35')],_0x8ef2f2[_0x7b9e('0x36')]),_0x3ebcd6);if(_0x1979d7[_0x7b9e('0x35')][_0x7b9e('0x3f')]){_0x11329f[_0x7b9e('0x3e')]=_[_0x7b9e('0x40')](_0x11329f[_0x7b9e('0x3e')],{'$or':_['map'](_0x3ebcd6,function(_0x45b9ca){if(_0x45b9ca[_0x7b9e('0x31')]!=='VIRTUAL'){var _0x2ccc3b={};_0x2ccc3b[_0x45b9ca['name']]={'$like':'%'+_0x1979d7[_0x7b9e('0x35')][_0x7b9e('0x3f')]+'%'};return _0x2ccc3b;}})});}_0x11329f=_[_0x7b9e('0x40')]({},_0x11329f,_0x1979d7['options']);var _0x2a407a={'where':_0x11329f[_0x7b9e('0x3e')]};return db['MailQueue'][_0x7b9e('0x41')](_0x2a407a)[_0x7b9e('0x25')](function(_0x5a6f3e){_0x56e87e[_0x7b9e('0x41')]=_0x5a6f3e;if(_0x1979d7[_0x7b9e('0x35')][_0x7b9e('0x42')]){_0x11329f[_0x7b9e('0x43')]=[{'all':!![]}];}return db['MailQueue'][_0x7b9e('0x44')](_0x11329f);})[_0x7b9e('0x25')](function(_0x129feb){_0x56e87e[_0x7b9e('0x45')]=_0x129feb;return _0x56e87e;})['then'](respondWithFilteredResult(_0x17d5b2,_0x11329f))['catch'](handleError(_0x17d5b2,null));};exports[_0x7b9e('0x46')]=function(_0x45e04e,_0x525b09){var _0x44af51={'raw':!![],'where':{'id':_0x45e04e['params']['id']}},_0x5802f4={};_0x5802f4[_0x7b9e('0x33')]=_['keys'](db['MailQueue'][_0x7b9e('0x30')]);_0x5802f4[_0x7b9e('0x35')]=_['keys'](_0x45e04e[_0x7b9e('0x35')]);_0x5802f4[_0x7b9e('0x36')]=_[_0x7b9e('0x37')](_0x5802f4[_0x7b9e('0x33')],_0x5802f4[_0x7b9e('0x35')]);_0x44af51[_0x7b9e('0x38')]=_[_0x7b9e('0x37')](_0x5802f4[_0x7b9e('0x33')],qs[_0x7b9e('0x39')](_0x45e04e[_0x7b9e('0x35')]['fields']));_0x44af51[_0x7b9e('0x38')]=_0x44af51[_0x7b9e('0x38')][_0x7b9e('0x3a')]?_0x44af51[_0x7b9e('0x38')]:_0x5802f4[_0x7b9e('0x33')];if(_0x45e04e[_0x7b9e('0x35')]['includeAll']){_0x44af51[_0x7b9e('0x43')]=[{'all':!![]}];}_0x44af51=_['merge']({},_0x44af51,_0x45e04e[_0x7b9e('0x47')]);return db[_0x7b9e('0x2f')][_0x7b9e('0x48')](_0x44af51)['then'](handleEntityNotFound(_0x525b09,null))[_0x7b9e('0x25')](respondWithResult(_0x525b09,null))[_0x7b9e('0x49')](handleError(_0x525b09,null));};exports[_0x7b9e('0x4a')]=function(_0xd8d568,_0x155b62){return db[_0x7b9e('0x2f')][_0x7b9e('0x4a')](_0xd8d568[_0x7b9e('0x4b')],{})[_0x7b9e('0x25')](function(_0x3aa4de){var _0xd0479=_0xd8d568['user'][_0x7b9e('0x27')]({'plain':!![]});if(!_0xd0479)throw new Error(_0x7b9e('0x4c'));if(_0xd0479[_0x7b9e('0x4d')]==='user'){var _0x34f1ae=_0x3aa4de[_0x7b9e('0x27')]({'plain':!![]});var _0x113c91='MailQueues';return db[_0x7b9e('0x4e')][_0x7b9e('0x48')]({'where':{'name':_0x113c91,'userProfileId':_0xd0479[_0x7b9e('0x4f')]},'raw':!![]})[_0x7b9e('0x25')](function(_0x34bcc8){if(_0x34bcc8&&_0x34bcc8[_0x7b9e('0x50')]===0x0){return db[_0x7b9e('0x29')]['create']({'name':_0x34f1ae[_0x7b9e('0x2b')],'resourceId':_0x34f1ae['id'],'type':_0x34bcc8[_0x7b9e('0x2b')],'sectionId':_0x34bcc8['id']},{})[_0x7b9e('0x25')](function(){return _0x3aa4de;});}else{return _0x3aa4de;}})[_0x7b9e('0x49')](function(_0xf52931){logger['error'](_0x7b9e('0x51'),_0xf52931);throw _0xf52931;});}return _0x3aa4de;})['then'](respondWithResult(_0x155b62,0xc9))['catch'](handleError(_0x155b62,null));};exports[_0x7b9e('0x24')]=function(_0x69f1e7,_0x46c8d3){if(_0x69f1e7['body']['id']){delete _0x69f1e7[_0x7b9e('0x4b')]['id'];}return db[_0x7b9e('0x2f')][_0x7b9e('0x48')]({'where':{'id':_0x69f1e7[_0x7b9e('0x52')]['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0x46c8d3,null))[_0x7b9e('0x25')](saveUpdates(_0x69f1e7[_0x7b9e('0x4b')],null))['then'](respondWithResult(_0x46c8d3,null))[_0x7b9e('0x49')](handleError(_0x46c8d3,null));};exports[_0x7b9e('0x26')]=function(_0x3fbbfe,_0x5aa49d){return db[_0x7b9e('0x2f')][_0x7b9e('0x48')]({'where':{'id':_0x3fbbfe[_0x7b9e('0x52')]['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0x5aa49d,null))[_0x7b9e('0x25')](removeEntity(_0x5aa49d,null))[_0x7b9e('0x49')](handleError(_0x5aa49d,null));};exports[_0x7b9e('0x53')]=function(_0xc631e1,_0x1ff584){return db[_0x7b9e('0x2f')]['describe']()[_0x7b9e('0x25')](respondWithResult(_0x1ff584,null))[_0x7b9e('0x49')](handleError(_0x1ff584,null));};exports['getMembers']=function(_0x51f155,_0x5c95d2,_0x2debf6){var _0xc6c921={'raw':!![],'where':{}},_0x193395={},_0x4f3080;return db[_0x7b9e('0x2f')]['findOne']({'where':{'id':_0x51f155[_0x7b9e('0x52')]['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0x5c95d2,null))['then'](function(_0xb8b14){if(_0xb8b14){_0x4f3080=_0xb8b14[_0x7b9e('0x27')]({'plain':!![]});_0x193395['model']=_[_0x7b9e('0x34')](db[_0x7b9e('0x54')][_0x7b9e('0x30')]);_0x193395[_0x7b9e('0x35')]=_[_0x7b9e('0x34')](_0x51f155['query']);_0x193395[_0x7b9e('0x36')]=_[_0x7b9e('0x37')](_0x193395['model'],_0x193395[_0x7b9e('0x35')]);_0xc6c921['attributes']=_[_0x7b9e('0x37')](_0x193395[_0x7b9e('0x33')],qs[_0x7b9e('0x39')](_0x51f155[_0x7b9e('0x35')]['fields']));_0xc6c921['attributes']=_0xc6c921['attributes'][_0x7b9e('0x3a')]?_0xc6c921[_0x7b9e('0x38')]:_0x193395[_0x7b9e('0x33')];if(!_0x51f155['query']['hasOwnProperty'](_0x7b9e('0x3c'))){_0xc6c921['limit']=qs[_0x7b9e('0x1f')](_0x51f155['query'][_0x7b9e('0x1f')]);_0xc6c921['offset']=qs[_0x7b9e('0x1e')](_0x51f155['query'][_0x7b9e('0x1e')]);}_0xc6c921['order']=qs[_0x7b9e('0x3d')](_0x51f155['query']['sort']);_0xc6c921[_0x7b9e('0x3e')]=qs[_0x7b9e('0x36')](_[_0x7b9e('0x55')](_0x51f155[_0x7b9e('0x35')],_0x193395[_0x7b9e('0x36')]));_0xc6c921['where']['MailQueueId']=_0xb8b14['id'];if(_0x51f155['query'][_0x7b9e('0x3f')]){_0xc6c921[_0x7b9e('0x3e')]=_[_0x7b9e('0x40')](_0xc6c921[_0x7b9e('0x3e')],{'$or':_[_0x7b9e('0x2e')](_0xc6c921[_0x7b9e('0x38')],function(_0x390cf2){var _0x3b5b83={};_0x3b5b83[_0x390cf2]={'$like':'%'+_0x51f155[_0x7b9e('0x35')]['filter']+'%'};return _0x3b5b83;})});}_0xc6c921=_[_0x7b9e('0x40')]({},_0xc6c921,_0x51f155[_0x7b9e('0x47')]);return db[_0x7b9e('0x54')][_0x7b9e('0x44')](_0xc6c921);}})['then'](function(_0x3660a8){if(_0x3660a8){return db[_0x7b9e('0x56')]['findAndCountAll']({'where':{'id':_['map'](_0x3660a8,'UserId'),'role':_0x7b9e('0x57')},'attributes':['id','name',_0x7b9e('0x58'),'updatedAt','createdAt']});}})['then'](function(_0x64c809){if(_0x64c809){return{'count':_0x64c809['count'],'rows':_['map'](_0x64c809[_0x7b9e('0x45')],function(_0x1fb7d3){return{'membername':_0x1fb7d3[_0x7b9e('0x2b')],'UserId':_0x1fb7d3['id'],'queue_name':_0x4f3080[_0x7b9e('0x2b')],'MailQueueId':_0x4f3080['id'],'interface':util[_0x7b9e('0x59')](_0x7b9e('0x5a'),_0x7b9e('0x5b'),_0x1fb7d3[_0x7b9e('0x2b')]),'penalty':0x0,'paused':_0x1fb7d3['mailPause'],'createdAt':_0x1fb7d3[_0x7b9e('0x5c')],'updatedAt':_0x1fb7d3[_0x7b9e('0x5d')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x7b9e('0x25')](respondWithFilteredResult(_0x5c95d2,_0xc6c921))[_0x7b9e('0x49')](handleError(_0x5c95d2,null));};exports[_0x7b9e('0x5e')]=function(_0x401e7d,_0x2aa5d1,_0x1dc0b9){var _0x262e4c={};var _0x1b69cd={};var _0x1d2c31;var _0x4a64e4;return db[_0x7b9e('0x2f')][_0x7b9e('0x5f')]({'where':{'id':_0x401e7d['params']['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0x2aa5d1,null))['then'](function(_0x3fc838){if(_0x3fc838){_0x1d2c31=_0x3fc838;_0x1b69cd[_0x7b9e('0x33')]=_[_0x7b9e('0x34')](db[_0x7b9e('0x60')]['rawAttributes']);_0x1b69cd[_0x7b9e('0x35')]=_[_0x7b9e('0x34')](_0x401e7d[_0x7b9e('0x35')]);_0x1b69cd[_0x7b9e('0x36')]=_[_0x7b9e('0x37')](_0x1b69cd[_0x7b9e('0x33')],_0x1b69cd[_0x7b9e('0x35')]);_0x262e4c[_0x7b9e('0x38')]=_[_0x7b9e('0x37')](_0x1b69cd[_0x7b9e('0x33')],qs[_0x7b9e('0x39')](_0x401e7d['query'][_0x7b9e('0x39')]));_0x262e4c[_0x7b9e('0x38')]=_0x262e4c[_0x7b9e('0x38')][_0x7b9e('0x3a')]?_0x262e4c[_0x7b9e('0x38')]:_0x1b69cd[_0x7b9e('0x33')];_0x262e4c[_0x7b9e('0x61')]=qs[_0x7b9e('0x3d')](_0x401e7d['query'][_0x7b9e('0x3d')]);_0x262e4c[_0x7b9e('0x3e')]=qs[_0x7b9e('0x36')](_[_0x7b9e('0x55')](_0x401e7d[_0x7b9e('0x35')],_0x1b69cd['filters']));if(_0x401e7d['query'][_0x7b9e('0x3f')]){_0x262e4c[_0x7b9e('0x3e')]=_[_0x7b9e('0x40')](_0x262e4c[_0x7b9e('0x3e')],{'$or':_[_0x7b9e('0x2e')](_0x262e4c[_0x7b9e('0x38')],function(_0x24c985){var _0x19ccaf={};_0x19ccaf[_0x24c985]={'$like':'%'+_0x401e7d['query'][_0x7b9e('0x3f')]+'%'};return _0x19ccaf;})});}_0x262e4c=_['merge']({},_0x262e4c,_0x401e7d[_0x7b9e('0x47')]);return _0x1d2c31[_0x7b9e('0x5e')](_0x262e4c);}})[_0x7b9e('0x25')](function(_0xf94835){if(_0xf94835){_0x4a64e4=_0xf94835['length'];if(!_0x401e7d[_0x7b9e('0x35')]['hasOwnProperty'](_0x7b9e('0x3c'))){_0x262e4c[_0x7b9e('0x1f')]=qs['limit'](_0x401e7d[_0x7b9e('0x35')][_0x7b9e('0x1f')]);_0x262e4c[_0x7b9e('0x1e')]=qs[_0x7b9e('0x1e')](_0x401e7d[_0x7b9e('0x35')][_0x7b9e('0x1e')]);}return _0x1d2c31[_0x7b9e('0x5e')](_0x262e4c);}})[_0x7b9e('0x25')](function(_0x4b1a24){if(_0x4b1a24){return _0x4b1a24?{'count':_0x4a64e4,'rows':_0x4b1a24}:null;}})[_0x7b9e('0x25')](respondWithResult(_0x2aa5d1,null))[_0x7b9e('0x49')](handleError(_0x2aa5d1,null));};exports['addTeams']=function(_0x5e7c33,_0x2026ec,_0x47f3f5){var _0x3fca33=_0x5e7c33[_0x7b9e('0x4b')]['ids'];return db[_0x7b9e('0x60')][_0x7b9e('0x44')]({'where':{'id':_0x3fca33},'attributes':['id'],'include':[{'model':db['User'],'as':_0x7b9e('0x62'),'attributes':['id',_0x7b9e('0x2b'),_0x7b9e('0x63'),'voicePause',_0x7b9e('0x64')],'raw':!![]}]})[_0x7b9e('0x25')](function(_0x8c3790){if(_0x8c3790){var _0x41057c=_['flatMap'](_0x8c3790,function(_0xd1b87f){var _0x2fe389=_0xd1b87f['get']({'plain':!![]});return _0x2fe389['Agents'];});return db[_0x7b9e('0x2f')]['find']({'where':{'id':_0x5e7c33[_0x7b9e('0x52')]['id']}})[_0x7b9e('0x25')](function(_0x5d28f9){return db['sequelize'][_0x7b9e('0x65')](function(_0x3319f9){return _0x5d28f9[_0x7b9e('0x66')](_0x3fca33,{'transaction':_0x3319f9})['then'](function(){return BPromise[_0x7b9e('0x67')](_0x41057c,function(_0x49617c){return db[_0x7b9e('0x54')][_0x7b9e('0x68')]({'where':{'UserId':_0x49617c['id'],'MailQueueId':_0x5e7c33[_0x7b9e('0x52')]['id']},'transaction':_0x3319f9});});})['then'](function(){_0x41057c[_0x7b9e('0x69')](function(_0x3f3af3){socket['emit'](_0x7b9e('0x6a'),{'UserId':_0x3f3af3['id'],'MailQueueId':_0x5d28f9['id']});});});});});}})[_0x7b9e('0x25')](respondWithStatusCode(_0x2026ec,null))['catch'](handleError(_0x2026ec,null));};exports[_0x7b9e('0x6b')]=function(_0x733927,_0x40b675,_0x1cfc0){return db[_0x7b9e('0x60')][_0x7b9e('0x44')]({'where':{'id':_0x733927[_0x7b9e('0x35')][_0x7b9e('0x6c')]},'attributes':['id'],'include':[{'model':db[_0x7b9e('0x56')],'as':_0x7b9e('0x62'),'attributes':['id'],'raw':!![]}]})[_0x7b9e('0x25')](handleEntityNotFound(_0x40b675,null))[_0x7b9e('0x25')](function(_0x55485e){var _0x10e5f4=_['map'](_0x55485e,'id');var _0x438613=[];var _0x4ff6cd=[];var _0x50bd0f=squel[_0x7b9e('0x6d')]();_0x50bd0f[_0x7b9e('0x6e')](_0x7b9e('0x6f'))['from'](_0x7b9e('0x70'),'tq')[_0x7b9e('0x71')](_0x7b9e('0x72'),'ut',_0x7b9e('0x73'))[_0x7b9e('0x3e')](_0x7b9e('0x74'),_0x733927[_0x7b9e('0x52')]['id']);for(var _0x4bac58=0x0;_0x4bac58<_0x55485e[_0x7b9e('0x3a')];_0x4bac58+=0x1){let _0x124068=_0x55485e[_0x4bac58];for(var _0x58cd91=0x0;_0x58cd91<_0x124068[_0x7b9e('0x62')][_0x7b9e('0x3a')];_0x58cd91+=0x1){let _0x37f480=_0x124068[_0x7b9e('0x62')][_0x58cd91];var _0x4dacc1=_0x50bd0f[_0x7b9e('0x75')]();_0x4dacc1[_0x7b9e('0x3e')]('ut.UserId\x20=\x20?',_0x37f480['id']);_0x4ff6cd['push'](db['sequelize'][_0x7b9e('0x35')](_0x4dacc1[_0x7b9e('0x76')](),{'type':db[_0x7b9e('0x77')][_0x7b9e('0x78')][_0x7b9e('0x79')]})[_0x7b9e('0x25')](function(_0x3f576a){if(_0x3f576a[_0x7b9e('0x3a')]===0x1){return _0x37f480['id'];}else{var _0x426717=_['every'](_[_0x7b9e('0x2e')](_0x3f576a,_0x7b9e('0x7a')),function(_0xc23470){return _['includes'](_0x10e5f4,_0xc23470);});if(_0x426717){return _0x37f480['id'];}}}));}}return BPromise[_0x7b9e('0x7b')](_0x4ff6cd)['then'](function(_0x4422c8){_0x438613=_(_0x438613)[_0x7b9e('0x7c')](_0x4422c8)[_0x7b9e('0x7d')]()[_0x7b9e('0x7e')]();return db['MailQueue'][_0x7b9e('0x48')]({'where':{'id':_0x733927['params']['id']}})[_0x7b9e('0x25')](function(_0x2998f4){return db['sequelize']['transaction'](function(_0x744cd2){return _0x2998f4['removeTeams'](_0x733927['query'][_0x7b9e('0x6c')],{'transaction':_0x744cd2})[_0x7b9e('0x25')](function(){if(!_[_0x7b9e('0x7f')](_0x438613)){return _0x2998f4[_0x7b9e('0x80')](_0x438613,{'transaction':_0x744cd2});}})['then'](function(){_0x438613['forEach'](function(_0x5d0131){socket[_0x7b9e('0x81')](_0x7b9e('0x82'),{'UserId':_0x5d0131,'MailQueueId':_0x2998f4['id']});});});});});});})[_0x7b9e('0x25')](respondWithStatusCode(_0x40b675,null))[_0x7b9e('0x49')](handleError(_0x40b675,null));};exports[_0x7b9e('0x83')]=function(_0x19d48e,_0x55c84b,_0x577125){return db[_0x7b9e('0x2f')][_0x7b9e('0x48')]({'where':{'id':_0x19d48e[_0x7b9e('0x52')]['id']}})['then'](handleEntityNotFound(_0x55c84b,null))[_0x7b9e('0x25')](function(_0x2f742f){if(_0x2f742f){return _0x2f742f[_0x7b9e('0x83')](_0x19d48e['body'][_0x7b9e('0x6c')],_[_0x7b9e('0x84')](_0x19d48e[_0x7b9e('0x4b')],[_0x7b9e('0x6c'),'id'])||{})[_0x7b9e('0x85')](function(_0x2c89f9){for(var _0x43281a=0x0;_0x43281a<_0x19d48e[_0x7b9e('0x4b')]['ids']['length'];_0x43281a+=0x1){socket[_0x7b9e('0x81')](_0x7b9e('0x6a'),{'UserId':_0x19d48e[_0x7b9e('0x4b')]['ids'][_0x43281a],'MailQueueId':_0x19d48e[_0x7b9e('0x52')]['id']});}return _0x2c89f9;});}})['then'](respondWithResult(_0x55c84b,null))['catch'](handleError(_0x55c84b,null));};exports[_0x7b9e('0x80')]=function(_0x40cf9d,_0xbdc69b,_0x33c15b){return db['MailQueue']['find']({'where':{'id':_0x40cf9d[_0x7b9e('0x52')]['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0xbdc69b,null))[_0x7b9e('0x25')](function(_0x300fe5){if(_0x300fe5){return _0x300fe5[_0x7b9e('0x80')](_0x40cf9d[_0x7b9e('0x35')][_0x7b9e('0x6c')])[_0x7b9e('0x25')](function(){if(_['isArray'](_0x40cf9d[_0x7b9e('0x35')][_0x7b9e('0x6c')])){for(var _0x498c3a=0x0;_0x498c3a<_0x40cf9d[_0x7b9e('0x35')][_0x7b9e('0x6c')]['length'];_0x498c3a+=0x1){socket[_0x7b9e('0x81')](_0x7b9e('0x82'),{'UserId':Number(_0x40cf9d[_0x7b9e('0x35')][_0x7b9e('0x6c')][_0x498c3a]),'MailQueueId':Number(_0x40cf9d[_0x7b9e('0x52')]['id'])});}}else{socket['emit'](_0x7b9e('0x82'),{'UserId':Number(_0x40cf9d[_0x7b9e('0x35')][_0x7b9e('0x6c')]),'MailQueueId':Number(_0x40cf9d[_0x7b9e('0x52')]['id'])});}});}})[_0x7b9e('0x25')](respondWithStatusCode(_0xbdc69b,null))[_0x7b9e('0x49')](handleError(_0xbdc69b,null));};exports[_0x7b9e('0x86')]=function(_0x51f2ea,_0x51cf85,_0x223c6c){var _0x237c4c={};var _0x498439={};var _0x5a7701;var _0x58d500;return db['MailQueue'][_0x7b9e('0x5f')]({'where':{'id':_0x51f2ea['params']['id']}})[_0x7b9e('0x25')](handleEntityNotFound(_0x51cf85,null))[_0x7b9e('0x25')](function(_0x595a7d){if(_0x595a7d){_0x5a7701=_0x595a7d;_0x498439[_0x7b9e('0x33')]=_[_0x7b9e('0x34')](db[_0x7b9e('0x56')]['rawAttributes']);_0x498439[_0x7b9e('0x35')]=_[_0x7b9e('0x34')](_0x51f2ea[_0x7b9e('0x35')]);_0x498439[_0x7b9e('0x36')]=_[_0x7b9e('0x37')](_0x498439[_0x7b9e('0x33')],_0x498439[_0x7b9e('0x35')]);_0x237c4c[_0x7b9e('0x38')]=_['intersection'](_0x498439[_0x7b9e('0x33')],qs[_0x7b9e('0x39')](_0x51f2ea[_0x7b9e('0x35')][_0x7b9e('0x39')]));_0x237c4c[_0x7b9e('0x38')]=_0x237c4c['attributes'][_0x7b9e('0x3a')]?_0x237c4c['attributes']:_0x498439[_0x7b9e('0x33')];_0x237c4c[_0x7b9e('0x61')]=qs['sort'](_0x51f2ea[_0x7b9e('0x35')]['sort']);_0x237c4c[_0x7b9e('0x3e')]=qs[_0x7b9e('0x36')](_[_0x7b9e('0x55')](_0x51f2ea['query'],_0x498439[_0x7b9e('0x36')]));if(_0x51f2ea['query'][_0x7b9e('0x3f')]){_0x237c4c[_0x7b9e('0x3e')]=_[_0x7b9e('0x40')](_0x237c4c[_0x7b9e('0x3e')],{'$or':_[_0x7b9e('0x2e')](_0x237c4c['attributes'],function(_0x18f5dd){var _0x30b8ec={};_0x30b8ec[_0x18f5dd]={'$like':'%'+_0x51f2ea['query'][_0x7b9e('0x3f')]+'%'};return _0x30b8ec;})});}_0x237c4c=_[_0x7b9e('0x40')]({},_0x237c4c,_0x51f2ea[_0x7b9e('0x47')]);return _0x5a7701[_0x7b9e('0x86')](_0x237c4c);}})[_0x7b9e('0x25')](function(_0x11aaba){if(_0x11aaba){_0x58d500=_0x11aaba[_0x7b9e('0x3a')];if(!_0x51f2ea[_0x7b9e('0x35')][_0x7b9e('0x3b')](_0x7b9e('0x3c'))){_0x237c4c[_0x7b9e('0x1f')]=qs['limit'](_0x51f2ea[_0x7b9e('0x35')]['limit']);_0x237c4c[_0x7b9e('0x1e')]=qs['offset'](_0x51f2ea[_0x7b9e('0x35')][_0x7b9e('0x1e')]);}return _0x5a7701[_0x7b9e('0x86')](_0x237c4c);}})[_0x7b9e('0x25')](function(_0x1ebf1e){if(_0x1ebf1e){return _0x1ebf1e?{'count':_0x58d500,'rows':_0x1ebf1e}:null;}})[_0x7b9e('0x25')](respondWithResult(_0x51cf85,null))[_0x7b9e('0x49')](handleError(_0x51cf85,null));};