Built motion from commit 167bccf5.|2.6.7
[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 _0x3167=['options','includeAll','findAll','catch','show','params','rawAttributes','include','find','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','destroy','describe','UserWhatsappQueue','pick','WhatsappQueueId','User','findAndCountAll','UserId','agent','whatsappPause','createdAt','rows','%s/%s','updatedAt','getTeams','findOne','addTeams','Team','Agents','online','interface','flatMap','sequelize','transaction','each','findOrCreate','forEach','emit','removeTeams','select','field','tq.TeamId','from','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','WhatsappQueueId\x20=\x20?','ut.UserId\x20=\x20?','push','QueryTypes','SELECT','every','includes','union','value','ids','isEmpty','userWhatsappQueue:remove','addAgents','omit','spread','userWhatsappQueue:save','removeAgents','isArray','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./whatsappQueue.socket','end','status','json','offset','undefined','limit','count','set','apply','reject','save','update','then','WhatsappQueues','UserProfileResource','sendStatus','stack','name','send','index','map','WhatsappQueue','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','type','VIRTUAL'];(function(_0x2f18f3,_0x5252c0){var _0x2e3629=function(_0x35836c){while(--_0x35836c){_0x2f18f3['push'](_0x2f18f3['shift']());}};_0x2e3629(++_0x5252c0);}(_0x3167,0x169));var _0x7316=function(_0x270adf,_0x1daaa3){_0x270adf=_0x270adf-0x0;var _0x29eda9=_0x3167[_0x270adf];return _0x29eda9;};'use strict';var emlformat=require(_0x7316('0x0'));var rimraf=require(_0x7316('0x1'));var zipdir=require(_0x7316('0x2'));var jsonpatch=require(_0x7316('0x3'));var rp=require(_0x7316('0x4'));var moment=require(_0x7316('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x7316('0x6'));var util=require(_0x7316('0x7'));var path=require(_0x7316('0x8'));var sox=require(_0x7316('0x9'));var csv=require(_0x7316('0xa'));var ejs=require(_0x7316('0xb'));var fs=require('fs');var fs_extra=require(_0x7316('0xc'));var _=require(_0x7316('0xd'));var squel=require(_0x7316('0xe'));var crypto=require(_0x7316('0xf'));var jsforce=require(_0x7316('0x10'));var deskjs=require(_0x7316('0x11'));var toCsv=require(_0x7316('0xa'));var querystring=require(_0x7316('0x12'));var Papa=require(_0x7316('0x13'));var Redis=require(_0x7316('0x14'));var authService=require('../../components/auth/service');var qs=require(_0x7316('0x15'));var as=require(_0x7316('0x16'));var hardwareService=require(_0x7316('0x17'));var logger=require(_0x7316('0x18'))(_0x7316('0x19'));var utils=require('../../config/utils');var config=require(_0x7316('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0x7316('0x1b'))['db'];config['redis']=_['defaults'](config[_0x7316('0x1c')],{'host':_0x7316('0x1d'),'port':0x18eb});var socket=require(_0x7316('0x1e'))(new Redis(config[_0x7316('0x1c')]));require(_0x7316('0x1f'))['register'](socket);function respondWithStatusCode(_0xa364e4,_0x219f4f){_0x219f4f=_0x219f4f||0xcc;return function(_0x3d4cd5){if(_0x3d4cd5){return _0xa364e4['sendStatus'](_0x219f4f);}return _0xa364e4['status'](_0x219f4f)[_0x7316('0x20')]();};}function respondWithResult(_0x3e2b9c,_0x2a35fc){_0x2a35fc=_0x2a35fc||0xc8;return function(_0x1bdf79){if(_0x1bdf79){return _0x3e2b9c[_0x7316('0x21')](_0x2a35fc)[_0x7316('0x22')](_0x1bdf79);}};}function respondWithFilteredResult(_0x4caa4a,_0x3fb322){return function(_0x5b796a){if(_0x5b796a){var _0x293ad5=typeof _0x3fb322[_0x7316('0x23')]===_0x7316('0x24')&&typeof _0x3fb322[_0x7316('0x25')]===_0x7316('0x24');var _0x3c64cf=_0x5b796a[_0x7316('0x26')];var _0x11a726=_0x293ad5?0x0:_0x3fb322[_0x7316('0x23')];var _0x3d5ec4=_0x293ad5?_0x5b796a[_0x7316('0x26')]:_0x3fb322['offset']+_0x3fb322['limit'];var _0x14f665;if(_0x3d5ec4>=_0x3c64cf){_0x3d5ec4=_0x3c64cf;_0x14f665=0xc8;}else{_0x14f665=0xce;}_0x4caa4a[_0x7316('0x21')](_0x14f665);return _0x4caa4a[_0x7316('0x27')]('Content-Range',_0x11a726+'-'+_0x3d5ec4+'/'+_0x3c64cf)[_0x7316('0x22')](_0x5b796a);}return null;};}function patchUpdates(_0x172367){return function(_0x58d680){try{jsonpatch[_0x7316('0x28')](_0x58d680,_0x172367,!![]);}catch(_0x5653d8){return BPromise[_0x7316('0x29')](_0x5653d8);}return _0x58d680[_0x7316('0x2a')]();};}function saveUpdates(_0xbd9910,_0x32efe9){return function(_0x1b2c71){if(_0x1b2c71){return _0x1b2c71[_0x7316('0x2b')](_0xbd9910)[_0x7316('0x2c')](function(_0xa9d2c6){return _0xa9d2c6;});}return null;};}function removeEntity(_0x29fc0a,_0x420e49){return function(_0x2d0b51){if(_0x2d0b51){return _0x2d0b51['destroy']()[_0x7316('0x2c')](function(){var _0x41540e=_0x2d0b51['get']({'plain':!![]});var _0x528dca=_0x7316('0x2d');return db[_0x7316('0x2e')]['destroy']({'where':{'type':_0x528dca,'resourceId':_0x41540e['id']}})[_0x7316('0x2c')](function(){return _0x2d0b51;});})[_0x7316('0x2c')](function(){_0x29fc0a['status'](0xcc)[_0x7316('0x20')]();});}};}function handleEntityNotFound(_0xf5b55f,_0x2f2da9){return function(_0x12696b){if(!_0x12696b){_0xf5b55f[_0x7316('0x2f')](0x194);}return _0x12696b;};}function handleError(_0x1c099d,_0x492d03){_0x492d03=_0x492d03||0x1f4;return function(_0x239182){logger['error'](_0x239182[_0x7316('0x30')]);if(_0x239182['name']){delete _0x239182[_0x7316('0x31')];}_0x1c099d[_0x7316('0x21')](_0x492d03)[_0x7316('0x32')](_0x239182);};}exports[_0x7316('0x33')]=function(_0xe31b88,_0x104063){var _0x1f5bbe={},_0x3ab180={},_0x331639={'count':0x0,'rows':[]};var _0x8ee6d8=_[_0x7316('0x34')](db[_0x7316('0x35')]['rawAttributes'],function(_0x433192){return{'name':_0x433192['fieldName'],'type':_0x433192['type']['key']};});_0x3ab180['model']=_[_0x7316('0x34')](_0x8ee6d8,_0x7316('0x31'));_0x3ab180[_0x7316('0x36')]=_[_0x7316('0x37')](_0xe31b88['query']);_0x3ab180[_0x7316('0x38')]=_[_0x7316('0x39')](_0x3ab180[_0x7316('0x3a')],_0x3ab180[_0x7316('0x36')]);_0x1f5bbe['attributes']=_[_0x7316('0x39')](_0x3ab180[_0x7316('0x3a')],qs[_0x7316('0x3b')](_0xe31b88[_0x7316('0x36')]['fields']));_0x1f5bbe[_0x7316('0x3c')]=_0x1f5bbe[_0x7316('0x3c')][_0x7316('0x3d')]?_0x1f5bbe[_0x7316('0x3c')]:_0x3ab180[_0x7316('0x3a')];if(!_0xe31b88['query'][_0x7316('0x3e')](_0x7316('0x3f'))){_0x1f5bbe[_0x7316('0x25')]=qs[_0x7316('0x25')](_0xe31b88[_0x7316('0x36')][_0x7316('0x25')]);_0x1f5bbe[_0x7316('0x23')]=qs['offset'](_0xe31b88[_0x7316('0x36')]['offset']);}_0x1f5bbe[_0x7316('0x40')]=qs[_0x7316('0x41')](_0xe31b88[_0x7316('0x36')][_0x7316('0x41')]);_0x1f5bbe[_0x7316('0x42')]=qs[_0x7316('0x38')](_['pick'](_0xe31b88[_0x7316('0x36')],_0x3ab180[_0x7316('0x38')]),_0x8ee6d8);if(_0xe31b88[_0x7316('0x36')][_0x7316('0x43')]){_0x1f5bbe['where']=_[_0x7316('0x44')](_0x1f5bbe[_0x7316('0x42')],{'$or':_['map'](_0x8ee6d8,function(_0x3ce17e){if(_0x3ce17e[_0x7316('0x45')]!==_0x7316('0x46')){var _0x12e798={};_0x12e798[_0x3ce17e['name']]={'$like':'%'+_0xe31b88[_0x7316('0x36')][_0x7316('0x43')]+'%'};return _0x12e798;}})});}_0x1f5bbe=_[_0x7316('0x44')]({},_0x1f5bbe,_0xe31b88[_0x7316('0x47')]);var _0x3e5ba3={'where':_0x1f5bbe[_0x7316('0x42')]};return db['WhatsappQueue']['count'](_0x3e5ba3)[_0x7316('0x2c')](function(_0x371e0b){_0x331639[_0x7316('0x26')]=_0x371e0b;if(_0xe31b88[_0x7316('0x36')][_0x7316('0x48')]){_0x1f5bbe['include']=[{'all':!![]}];}return db[_0x7316('0x35')][_0x7316('0x49')](_0x1f5bbe);})[_0x7316('0x2c')](function(_0x2c2f87){_0x331639['rows']=_0x2c2f87;return _0x331639;})[_0x7316('0x2c')](respondWithFilteredResult(_0x104063,_0x1f5bbe))[_0x7316('0x4a')](handleError(_0x104063,null));};exports[_0x7316('0x4b')]=function(_0x3195ed,_0x332e93){var _0x4629ff={'raw':!![],'where':{'id':_0x3195ed[_0x7316('0x4c')]['id']}},_0x591c50={};_0x591c50['model']=_['keys'](db['WhatsappQueue'][_0x7316('0x4d')]);_0x591c50['query']=_[_0x7316('0x37')](_0x3195ed[_0x7316('0x36')]);_0x591c50['filters']=_[_0x7316('0x39')](_0x591c50[_0x7316('0x3a')],_0x591c50[_0x7316('0x36')]);_0x4629ff[_0x7316('0x3c')]=_['intersection'](_0x591c50[_0x7316('0x3a')],qs[_0x7316('0x3b')](_0x3195ed[_0x7316('0x36')][_0x7316('0x3b')]));_0x4629ff['attributes']=_0x4629ff[_0x7316('0x3c')][_0x7316('0x3d')]?_0x4629ff[_0x7316('0x3c')]:_0x591c50[_0x7316('0x3a')];if(_0x3195ed[_0x7316('0x36')]['includeAll']){_0x4629ff[_0x7316('0x4e')]=[{'all':!![]}];}_0x4629ff=_[_0x7316('0x44')]({},_0x4629ff,_0x3195ed[_0x7316('0x47')]);return db[_0x7316('0x35')][_0x7316('0x4f')](_0x4629ff)['then'](handleEntityNotFound(_0x332e93,null))[_0x7316('0x2c')](respondWithResult(_0x332e93,null))[_0x7316('0x4a')](handleError(_0x332e93,null));};exports['create']=function(_0x4871f3,_0x382fef){return db[_0x7316('0x35')][_0x7316('0x50')](_0x4871f3['body'],{})[_0x7316('0x2c')](function(_0x1f4f4c){var _0xfd6cad=_0x4871f3[_0x7316('0x51')][_0x7316('0x52')]({'plain':!![]});if(!_0xfd6cad)throw new Error(_0x7316('0x53'));if(_0xfd6cad[_0x7316('0x54')]===_0x7316('0x51')){var _0x1848f1=_0x1f4f4c[_0x7316('0x52')]({'plain':!![]});var _0x32eeaf='WhatsappQueues';return db[_0x7316('0x55')][_0x7316('0x4f')]({'where':{'name':_0x32eeaf,'userProfileId':_0xfd6cad[_0x7316('0x56')]},'raw':!![]})['then'](function(_0x38ae66){if(_0x38ae66&&_0x38ae66['autoAssociation']===0x0){return db[_0x7316('0x2e')][_0x7316('0x50')]({'name':_0x1848f1[_0x7316('0x31')],'resourceId':_0x1848f1['id'],'type':_0x38ae66[_0x7316('0x31')],'sectionId':_0x38ae66['id']},{})[_0x7316('0x2c')](function(){return _0x1f4f4c;});}else{return _0x1f4f4c;}})['catch'](function(_0x413740){logger['error'](_0x7316('0x57'),_0x413740);throw _0x413740;});}return _0x1f4f4c;})[_0x7316('0x2c')](respondWithResult(_0x382fef,0xc9))[_0x7316('0x4a')](handleError(_0x382fef,null));};exports['update']=function(_0x4dca93,_0x329084){if(_0x4dca93[_0x7316('0x58')]['id']){delete _0x4dca93[_0x7316('0x58')]['id'];}return db[_0x7316('0x35')][_0x7316('0x4f')]({'where':{'id':_0x4dca93[_0x7316('0x4c')]['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x329084,null))[_0x7316('0x2c')](saveUpdates(_0x4dca93[_0x7316('0x58')],null))[_0x7316('0x2c')](respondWithResult(_0x329084,null))['catch'](handleError(_0x329084,null));};exports[_0x7316('0x59')]=function(_0x318195,_0x9b8bd5){return db['WhatsappQueue'][_0x7316('0x4f')]({'where':{'id':_0x318195[_0x7316('0x4c')]['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x9b8bd5,null))['then'](removeEntity(_0x9b8bd5,null))[_0x7316('0x4a')](handleError(_0x9b8bd5,null));};exports[_0x7316('0x5a')]=function(_0x5742b5,_0x4f7afb){return db[_0x7316('0x35')]['describe']()['then'](respondWithResult(_0x4f7afb,null))['catch'](handleError(_0x4f7afb,null));};exports['getMembers']=function(_0x476d24,_0x4e30aa,_0x1c0eab){var _0x3fddbe={'raw':!![],'where':{}},_0x5cbde4={},_0x5854e8;return db[_0x7316('0x35')]['findOne']({'where':{'id':_0x476d24[_0x7316('0x4c')]['id']}})['then'](handleEntityNotFound(_0x4e30aa,null))[_0x7316('0x2c')](function(_0x3ded1a){if(_0x3ded1a){_0x5854e8=_0x3ded1a['get']({'plain':!![]});_0x5cbde4[_0x7316('0x3a')]=_['keys'](db[_0x7316('0x5b')][_0x7316('0x4d')]);_0x5cbde4[_0x7316('0x36')]=_['keys'](_0x476d24['query']);_0x5cbde4[_0x7316('0x38')]=_[_0x7316('0x39')](_0x5cbde4[_0x7316('0x3a')],_0x5cbde4[_0x7316('0x36')]);_0x3fddbe['attributes']=_[_0x7316('0x39')](_0x5cbde4[_0x7316('0x3a')],qs[_0x7316('0x3b')](_0x476d24[_0x7316('0x36')][_0x7316('0x3b')]));_0x3fddbe['attributes']=_0x3fddbe[_0x7316('0x3c')][_0x7316('0x3d')]?_0x3fddbe['attributes']:_0x5cbde4[_0x7316('0x3a')];if(!_0x476d24[_0x7316('0x36')]['hasOwnProperty'](_0x7316('0x3f'))){_0x3fddbe[_0x7316('0x25')]=qs[_0x7316('0x25')](_0x476d24[_0x7316('0x36')]['limit']);_0x3fddbe[_0x7316('0x23')]=qs[_0x7316('0x23')](_0x476d24[_0x7316('0x36')]['offset']);}_0x3fddbe[_0x7316('0x40')]=qs[_0x7316('0x41')](_0x476d24[_0x7316('0x36')][_0x7316('0x41')]);_0x3fddbe[_0x7316('0x42')]=qs[_0x7316('0x38')](_[_0x7316('0x5c')](_0x476d24['query'],_0x5cbde4[_0x7316('0x38')]));_0x3fddbe[_0x7316('0x42')][_0x7316('0x5d')]=_0x3ded1a['id'];if(_0x476d24['query']['filter']){_0x3fddbe[_0x7316('0x42')]=_['merge'](_0x3fddbe[_0x7316('0x42')],{'$or':_[_0x7316('0x34')](_0x3fddbe[_0x7316('0x3c')],function(_0x28d03f){var _0x46935b={};_0x46935b[_0x28d03f]={'$like':'%'+_0x476d24[_0x7316('0x36')]['filter']+'%'};return _0x46935b;})});}_0x3fddbe=_[_0x7316('0x44')]({},_0x3fddbe,_0x476d24[_0x7316('0x47')]);return db['UserWhatsappQueue'][_0x7316('0x49')](_0x3fddbe);}})[_0x7316('0x2c')](function(_0x5ef9ff){if(_0x5ef9ff){return db[_0x7316('0x5e')][_0x7316('0x5f')]({'where':{'id':_[_0x7316('0x34')](_0x5ef9ff,_0x7316('0x60')),'role':_0x7316('0x61')},'attributes':['id','name',_0x7316('0x62'),'updatedAt',_0x7316('0x63')]});}})[_0x7316('0x2c')](function(_0x110122){if(_0x110122){return{'count':_0x110122[_0x7316('0x26')],'rows':_[_0x7316('0x34')](_0x110122[_0x7316('0x64')],function(_0x19bfda){return{'membername':_0x19bfda[_0x7316('0x31')],'UserId':_0x19bfda['id'],'queue_name':_0x5854e8[_0x7316('0x31')],'WhatsappQueueId':_0x5854e8['id'],'interface':util['format'](_0x7316('0x65'),'SIP',_0x19bfda[_0x7316('0x31')]),'penalty':0x0,'paused':_0x19bfda[_0x7316('0x62')],'createdAt':_0x19bfda['createdAt'],'updatedAt':_0x19bfda[_0x7316('0x66')]};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x4e30aa,_0x3fddbe))[_0x7316('0x4a')](handleError(_0x4e30aa,null));};exports[_0x7316('0x67')]=function(_0x36d345,_0x3a8400,_0x1d558a){var _0x24acc6={};var _0x252765={};var _0x22ec2d;var _0x28527c;return db[_0x7316('0x35')][_0x7316('0x68')]({'where':{'id':_0x36d345[_0x7316('0x4c')]['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x3a8400,null))[_0x7316('0x2c')](function(_0x43fc85){if(_0x43fc85){_0x22ec2d=_0x43fc85;_0x252765[_0x7316('0x3a')]=_[_0x7316('0x37')](db['Team']['rawAttributes']);_0x252765[_0x7316('0x36')]=_[_0x7316('0x37')](_0x36d345[_0x7316('0x36')]);_0x252765['filters']=_[_0x7316('0x39')](_0x252765['model'],_0x252765[_0x7316('0x36')]);_0x24acc6[_0x7316('0x3c')]=_[_0x7316('0x39')](_0x252765[_0x7316('0x3a')],qs[_0x7316('0x3b')](_0x36d345[_0x7316('0x36')][_0x7316('0x3b')]));_0x24acc6[_0x7316('0x3c')]=_0x24acc6[_0x7316('0x3c')]['length']?_0x24acc6['attributes']:_0x252765[_0x7316('0x3a')];_0x24acc6[_0x7316('0x40')]=qs[_0x7316('0x41')](_0x36d345[_0x7316('0x36')][_0x7316('0x41')]);_0x24acc6['where']=qs[_0x7316('0x38')](_[_0x7316('0x5c')](_0x36d345[_0x7316('0x36')],_0x252765[_0x7316('0x38')]));if(_0x36d345[_0x7316('0x36')][_0x7316('0x43')]){_0x24acc6[_0x7316('0x42')]=_[_0x7316('0x44')](_0x24acc6[_0x7316('0x42')],{'$or':_['map'](_0x24acc6['attributes'],function(_0x4633d8){var _0x20b10a={};_0x20b10a[_0x4633d8]={'$like':'%'+_0x36d345[_0x7316('0x36')][_0x7316('0x43')]+'%'};return _0x20b10a;})});}_0x24acc6=_[_0x7316('0x44')]({},_0x24acc6,_0x36d345[_0x7316('0x47')]);return _0x22ec2d[_0x7316('0x67')](_0x24acc6);}})[_0x7316('0x2c')](function(_0x2dc051){if(_0x2dc051){_0x28527c=_0x2dc051[_0x7316('0x3d')];if(!_0x36d345[_0x7316('0x36')]['hasOwnProperty']('nolimit')){_0x24acc6['limit']=qs[_0x7316('0x25')](_0x36d345[_0x7316('0x36')]['limit']);_0x24acc6[_0x7316('0x23')]=qs['offset'](_0x36d345[_0x7316('0x36')][_0x7316('0x23')]);}return _0x22ec2d[_0x7316('0x67')](_0x24acc6);}})[_0x7316('0x2c')](function(_0x34792e){if(_0x34792e){return _0x34792e?{'count':_0x28527c,'rows':_0x34792e}:null;}})['then'](respondWithResult(_0x3a8400,null))[_0x7316('0x4a')](handleError(_0x3a8400,null));};exports[_0x7316('0x69')]=function(_0x3d7e5f,_0x4c1400,_0x370ddd){var _0x36c434=_0x3d7e5f['body']['ids'];return db[_0x7316('0x6a')]['findAll']({'where':{'id':_0x36c434},'attributes':['id'],'include':[{'model':db['User'],'as':_0x7316('0x6b'),'attributes':['id','name',_0x7316('0x6c'),'voicePause',_0x7316('0x6d')],'raw':!![]}]})[_0x7316('0x2c')](function(_0x193734){if(_0x193734){var _0x3cd4b0=_[_0x7316('0x6e')](_0x193734,function(_0x262bdf){var _0xe46047=_0x262bdf['get']({'plain':!![]});return _0xe46047[_0x7316('0x6b')];});return db[_0x7316('0x35')][_0x7316('0x4f')]({'where':{'id':_0x3d7e5f[_0x7316('0x4c')]['id']}})[_0x7316('0x2c')](function(_0x31c80d){return db[_0x7316('0x6f')][_0x7316('0x70')](function(_0x3fdb52){return _0x31c80d['addTeams'](_0x36c434,{'transaction':_0x3fdb52})[_0x7316('0x2c')](function(){return BPromise[_0x7316('0x71')](_0x3cd4b0,function(_0x460573){return db[_0x7316('0x5b')][_0x7316('0x72')]({'where':{'UserId':_0x460573['id'],'WhatsappQueueId':_0x3d7e5f[_0x7316('0x4c')]['id']},'transaction':_0x3fdb52});});})[_0x7316('0x2c')](function(){_0x3cd4b0[_0x7316('0x73')](function(_0x2759d7){socket[_0x7316('0x74')]('userWhatsappQueue:save',{'UserId':_0x2759d7['id'],'WhatsappQueueId':_0x31c80d['id']});});});});});}})['then'](respondWithStatusCode(_0x4c1400,null))[_0x7316('0x4a')](handleError(_0x4c1400,null));};exports[_0x7316('0x75')]=function(_0x2825b7,_0x379029,_0x37dafd){return db[_0x7316('0x6a')]['findAll']({'where':{'id':_0x2825b7['query']['ids']},'attributes':['id'],'include':[{'model':db[_0x7316('0x5e')],'as':_0x7316('0x6b'),'attributes':['id'],'raw':!![]}]})['then'](handleEntityNotFound(_0x379029,null))[_0x7316('0x2c')](function(_0x55fa03){var _0x17c79c=_[_0x7316('0x34')](_0x55fa03,'id');var _0x3b34d7=[];var _0x375d8e=[];var _0x3c1e09=squel[_0x7316('0x76')]();_0x3c1e09[_0x7316('0x77')](_0x7316('0x78'))[_0x7316('0x79')]('team_has_whatsapp_queues','tq')[_0x7316('0x7a')](_0x7316('0x7b'),'ut',_0x7316('0x7c'))[_0x7316('0x42')](_0x7316('0x7d'),_0x2825b7[_0x7316('0x4c')]['id']);for(var _0x51904a=0x0;_0x51904a<_0x55fa03[_0x7316('0x3d')];_0x51904a+=0x1){let _0xa60d3d=_0x55fa03[_0x51904a];for(var _0x14f9a3=0x0;_0x14f9a3<_0xa60d3d[_0x7316('0x6b')][_0x7316('0x3d')];_0x14f9a3+=0x1){let _0x471b25=_0xa60d3d[_0x7316('0x6b')][_0x14f9a3];var _0x42ed64=_0x3c1e09['clone']();_0x42ed64['where'](_0x7316('0x7e'),_0x471b25['id']);_0x375d8e[_0x7316('0x7f')](db[_0x7316('0x6f')][_0x7316('0x36')](_0x42ed64['toString'](),{'type':db[_0x7316('0x6f')][_0x7316('0x80')][_0x7316('0x81')]})[_0x7316('0x2c')](function(_0x2b9aca){if(_0x2b9aca[_0x7316('0x3d')]===0x1){return _0x471b25['id'];}else{var _0x2a7132=_[_0x7316('0x82')](_['map'](_0x2b9aca,'TeamId'),function(_0x47f374){return _[_0x7316('0x83')](_0x17c79c,_0x47f374);});if(_0x2a7132){return _0x471b25['id'];}}}));}}return BPromise['all'](_0x375d8e)[_0x7316('0x2c')](function(_0x4eb2d7){_0x3b34d7=_(_0x3b34d7)[_0x7316('0x84')](_0x4eb2d7)['compact']()[_0x7316('0x85')]();return db[_0x7316('0x35')]['find']({'where':{'id':_0x2825b7[_0x7316('0x4c')]['id']}})['then'](function(_0x490f01){return db[_0x7316('0x6f')][_0x7316('0x70')](function(_0x26d3d9){return _0x490f01[_0x7316('0x75')](_0x2825b7[_0x7316('0x36')][_0x7316('0x86')],{'transaction':_0x26d3d9})[_0x7316('0x2c')](function(){if(!_[_0x7316('0x87')](_0x3b34d7)){return _0x490f01['removeAgents'](_0x3b34d7,{'transaction':_0x26d3d9});}})['then'](function(){_0x3b34d7[_0x7316('0x73')](function(_0x24cf3a){socket[_0x7316('0x74')](_0x7316('0x88'),{'UserId':_0x24cf3a,'WhatsappQueueId':_0x490f01['id']});});});});});});})[_0x7316('0x2c')](respondWithStatusCode(_0x379029,null))[_0x7316('0x4a')](handleError(_0x379029,null));};exports[_0x7316('0x89')]=function(_0x1c7676,_0x111900,_0x4ef9be){return db['WhatsappQueue'][_0x7316('0x4f')]({'where':{'id':_0x1c7676['params']['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x111900,null))[_0x7316('0x2c')](function(_0x4c1bba){if(_0x4c1bba){return _0x4c1bba[_0x7316('0x89')](_0x1c7676[_0x7316('0x58')][_0x7316('0x86')],_[_0x7316('0x8a')](_0x1c7676[_0x7316('0x58')],[_0x7316('0x86'),'id'])||{})[_0x7316('0x8b')](function(_0x5c3559){for(var _0x4df5a1=0x0;_0x4df5a1<_0x1c7676[_0x7316('0x58')][_0x7316('0x86')][_0x7316('0x3d')];_0x4df5a1+=0x1){socket[_0x7316('0x74')](_0x7316('0x8c'),{'UserId':Number(_0x1c7676[_0x7316('0x58')][_0x7316('0x86')][_0x4df5a1]),'WhatsappQueueId':Number(_0x1c7676[_0x7316('0x4c')]['id'])});}return _0x5c3559;});}})['then'](respondWithResult(_0x111900,null))[_0x7316('0x4a')](handleError(_0x111900,null));};exports[_0x7316('0x8d')]=function(_0x308259,_0x16f880,_0x464afe){return db[_0x7316('0x35')][_0x7316('0x4f')]({'where':{'id':_0x308259[_0x7316('0x4c')]['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x16f880,null))[_0x7316('0x2c')](function(_0x465a8a){if(_0x465a8a){return _0x465a8a[_0x7316('0x8d')](_0x308259[_0x7316('0x36')][_0x7316('0x86')])['then'](function(){if(_[_0x7316('0x8e')](_0x308259[_0x7316('0x36')][_0x7316('0x86')])){for(var _0x2c0c50=0x0;_0x2c0c50<_0x308259[_0x7316('0x36')][_0x7316('0x86')][_0x7316('0x3d')];_0x2c0c50+=0x1){socket[_0x7316('0x74')](_0x7316('0x88'),{'UserId':Number(_0x308259[_0x7316('0x36')][_0x7316('0x86')][_0x2c0c50]),'WhatsappQueueId':Number(_0x308259[_0x7316('0x4c')]['id'])});}}else{socket[_0x7316('0x74')](_0x7316('0x88'),{'UserId':Number(_0x308259['query'][_0x7316('0x86')]),'WhatsappQueueId':Number(_0x308259[_0x7316('0x4c')]['id'])});}});}})['then'](respondWithStatusCode(_0x16f880,null))[_0x7316('0x4a')](handleError(_0x16f880,null));};exports[_0x7316('0x8f')]=function(_0x6e6134,_0x2849bf,_0x1e6565){var _0x185098={};var _0x683242={};var _0x22b3bd;var _0x378e8f;return db['WhatsappQueue']['findOne']({'where':{'id':_0x6e6134['params']['id']}})[_0x7316('0x2c')](handleEntityNotFound(_0x2849bf,null))[_0x7316('0x2c')](function(_0x459ba3){if(_0x459ba3){_0x22b3bd=_0x459ba3;_0x683242[_0x7316('0x3a')]=_[_0x7316('0x37')](db[_0x7316('0x5e')][_0x7316('0x4d')]);_0x683242[_0x7316('0x36')]=_[_0x7316('0x37')](_0x6e6134[_0x7316('0x36')]);_0x683242[_0x7316('0x38')]=_[_0x7316('0x39')](_0x683242[_0x7316('0x3a')],_0x683242[_0x7316('0x36')]);_0x185098[_0x7316('0x3c')]=_['intersection'](_0x683242[_0x7316('0x3a')],qs[_0x7316('0x3b')](_0x6e6134[_0x7316('0x36')][_0x7316('0x3b')]));_0x185098['attributes']=_0x185098[_0x7316('0x3c')]['length']?_0x185098[_0x7316('0x3c')]:_0x683242[_0x7316('0x3a')];_0x185098[_0x7316('0x40')]=qs['sort'](_0x6e6134[_0x7316('0x36')][_0x7316('0x41')]);_0x185098[_0x7316('0x42')]=qs[_0x7316('0x38')](_['pick'](_0x6e6134[_0x7316('0x36')],_0x683242[_0x7316('0x38')]));if(_0x6e6134[_0x7316('0x36')][_0x7316('0x43')]){_0x185098[_0x7316('0x42')]=_[_0x7316('0x44')](_0x185098[_0x7316('0x42')],{'$or':_['map'](_0x185098['attributes'],function(_0x5320cc){var _0x22d1e0={};_0x22d1e0[_0x5320cc]={'$like':'%'+_0x6e6134[_0x7316('0x36')]['filter']+'%'};return _0x22d1e0;})});}_0x185098=_[_0x7316('0x44')]({},_0x185098,_0x6e6134['options']);return _0x22b3bd['getAgents'](_0x185098);}})['then'](function(_0x27b36d){if(_0x27b36d){_0x378e8f=_0x27b36d['length'];if(!_0x6e6134[_0x7316('0x36')][_0x7316('0x3e')](_0x7316('0x3f'))){_0x185098['limit']=qs['limit'](_0x6e6134[_0x7316('0x36')]['limit']);_0x185098[_0x7316('0x23')]=qs[_0x7316('0x23')](_0x6e6134[_0x7316('0x36')]['offset']);}return _0x22b3bd[_0x7316('0x8f')](_0x185098);}})[_0x7316('0x2c')](function(_0x55582e){if(_0x55582e){return _0x55582e?{'count':_0x378e8f,'rows':_0x55582e}:null;}})[_0x7316('0x2c')](respondWithResult(_0x2849bf,null))[_0x7316('0x4a')](handleError(_0x2849bf,null));};