d2cadf1da0aa02e74bd12c0d5af30a1c9985316d
[motion2.git] / server / api / smsQueue / smsQueue.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 _0x1981=['then','get','UserProfileResource','destroy','error','stack','name','send','index','SmsQueue','rawAttributes','fieldName','type','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','merge','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','SmsQueues','UserProfileSection','find','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','getMembers','SmsQueueId','UserSmsQueue','findAndCountAll','UserId','agent','smsPause','updatedAt','createdAt','format','SIP','getTeams','findOne','Team','addTeams','online','voicePause','interface','flatMap','Agents','sequelize','transaction','findOrCreate','forEach','emit','userSmsQueue:save','removeTeams','select','field','from','team_has_sms_queues','join','ut.TeamId\x20=\x20tq.TeamId','SmsQueueId\x20=\x20?','push','toString','QueryTypes','SELECT','every','TeamId','all','union','compact','value','ids','isEmpty','removeAgents','userSmsQueue:remove','addAgents','spread','getAgents','User','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./smsQueue.socket','register','sendStatus','end','status','json','offset','limit','undefined','count','Content-Range','apply','reject','save','update'];(function(_0x117ee6,_0x10a545){var _0x5e2bc1=function(_0x8b59ee){while(--_0x8b59ee){_0x117ee6['push'](_0x117ee6['shift']());}};_0x5e2bc1(++_0x10a545);}(_0x1981,0xf3));var _0x1198=function(_0x16a751,_0x1b8432){_0x16a751=_0x16a751-0x0;var _0x211682=_0x1981[_0x16a751];return _0x211682;};'use strict';var emlformat=require(_0x1198('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x1198('0x1'));var jsonpatch=require(_0x1198('0x2'));var rp=require('request-promise');var moment=require(_0x1198('0x3'));var BPromise=require(_0x1198('0x4'));var Mustache=require(_0x1198('0x5'));var util=require(_0x1198('0x6'));var path=require('path');var sox=require(_0x1198('0x7'));var csv=require(_0x1198('0x8'));var ejs=require(_0x1198('0x9'));var fs=require('fs');var fs_extra=require(_0x1198('0xa'));var _=require(_0x1198('0xb'));var squel=require('squel');var crypto=require(_0x1198('0xc'));var jsforce=require(_0x1198('0xd'));var deskjs=require(_0x1198('0xe'));var toCsv=require('to-csv');var querystring=require(_0x1198('0xf'));var Papa=require(_0x1198('0x10'));var Redis=require('ioredis');var authService=require(_0x1198('0x11'));var qs=require(_0x1198('0x12'));var as=require(_0x1198('0x13'));var hardwareService=require(_0x1198('0x14'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x1198('0x15'));var licenseUtil=require(_0x1198('0x16'));var db=require(_0x1198('0x17'))['db'];config[_0x1198('0x18')]=_[_0x1198('0x19')](config[_0x1198('0x18')],{'host':_0x1198('0x1a'),'port':0x18eb});var socket=require(_0x1198('0x1b'))(new Redis(config[_0x1198('0x18')]));require(_0x1198('0x1c'))[_0x1198('0x1d')](socket);function respondWithStatusCode(_0x3a3e08,_0x3c3e54){_0x3c3e54=_0x3c3e54||0xcc;return function(_0x273633){if(_0x273633){return _0x3a3e08[_0x1198('0x1e')](_0x3c3e54);}return _0x3a3e08['status'](_0x3c3e54)[_0x1198('0x1f')]();};}function respondWithResult(_0x4fd7b9,_0x424826){_0x424826=_0x424826||0xc8;return function(_0x2c181f){if(_0x2c181f){return _0x4fd7b9[_0x1198('0x20')](_0x424826)[_0x1198('0x21')](_0x2c181f);}};}function respondWithFilteredResult(_0x2c8496,_0x3b1d30){return function(_0x3d9155){if(_0x3d9155){var _0x160556=typeof _0x3b1d30[_0x1198('0x22')]==='undefined'&&typeof _0x3b1d30[_0x1198('0x23')]===_0x1198('0x24');var _0x44a8c9=_0x3d9155[_0x1198('0x25')];var _0x3a3507=_0x160556?0x0:_0x3b1d30[_0x1198('0x22')];var _0x223ede=_0x160556?_0x3d9155['count']:_0x3b1d30[_0x1198('0x22')]+_0x3b1d30['limit'];var _0x2a056c;if(_0x223ede>=_0x44a8c9){_0x223ede=_0x44a8c9;_0x2a056c=0xc8;}else{_0x2a056c=0xce;}_0x2c8496[_0x1198('0x20')](_0x2a056c);return _0x2c8496['set'](_0x1198('0x26'),_0x3a3507+'-'+_0x223ede+'/'+_0x44a8c9)[_0x1198('0x21')](_0x3d9155);}return null;};}function patchUpdates(_0x29479e){return function(_0x1b0ff1){try{jsonpatch[_0x1198('0x27')](_0x1b0ff1,_0x29479e,!![]);}catch(_0x509380){return BPromise[_0x1198('0x28')](_0x509380);}return _0x1b0ff1[_0x1198('0x29')]();};}function saveUpdates(_0x18db96,_0x32bcd6){return function(_0x56b713){if(_0x56b713){return _0x56b713[_0x1198('0x2a')](_0x18db96)[_0x1198('0x2b')](function(_0x3558dc){return _0x3558dc;});}return null;};}function removeEntity(_0x228ec7,_0x18dcb0){return function(_0x2fa68d){if(_0x2fa68d){return _0x2fa68d['destroy']()[_0x1198('0x2b')](function(){var _0x2cff92=_0x2fa68d[_0x1198('0x2c')]({'plain':!![]});var _0x269129='SmsQueues';return db[_0x1198('0x2d')][_0x1198('0x2e')]({'where':{'type':_0x269129,'resourceId':_0x2cff92['id']}})[_0x1198('0x2b')](function(){return _0x2fa68d;});})[_0x1198('0x2b')](function(){_0x228ec7[_0x1198('0x20')](0xcc)[_0x1198('0x1f')]();});}};}function handleEntityNotFound(_0xd50e37,_0x271c88){return function(_0x2f4799){if(!_0x2f4799){_0xd50e37[_0x1198('0x1e')](0x194);}return _0x2f4799;};}function handleError(_0x27971a,_0xe73aec){_0xe73aec=_0xe73aec||0x1f4;return function(_0x523141){logger[_0x1198('0x2f')](_0x523141[_0x1198('0x30')]);if(_0x523141[_0x1198('0x31')]){delete _0x523141[_0x1198('0x31')];}_0x27971a[_0x1198('0x20')](_0xe73aec)[_0x1198('0x32')](_0x523141);};}exports[_0x1198('0x33')]=function(_0x2d1405,_0x486ced){var _0x2b182b={},_0x10cf0e={},_0x48ac88={'count':0x0,'rows':[]};var _0x1985a6=_['map'](db[_0x1198('0x34')][_0x1198('0x35')],function(_0x24a035){return{'name':_0x24a035[_0x1198('0x36')],'type':_0x24a035[_0x1198('0x37')]['key']};});_0x10cf0e[_0x1198('0x38')]=_[_0x1198('0x39')](_0x1985a6,_0x1198('0x31'));_0x10cf0e[_0x1198('0x3a')]=_[_0x1198('0x3b')](_0x2d1405[_0x1198('0x3a')]);_0x10cf0e[_0x1198('0x3c')]=_[_0x1198('0x3d')](_0x10cf0e[_0x1198('0x38')],_0x10cf0e[_0x1198('0x3a')]);_0x2b182b[_0x1198('0x3e')]=_[_0x1198('0x3d')](_0x10cf0e[_0x1198('0x38')],qs[_0x1198('0x3f')](_0x2d1405[_0x1198('0x3a')][_0x1198('0x3f')]));_0x2b182b[_0x1198('0x3e')]=_0x2b182b[_0x1198('0x3e')][_0x1198('0x40')]?_0x2b182b[_0x1198('0x3e')]:_0x10cf0e['model'];if(!_0x2d1405['query'][_0x1198('0x41')](_0x1198('0x42'))){_0x2b182b[_0x1198('0x23')]=qs[_0x1198('0x23')](_0x2d1405[_0x1198('0x3a')]['limit']);_0x2b182b[_0x1198('0x22')]=qs[_0x1198('0x22')](_0x2d1405[_0x1198('0x3a')][_0x1198('0x22')]);}_0x2b182b[_0x1198('0x43')]=qs[_0x1198('0x44')](_0x2d1405[_0x1198('0x3a')][_0x1198('0x44')]);_0x2b182b[_0x1198('0x45')]=qs['filters'](_[_0x1198('0x46')](_0x2d1405['query'],_0x10cf0e[_0x1198('0x3c')]),_0x1985a6);if(_0x2d1405['query'][_0x1198('0x47')]){_0x2b182b['where']=_['merge'](_0x2b182b[_0x1198('0x45')],{'$or':_[_0x1198('0x39')](_0x1985a6,function(_0x2fd017){if(_0x2fd017[_0x1198('0x37')]!==_0x1198('0x48')){var _0x3f121e={};_0x3f121e[_0x2fd017['name']]={'$like':'%'+_0x2d1405[_0x1198('0x3a')][_0x1198('0x47')]+'%'};return _0x3f121e;}})});}_0x2b182b=_['merge']({},_0x2b182b,_0x2d1405[_0x1198('0x49')]);var _0x4b6029={'where':_0x2b182b[_0x1198('0x45')]};return db['SmsQueue']['count'](_0x4b6029)[_0x1198('0x2b')](function(_0x3590db){_0x48ac88['count']=_0x3590db;if(_0x2d1405[_0x1198('0x3a')][_0x1198('0x4a')]){_0x2b182b['include']=[{'all':!![]}];}return db[_0x1198('0x34')][_0x1198('0x4b')](_0x2b182b);})[_0x1198('0x2b')](function(_0x3b43ed){_0x48ac88[_0x1198('0x4c')]=_0x3b43ed;return _0x48ac88;})[_0x1198('0x2b')](respondWithFilteredResult(_0x486ced,_0x2b182b))[_0x1198('0x4d')](handleError(_0x486ced,null));};exports[_0x1198('0x4e')]=function(_0x324736,_0x3a837b){var _0x262f66={'raw':!![],'where':{'id':_0x324736[_0x1198('0x4f')]['id']}},_0x7b8bc={};_0x7b8bc[_0x1198('0x38')]=_[_0x1198('0x3b')](db['SmsQueue'][_0x1198('0x35')]);_0x7b8bc[_0x1198('0x3a')]=_[_0x1198('0x3b')](_0x324736[_0x1198('0x3a')]);_0x7b8bc[_0x1198('0x3c')]=_[_0x1198('0x3d')](_0x7b8bc[_0x1198('0x38')],_0x7b8bc[_0x1198('0x3a')]);_0x262f66[_0x1198('0x3e')]=_[_0x1198('0x3d')](_0x7b8bc[_0x1198('0x38')],qs[_0x1198('0x3f')](_0x324736[_0x1198('0x3a')][_0x1198('0x3f')]));_0x262f66[_0x1198('0x3e')]=_0x262f66['attributes'][_0x1198('0x40')]?_0x262f66[_0x1198('0x3e')]:_0x7b8bc[_0x1198('0x38')];if(_0x324736[_0x1198('0x3a')][_0x1198('0x4a')]){_0x262f66['include']=[{'all':!![]}];}_0x262f66=_[_0x1198('0x50')]({},_0x262f66,_0x324736[_0x1198('0x49')]);return db[_0x1198('0x34')]['find'](_0x262f66)[_0x1198('0x2b')](handleEntityNotFound(_0x3a837b,null))[_0x1198('0x2b')](respondWithResult(_0x3a837b,null))[_0x1198('0x4d')](handleError(_0x3a837b,null));};exports[_0x1198('0x51')]=function(_0x527931,_0x400638){return db['SmsQueue'][_0x1198('0x51')](_0x527931['body'],{})[_0x1198('0x2b')](function(_0x542b76){var _0x2d7f49=_0x527931['user'][_0x1198('0x2c')]({'plain':!![]});if(!_0x2d7f49)throw new Error(_0x1198('0x52'));if(_0x2d7f49[_0x1198('0x53')]===_0x1198('0x54')){var _0x340f3d=_0x542b76['get']({'plain':!![]});var _0x2f88a5=_0x1198('0x55');return db[_0x1198('0x56')][_0x1198('0x57')]({'where':{'name':_0x2f88a5,'userProfileId':_0x2d7f49['userProfileId']},'raw':!![]})['then'](function(_0x789844){if(_0x789844&&_0x789844['autoAssociation']===0x0){return db[_0x1198('0x2d')][_0x1198('0x51')]({'name':_0x340f3d[_0x1198('0x31')],'resourceId':_0x340f3d['id'],'type':_0x789844[_0x1198('0x31')],'sectionId':_0x789844['id']},{})['then'](function(){return _0x542b76;});}else{return _0x542b76;}})[_0x1198('0x4d')](function(_0x4ba69e){logger[_0x1198('0x2f')](_0x1198('0x58'),_0x4ba69e);throw _0x4ba69e;});}return _0x542b76;})[_0x1198('0x2b')](respondWithResult(_0x400638,0xc9))[_0x1198('0x4d')](handleError(_0x400638,null));};exports[_0x1198('0x2a')]=function(_0x18fb54,_0x1b5094){if(_0x18fb54[_0x1198('0x59')]['id']){delete _0x18fb54[_0x1198('0x59')]['id'];}return db['SmsQueue'][_0x1198('0x57')]({'where':{'id':_0x18fb54['params']['id']}})['then'](handleEntityNotFound(_0x1b5094,null))[_0x1198('0x2b')](saveUpdates(_0x18fb54['body'],null))[_0x1198('0x2b')](respondWithResult(_0x1b5094,null))['catch'](handleError(_0x1b5094,null));};exports[_0x1198('0x2e')]=function(_0x543570,_0x28c3af){return db[_0x1198('0x34')]['find']({'where':{'id':_0x543570[_0x1198('0x4f')]['id']}})[_0x1198('0x2b')](handleEntityNotFound(_0x28c3af,null))[_0x1198('0x2b')](removeEntity(_0x28c3af,null))['catch'](handleError(_0x28c3af,null));};exports[_0x1198('0x5a')]=function(_0x549772,_0x38df7d){return db[_0x1198('0x34')]['describe']()[_0x1198('0x2b')](respondWithResult(_0x38df7d,null))[_0x1198('0x4d')](handleError(_0x38df7d,null));};exports[_0x1198('0x5b')]=function(_0x2e2048,_0x5bf910,_0x549575){var _0x53f50a={'raw':!![],'where':{}},_0x303c2f={},_0x46aec9;return db['SmsQueue']['findOne']({'where':{'id':_0x2e2048[_0x1198('0x4f')]['id']}})['then'](handleEntityNotFound(_0x5bf910,null))['then'](function(_0x2d43ff){if(_0x2d43ff){_0x46aec9=_0x2d43ff[_0x1198('0x2c')]({'plain':!![]});_0x303c2f['model']=_['keys'](db['UserSmsQueue'][_0x1198('0x35')]);_0x303c2f[_0x1198('0x3a')]=_['keys'](_0x2e2048[_0x1198('0x3a')]);_0x303c2f[_0x1198('0x3c')]=_[_0x1198('0x3d')](_0x303c2f['model'],_0x303c2f[_0x1198('0x3a')]);_0x53f50a[_0x1198('0x3e')]=_[_0x1198('0x3d')](_0x303c2f[_0x1198('0x38')],qs['fields'](_0x2e2048[_0x1198('0x3a')]['fields']));_0x53f50a[_0x1198('0x3e')]=_0x53f50a['attributes']['length']?_0x53f50a['attributes']:_0x303c2f[_0x1198('0x38')];if(!_0x2e2048['query']['hasOwnProperty'](_0x1198('0x42'))){_0x53f50a[_0x1198('0x23')]=qs['limit'](_0x2e2048[_0x1198('0x3a')]['limit']);_0x53f50a[_0x1198('0x22')]=qs['offset'](_0x2e2048['query'][_0x1198('0x22')]);}_0x53f50a[_0x1198('0x43')]=qs[_0x1198('0x44')](_0x2e2048[_0x1198('0x3a')][_0x1198('0x44')]);_0x53f50a[_0x1198('0x45')]=qs[_0x1198('0x3c')](_['pick'](_0x2e2048[_0x1198('0x3a')],_0x303c2f[_0x1198('0x3c')]));_0x53f50a[_0x1198('0x45')][_0x1198('0x5c')]=_0x2d43ff['id'];if(_0x2e2048[_0x1198('0x3a')][_0x1198('0x47')]){_0x53f50a['where']=_['merge'](_0x53f50a[_0x1198('0x45')],{'$or':_[_0x1198('0x39')](_0x53f50a['attributes'],function(_0x31f338){var _0x1872d6={};_0x1872d6[_0x31f338]={'$like':'%'+_0x2e2048[_0x1198('0x3a')][_0x1198('0x47')]+'%'};return _0x1872d6;})});}_0x53f50a=_[_0x1198('0x50')]({},_0x53f50a,_0x2e2048['options']);return db[_0x1198('0x5d')][_0x1198('0x4b')](_0x53f50a);}})[_0x1198('0x2b')](function(_0x53f0f4){if(_0x53f0f4){return db['User'][_0x1198('0x5e')]({'where':{'id':_[_0x1198('0x39')](_0x53f0f4,_0x1198('0x5f')),'role':_0x1198('0x60')},'attributes':['id',_0x1198('0x31'),_0x1198('0x61'),_0x1198('0x62'),_0x1198('0x63')]});}})[_0x1198('0x2b')](function(_0x5111c8){if(_0x5111c8){return{'count':_0x5111c8[_0x1198('0x25')],'rows':_[_0x1198('0x39')](_0x5111c8['rows'],function(_0x5670e0){return{'membername':_0x5670e0['name'],'UserId':_0x5670e0['id'],'queue_name':_0x46aec9[_0x1198('0x31')],'SmsQueueId':_0x46aec9['id'],'interface':util[_0x1198('0x64')]('%s/%s',_0x1198('0x65'),_0x5670e0[_0x1198('0x31')]),'penalty':0x0,'paused':_0x5670e0[_0x1198('0x61')],'createdAt':_0x5670e0[_0x1198('0x63')],'updatedAt':_0x5670e0[_0x1198('0x62')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x1198('0x2b')](respondWithFilteredResult(_0x5bf910,_0x53f50a))[_0x1198('0x4d')](handleError(_0x5bf910,null));};exports[_0x1198('0x66')]=function(_0x222f8c,_0x347461,_0x2ccf57){var _0x5f4cae={};var _0x2da2a9={};var _0x477f48;var _0x5abb2a;return db[_0x1198('0x34')][_0x1198('0x67')]({'where':{'id':_0x222f8c['params']['id']}})[_0x1198('0x2b')](handleEntityNotFound(_0x347461,null))[_0x1198('0x2b')](function(_0xee42f4){if(_0xee42f4){_0x477f48=_0xee42f4;_0x2da2a9[_0x1198('0x38')]=_[_0x1198('0x3b')](db[_0x1198('0x68')][_0x1198('0x35')]);_0x2da2a9[_0x1198('0x3a')]=_[_0x1198('0x3b')](_0x222f8c[_0x1198('0x3a')]);_0x2da2a9[_0x1198('0x3c')]=_['intersection'](_0x2da2a9[_0x1198('0x38')],_0x2da2a9['query']);_0x5f4cae[_0x1198('0x3e')]=_['intersection'](_0x2da2a9['model'],qs['fields'](_0x222f8c['query'][_0x1198('0x3f')]));_0x5f4cae[_0x1198('0x3e')]=_0x5f4cae[_0x1198('0x3e')][_0x1198('0x40')]?_0x5f4cae[_0x1198('0x3e')]:_0x2da2a9['model'];_0x5f4cae['order']=qs[_0x1198('0x44')](_0x222f8c[_0x1198('0x3a')][_0x1198('0x44')]);_0x5f4cae[_0x1198('0x45')]=qs[_0x1198('0x3c')](_[_0x1198('0x46')](_0x222f8c['query'],_0x2da2a9['filters']));if(_0x222f8c[_0x1198('0x3a')]['filter']){_0x5f4cae[_0x1198('0x45')]=_[_0x1198('0x50')](_0x5f4cae[_0x1198('0x45')],{'$or':_[_0x1198('0x39')](_0x5f4cae[_0x1198('0x3e')],function(_0x31b134){var _0x18145b={};_0x18145b[_0x31b134]={'$like':'%'+_0x222f8c[_0x1198('0x3a')][_0x1198('0x47')]+'%'};return _0x18145b;})});}_0x5f4cae=_[_0x1198('0x50')]({},_0x5f4cae,_0x222f8c[_0x1198('0x49')]);return _0x477f48[_0x1198('0x66')](_0x5f4cae);}})[_0x1198('0x2b')](function(_0x399ad0){if(_0x399ad0){_0x5abb2a=_0x399ad0[_0x1198('0x40')];if(!_0x222f8c[_0x1198('0x3a')][_0x1198('0x41')]('nolimit')){_0x5f4cae['limit']=qs[_0x1198('0x23')](_0x222f8c[_0x1198('0x3a')]['limit']);_0x5f4cae[_0x1198('0x22')]=qs[_0x1198('0x22')](_0x222f8c[_0x1198('0x3a')][_0x1198('0x22')]);}return _0x477f48[_0x1198('0x66')](_0x5f4cae);}})[_0x1198('0x2b')](function(_0x3778ee){if(_0x3778ee){return _0x3778ee?{'count':_0x5abb2a,'rows':_0x3778ee}:null;}})[_0x1198('0x2b')](respondWithResult(_0x347461,null))[_0x1198('0x4d')](handleError(_0x347461,null));};exports[_0x1198('0x69')]=function(_0x324419,_0x307394,_0x307157){var _0x3e7377=_0x324419[_0x1198('0x59')]['ids'];return db['Team'][_0x1198('0x4b')]({'where':{'id':_0x3e7377},'attributes':['id'],'include':[{'model':db['User'],'as':'Agents','attributes':['id',_0x1198('0x31'),_0x1198('0x6a'),_0x1198('0x6b'),_0x1198('0x6c')],'raw':!![]}]})['then'](function(_0x12c3b3){if(_0x12c3b3){var _0x26f0aa=_[_0x1198('0x6d')](_0x12c3b3,function(_0xe6bee6){var _0x5588aa=_0xe6bee6[_0x1198('0x2c')]({'plain':!![]});return _0x5588aa[_0x1198('0x6e')];});return db[_0x1198('0x34')][_0x1198('0x57')]({'where':{'id':_0x324419[_0x1198('0x4f')]['id']}})[_0x1198('0x2b')](function(_0x415ab8){return db[_0x1198('0x6f')][_0x1198('0x70')](function(_0xa32b45){return _0x415ab8['addTeams'](_0x3e7377,{'transaction':_0xa32b45})[_0x1198('0x2b')](function(){return BPromise['each'](_0x26f0aa,function(_0x11f32f){return db[_0x1198('0x5d')][_0x1198('0x71')]({'where':{'UserId':_0x11f32f['id'],'SmsQueueId':_0x324419[_0x1198('0x4f')]['id']},'transaction':_0xa32b45});});})[_0x1198('0x2b')](function(){_0x26f0aa[_0x1198('0x72')](function(_0x3113b7){socket[_0x1198('0x73')](_0x1198('0x74'),{'UserId':_0x3113b7['id'],'SmsQueueId':_0x415ab8['id']});});});});});}})[_0x1198('0x2b')](respondWithStatusCode(_0x307394,null))['catch'](handleError(_0x307394,null));};exports[_0x1198('0x75')]=function(_0x4fc7b0,_0x104cdf,_0xac8316){return db[_0x1198('0x68')][_0x1198('0x4b')]({'where':{'id':_0x4fc7b0['query']['ids']},'attributes':['id'],'include':[{'model':db['User'],'as':_0x1198('0x6e'),'attributes':['id'],'raw':!![]}]})[_0x1198('0x2b')](handleEntityNotFound(_0x104cdf,null))[_0x1198('0x2b')](function(_0x2a51e8){var _0x4cd516=_[_0x1198('0x39')](_0x2a51e8,'id');var _0x54f169=[];var _0x48b74b=[];var _0x741fe3=squel[_0x1198('0x76')]();_0x741fe3[_0x1198('0x77')]('tq.TeamId')[_0x1198('0x78')](_0x1198('0x79'),'tq')[_0x1198('0x7a')]('user_has_teams','ut',_0x1198('0x7b'))[_0x1198('0x45')](_0x1198('0x7c'),_0x4fc7b0[_0x1198('0x4f')]['id']);for(var _0x5aaf15=0x0;_0x5aaf15<_0x2a51e8['length'];_0x5aaf15+=0x1){let _0x382df7=_0x2a51e8[_0x5aaf15];for(var _0x194d7a=0x0;_0x194d7a<_0x382df7[_0x1198('0x6e')][_0x1198('0x40')];_0x194d7a+=0x1){let _0x17f018=_0x382df7[_0x1198('0x6e')][_0x194d7a];var _0x18bf04=_0x741fe3['clone']();_0x18bf04[_0x1198('0x45')]('ut.UserId\x20=\x20?',_0x17f018['id']);_0x48b74b[_0x1198('0x7d')](db[_0x1198('0x6f')]['query'](_0x18bf04[_0x1198('0x7e')](),{'type':db[_0x1198('0x6f')][_0x1198('0x7f')][_0x1198('0x80')]})['then'](function(_0x3cbe95){if(_0x3cbe95[_0x1198('0x40')]===0x1){return _0x17f018['id'];}else{var _0x512e33=_[_0x1198('0x81')](_['map'](_0x3cbe95,_0x1198('0x82')),function(_0x188fa3){return _['includes'](_0x4cd516,_0x188fa3);});if(_0x512e33){return _0x17f018['id'];}}}));}}return BPromise[_0x1198('0x83')](_0x48b74b)[_0x1198('0x2b')](function(_0x3e1e42){_0x54f169=_(_0x54f169)[_0x1198('0x84')](_0x3e1e42)[_0x1198('0x85')]()[_0x1198('0x86')]();return db[_0x1198('0x34')]['find']({'where':{'id':_0x4fc7b0['params']['id']}})[_0x1198('0x2b')](function(_0xf688ac){return db[_0x1198('0x6f')]['transaction'](function(_0x2bff1f){return _0xf688ac[_0x1198('0x75')](_0x4fc7b0[_0x1198('0x3a')][_0x1198('0x87')],{'transaction':_0x2bff1f})[_0x1198('0x2b')](function(){if(!_[_0x1198('0x88')](_0x54f169)){return _0xf688ac[_0x1198('0x89')](_0x54f169,{'transaction':_0x2bff1f});}})[_0x1198('0x2b')](function(){_0x54f169['forEach'](function(_0x2fe88a){socket[_0x1198('0x73')](_0x1198('0x8a'),{'UserId':_0x2fe88a,'SmsQueueId':_0xf688ac['id']});});});});});});})[_0x1198('0x2b')](respondWithStatusCode(_0x104cdf,null))[_0x1198('0x4d')](handleError(_0x104cdf,null));};exports[_0x1198('0x8b')]=function(_0x5290fa,_0x3bb744,_0x2432be){return db[_0x1198('0x34')][_0x1198('0x57')]({'where':{'id':_0x5290fa[_0x1198('0x4f')]['id']}})['then'](handleEntityNotFound(_0x3bb744,null))['then'](function(_0x69e5b3){if(_0x69e5b3){return _0x69e5b3[_0x1198('0x8b')](_0x5290fa[_0x1198('0x59')][_0x1198('0x87')],_['omit'](_0x5290fa['body'],['ids','id'])||{})[_0x1198('0x8c')](function(_0x50e46f){for(var _0x550a31=0x0;_0x550a31<_0x5290fa['body'][_0x1198('0x87')][_0x1198('0x40')];_0x550a31+=0x1){socket[_0x1198('0x73')]('userSmsQueue:save',{'UserId':Number(_0x5290fa[_0x1198('0x59')][_0x1198('0x87')][_0x550a31]),'SmsQueueId':Number(_0x5290fa[_0x1198('0x4f')]['id'])});}return _0x50e46f;});}})[_0x1198('0x2b')](respondWithResult(_0x3bb744,null))[_0x1198('0x4d')](handleError(_0x3bb744,null));};exports[_0x1198('0x89')]=function(_0x9ad13e,_0x4bed72,_0x3e74dd){return db['SmsQueue']['find']({'where':{'id':_0x9ad13e[_0x1198('0x4f')]['id']}})[_0x1198('0x2b')](handleEntityNotFound(_0x4bed72,null))['then'](function(_0x303474){if(_0x303474){return _0x303474[_0x1198('0x89')](_0x9ad13e['query'][_0x1198('0x87')])['then'](function(){if(_['isArray'](_0x9ad13e[_0x1198('0x3a')][_0x1198('0x87')])){for(var _0x4b9b25=0x0;_0x4b9b25<_0x9ad13e[_0x1198('0x3a')]['ids'][_0x1198('0x40')];_0x4b9b25+=0x1){socket[_0x1198('0x73')](_0x1198('0x8a'),{'UserId':Number(_0x9ad13e[_0x1198('0x3a')][_0x1198('0x87')][_0x4b9b25]),'SmsQueueId':Number(_0x9ad13e[_0x1198('0x4f')]['id'])});}}else{socket[_0x1198('0x73')](_0x1198('0x8a'),{'UserId':Number(_0x9ad13e['query'][_0x1198('0x87')]),'SmsQueueId':Number(_0x9ad13e[_0x1198('0x4f')]['id'])});}});}})[_0x1198('0x2b')](respondWithStatusCode(_0x4bed72,null))['catch'](handleError(_0x4bed72,null));};exports[_0x1198('0x8d')]=function(_0x2ec548,_0x54a5fa,_0x380f92){var _0x4bad3c={};var _0xed52a3={};var _0x3e5396;var _0x388f73;return db['SmsQueue'][_0x1198('0x67')]({'where':{'id':_0x2ec548['params']['id']}})[_0x1198('0x2b')](handleEntityNotFound(_0x54a5fa,null))['then'](function(_0x418776){if(_0x418776){_0x3e5396=_0x418776;_0xed52a3[_0x1198('0x38')]=_[_0x1198('0x3b')](db[_0x1198('0x8e')]['rawAttributes']);_0xed52a3[_0x1198('0x3a')]=_[_0x1198('0x3b')](_0x2ec548[_0x1198('0x3a')]);_0xed52a3[_0x1198('0x3c')]=_['intersection'](_0xed52a3[_0x1198('0x38')],_0xed52a3[_0x1198('0x3a')]);_0x4bad3c[_0x1198('0x3e')]=_[_0x1198('0x3d')](_0xed52a3[_0x1198('0x38')],qs[_0x1198('0x3f')](_0x2ec548[_0x1198('0x3a')][_0x1198('0x3f')]));_0x4bad3c[_0x1198('0x3e')]=_0x4bad3c[_0x1198('0x3e')][_0x1198('0x40')]?_0x4bad3c['attributes']:_0xed52a3['model'];_0x4bad3c['order']=qs['sort'](_0x2ec548[_0x1198('0x3a')][_0x1198('0x44')]);_0x4bad3c['where']=qs[_0x1198('0x3c')](_[_0x1198('0x46')](_0x2ec548['query'],_0xed52a3[_0x1198('0x3c')]));if(_0x2ec548['query'][_0x1198('0x47')]){_0x4bad3c[_0x1198('0x45')]=_[_0x1198('0x50')](_0x4bad3c[_0x1198('0x45')],{'$or':_['map'](_0x4bad3c['attributes'],function(_0x5a1a7b){var _0xe987bf={};_0xe987bf[_0x5a1a7b]={'$like':'%'+_0x2ec548[_0x1198('0x3a')][_0x1198('0x47')]+'%'};return _0xe987bf;})});}_0x4bad3c=_['merge']({},_0x4bad3c,_0x2ec548[_0x1198('0x49')]);return _0x3e5396[_0x1198('0x8d')](_0x4bad3c);}})['then'](function(_0x297327){if(_0x297327){_0x388f73=_0x297327[_0x1198('0x40')];if(!_0x2ec548['query'][_0x1198('0x41')](_0x1198('0x42'))){_0x4bad3c[_0x1198('0x23')]=qs[_0x1198('0x23')](_0x2ec548['query'][_0x1198('0x23')]);_0x4bad3c[_0x1198('0x22')]=qs[_0x1198('0x22')](_0x2ec548['query'][_0x1198('0x22')]);}return _0x3e5396[_0x1198('0x8d')](_0x4bad3c);}})[_0x1198('0x2b')](function(_0x58cd86){if(_0x58cd86){return _0x58cd86?{'count':_0x388f73,'rows':_0x58cd86}:null;}})['then'](respondWithResult(_0x54a5fa,null))[_0x1198('0x4d')](handleError(_0x54a5fa,null));};