Built motion from commit fe909640.|2.6.8
[motion2.git] / server / api / faxQueue / faxQueue.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 _0x632e=['value','sequelize','isEmpty','removeAgents','addAgents','spread','isArray','userFaxQueue:remove','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','sox','ejs','fs-extra','lodash','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./faxQueue.socket','register','sendStatus','end','json','undefined','limit','count','offset','status','set','apply','save','update','then','destroy','get','FaxQueues','UserProfileResource','stack','name','index','map','FaxQueue','rawAttributes','fieldName','type','key','model','keys','filters','attributes','intersection','fields','query','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','params','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','UserFaxQueue','User','findAndCountAll','UserId','updatedAt','createdAt','format','%s/%s','SIP','faxPause','getTeams','findOne','Team','addTeams','Agents','online','voicePause','flatMap','transaction','each','forEach','emit','userFaxQueue:save','removeTeams','ids','select','field','team_has_fax_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','FaxQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','toString','TeamId','includes','all','compact'];(function(_0x4a80c7,_0x1424e3){var _0x9e5006=function(_0x28b8dd){while(--_0x28b8dd){_0x4a80c7['push'](_0x4a80c7['shift']());}};_0x9e5006(++_0x1424e3);}(_0x632e,0x97));var _0xe632=function(_0x1ca9eb,_0x99a10b){_0x1ca9eb=_0x1ca9eb-0x0;var _0x2e284e=_0x632e[_0x1ca9eb];return _0x2e284e;};'use strict';var emlformat=require(_0xe632('0x0'));var rimraf=require(_0xe632('0x1'));var zipdir=require(_0xe632('0x2'));var jsonpatch=require(_0xe632('0x3'));var rp=require(_0xe632('0x4'));var moment=require('moment');var BPromise=require(_0xe632('0x5'));var Mustache=require(_0xe632('0x6'));var util=require('util');var path=require(_0xe632('0x7'));var sox=require(_0xe632('0x8'));var csv=require('to-csv');var ejs=require(_0xe632('0x9'));var fs=require('fs');var fs_extra=require(_0xe632('0xa'));var _=require(_0xe632('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xe632('0xc'));var deskjs=require(_0xe632('0xd'));var toCsv=require(_0xe632('0xe'));var querystring=require('querystring');var Papa=require(_0xe632('0xf'));var Redis=require(_0xe632('0x10'));var authService=require(_0xe632('0x11'));var qs=require(_0xe632('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xe632('0x13'))(_0xe632('0x14'));var utils=require(_0xe632('0x15'));var config=require(_0xe632('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xe632('0x17'))['db'];config[_0xe632('0x18')]=_[_0xe632('0x19')](config[_0xe632('0x18')],{'host':_0xe632('0x1a'),'port':0x18eb});var socket=require(_0xe632('0x1b'))(new Redis(config[_0xe632('0x18')]));require(_0xe632('0x1c'))[_0xe632('0x1d')](socket);function respondWithStatusCode(_0x877d0e,_0x275cff){_0x275cff=_0x275cff||0xcc;return function(_0x46723f){if(_0x46723f){return _0x877d0e[_0xe632('0x1e')](_0x275cff);}return _0x877d0e['status'](_0x275cff)[_0xe632('0x1f')]();};}function respondWithResult(_0x250538,_0x325583){_0x325583=_0x325583||0xc8;return function(_0x439d14){if(_0x439d14){return _0x250538['status'](_0x325583)[_0xe632('0x20')](_0x439d14);}};}function respondWithFilteredResult(_0x570ac7,_0x5ad367){return function(_0x634b11){if(_0x634b11){var _0x4f6b54=typeof _0x5ad367['offset']===_0xe632('0x21')&&typeof _0x5ad367[_0xe632('0x22')]===_0xe632('0x21');var _0x52f445=_0x634b11[_0xe632('0x23')];var _0x275b74=_0x4f6b54?0x0:_0x5ad367['offset'];var _0x53752b=_0x4f6b54?_0x634b11[_0xe632('0x23')]:_0x5ad367[_0xe632('0x24')]+_0x5ad367[_0xe632('0x22')];var _0x57d5fd;if(_0x53752b>=_0x52f445){_0x53752b=_0x52f445;_0x57d5fd=0xc8;}else{_0x57d5fd=0xce;}_0x570ac7[_0xe632('0x25')](_0x57d5fd);return _0x570ac7[_0xe632('0x26')]('Content-Range',_0x275b74+'-'+_0x53752b+'/'+_0x52f445)[_0xe632('0x20')](_0x634b11);}return null;};}function patchUpdates(_0x378a3c){return function(_0x5e830c){try{jsonpatch[_0xe632('0x27')](_0x5e830c,_0x378a3c,!![]);}catch(_0x3f3a2e){return BPromise['reject'](_0x3f3a2e);}return _0x5e830c[_0xe632('0x28')]();};}function saveUpdates(_0xbdceb8,_0x343275){return function(_0x15b0df){if(_0x15b0df){return _0x15b0df[_0xe632('0x29')](_0xbdceb8)[_0xe632('0x2a')](function(_0x469fb7){return _0x469fb7;});}return null;};}function removeEntity(_0x3b2dc9,_0x125fa1){return function(_0x4f42f2){if(_0x4f42f2){return _0x4f42f2[_0xe632('0x2b')]()['then'](function(){var _0x27939e=_0x4f42f2[_0xe632('0x2c')]({'plain':!![]});var _0x46819d=_0xe632('0x2d');return db[_0xe632('0x2e')][_0xe632('0x2b')]({'where':{'type':_0x46819d,'resourceId':_0x27939e['id']}})[_0xe632('0x2a')](function(){return _0x4f42f2;});})[_0xe632('0x2a')](function(){_0x3b2dc9['status'](0xcc)[_0xe632('0x1f')]();});}};}function handleEntityNotFound(_0xa84e15,_0x5e04e2){return function(_0x1bf55b){if(!_0x1bf55b){_0xa84e15[_0xe632('0x1e')](0x194);}return _0x1bf55b;};}function handleError(_0x2bc6b7,_0x53c031){_0x53c031=_0x53c031||0x1f4;return function(_0x7eee45){logger['error'](_0x7eee45[_0xe632('0x2f')]);if(_0x7eee45[_0xe632('0x30')]){delete _0x7eee45['name'];}_0x2bc6b7[_0xe632('0x25')](_0x53c031)['send'](_0x7eee45);};}exports[_0xe632('0x31')]=function(_0x14f077,_0x18743e){var _0x19fd8f={},_0x2b1b74={},_0x573a8b={'count':0x0,'rows':[]};var _0xf5ad3d=_[_0xe632('0x32')](db[_0xe632('0x33')][_0xe632('0x34')],function(_0x156349){return{'name':_0x156349[_0xe632('0x35')],'type':_0x156349[_0xe632('0x36')][_0xe632('0x37')]};});_0x2b1b74[_0xe632('0x38')]=_['map'](_0xf5ad3d,_0xe632('0x30'));_0x2b1b74['query']=_[_0xe632('0x39')](_0x14f077['query']);_0x2b1b74[_0xe632('0x3a')]=_['intersection'](_0x2b1b74[_0xe632('0x38')],_0x2b1b74['query']);_0x19fd8f[_0xe632('0x3b')]=_[_0xe632('0x3c')](_0x2b1b74[_0xe632('0x38')],qs[_0xe632('0x3d')](_0x14f077[_0xe632('0x3e')][_0xe632('0x3d')]));_0x19fd8f['attributes']=_0x19fd8f[_0xe632('0x3b')][_0xe632('0x3f')]?_0x19fd8f[_0xe632('0x3b')]:_0x2b1b74[_0xe632('0x38')];if(!_0x14f077['query'][_0xe632('0x40')](_0xe632('0x41'))){_0x19fd8f[_0xe632('0x22')]=qs[_0xe632('0x22')](_0x14f077[_0xe632('0x3e')][_0xe632('0x22')]);_0x19fd8f['offset']=qs['offset'](_0x14f077[_0xe632('0x3e')][_0xe632('0x24')]);}_0x19fd8f[_0xe632('0x42')]=qs[_0xe632('0x43')](_0x14f077[_0xe632('0x3e')][_0xe632('0x43')]);_0x19fd8f[_0xe632('0x44')]=qs[_0xe632('0x3a')](_[_0xe632('0x45')](_0x14f077[_0xe632('0x3e')],_0x2b1b74['filters']),_0xf5ad3d);if(_0x14f077[_0xe632('0x3e')]['filter']){_0x19fd8f[_0xe632('0x44')]=_[_0xe632('0x46')](_0x19fd8f[_0xe632('0x44')],{'$or':_[_0xe632('0x32')](_0xf5ad3d,function(_0x2b6381){if(_0x2b6381[_0xe632('0x36')]!==_0xe632('0x47')){var _0x16495b={};_0x16495b[_0x2b6381[_0xe632('0x30')]]={'$like':'%'+_0x14f077[_0xe632('0x3e')][_0xe632('0x48')]+'%'};return _0x16495b;}})});}_0x19fd8f=_[_0xe632('0x46')]({},_0x19fd8f,_0x14f077[_0xe632('0x49')]);var _0x583d53={'where':_0x19fd8f['where']};return db[_0xe632('0x33')][_0xe632('0x23')](_0x583d53)[_0xe632('0x2a')](function(_0x5969d0){_0x573a8b[_0xe632('0x23')]=_0x5969d0;if(_0x14f077[_0xe632('0x3e')][_0xe632('0x4a')]){_0x19fd8f[_0xe632('0x4b')]=[{'all':!![]}];}return db['FaxQueue'][_0xe632('0x4c')](_0x19fd8f);})[_0xe632('0x2a')](function(_0x3d1911){_0x573a8b[_0xe632('0x4d')]=_0x3d1911;return _0x573a8b;})['then'](respondWithFilteredResult(_0x18743e,_0x19fd8f))[_0xe632('0x4e')](handleError(_0x18743e,null));};exports['show']=function(_0x5bc2c7,_0x293bec){var _0x2316eb={'raw':!![],'where':{'id':_0x5bc2c7[_0xe632('0x4f')]['id']}},_0x1f096c={};_0x1f096c[_0xe632('0x38')]=_[_0xe632('0x39')](db[_0xe632('0x33')]['rawAttributes']);_0x1f096c[_0xe632('0x3e')]=_[_0xe632('0x39')](_0x5bc2c7[_0xe632('0x3e')]);_0x1f096c[_0xe632('0x3a')]=_[_0xe632('0x3c')](_0x1f096c[_0xe632('0x38')],_0x1f096c[_0xe632('0x3e')]);_0x2316eb[_0xe632('0x3b')]=_['intersection'](_0x1f096c['model'],qs[_0xe632('0x3d')](_0x5bc2c7[_0xe632('0x3e')][_0xe632('0x3d')]));_0x2316eb[_0xe632('0x3b')]=_0x2316eb[_0xe632('0x3b')][_0xe632('0x3f')]?_0x2316eb[_0xe632('0x3b')]:_0x1f096c[_0xe632('0x38')];if(_0x5bc2c7['query'][_0xe632('0x4a')]){_0x2316eb['include']=[{'all':!![]}];}_0x2316eb=_[_0xe632('0x46')]({},_0x2316eb,_0x5bc2c7[_0xe632('0x49')]);return db[_0xe632('0x33')][_0xe632('0x50')](_0x2316eb)[_0xe632('0x2a')](handleEntityNotFound(_0x293bec,null))[_0xe632('0x2a')](respondWithResult(_0x293bec,null))[_0xe632('0x4e')](handleError(_0x293bec,null));};exports[_0xe632('0x51')]=function(_0x313c77,_0x2be0e1){return db[_0xe632('0x33')][_0xe632('0x51')](_0x313c77[_0xe632('0x52')],{})['then'](function(_0x3d15cf){var _0x4e9e28=_0x313c77[_0xe632('0x53')][_0xe632('0x2c')]({'plain':!![]});if(!_0x4e9e28)throw new Error(_0xe632('0x54'));if(_0x4e9e28[_0xe632('0x55')]===_0xe632('0x53')){var _0x28123e=_0x3d15cf[_0xe632('0x2c')]({'plain':!![]});var _0x32553a='FaxQueues';return db[_0xe632('0x56')]['find']({'where':{'name':_0x32553a,'userProfileId':_0x4e9e28[_0xe632('0x57')]},'raw':!![]})[_0xe632('0x2a')](function(_0x9d66cc){if(_0x9d66cc&&_0x9d66cc[_0xe632('0x58')]===0x0){return db[_0xe632('0x2e')]['create']({'name':_0x28123e[_0xe632('0x30')],'resourceId':_0x28123e['id'],'type':_0x9d66cc[_0xe632('0x30')],'sectionId':_0x9d66cc['id']},{})['then'](function(){return _0x3d15cf;});}else{return _0x3d15cf;}})[_0xe632('0x4e')](function(_0x5c0d9f){logger[_0xe632('0x59')](_0xe632('0x5a'),_0x5c0d9f);throw _0x5c0d9f;});}return _0x3d15cf;})[_0xe632('0x2a')](respondWithResult(_0x2be0e1,0xc9))[_0xe632('0x4e')](handleError(_0x2be0e1,null));};exports[_0xe632('0x29')]=function(_0x5553d5,_0x2f4c4f){if(_0x5553d5[_0xe632('0x52')]['id']){delete _0x5553d5[_0xe632('0x52')]['id'];}return db[_0xe632('0x33')][_0xe632('0x50')]({'where':{'id':_0x5553d5[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0x2f4c4f,null))[_0xe632('0x2a')](saveUpdates(_0x5553d5[_0xe632('0x52')],null))[_0xe632('0x2a')](respondWithResult(_0x2f4c4f,null))[_0xe632('0x4e')](handleError(_0x2f4c4f,null));};exports[_0xe632('0x2b')]=function(_0x45772c,_0x29eeb7){return db['FaxQueue'][_0xe632('0x50')]({'where':{'id':_0x45772c[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0x29eeb7,null))[_0xe632('0x2a')](removeEntity(_0x29eeb7,null))[_0xe632('0x4e')](handleError(_0x29eeb7,null));};exports[_0xe632('0x5b')]=function(_0x373670,_0x2fdec5){return db['FaxQueue'][_0xe632('0x5b')]()[_0xe632('0x2a')](respondWithResult(_0x2fdec5,null))[_0xe632('0x4e')](handleError(_0x2fdec5,null));};exports[_0xe632('0x5c')]=function(_0x483753,_0x349af8,_0x598bc4){var _0x49aafc={'raw':!![],'where':{}},_0xc445c3={},_0x24c284;return db['FaxQueue']['findOne']({'where':{'id':_0x483753[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0x349af8,null))[_0xe632('0x2a')](function(_0x4e28f5){if(_0x4e28f5){_0x24c284=_0x4e28f5[_0xe632('0x2c')]({'plain':!![]});_0xc445c3['model']=_[_0xe632('0x39')](db[_0xe632('0x5d')]['rawAttributes']);_0xc445c3['query']=_[_0xe632('0x39')](_0x483753['query']);_0xc445c3[_0xe632('0x3a')]=_[_0xe632('0x3c')](_0xc445c3['model'],_0xc445c3[_0xe632('0x3e')]);_0x49aafc['attributes']=_[_0xe632('0x3c')](_0xc445c3[_0xe632('0x38')],qs[_0xe632('0x3d')](_0x483753[_0xe632('0x3e')][_0xe632('0x3d')]));_0x49aafc['attributes']=_0x49aafc[_0xe632('0x3b')][_0xe632('0x3f')]?_0x49aafc[_0xe632('0x3b')]:_0xc445c3[_0xe632('0x38')];if(!_0x483753[_0xe632('0x3e')]['hasOwnProperty'](_0xe632('0x41'))){_0x49aafc[_0xe632('0x22')]=qs[_0xe632('0x22')](_0x483753['query'][_0xe632('0x22')]);_0x49aafc[_0xe632('0x24')]=qs[_0xe632('0x24')](_0x483753['query'][_0xe632('0x24')]);}_0x49aafc[_0xe632('0x42')]=qs[_0xe632('0x43')](_0x483753[_0xe632('0x3e')][_0xe632('0x43')]);_0x49aafc[_0xe632('0x44')]=qs[_0xe632('0x3a')](_['pick'](_0x483753[_0xe632('0x3e')],_0xc445c3[_0xe632('0x3a')]));_0x49aafc[_0xe632('0x44')]['FaxQueueId']=_0x4e28f5['id'];if(_0x483753[_0xe632('0x3e')]['filter']){_0x49aafc[_0xe632('0x44')]=_[_0xe632('0x46')](_0x49aafc[_0xe632('0x44')],{'$or':_[_0xe632('0x32')](_0x49aafc[_0xe632('0x3b')],function(_0x43e3a3){var _0x25e849={};_0x25e849[_0x43e3a3]={'$like':'%'+_0x483753['query'][_0xe632('0x48')]+'%'};return _0x25e849;})});}_0x49aafc=_[_0xe632('0x46')]({},_0x49aafc,_0x483753[_0xe632('0x49')]);return db[_0xe632('0x5d')][_0xe632('0x4c')](_0x49aafc);}})[_0xe632('0x2a')](function(_0x24b28b){if(_0x24b28b){return db[_0xe632('0x5e')][_0xe632('0x5f')]({'where':{'id':_[_0xe632('0x32')](_0x24b28b,_0xe632('0x60')),'role':'agent'},'attributes':['id','name','faxPause',_0xe632('0x61'),_0xe632('0x62')]});}})[_0xe632('0x2a')](function(_0x2bde55){if(_0x2bde55){return{'count':_0x2bde55[_0xe632('0x23')],'rows':_[_0xe632('0x32')](_0x2bde55[_0xe632('0x4d')],function(_0x410649){return{'membername':_0x410649[_0xe632('0x30')],'UserId':_0x410649['id'],'queue_name':_0x24c284[_0xe632('0x30')],'FaxQueueId':_0x24c284['id'],'interface':util[_0xe632('0x63')](_0xe632('0x64'),_0xe632('0x65'),_0x410649['name']),'penalty':0x0,'paused':_0x410649[_0xe632('0x66')],'createdAt':_0x410649['createdAt'],'updatedAt':_0x410649[_0xe632('0x61')]};})};}else{return{'count':0x0,'rows':[]};}})[_0xe632('0x2a')](respondWithFilteredResult(_0x349af8,_0x49aafc))[_0xe632('0x4e')](handleError(_0x349af8,null));};exports[_0xe632('0x67')]=function(_0x3aa02e,_0xa08e85,_0x31fad5){var _0x87d85a={};var _0x493df0={};var _0x5402a4;var _0x40ae9d;return db['FaxQueue'][_0xe632('0x68')]({'where':{'id':_0x3aa02e[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0xa08e85,null))[_0xe632('0x2a')](function(_0xa00509){if(_0xa00509){_0x5402a4=_0xa00509;_0x493df0[_0xe632('0x38')]=_[_0xe632('0x39')](db[_0xe632('0x69')]['rawAttributes']);_0x493df0[_0xe632('0x3e')]=_['keys'](_0x3aa02e['query']);_0x493df0['filters']=_['intersection'](_0x493df0[_0xe632('0x38')],_0x493df0[_0xe632('0x3e')]);_0x87d85a[_0xe632('0x3b')]=_[_0xe632('0x3c')](_0x493df0[_0xe632('0x38')],qs['fields'](_0x3aa02e[_0xe632('0x3e')][_0xe632('0x3d')]));_0x87d85a[_0xe632('0x3b')]=_0x87d85a[_0xe632('0x3b')][_0xe632('0x3f')]?_0x87d85a[_0xe632('0x3b')]:_0x493df0['model'];_0x87d85a[_0xe632('0x42')]=qs['sort'](_0x3aa02e[_0xe632('0x3e')][_0xe632('0x43')]);_0x87d85a[_0xe632('0x44')]=qs[_0xe632('0x3a')](_[_0xe632('0x45')](_0x3aa02e[_0xe632('0x3e')],_0x493df0[_0xe632('0x3a')]));if(_0x3aa02e[_0xe632('0x3e')][_0xe632('0x48')]){_0x87d85a[_0xe632('0x44')]=_[_0xe632('0x46')](_0x87d85a[_0xe632('0x44')],{'$or':_[_0xe632('0x32')](_0x87d85a[_0xe632('0x3b')],function(_0x318c00){var _0x1cb0ca={};_0x1cb0ca[_0x318c00]={'$like':'%'+_0x3aa02e[_0xe632('0x3e')]['filter']+'%'};return _0x1cb0ca;})});}_0x87d85a=_[_0xe632('0x46')]({},_0x87d85a,_0x3aa02e[_0xe632('0x49')]);return _0x5402a4[_0xe632('0x67')](_0x87d85a);}})['then'](function(_0x4a9f91){if(_0x4a9f91){_0x40ae9d=_0x4a9f91[_0xe632('0x3f')];if(!_0x3aa02e[_0xe632('0x3e')]['hasOwnProperty']('nolimit')){_0x87d85a[_0xe632('0x22')]=qs[_0xe632('0x22')](_0x3aa02e[_0xe632('0x3e')][_0xe632('0x22')]);_0x87d85a[_0xe632('0x24')]=qs[_0xe632('0x24')](_0x3aa02e[_0xe632('0x3e')][_0xe632('0x24')]);}return _0x5402a4[_0xe632('0x67')](_0x87d85a);}})[_0xe632('0x2a')](function(_0x5a60e7){if(_0x5a60e7){return _0x5a60e7?{'count':_0x40ae9d,'rows':_0x5a60e7}:null;}})['then'](respondWithResult(_0xa08e85,null))[_0xe632('0x4e')](handleError(_0xa08e85,null));};exports[_0xe632('0x6a')]=function(_0x55e4c0,_0x4f416e,_0x1ee026){var _0x4f4b36=_0x55e4c0[_0xe632('0x52')]['ids'];return db[_0xe632('0x69')]['findAll']({'where':{'id':_0x4f4b36},'attributes':['id'],'include':[{'model':db[_0xe632('0x5e')],'as':_0xe632('0x6b'),'attributes':['id','name',_0xe632('0x6c'),_0xe632('0x6d'),'interface'],'raw':!![]}]})['then'](function(_0xe6a373){if(_0xe6a373){var _0x178a2e=_[_0xe632('0x6e')](_0xe6a373,function(_0x3106fb){var _0x11459c=_0x3106fb['get']({'plain':!![]});return _0x11459c['Agents'];});return db[_0xe632('0x33')][_0xe632('0x50')]({'where':{'id':_0x55e4c0[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](function(_0xa74f19){return db['sequelize'][_0xe632('0x6f')](function(_0x1c0330){return _0xa74f19[_0xe632('0x6a')](_0x4f4b36,{'transaction':_0x1c0330})[_0xe632('0x2a')](function(){return BPromise[_0xe632('0x70')](_0x178a2e,function(_0x27e803){return db[_0xe632('0x5d')]['findOrCreate']({'where':{'UserId':_0x27e803['id'],'FaxQueueId':_0x55e4c0[_0xe632('0x4f')]['id']},'transaction':_0x1c0330});});})[_0xe632('0x2a')](function(){_0x178a2e[_0xe632('0x71')](function(_0xe56fc7){socket[_0xe632('0x72')](_0xe632('0x73'),{'UserId':_0xe56fc7['id'],'FaxQueueId':_0xa74f19['id']});});});});});}})[_0xe632('0x2a')](respondWithStatusCode(_0x4f416e,null))['catch'](handleError(_0x4f416e,null));};exports[_0xe632('0x74')]=function(_0x392251,_0x1b84ee,_0x3032f0){return db[_0xe632('0x69')]['findAll']({'where':{'id':_0x392251[_0xe632('0x3e')][_0xe632('0x75')]},'attributes':['id'],'include':[{'model':db[_0xe632('0x5e')],'as':'Agents','attributes':['id'],'raw':!![]}]})[_0xe632('0x2a')](handleEntityNotFound(_0x1b84ee,null))['then'](function(_0x52784c){var _0xa4de3c=_[_0xe632('0x32')](_0x52784c,'id');var _0x2837ba=[];var _0x24ffaf=[];var _0x4e2a31=squel[_0xe632('0x76')]();_0x4e2a31[_0xe632('0x77')]('tq.TeamId')['from'](_0xe632('0x78'),'tq')[_0xe632('0x79')](_0xe632('0x7a'),'ut',_0xe632('0x7b'))[_0xe632('0x44')](_0xe632('0x7c'),_0x392251[_0xe632('0x4f')]['id']);for(var _0x277e7c=0x0;_0x277e7c<_0x52784c[_0xe632('0x3f')];_0x277e7c+=0x1){let _0x39e49f=_0x52784c[_0x277e7c];for(var _0x940326=0x0;_0x940326<_0x39e49f[_0xe632('0x6b')][_0xe632('0x3f')];_0x940326+=0x1){let _0x2679cc=_0x39e49f[_0xe632('0x6b')][_0x940326];var _0x96fc93=_0x4e2a31[_0xe632('0x7d')]();_0x96fc93[_0xe632('0x44')](_0xe632('0x7e'),_0x2679cc['id']);_0x24ffaf[_0xe632('0x7f')](db['sequelize']['query'](_0x96fc93[_0xe632('0x80')](),{'type':db['sequelize']['QueryTypes']['SELECT']})['then'](function(_0x1e5eaf){if(_0x1e5eaf[_0xe632('0x3f')]===0x1){return _0x2679cc['id'];}else{var _0x5e3e2b=_['every'](_[_0xe632('0x32')](_0x1e5eaf,_0xe632('0x81')),function(_0x4c2bff){return _[_0xe632('0x82')](_0xa4de3c,_0x4c2bff);});if(_0x5e3e2b){return _0x2679cc['id'];}}}));}}return BPromise[_0xe632('0x83')](_0x24ffaf)['then'](function(_0x1482ab){_0x2837ba=_(_0x2837ba)['union'](_0x1482ab)[_0xe632('0x84')]()[_0xe632('0x85')]();return db['FaxQueue'][_0xe632('0x50')]({'where':{'id':_0x392251[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](function(_0x1dec1f){return db[_0xe632('0x86')][_0xe632('0x6f')](function(_0x2584e8){return _0x1dec1f[_0xe632('0x74')](_0x392251[_0xe632('0x3e')][_0xe632('0x75')],{'transaction':_0x2584e8})['then'](function(){if(!_[_0xe632('0x87')](_0x2837ba)){return _0x1dec1f[_0xe632('0x88')](_0x2837ba,{'transaction':_0x2584e8});}})[_0xe632('0x2a')](function(){_0x2837ba[_0xe632('0x71')](function(_0x51fc3d){socket[_0xe632('0x72')]('userFaxQueue:remove',{'UserId':_0x51fc3d,'FaxQueueId':_0x1dec1f['id']});});});});});});})[_0xe632('0x2a')](respondWithStatusCode(_0x1b84ee,null))[_0xe632('0x4e')](handleError(_0x1b84ee,null));};exports[_0xe632('0x89')]=function(_0x2af67b,_0x72e5bf,_0x43fea0){return db['FaxQueue'][_0xe632('0x50')]({'where':{'id':_0x2af67b[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0x72e5bf,null))['then'](function(_0x564b52){if(_0x564b52){return _0x564b52[_0xe632('0x89')](_0x2af67b['body'][_0xe632('0x75')],_['omit'](_0x2af67b[_0xe632('0x52')],[_0xe632('0x75'),'id'])||{})[_0xe632('0x8a')](function(_0x4d117e){for(var _0x1184a9=0x0;_0x1184a9<_0x2af67b[_0xe632('0x52')][_0xe632('0x75')][_0xe632('0x3f')];_0x1184a9+=0x1){socket[_0xe632('0x72')](_0xe632('0x73'),{'UserId':Number(_0x2af67b[_0xe632('0x52')][_0xe632('0x75')][_0x1184a9]),'FaxQueueId':Number(_0x2af67b[_0xe632('0x4f')]['id'])});}return _0x4d117e;});}})[_0xe632('0x2a')](respondWithResult(_0x72e5bf,null))[_0xe632('0x4e')](handleError(_0x72e5bf,null));};exports[_0xe632('0x88')]=function(_0x50440b,_0xef06f9,_0x58d83e){return db[_0xe632('0x33')]['find']({'where':{'id':_0x50440b[_0xe632('0x4f')]['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0xef06f9,null))['then'](function(_0x255054){if(_0x255054){return _0x255054[_0xe632('0x88')](_0x50440b['query'][_0xe632('0x75')])[_0xe632('0x2a')](function(){if(_[_0xe632('0x8b')](_0x50440b[_0xe632('0x3e')]['ids'])){for(var _0x56330f=0x0;_0x56330f<_0x50440b[_0xe632('0x3e')]['ids'][_0xe632('0x3f')];_0x56330f+=0x1){socket[_0xe632('0x72')]('userFaxQueue:remove',{'UserId':Number(_0x50440b[_0xe632('0x3e')]['ids'][_0x56330f]),'FaxQueueId':Number(_0x50440b[_0xe632('0x4f')]['id'])});}}else{socket[_0xe632('0x72')](_0xe632('0x8c'),{'UserId':Number(_0x50440b[_0xe632('0x3e')][_0xe632('0x75')]),'FaxQueueId':Number(_0x50440b[_0xe632('0x4f')]['id'])});}});}})[_0xe632('0x2a')](respondWithStatusCode(_0xef06f9,null))[_0xe632('0x4e')](handleError(_0xef06f9,null));};exports[_0xe632('0x8d')]=function(_0x3d3657,_0x5e7626,_0x420a53){var _0x5b07e6={};var _0x5d6102={};var _0x4220f0;var _0xe6a6c;return db[_0xe632('0x33')][_0xe632('0x68')]({'where':{'id':_0x3d3657['params']['id']}})[_0xe632('0x2a')](handleEntityNotFound(_0x5e7626,null))[_0xe632('0x2a')](function(_0x59935a){if(_0x59935a){_0x4220f0=_0x59935a;_0x5d6102[_0xe632('0x38')]=_[_0xe632('0x39')](db['User']['rawAttributes']);_0x5d6102[_0xe632('0x3e')]=_[_0xe632('0x39')](_0x3d3657['query']);_0x5d6102[_0xe632('0x3a')]=_['intersection'](_0x5d6102[_0xe632('0x38')],_0x5d6102['query']);_0x5b07e6[_0xe632('0x3b')]=_[_0xe632('0x3c')](_0x5d6102['model'],qs[_0xe632('0x3d')](_0x3d3657['query'][_0xe632('0x3d')]));_0x5b07e6[_0xe632('0x3b')]=_0x5b07e6['attributes'][_0xe632('0x3f')]?_0x5b07e6[_0xe632('0x3b')]:_0x5d6102[_0xe632('0x38')];_0x5b07e6[_0xe632('0x42')]=qs[_0xe632('0x43')](_0x3d3657['query']['sort']);_0x5b07e6[_0xe632('0x44')]=qs[_0xe632('0x3a')](_[_0xe632('0x45')](_0x3d3657['query'],_0x5d6102[_0xe632('0x3a')]));if(_0x3d3657[_0xe632('0x3e')][_0xe632('0x48')]){_0x5b07e6['where']=_[_0xe632('0x46')](_0x5b07e6['where'],{'$or':_[_0xe632('0x32')](_0x5b07e6[_0xe632('0x3b')],function(_0x3fae21){var _0x1a9778={};_0x1a9778[_0x3fae21]={'$like':'%'+_0x3d3657[_0xe632('0x3e')]['filter']+'%'};return _0x1a9778;})});}_0x5b07e6=_[_0xe632('0x46')]({},_0x5b07e6,_0x3d3657['options']);return _0x4220f0[_0xe632('0x8d')](_0x5b07e6);}})['then'](function(_0x310762){if(_0x310762){_0xe6a6c=_0x310762['length'];if(!_0x3d3657[_0xe632('0x3e')][_0xe632('0x40')]('nolimit')){_0x5b07e6[_0xe632('0x22')]=qs[_0xe632('0x22')](_0x3d3657[_0xe632('0x3e')]['limit']);_0x5b07e6[_0xe632('0x24')]=qs[_0xe632('0x24')](_0x3d3657[_0xe632('0x3e')][_0xe632('0x24')]);}return _0x4220f0['getAgents'](_0x5b07e6);}})[_0xe632('0x2a')](function(_0x53dd65){if(_0x53dd65){return _0x53dd65?{'count':_0xe6a6c,'rows':_0x53dd65}:null;}})[_0xe632('0x2a')](respondWithResult(_0x5e7626,null))[_0xe632('0x4e')](handleError(_0x5e7626,null));};