a5e3899dea3f771487a676c5bde889e8e171874d
[motion2.git] / server / api / whatsappQueue / whatsappQueue.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 _0xe406=['Agents','online','interface','transaction','each','findOrCreate','emit','userWhatsappQueue:save','tq.TeamId','from','team_has_whatsapp_queues','join','user_has_teams','WhatsappQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','sequelize','toString','SELECT','every','includes','all','compact','forEach','userWhatsappQueue:remove','addAgents','spread','removeAgents','isArray','getAgents','html-pdf','eml-format','rimraf','fast-json-patch','moment','bluebird','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./whatsappQueue.socket','sendStatus','status','end','count','offset','limit','set','reject','save','update','destroy','then','get','UserProfileResource','error','send','index','map','WhatsappQueue','rawAttributes','fieldName','type','key','model','name','filters','query','attributes','intersection','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','include','findAll','catch','show','params','keys','includeAll','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','UserWhatsappQueue','nolimit','WhatsappQueueId','options','UserId','agent','whatsappPause','createdAt','rows','format','%s/%s','updatedAt','findOne','Team','getTeams','addTeams','ids','User'];(function(_0x8d3476,_0x5bd277){var _0xda0b51=function(_0x2f33ad){while(--_0x2f33ad){_0x8d3476['push'](_0x8d3476['shift']());}};_0xda0b51(++_0x5bd277);}(_0xe406,0xa7));var _0x6e40=function(_0x172a35,_0xcc99e3){_0x172a35=_0x172a35-0x0;var _0x478fa4=_0xe406[_0x172a35];return _0x478fa4;};'use strict';var pdf=require(_0x6e40('0x0'));var emlformat=require(_0x6e40('0x1'));var rimraf=require(_0x6e40('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6e40('0x3'));var rp=require('request-promise');var moment=require(_0x6e40('0x4'));var BPromise=require(_0x6e40('0x5'));var Mustache=require('mustache');var util=require(_0x6e40('0x6'));var path=require(_0x6e40('0x7'));var sox=require(_0x6e40('0x8'));var csv=require(_0x6e40('0x9'));var ejs=require(_0x6e40('0xa'));var fs=require('fs');var _=require(_0x6e40('0xb'));var squel=require('squel');var crypto=require(_0x6e40('0xc'));var jsforce=require(_0x6e40('0xd'));var deskjs=require(_0x6e40('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x6e40('0xf'));var Redis=require('ioredis');var authService=require(_0x6e40('0x10'));var qs=require(_0x6e40('0x11'));var as=require(_0x6e40('0x12'));var hardwareService=require(_0x6e40('0x13'));var logger=require(_0x6e40('0x14'))(_0x6e40('0x15'));var utils=require(_0x6e40('0x16'));var config=require(_0x6e40('0x17'));var licenseUtil=require(_0x6e40('0x18'));var db=require(_0x6e40('0x19'))['db'];config[_0x6e40('0x1a')]=_[_0x6e40('0x1b')](config[_0x6e40('0x1a')],{'host':_0x6e40('0x1c'),'port':0x18eb});var socket=require(_0x6e40('0x1d'))(new Redis(config[_0x6e40('0x1a')]));require(_0x6e40('0x1e'))['register'](socket);function respondWithStatusCode(_0x132b6f,_0x2fc041){_0x2fc041=_0x2fc041||0xcc;return function(_0x555df4){if(_0x555df4){return _0x132b6f[_0x6e40('0x1f')](_0x2fc041);}return _0x132b6f[_0x6e40('0x20')](_0x2fc041)[_0x6e40('0x21')]();};}function respondWithResult(_0x196d91,_0x375a76){_0x375a76=_0x375a76||0xc8;return function(_0x172bd2){if(_0x172bd2){return _0x196d91[_0x6e40('0x20')](_0x375a76)['json'](_0x172bd2);}};}function respondWithFilteredResult(_0x2a5888,_0x160d26){return function(_0xe6a790){if(_0xe6a790){var _0x275ed4=_0xe6a790[_0x6e40('0x22')],_0x467221=_0x160d26[_0x6e40('0x23')],_0x2a0666=_0x160d26['offset']+_0x160d26[_0x6e40('0x24')],_0x52a9c7;if(_0x2a0666>=_0x275ed4){_0x2a0666=_0x275ed4;_0x52a9c7=0xc8;}else{_0x52a9c7=0xce;}_0x2a5888['status'](_0x52a9c7);return _0x2a5888[_0x6e40('0x25')]('Content-Range',_0x467221+'-'+_0x2a0666+'/'+_0x275ed4)['json'](_0xe6a790);}return null;};}function patchUpdates(_0x36008d){return function(_0x17c9e4){try{jsonpatch['apply'](_0x17c9e4,_0x36008d,!![]);}catch(_0x532467){return BPromise[_0x6e40('0x26')](_0x532467);}return _0x17c9e4[_0x6e40('0x27')]();};}function saveUpdates(_0x3d58e1,_0x2a611c){return function(_0x20f125){if(_0x20f125){return _0x20f125[_0x6e40('0x28')](_0x3d58e1)['then'](function(_0x3b9b87){return _0x3b9b87;});}return null;};}function removeEntity(_0x5f13d5,_0x10ea59){return function(_0x433723){if(_0x433723){return _0x433723[_0x6e40('0x29')]()[_0x6e40('0x2a')](function(){var _0x405e82=_0x433723[_0x6e40('0x2b')]({'plain':!![]});var _0x32aea2='WhatsappQueues';return db[_0x6e40('0x2c')][_0x6e40('0x29')]({'where':{'type':_0x32aea2,'resourceId':_0x405e82['id']}})['then'](function(){return _0x433723;});})[_0x6e40('0x2a')](function(){_0x5f13d5[_0x6e40('0x20')](0xcc)[_0x6e40('0x21')]();});}};}function handleEntityNotFound(_0x1940de,_0xe3bc81){return function(_0x558665){if(!_0x558665){_0x1940de['sendStatus'](0x194);}return _0x558665;};}function handleError(_0x26f969,_0x1883b8){_0x1883b8=_0x1883b8||0x1f4;return function(_0xeb2b21){logger[_0x6e40('0x2d')](_0xeb2b21['stack']);if(_0xeb2b21['name']){delete _0xeb2b21['name'];}_0x26f969['status'](_0x1883b8)[_0x6e40('0x2e')](_0xeb2b21);};}exports[_0x6e40('0x2f')]=function(_0x11b843,_0x3c3d33){var _0x1db6ca={},_0x5c7e29={},_0x3c02c2={'count':0x0,'rows':[]};var _0x4a2056=_[_0x6e40('0x30')](db[_0x6e40('0x31')][_0x6e40('0x32')],function(_0x5324b0){return{'name':_0x5324b0[_0x6e40('0x33')],'type':_0x5324b0[_0x6e40('0x34')][_0x6e40('0x35')]};});_0x5c7e29[_0x6e40('0x36')]=_['map'](_0x4a2056,_0x6e40('0x37'));_0x5c7e29['query']=_['keys'](_0x11b843['query']);_0x5c7e29[_0x6e40('0x38')]=_['intersection'](_0x5c7e29['model'],_0x5c7e29[_0x6e40('0x39')]);_0x1db6ca[_0x6e40('0x3a')]=_[_0x6e40('0x3b')](_0x5c7e29[_0x6e40('0x36')],qs[_0x6e40('0x3c')](_0x11b843[_0x6e40('0x39')][_0x6e40('0x3c')]));_0x1db6ca[_0x6e40('0x3a')]=_0x1db6ca['attributes'][_0x6e40('0x3d')]?_0x1db6ca['attributes']:_0x5c7e29[_0x6e40('0x36')];if(!_0x11b843[_0x6e40('0x39')][_0x6e40('0x3e')]('nolimit')){_0x1db6ca[_0x6e40('0x24')]=qs[_0x6e40('0x24')](_0x11b843[_0x6e40('0x39')][_0x6e40('0x24')]);_0x1db6ca[_0x6e40('0x23')]=qs[_0x6e40('0x23')](_0x11b843[_0x6e40('0x39')][_0x6e40('0x23')]);}_0x1db6ca[_0x6e40('0x3f')]=qs[_0x6e40('0x40')](_0x11b843[_0x6e40('0x39')][_0x6e40('0x40')]);_0x1db6ca[_0x6e40('0x41')]=qs[_0x6e40('0x38')](_[_0x6e40('0x42')](_0x11b843['query'],_0x5c7e29['filters']),_0x4a2056);if(_0x11b843['query'][_0x6e40('0x43')]){_0x1db6ca[_0x6e40('0x41')]=_[_0x6e40('0x44')](_0x1db6ca['where'],{'$or':_[_0x6e40('0x30')](_0x4a2056,function(_0x3ac84a){if(_0x3ac84a[_0x6e40('0x34')]!==_0x6e40('0x45')){var _0x22cbc5={};_0x22cbc5[_0x3ac84a[_0x6e40('0x37')]]={'$like':'%'+_0x11b843[_0x6e40('0x39')]['filter']+'%'};return _0x22cbc5;}})});}_0x1db6ca=_[_0x6e40('0x44')]({},_0x1db6ca,_0x11b843['options']);var _0x529a46={'where':_0x1db6ca['where']};return db[_0x6e40('0x31')][_0x6e40('0x22')](_0x529a46)[_0x6e40('0x2a')](function(_0x398142){_0x3c02c2[_0x6e40('0x22')]=_0x398142;if(_0x11b843[_0x6e40('0x39')]['includeAll']){_0x1db6ca[_0x6e40('0x46')]=[{'all':!![]}];}return db[_0x6e40('0x31')][_0x6e40('0x47')](_0x1db6ca);})[_0x6e40('0x2a')](function(_0x20907d){_0x3c02c2['rows']=_0x20907d;return _0x3c02c2;})[_0x6e40('0x2a')](respondWithFilteredResult(_0x3c3d33,_0x1db6ca))[_0x6e40('0x48')](handleError(_0x3c3d33,null));};exports[_0x6e40('0x49')]=function(_0x28d52f,_0x1145da){var _0x4f6848={'raw':!![],'where':{'id':_0x28d52f[_0x6e40('0x4a')]['id']}},_0x4f8b7c={};_0x4f8b7c[_0x6e40('0x36')]=_[_0x6e40('0x4b')](db[_0x6e40('0x31')][_0x6e40('0x32')]);_0x4f8b7c[_0x6e40('0x39')]=_[_0x6e40('0x4b')](_0x28d52f[_0x6e40('0x39')]);_0x4f8b7c[_0x6e40('0x38')]=_['intersection'](_0x4f8b7c[_0x6e40('0x36')],_0x4f8b7c['query']);_0x4f6848['attributes']=_['intersection'](_0x4f8b7c[_0x6e40('0x36')],qs[_0x6e40('0x3c')](_0x28d52f[_0x6e40('0x39')][_0x6e40('0x3c')]));_0x4f6848['attributes']=_0x4f6848[_0x6e40('0x3a')][_0x6e40('0x3d')]?_0x4f6848[_0x6e40('0x3a')]:_0x4f8b7c[_0x6e40('0x36')];if(_0x28d52f[_0x6e40('0x39')][_0x6e40('0x4c')]){_0x4f6848[_0x6e40('0x46')]=[{'all':!![]}];}_0x4f6848=_[_0x6e40('0x44')]({},_0x4f6848,_0x28d52f['options']);return db[_0x6e40('0x31')][_0x6e40('0x4d')](_0x4f6848)['then'](handleEntityNotFound(_0x1145da,null))[_0x6e40('0x2a')](respondWithResult(_0x1145da,null))[_0x6e40('0x48')](handleError(_0x1145da,null));};exports[_0x6e40('0x4e')]=function(_0x19eb6d,_0x13beba){return db[_0x6e40('0x31')][_0x6e40('0x4e')](_0x19eb6d[_0x6e40('0x4f')],{})[_0x6e40('0x2a')](function(_0x189286){var _0x2f4c3e=_0x19eb6d['user'][_0x6e40('0x2b')]({'plain':!![]});if(!_0x2f4c3e)throw new Error(_0x6e40('0x50'));if(_0x2f4c3e[_0x6e40('0x51')]===_0x6e40('0x52')){var _0x51d36c=_0x189286[_0x6e40('0x2b')]({'plain':!![]});var _0x4acd52='WhatsappQueues';return db['UserProfileSection']['find']({'where':{'name':_0x4acd52,'userProfileId':_0x2f4c3e['userProfileId']},'raw':!![]})[_0x6e40('0x2a')](function(_0x122275){if(_0x122275&&_0x122275[_0x6e40('0x53')]===0x0){return db[_0x6e40('0x2c')]['create']({'name':_0x51d36c[_0x6e40('0x37')],'resourceId':_0x51d36c['id'],'type':_0x122275[_0x6e40('0x37')],'sectionId':_0x122275['id']},{})[_0x6e40('0x2a')](function(){return _0x189286;});}else{return _0x189286;}})['catch'](function(_0xa5c63f){logger[_0x6e40('0x2d')](_0x6e40('0x54'),_0xa5c63f);throw _0xa5c63f;});}return _0x189286;})[_0x6e40('0x2a')](respondWithResult(_0x13beba,0xc9))[_0x6e40('0x48')](handleError(_0x13beba,null));};exports[_0x6e40('0x28')]=function(_0x2be42d,_0x55f837){if(_0x2be42d['body']['id']){delete _0x2be42d[_0x6e40('0x4f')]['id'];}return db[_0x6e40('0x31')]['find']({'where':{'id':_0x2be42d[_0x6e40('0x4a')]['id']}})['then'](handleEntityNotFound(_0x55f837,null))[_0x6e40('0x2a')](saveUpdates(_0x2be42d[_0x6e40('0x4f')],null))['then'](respondWithResult(_0x55f837,null))[_0x6e40('0x48')](handleError(_0x55f837,null));};exports[_0x6e40('0x29')]=function(_0x10894f,_0x31618d){return db['WhatsappQueue']['find']({'where':{'id':_0x10894f[_0x6e40('0x4a')]['id']}})['then'](handleEntityNotFound(_0x31618d,null))[_0x6e40('0x2a')](removeEntity(_0x31618d,null))[_0x6e40('0x48')](handleError(_0x31618d,null));};exports['describe']=function(_0x3dbcd5,_0x4a5fb9){return db[_0x6e40('0x31')][_0x6e40('0x55')]()[_0x6e40('0x2a')](respondWithResult(_0x4a5fb9,null))[_0x6e40('0x48')](handleError(_0x4a5fb9,null));};exports[_0x6e40('0x56')]=function(_0x427d24,_0x131ef5,_0x53010c){var _0x3b9b93={'raw':!![],'where':{}},_0x265489={},_0xfd556a;return db[_0x6e40('0x31')]['findOne']({'where':{'id':_0x427d24['params']['id']}})[_0x6e40('0x2a')](handleEntityNotFound(_0x131ef5,null))[_0x6e40('0x2a')](function(_0x2aa6dc){if(_0x2aa6dc){_0xfd556a=_0x2aa6dc[_0x6e40('0x2b')]({'plain':!![]});_0x265489['model']=_[_0x6e40('0x4b')](db[_0x6e40('0x57')]['rawAttributes']);_0x265489['query']=_['keys'](_0x427d24['query']);_0x265489['filters']=_[_0x6e40('0x3b')](_0x265489[_0x6e40('0x36')],_0x265489[_0x6e40('0x39')]);_0x3b9b93[_0x6e40('0x3a')]=_[_0x6e40('0x3b')](_0x265489[_0x6e40('0x36')],qs[_0x6e40('0x3c')](_0x427d24['query'][_0x6e40('0x3c')]));_0x3b9b93[_0x6e40('0x3a')]=_0x3b9b93[_0x6e40('0x3a')][_0x6e40('0x3d')]?_0x3b9b93[_0x6e40('0x3a')]:_0x265489['model'];if(!_0x427d24['query'][_0x6e40('0x3e')](_0x6e40('0x58'))){_0x3b9b93[_0x6e40('0x24')]=qs[_0x6e40('0x24')](_0x427d24[_0x6e40('0x39')]['limit']);_0x3b9b93[_0x6e40('0x23')]=qs[_0x6e40('0x23')](_0x427d24[_0x6e40('0x39')][_0x6e40('0x23')]);}_0x3b9b93[_0x6e40('0x3f')]=qs['sort'](_0x427d24[_0x6e40('0x39')][_0x6e40('0x40')]);_0x3b9b93[_0x6e40('0x41')]=qs[_0x6e40('0x38')](_['pick'](_0x427d24['query'],_0x265489[_0x6e40('0x38')]));_0x3b9b93[_0x6e40('0x41')][_0x6e40('0x59')]=_0x2aa6dc['id'];if(_0x427d24[_0x6e40('0x39')][_0x6e40('0x43')]){_0x3b9b93[_0x6e40('0x41')]=_[_0x6e40('0x44')](_0x3b9b93[_0x6e40('0x41')],{'$or':_['map'](_0x3b9b93[_0x6e40('0x3a')],function(_0x14408f){var _0x4a1f4b={};_0x4a1f4b[_0x14408f]={'$like':'%'+_0x427d24['query'][_0x6e40('0x43')]+'%'};return _0x4a1f4b;})});}_0x3b9b93=_[_0x6e40('0x44')]({},_0x3b9b93,_0x427d24[_0x6e40('0x5a')]);return db['UserWhatsappQueue'][_0x6e40('0x47')](_0x3b9b93);}})[_0x6e40('0x2a')](function(_0x2d2a69){if(_0x2d2a69){return db['User']['findAndCountAll']({'where':{'id':_[_0x6e40('0x30')](_0x2d2a69,_0x6e40('0x5b')),'role':_0x6e40('0x5c')},'attributes':['id',_0x6e40('0x37'),_0x6e40('0x5d'),'updatedAt',_0x6e40('0x5e')]});}})[_0x6e40('0x2a')](function(_0x404da8){if(_0x404da8){return{'count':_0x404da8[_0x6e40('0x22')],'rows':_['map'](_0x404da8[_0x6e40('0x5f')],function(_0x5e144b){return{'membername':_0x5e144b[_0x6e40('0x37')],'UserId':_0x5e144b['id'],'queue_name':_0xfd556a[_0x6e40('0x37')],'WhatsappQueueId':_0xfd556a['id'],'interface':util[_0x6e40('0x60')](_0x6e40('0x61'),'SIP',_0x5e144b['name']),'penalty':0x0,'paused':_0x5e144b[_0x6e40('0x5d')],'createdAt':_0x5e144b['createdAt'],'updatedAt':_0x5e144b[_0x6e40('0x62')]};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x131ef5,_0x3b9b93))[_0x6e40('0x48')](handleError(_0x131ef5,null));};exports['getTeams']=function(_0x1ce974,_0x223803,_0x59de23){var _0x36034f={};var _0x4d362e={};var _0x24c97f;var _0x10b8a0;return db['WhatsappQueue'][_0x6e40('0x63')]({'where':{'id':_0x1ce974[_0x6e40('0x4a')]['id']}})['then'](handleEntityNotFound(_0x223803,null))[_0x6e40('0x2a')](function(_0x5b9230){if(_0x5b9230){_0x24c97f=_0x5b9230;_0x4d362e[_0x6e40('0x36')]=_[_0x6e40('0x4b')](db[_0x6e40('0x64')]['rawAttributes']);_0x4d362e[_0x6e40('0x39')]=_[_0x6e40('0x4b')](_0x1ce974[_0x6e40('0x39')]);_0x4d362e[_0x6e40('0x38')]=_[_0x6e40('0x3b')](_0x4d362e[_0x6e40('0x36')],_0x4d362e[_0x6e40('0x39')]);_0x36034f[_0x6e40('0x3a')]=_['intersection'](_0x4d362e['model'],qs[_0x6e40('0x3c')](_0x1ce974[_0x6e40('0x39')]['fields']));_0x36034f[_0x6e40('0x3a')]=_0x36034f['attributes'][_0x6e40('0x3d')]?_0x36034f[_0x6e40('0x3a')]:_0x4d362e[_0x6e40('0x36')];_0x36034f[_0x6e40('0x3f')]=qs[_0x6e40('0x40')](_0x1ce974['query'][_0x6e40('0x40')]);_0x36034f['where']=qs[_0x6e40('0x38')](_[_0x6e40('0x42')](_0x1ce974[_0x6e40('0x39')],_0x4d362e[_0x6e40('0x38')]));if(_0x1ce974['query']['filter']){_0x36034f[_0x6e40('0x41')]=_['merge'](_0x36034f[_0x6e40('0x41')],{'$or':_[_0x6e40('0x30')](_0x36034f['attributes'],function(_0x211e2d){var _0x3e24b4={};_0x3e24b4[_0x211e2d]={'$like':'%'+_0x1ce974[_0x6e40('0x39')][_0x6e40('0x43')]+'%'};return _0x3e24b4;})});}_0x36034f=_['merge']({},_0x36034f,_0x1ce974[_0x6e40('0x5a')]);return _0x24c97f[_0x6e40('0x65')](_0x36034f);}})[_0x6e40('0x2a')](function(_0xb73ae8){if(_0xb73ae8){_0x10b8a0=_0xb73ae8['length'];if(!_0x1ce974[_0x6e40('0x39')][_0x6e40('0x3e')]('nolimit')){_0x36034f[_0x6e40('0x24')]=qs[_0x6e40('0x24')](_0x1ce974[_0x6e40('0x39')][_0x6e40('0x24')]);_0x36034f[_0x6e40('0x23')]=qs[_0x6e40('0x23')](_0x1ce974[_0x6e40('0x39')][_0x6e40('0x23')]);}return _0x24c97f[_0x6e40('0x65')](_0x36034f);}})['then'](function(_0x2f8528){if(_0x2f8528){return _0x2f8528?{'count':_0x10b8a0,'rows':_0x2f8528}:null;}})[_0x6e40('0x2a')](respondWithResult(_0x223803,null))[_0x6e40('0x48')](handleError(_0x223803,null));};exports[_0x6e40('0x66')]=function(_0x23be56,_0x50d6c0,_0x5396c2){var _0x4ee9b8=_0x23be56[_0x6e40('0x4f')][_0x6e40('0x67')];return db[_0x6e40('0x64')][_0x6e40('0x47')]({'where':{'id':_0x4ee9b8},'attributes':['id'],'include':[{'model':db[_0x6e40('0x68')],'as':_0x6e40('0x69'),'attributes':['id','name',_0x6e40('0x6a'),'voicePause',_0x6e40('0x6b')],'raw':!![]}]})[_0x6e40('0x2a')](function(_0x3b3ee7){if(_0x3b3ee7){var _0x51f9bf=_['flatMap'](_0x3b3ee7,function(_0x604a7f){var _0x335b7e=_0x604a7f[_0x6e40('0x2b')]({'plain':!![]});return _0x335b7e[_0x6e40('0x69')];});return db[_0x6e40('0x31')]['find']({'where':{'id':_0x23be56['params']['id']}})['then'](function(_0x8072e8){return db['sequelize'][_0x6e40('0x6c')](function(_0x17e730){return _0x8072e8[_0x6e40('0x66')](_0x4ee9b8,{'transaction':_0x17e730})[_0x6e40('0x2a')](function(){return BPromise[_0x6e40('0x6d')](_0x51f9bf,function(_0x5d65e3){return db[_0x6e40('0x57')][_0x6e40('0x6e')]({'where':{'UserId':_0x5d65e3['id'],'WhatsappQueueId':_0x23be56[_0x6e40('0x4a')]['id']},'transaction':_0x17e730});});})['then'](function(){_0x51f9bf['forEach'](function(_0x549b97){socket[_0x6e40('0x6f')](_0x6e40('0x70'),{'UserId':_0x549b97['id'],'WhatsappQueueId':_0x8072e8['id']});});});});});}})[_0x6e40('0x2a')](respondWithStatusCode(_0x50d6c0,null))['catch'](handleError(_0x50d6c0,null));};exports['removeTeams']=function(_0xa13464,_0x6ea4d1,_0x386d49){return db['Team'][_0x6e40('0x47')]({'where':{'id':_0xa13464[_0x6e40('0x39')][_0x6e40('0x67')]},'attributes':['id'],'include':[{'model':db[_0x6e40('0x68')],'as':_0x6e40('0x69'),'attributes':['id'],'raw':!![]}]})[_0x6e40('0x2a')](handleEntityNotFound(_0x6ea4d1,null))[_0x6e40('0x2a')](function(_0x27569b){var _0xdcb0af=_[_0x6e40('0x30')](_0x27569b,'id');var _0x5f4445=[];var _0x306499=[];var _0x3ee93e=squel['select']();_0x3ee93e['field'](_0x6e40('0x71'))[_0x6e40('0x72')](_0x6e40('0x73'),'tq')[_0x6e40('0x74')](_0x6e40('0x75'),'ut','ut.TeamId\x20=\x20tq.TeamId')[_0x6e40('0x41')](_0x6e40('0x76'),_0xa13464['params']['id']);for(var _0x14215e=0x0;_0x14215e<_0x27569b[_0x6e40('0x3d')];_0x14215e+=0x1){let _0x27b8fd=_0x27569b[_0x14215e];for(var _0x4d98fc=0x0;_0x4d98fc<_0x27b8fd['Agents'][_0x6e40('0x3d')];_0x4d98fc+=0x1){let _0x1203b3=_0x27b8fd[_0x6e40('0x69')][_0x4d98fc];var _0x5e502b=_0x3ee93e[_0x6e40('0x77')]();_0x5e502b[_0x6e40('0x41')](_0x6e40('0x78'),_0x1203b3['id']);_0x306499[_0x6e40('0x79')](db[_0x6e40('0x7a')]['query'](_0x5e502b[_0x6e40('0x7b')](),{'type':db[_0x6e40('0x7a')]['QueryTypes'][_0x6e40('0x7c')]})[_0x6e40('0x2a')](function(_0xc83bbf){if(_0xc83bbf[_0x6e40('0x3d')]===0x1){return _0x1203b3['id'];}else{var _0xe93ce3=_[_0x6e40('0x7d')](_[_0x6e40('0x30')](_0xc83bbf,'TeamId'),function(_0xaf0ef5){return _[_0x6e40('0x7e')](_0xdcb0af,_0xaf0ef5);});if(_0xe93ce3){return _0x1203b3['id'];}}}));}}return BPromise[_0x6e40('0x7f')](_0x306499)[_0x6e40('0x2a')](function(_0x13aa1a){_0x5f4445=_(_0x5f4445)['union'](_0x13aa1a)[_0x6e40('0x80')]()['value']();return db[_0x6e40('0x31')][_0x6e40('0x4d')]({'where':{'id':_0xa13464[_0x6e40('0x4a')]['id']}})['then'](function(_0x345a78){return db['sequelize']['transaction'](function(_0x7f0240){return _0x345a78['removeTeams'](_0xa13464[_0x6e40('0x39')][_0x6e40('0x67')],{'transaction':_0x7f0240})['then'](function(){if(!_['isEmpty'](_0x5f4445)){return _0x345a78['removeAgents'](_0x5f4445,{'transaction':_0x7f0240});}})[_0x6e40('0x2a')](function(){_0x5f4445[_0x6e40('0x81')](function(_0x1a628e){socket[_0x6e40('0x6f')](_0x6e40('0x82'),{'UserId':_0x1a628e,'WhatsappQueueId':_0x345a78['id']});});});});});});})[_0x6e40('0x2a')](respondWithStatusCode(_0x6ea4d1,null))[_0x6e40('0x48')](handleError(_0x6ea4d1,null));};exports[_0x6e40('0x83')]=function(_0x4f40c2,_0xb5a532,_0x47a613){return db[_0x6e40('0x31')][_0x6e40('0x4d')]({'where':{'id':_0x4f40c2[_0x6e40('0x4a')]['id']}})[_0x6e40('0x2a')](handleEntityNotFound(_0xb5a532,null))[_0x6e40('0x2a')](function(_0x2c6f25){if(_0x2c6f25){return _0x2c6f25[_0x6e40('0x83')](_0x4f40c2[_0x6e40('0x4f')][_0x6e40('0x67')],_['omit'](_0x4f40c2[_0x6e40('0x4f')],[_0x6e40('0x67'),'id'])||{})[_0x6e40('0x84')](function(_0x335155){for(var _0x482105=0x0;_0x482105<_0x4f40c2['body'][_0x6e40('0x67')][_0x6e40('0x3d')];_0x482105+=0x1){socket[_0x6e40('0x6f')]('userWhatsappQueue:save',{'UserId':_0x4f40c2[_0x6e40('0x4f')][_0x6e40('0x67')][_0x482105],'WhatsappQueueId':_0x4f40c2[_0x6e40('0x4a')]['id']});}return _0x335155;});}})[_0x6e40('0x2a')](respondWithResult(_0xb5a532,null))[_0x6e40('0x48')](handleError(_0xb5a532,null));};exports[_0x6e40('0x85')]=function(_0x213cdd,_0x4bdfbe,_0x4ba1d8){return db[_0x6e40('0x31')][_0x6e40('0x4d')]({'where':{'id':_0x213cdd['params']['id']}})['then'](handleEntityNotFound(_0x4bdfbe,null))[_0x6e40('0x2a')](function(_0x4cfb0d){if(_0x4cfb0d){return _0x4cfb0d[_0x6e40('0x85')](_0x213cdd[_0x6e40('0x39')]['ids'])[_0x6e40('0x2a')](function(){if(_[_0x6e40('0x86')](_0x213cdd[_0x6e40('0x39')][_0x6e40('0x67')])){for(var _0x47c756=0x0;_0x47c756<_0x213cdd[_0x6e40('0x39')]['ids'][_0x6e40('0x3d')];_0x47c756+=0x1){socket['emit']('userWhatsappQueue:remove',{'UserId':Number(_0x213cdd['query'][_0x6e40('0x67')][_0x47c756]),'WhatsappQueueId':Number(_0x213cdd[_0x6e40('0x4a')]['id'])});}}else{socket[_0x6e40('0x6f')](_0x6e40('0x82'),{'UserId':Number(_0x213cdd[_0x6e40('0x39')][_0x6e40('0x67')]),'WhatsappQueueId':Number(_0x213cdd['params']['id'])});}});}})[_0x6e40('0x2a')](respondWithStatusCode(_0x4bdfbe,null))[_0x6e40('0x48')](handleError(_0x4bdfbe,null));};exports[_0x6e40('0x87')]=function(_0x1a5496,_0x20bbd0,_0x214c6b){var _0x763942={};var _0x40aa4c={};var _0x57442d;var _0x3bc6ac;return db[_0x6e40('0x31')][_0x6e40('0x63')]({'where':{'id':_0x1a5496[_0x6e40('0x4a')]['id']}})['then'](handleEntityNotFound(_0x20bbd0,null))['then'](function(_0x31ddbf){if(_0x31ddbf){_0x57442d=_0x31ddbf;_0x40aa4c['model']=_[_0x6e40('0x4b')](db['User'][_0x6e40('0x32')]);_0x40aa4c[_0x6e40('0x39')]=_['keys'](_0x1a5496[_0x6e40('0x39')]);_0x40aa4c[_0x6e40('0x38')]=_[_0x6e40('0x3b')](_0x40aa4c['model'],_0x40aa4c[_0x6e40('0x39')]);_0x763942['attributes']=_[_0x6e40('0x3b')](_0x40aa4c['model'],qs[_0x6e40('0x3c')](_0x1a5496['query']['fields']));_0x763942['attributes']=_0x763942[_0x6e40('0x3a')][_0x6e40('0x3d')]?_0x763942[_0x6e40('0x3a')]:_0x40aa4c[_0x6e40('0x36')];_0x763942[_0x6e40('0x3f')]=qs[_0x6e40('0x40')](_0x1a5496['query'][_0x6e40('0x40')]);_0x763942[_0x6e40('0x41')]=qs[_0x6e40('0x38')](_[_0x6e40('0x42')](_0x1a5496['query'],_0x40aa4c[_0x6e40('0x38')]));if(_0x1a5496[_0x6e40('0x39')]['filter']){_0x763942[_0x6e40('0x41')]=_[_0x6e40('0x44')](_0x763942[_0x6e40('0x41')],{'$or':_[_0x6e40('0x30')](_0x763942[_0x6e40('0x3a')],function(_0x1b4ba6){var _0x554264={};_0x554264[_0x1b4ba6]={'$like':'%'+_0x1a5496[_0x6e40('0x39')][_0x6e40('0x43')]+'%'};return _0x554264;})});}_0x763942=_[_0x6e40('0x44')]({},_0x763942,_0x1a5496['options']);return _0x57442d[_0x6e40('0x87')](_0x763942);}})['then'](function(_0x35f97c){if(_0x35f97c){_0x3bc6ac=_0x35f97c[_0x6e40('0x3d')];if(!_0x1a5496[_0x6e40('0x39')][_0x6e40('0x3e')]('nolimit')){_0x763942[_0x6e40('0x24')]=qs[_0x6e40('0x24')](_0x1a5496[_0x6e40('0x39')][_0x6e40('0x24')]);_0x763942['offset']=qs[_0x6e40('0x23')](_0x1a5496[_0x6e40('0x39')][_0x6e40('0x23')]);}return _0x57442d['getAgents'](_0x763942);}})[_0x6e40('0x2a')](function(_0x4d213b){if(_0x4d213b){return _0x4d213b?{'count':_0x3bc6ac,'rows':_0x4d213b}:null;}})['then'](respondWithResult(_0x20bbd0,null))[_0x6e40('0x48')](handleError(_0x20bbd0,null));};