3d6faa15ab127dfb545786b7294e8c1a1fa7fcea
[motion2.git] / server / api / faxInteraction / faxInteraction.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 _0x66d3=['a.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','FaxInteractionId','all','include','options','catch','create','update','params','destroy','describe','addMessage','ids','omit','findOne','YYYY-MM-DD\x20HH:mm:ss','FaxMessage','includeAll','findAll','addTags','setTags','spread','emit','removeTags','download','unix','join','root','server','files','tmp','Attachment','Messages','get','mkdirSync','basename','createReadStream','pipe','log','err','unlinkSync','html-pdf','rimraf','fast-json-patch','request-promise','bluebird','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','defaults','redis','localhost','socket.io-emitter','./faxInteraction.socket','sendStatus','status','json','count','offset','limit','set','reject','save','then','end','error','stack','name','send','map','fullname','TagIds','Tags','split','push','index','FaxInteraction','rawAttributes','fieldName','type','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','select','field','color','tools_tags','u.id','u.fullname','ui.FaxInteractionId','user_has_fax_interactions','left_join','users','u.id\x20=\x20ui.UserId','from','fax_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.FaxAccountId','fax_messages','me.FaxInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','sqlOperator','conditions','find','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','operator','$substring','getFullTextValue','ContactId','buildExpression','text','start','Tag','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','some','compact','FaxAccountId','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','\x27\x27\x27\x27','isNumeric','i.fax\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','Sequelize','SELECT','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','isEmpty','t.id\x20IN\x20?','resolve','journey','i.FaxAccountId\x20IS\x20NOT\x20NULL','i.FaxAccountId\x20IS\x20NULL','i.FaxAccountId\x20IN\x20?','sequelize','toString','keyBy','merge','a.key','Account.key'];(function(_0x348ae9,_0x4d4ec2){var _0x1290ba=function(_0x3dbf75){while(--_0x3dbf75){_0x348ae9['push'](_0x348ae9['shift']());}};_0x1290ba(++_0x4d4ec2);}(_0x66d3,0x10f));var _0x366d=function(_0x668446,_0x559cb9){_0x668446=_0x668446-0x0;var _0x3a6cc8=_0x66d3[_0x668446];return _0x3a6cc8;};'use strict';var pdf=require(_0x366d('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x366d('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x366d('0x2'));var rp=require(_0x366d('0x3'));var moment=require('moment');var BPromise=require(_0x366d('0x4'));var Mustache=require('mustache');var util=require(_0x366d('0x5'));var path=require('path');var sox=require(_0x366d('0x6'));var csv=require(_0x366d('0x7'));var ejs=require(_0x366d('0x8'));var fs=require('fs');var _=require(_0x366d('0x9'));var squel=require(_0x366d('0xa'));var crypto=require(_0x366d('0xb'));var jsforce=require(_0x366d('0xc'));var deskjs=require(_0x366d('0xd'));var toCsv=require(_0x366d('0x7'));var querystring=require(_0x366d('0xe'));var Papa=require(_0x366d('0xf'));var Redis=require('ioredis');var authService=require(_0x366d('0x10'));var qs=require(_0x366d('0x11'));var as=require(_0x366d('0x12'));var hardwareService=require(_0x366d('0x13'));var logger=require(_0x366d('0x14'))(_0x366d('0x15'));var utils=require(_0x366d('0x16'));var config=require(_0x366d('0x17'));var db=require('../../mysqldb')['db'];config['redis']=_[_0x366d('0x18')](config[_0x366d('0x19')],{'host':_0x366d('0x1a'),'port':0x18eb});var socket=require(_0x366d('0x1b'))(new Redis(config[_0x366d('0x19')]));require(_0x366d('0x1c'))['register'](socket);function respondWithStatusCode(_0x265292,_0x2a3fdb){_0x2a3fdb=_0x2a3fdb||0xcc;return function(_0x4e1d8e){if(_0x4e1d8e){return _0x265292[_0x366d('0x1d')](_0x2a3fdb);}return _0x265292[_0x366d('0x1e')](_0x2a3fdb)['end']();};}function respondWithResult(_0x3da66f,_0x309dc6){_0x309dc6=_0x309dc6||0xc8;return function(_0x413008){if(_0x413008){return _0x3da66f['status'](_0x309dc6)[_0x366d('0x1f')](_0x413008);}};}function respondWithFilteredResult(_0x562dae,_0xbc2286){return function(_0x6b9092){if(_0x6b9092){var _0x5a1c0a=_0x6b9092[_0x366d('0x20')],_0x401eca=_0xbc2286[_0x366d('0x21')],_0x235ff2=_0xbc2286['offset']+_0xbc2286[_0x366d('0x22')],_0x12fecc;if(_0x235ff2>=_0x5a1c0a){_0x235ff2=_0x5a1c0a;_0x12fecc=0xc8;}else{_0x12fecc=0xce;}_0x562dae['status'](_0x12fecc);return _0x562dae[_0x366d('0x23')]('Content-Range',_0x401eca+'-'+_0x235ff2+'/'+_0x5a1c0a)['json'](_0x6b9092);}return null;};}function patchUpdates(_0x219106){return function(_0x3eb8d9){try{jsonpatch['apply'](_0x3eb8d9,_0x219106,!![]);}catch(_0x189dc0){return BPromise[_0x366d('0x24')](_0x189dc0);}return _0x3eb8d9[_0x366d('0x25')]();};}function saveUpdates(_0x58d16f,_0x3b5c89){return function(_0x3c540d){if(_0x3c540d){return _0x3c540d['update'](_0x58d16f)[_0x366d('0x26')](function(_0x47ebf4){return _0x47ebf4;});}return null;};}function removeEntity(_0x1c9ee9,_0x1326c9){return function(_0x46bf52){if(_0x46bf52){return _0x46bf52['destroy']()[_0x366d('0x26')](function(){_0x1c9ee9[_0x366d('0x1e')](0xcc)[_0x366d('0x27')]();});}};}function handleEntityNotFound(_0x5254e6,_0x53002e){return function(_0x5aec17){if(!_0x5aec17){_0x5254e6[_0x366d('0x1d')](0x194);}return _0x5aec17;};}function handleError(_0x40f3df,_0x5d2b67){_0x5d2b67=_0x5d2b67||0x1f4;return function(_0x5592a1){logger[_0x366d('0x28')](_0x5592a1[_0x366d('0x29')]);if(_0x5592a1[_0x366d('0x2a')]){delete _0x5592a1[_0x366d('0x2a')];}_0x40f3df['status'](_0x5d2b67)[_0x366d('0x2b')](_0x5592a1);};}function getInteractionUsers(_0x5dc954,_0x47cc0c){return new BPromise(function(_0x13a6b2,_0x594d42){try{if(_0x47cc0c[_0x5dc954['id']]){_0x5dc954['Users']=_[_0x366d('0x2c')](_0x47cc0c[_0x5dc954['id']],function(_0x13aaca){return{'id':_0x13aaca['id'],'fullname':_0x13aaca[_0x366d('0x2d')]};});}}catch(_0x53ea53){_0x594d42(_0x53ea53);}_0x13a6b2(_0x5dc954);});}function getInteractionTags(_0x2c2517,_0x2cb209){return new BPromise(function(_0x460e4c,_0x2474a2){try{if(_0x2c2517[_0x366d('0x2e')]){_0x2c2517[_0x366d('0x2f')]=[];_0x2c2517['TagIds'][_0x366d('0x30')](',')['forEach'](function(_0x318f63){_0x2c2517['Tags'][_0x366d('0x31')](_0x2cb209[_0x318f63]);});}delete _0x2c2517[_0x366d('0x2e')];}catch(_0x3ad136){_0x2474a2(_0x3ad136);}_0x460e4c(_0x2c2517);});}function updateFaxInteraction(_0x3aa20c,_0x50ca12,_0x11919b){return new BPromise(function(_0x1f2e6e,_0x177d0b){return getInteractionUsers(_0x3aa20c,_0x11919b)[_0x366d('0x26')](function(_0x2e0b38){return getInteractionTags(_0x2e0b38,_0x50ca12);})[_0x366d('0x26')](function(_0x497e84){_0x1f2e6e(_0x497e84);})['catch'](function(_0xb1797){_0x177d0b(_0xb1797);});});}exports[_0x366d('0x32')]=function(_0x276358,_0x1175d3){var _0x517e09={},_0x2d95eb={},_0x3517bc={'count':0x0,'rows':[]};var _0x17cdb8=_[_0x366d('0x2c')](db[_0x366d('0x33')][_0x366d('0x34')],function(_0x3d6c73){return{'name':_0x3d6c73[_0x366d('0x35')],'type':_0x3d6c73[_0x366d('0x36')]['key']};});_0x2d95eb[_0x366d('0x37')]=_[_0x366d('0x2c')](_0x17cdb8,_0x366d('0x2a'));_0x2d95eb['query']=_[_0x366d('0x38')](_0x276358[_0x366d('0x39')]);_0x2d95eb[_0x366d('0x3a')]=_[_0x366d('0x3b')](_0x2d95eb[_0x366d('0x37')],_0x2d95eb[_0x366d('0x39')]);_0x517e09['attributes']=_[_0x366d('0x3b')](_0x2d95eb[_0x366d('0x37')],qs[_0x366d('0x3c')](_0x276358[_0x366d('0x39')]['fields']));_0x517e09[_0x366d('0x3d')]=_0x517e09[_0x366d('0x3d')][_0x366d('0x3e')]?_0x517e09[_0x366d('0x3d')]:_0x2d95eb[_0x366d('0x37')];if(!_0x276358['query'][_0x366d('0x3f')](_0x366d('0x40'))){_0x517e09[_0x366d('0x22')]=qs[_0x366d('0x22')](_0x276358[_0x366d('0x39')][_0x366d('0x22')]);_0x517e09[_0x366d('0x21')]=qs['offset'](_0x276358[_0x366d('0x39')][_0x366d('0x21')]);}_0x517e09[_0x366d('0x41')]=qs[_0x366d('0x42')](_0x276358[_0x366d('0x39')][_0x366d('0x42')]);_0x517e09[_0x366d('0x43')]=qs[_0x366d('0x3a')](_[_0x366d('0x44')](_0x276358[_0x366d('0x39')],_0x2d95eb[_0x366d('0x3a')]),_0x17cdb8);var _0x185abc=[];var _0x53c654=squel[_0x366d('0x45')]()[_0x366d('0x46')]('id')['field'](_0x366d('0x2a'))['field'](_0x366d('0x47'))['from'](_0x366d('0x48'));var _0x4de90e=squel[_0x366d('0x45')]()[_0x366d('0x46')](_0x366d('0x49'))[_0x366d('0x46')](_0x366d('0x4a'))[_0x366d('0x46')](_0x366d('0x4b'))['from'](_0x366d('0x4c'),'ui')[_0x366d('0x4d')](_0x366d('0x4e'),'u',_0x366d('0x4f'));var _0x8a987a=squel[_0x366d('0x45')]()[_0x366d('0x50')](_0x366d('0x51'),'i')[_0x366d('0x4d')](_0x366d('0x52'),'c',_0x366d('0x53'))['left_join'](_0x366d('0x4e'),'o',_0x366d('0x54'))[_0x366d('0x4d')]('fax_accounts','a',_0x366d('0x55'))['left_join'](_0x366d('0x56'),'me',_0x366d('0x57'))[_0x366d('0x4d')]('fax_interaction_has_tags','it','it.FaxInteractionId\x20=\x20i.id')[_0x366d('0x4d')](_0x366d('0x48'),'t',_0x366d('0x58'));var _0x68ba99=squel[_0x366d('0x59')]();var _0x1273fd=[];var _0x135475=squel['expr']();var _0x18f82a;if(_0x276358[_0x366d('0x39')][_0x366d('0x5a')]){_0x18f82a=as['parseSearch'](_0x276358['query'][_0x366d('0x5a')]);var _0x886ea6=_0x18f82a[_0x366d('0x5b')];for(var _0x3948c8=0x0;_0x3948c8<_0x18f82a[_0x366d('0x5c')][_0x366d('0x3e')];_0x3948c8++){var _0x42cf55=_0x18f82a['conditions'][_0x3948c8];var _0x267e1b='i';var _0x41f8c8=_[_0x366d('0x5d')](_0x17cdb8,[_0x366d('0x2a'),_0x42cf55[_0x366d('0x46')]]);if(!_0x41f8c8){switch(_0x42cf55[_0x366d('0x46')]){case _0x366d('0x5e'):if(_0x42cf55[_0x366d('0x5f')]==0x1){_0x8a987a[_0x366d('0x60')]('`'+_0x42cf55[_0x366d('0x46')]+_0x366d('0x61'));}else{_0x8a987a['having']('`'+_0x42cf55[_0x366d('0x46')]+_0x366d('0x62'));}break;case'Contact':if(_0x42cf55[_0x366d('0x63')]===_0x366d('0x64')){if(_0x42cf55['value'][_0x366d('0x30')]('\x20')[_0x366d('0x3e')]>0x1){_0x68ba99[_0x886ea6]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x366d('0x65')](_0x42cf55[_0x366d('0x5f')]),null);}else{var _0x1099e3='%'+_0x42cf55[_0x366d('0x5f')]+'%';_0x68ba99[_0x886ea6]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x1099e3,_0x1099e3,_0x1099e3);}}else{_0x41f8c8=_[_0x366d('0x5d')](_0x17cdb8,['name',_0x366d('0x66')]);_0x42cf55[_0x366d('0x46')]='ContactId';_0x398f15=as[_0x366d('0x67')](_0x267e1b,_0x41f8c8['type'],_0x42cf55);_0x68ba99[_0x886ea6](_0x398f15[_0x366d('0x68')],_0x398f15[_0x366d('0x5f')][_0x366d('0x69')],_0x398f15['value'][_0x366d('0x27')]);}break;case _0x366d('0x6a'):var _0x3dad19=_0x42cf55[_0x366d('0x5f')]['split'](',')[_0x366d('0x2c')](function(_0x42622b){return Number(_0x42622b);});_0x3dad19[_0x366d('0x6b')](function(_0x11b3ef){_0x135475['or'](_0x366d('0x6c'),'%,'+_0x11b3ef+',%');});_0x1273fd=_[_0x366d('0x6d')](_0x1273fd,_0x3dad19);break;case _0x366d('0x6e'):if(_0x42cf55[_0x366d('0x63')]===_0x366d('0x64')){_0x68ba99[_0x886ea6](_0x366d('0x6f'),'%'+_0x42cf55['value']+'%',null);}else{_0x41f8c8=_[_0x366d('0x5d')](_0x17cdb8,[_0x366d('0x2a'),_0x366d('0x70')]);_0x42cf55[_0x366d('0x46')]=_0x366d('0x70');_0x398f15=as[_0x366d('0x67')](_0x267e1b,_0x41f8c8[_0x366d('0x36')],_0x42cf55);_0x68ba99[_0x886ea6](_0x398f15['text'],_0x398f15[_0x366d('0x5f')][_0x366d('0x69')],_0x398f15[_0x366d('0x5f')][_0x366d('0x27')]);}break;case _0x366d('0x71'):_0x398f15=as[_0x366d('0x67')]('me',null,_0x42cf55);_0x68ba99[_0x886ea6](_0x398f15[_0x366d('0x68')],_0x398f15[_0x366d('0x5f')][_0x366d('0x69')],_0x398f15['value'][_0x366d('0x27')]);break;}}else{var _0x398f15=as['buildExpression'](_0x267e1b,_0x41f8c8[_0x366d('0x36')],_0x42cf55);_0x68ba99[_0x886ea6](_0x398f15[_0x366d('0x68')],_0x398f15[_0x366d('0x5f')][_0x366d('0x69')],_0x398f15[_0x366d('0x5f')][_0x366d('0x27')]);}}}else{var _0x102d16=_(_0x276358[_0x366d('0x39')])[_0x366d('0x38')]()[_0x366d('0x2c')](function(_0x54430c){return _[_0x366d('0x72')](_0x17cdb8,['name',_0x54430c])?_0x54430c:undefined;})[_0x366d('0x73')]()[_0x366d('0x5f')]();if(!_['isEmpty'](_0x102d16)){_0x102d16[_0x366d('0x6b')](function(_0x2aa12a){if(_0x2aa12a===_0x366d('0x74')){_0x8a987a[_0x366d('0x43')]('i.FaxAccountId\x20IN\x20?',[][_0x366d('0x75')](_0x276358[_0x366d('0x39')][_0x2aa12a]));}else if(_0x2aa12a===_0x366d('0x76')){var _0x46f78f=JSON[_0x366d('0x77')](_0x276358['query'][_0x2aa12a])[_0x366d('0x78')];var _0x1b81ba=JSON[_0x366d('0x77')](_0x276358[_0x366d('0x39')][_0x2aa12a])[_0x366d('0x79')];_0x8a987a[_0x366d('0x43')](_0x366d('0x7a'),_0x46f78f,_0x1b81ba);}else{if(_0x276358[_0x366d('0x39')][_0x2aa12a]===_0x366d('0x7b')){_0x8a987a[_0x366d('0x43')]('i.'+_0x2aa12a+_0x366d('0x7c'));}else{_0x8a987a['where']('i.'+_0x2aa12a+_0x366d('0x7d'),_0x276358[_0x366d('0x39')][_0x2aa12a]);}}});}if(_0x276358[_0x366d('0x39')]['read']){if(_0x276358['query'][_0x366d('0x7e')]==0x1){_0x8a987a[_0x366d('0x60')](_0x366d('0x7f'));}else{_0x8a987a[_0x366d('0x60')](_0x366d('0x80'));}}if(_0x276358[_0x366d('0x39')][_0x366d('0x81')]){_0x1273fd=_[_0x366d('0x82')](_0x276358[_0x366d('0x39')]['tag'])?_0x276358[_0x366d('0x39')][_0x366d('0x81')]:new Array(_0x276358[_0x366d('0x39')][_0x366d('0x81')]);_0x1273fd['forEach'](function(_0x5e3a8a){_0x135475['or'](_0x366d('0x6c'),'%,'+_0x5e3a8a+',%');});}if(_0x276358[_0x366d('0x39')][_0x366d('0x83')]){var _0x358006=_0x276358['query'][_0x366d('0x83')][_0x366d('0x84')]('\x5c','\x5c\x5c')[_0x366d('0x84')]('\x27\x27',_0x366d('0x85'));if(qs[_0x366d('0x86')](_0x358006)){_0x68ba99['or']('i.id\x20LIKE\x20?',_0x358006+'%')['or'](_0x366d('0x87'),_0x358006+'%');}_0x68ba99['or'](_0x366d('0x88'),_0x358006+'%');}}_0x8a987a[_0x366d('0x43')](_0x68ba99);_0x8a987a['group'](_0x366d('0x89'));var _0x2d7e2a={'type':db[_0x366d('0x8a')]['QueryTypes'][_0x366d('0x8b')],'raw':!![]};var _0x466584=_0x8a987a['clone']();_0x466584[_0x366d('0x46')](_0x366d('0x89'));_0x466584[_0x366d('0x46')](_0x366d('0x8c'),_0x366d('0x5e'));if(_0x517e09[_0x366d('0x41')]){_0x517e09[_0x366d('0x41')][_0x366d('0x6b')](function(_0x2ed6cb){_0x8a987a['order']('i.'+_0x2ed6cb[0x0],_0x2ed6cb[0x1]===_0x366d('0x8d')?![]:!![]);});}if(!_[_0x366d('0x8e')](_0x1273fd)){_0x8a987a[_0x366d('0x60')](_0x135475);_0x466584['where'](_0x366d('0x8f'),_0x1273fd);}BPromise[_0x366d('0x90')]()[_0x366d('0x26')](function(){if(!_0x18f82a){if(_0x276358[_0x366d('0x39')][_0x366d('0x74')]||_0x276358[_0x366d('0x39')][_0x366d('0x91')])return;_0x466584[_0x366d('0x43')](_0x366d('0x92'));_0x8a987a[_0x366d('0x43')]('i.FaxAccountId\x20IS\x20NOT\x20NULL');return;}return _0x276358['user']['getFaxAccounts']({'attributes':['id'],'raw':!![]})[_0x366d('0x26')](function(_0x3b01fb){if(_[_0x366d('0x8e')](_0x3b01fb)){_0x466584[_0x366d('0x43')](_0x366d('0x93'));_0x8a987a[_0x366d('0x43')](_0x366d('0x93'));}else{_0x466584[_0x366d('0x43')](_0x366d('0x94'),_[_0x366d('0x2c')](_0x3b01fb,'id'));_0x8a987a[_0x366d('0x43')](_0x366d('0x94'),_[_0x366d('0x2c')](_0x3b01fb,'id'));}});})[_0x366d('0x26')](function(){db[_0x366d('0x95')][_0x366d('0x39')](_0x466584[_0x366d('0x96')](),_0x2d7e2a)[_0x366d('0x26')](function(_0x171647){_0x3517bc[_0x366d('0x20')]=_0x171647[_0x366d('0x3e')];if(_0x3517bc['count']===0x0)return[];return db[_0x366d('0x95')][_0x366d('0x39')](_0x53c654['toString'](),_0x2d7e2a)[_0x366d('0x26')](function(_0x1c00ca){_0x185abc=_[_0x366d('0x97')](_0x1c00ca,'id');_0x2d7e2a=_[_0x366d('0x98')](_0x2d7e2a,{'model':db['FaxInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x276358[_0x366d('0x39')][_0x366d('0x3c')]){_0x517e09['attributes'][_0x366d('0x6b')](function(_0x460c2b){_0x8a987a[_0x366d('0x46')]('i.'+_0x460c2b);});}else{_0x8a987a[_0x366d('0x46')](_0x366d('0x8c'),_0x366d('0x5e'));_0x8a987a[_0x366d('0x46')](_0x366d('0x99'),_0x366d('0x9a'));_0x8a987a[_0x366d('0x46')](_0x366d('0x9b'),'Account.mandatoryDisposition');_0x8a987a['field'](_0x366d('0x9c'));_0x8a987a['field'](_0x366d('0x9d'),_0x366d('0x9e'));_0x8a987a['field'](_0x366d('0x9f'),_0x366d('0xa0'));_0x8a987a[_0x366d('0x46')]('c.email',_0x366d('0xa1'));_0x8a987a[_0x366d('0x46')](_0x366d('0xa2'),_0x366d('0xa3'));_0x8a987a[_0x366d('0x46')](_0x366d('0xa4'),_0x366d('0xa5'));_0x8a987a[_0x366d('0x46')](_0x366d('0xa6'),_0x366d('0xa7'));_0x8a987a[_0x366d('0x46')]('o.fullname',_0x366d('0xa8'));_0x8a987a[_0x366d('0x46')](_0x366d('0xa9'),_0x366d('0xaa'));_0x8a987a[_0x366d('0x46')](_0x366d('0xab'),_0x366d('0x2e'));}if(_0x517e09[_0x366d('0x22')])_0x8a987a['limit'](_0x517e09[_0x366d('0x22')]);if(_0x517e09[_0x366d('0x21')])_0x8a987a[_0x366d('0x21')](_0x517e09[_0x366d('0x21')]);return db[_0x366d('0x95')]['query'](_0x8a987a['toString'](),_0x2d7e2a);})[_0x366d('0x26')](function(_0x104ac4){_0x4de90e[_0x366d('0x43')]('ui.FaxInteractionId\x20IN\x20?',_[_0x366d('0x2c')](_0x104ac4,'id'));return db[_0x366d('0x95')]['query'](_0x4de90e['toString'](),_0x2d7e2a)['then'](function(_0x3577b2){var _0x3d2cec=_[_0x366d('0xac')](_0x3577b2,_0x366d('0xad'));var _0x6970c2=[];_0x104ac4[_0x366d('0x6b')](function(_0x1cec0c){_0x6970c2['push'](updateFaxInteraction(_0x1cec0c,_0x185abc,_0x3d2cec));});return BPromise[_0x366d('0xae')](_0x6970c2);});});})[_0x366d('0x26')](function(_0xdc9f32){_0x3517bc['rows']=_0xdc9f32;return _0x3517bc;})[_0x366d('0x26')](respondWithFilteredResult(_0x1175d3,_0x517e09));})['catch'](handleError(_0x1175d3,null));};exports['show']=function(_0x389543,_0x3d7962){var _0xa355d1={'raw':![],'where':{'id':_0x389543['params']['id']}},_0x59b8a4={};_0x59b8a4[_0x366d('0x37')]=_['keys'](db[_0x366d('0x33')][_0x366d('0x34')]);_0x59b8a4['query']=_[_0x366d('0x38')](_0x389543[_0x366d('0x39')]);_0x59b8a4[_0x366d('0x3a')]=_[_0x366d('0x3b')](_0x59b8a4[_0x366d('0x37')],_0x59b8a4[_0x366d('0x39')]);_0xa355d1[_0x366d('0x3d')]=_[_0x366d('0x3b')](_0x59b8a4['model'],qs[_0x366d('0x3c')](_0x389543[_0x366d('0x39')][_0x366d('0x3c')]));_0xa355d1[_0x366d('0x3d')]=_0xa355d1['attributes'][_0x366d('0x3e')]?_0xa355d1[_0x366d('0x3d')]:_0x59b8a4[_0x366d('0x37')];if(_0x389543[_0x366d('0x39')]['includeAll']){_0xa355d1[_0x366d('0xaf')]=[{'all':!![]}];}_0xa355d1=_[_0x366d('0x98')]({},_0xa355d1,_0x389543[_0x366d('0xb0')]);return db[_0x366d('0x33')][_0x366d('0x5d')](_0xa355d1)['then'](handleEntityNotFound(_0x3d7962,null))[_0x366d('0x26')](respondWithResult(_0x3d7962,null))[_0x366d('0xb1')](handleError(_0x3d7962,null));};exports[_0x366d('0xb2')]=function(_0x43612c,_0x1a6389){return db[_0x366d('0x33')][_0x366d('0xb2')](_0x43612c[_0x366d('0x71')],{})[_0x366d('0x26')](respondWithResult(_0x1a6389,0xc9))[_0x366d('0xb1')](handleError(_0x1a6389,null));};exports[_0x366d('0xb3')]=function(_0x2086ba,_0x4549e4){if(_0x2086ba[_0x366d('0x71')]['id']){delete _0x2086ba[_0x366d('0x71')]['id'];}return db[_0x366d('0x33')][_0x366d('0x5d')]({'where':{'id':_0x2086ba[_0x366d('0xb4')]['id']}})[_0x366d('0x26')](handleEntityNotFound(_0x4549e4,null))[_0x366d('0x26')](saveUpdates(_0x2086ba[_0x366d('0x71')],null))['then'](respondWithResult(_0x4549e4,null))['catch'](handleError(_0x4549e4,null));};exports[_0x366d('0xb5')]=function(_0x505066,_0xb86ee9){return db[_0x366d('0x33')][_0x366d('0x5d')]({'where':{'id':_0x505066[_0x366d('0xb4')]['id']}})['then'](handleEntityNotFound(_0xb86ee9,null))[_0x366d('0x26')](removeEntity(_0xb86ee9,null))[_0x366d('0xb1')](handleError(_0xb86ee9,null));};exports[_0x366d('0xb6')]=function(_0x37359c,_0x341cc8){return db['FaxInteraction'][_0x366d('0xb6')]()[_0x366d('0x26')](respondWithResult(_0x341cc8,null))[_0x366d('0xb1')](handleError(_0x341cc8,null));};exports[_0x366d('0xb7')]=function(_0x1c27f9,_0x258742,_0x3aec2a){return db['FaxMessage'][_0x366d('0x5d')]({'where':{'id':_0x1c27f9[_0x366d('0xb4')]['id']}})[_0x366d('0x26')](handleEntityNotFound(_0x258742,null))[_0x366d('0x26')](function(_0xe0010d){if(_0xe0010d){return _0xe0010d[_0x366d('0xb7')](_0x1c27f9[_0x366d('0x71')][_0x366d('0xb8')],_[_0x366d('0xb9')](_0x1c27f9[_0x366d('0x71')],[_0x366d('0xb8'),'id'])||{});}})[_0x366d('0x26')](respondWithResult(_0x258742,null))[_0x366d('0xb1')](handleError(_0x258742,null));};exports['getMessages']=function(_0x3f3ff8,_0x546b60,_0x552fd8){var _0x420880={'raw':![],'where':{}};var _0x545f57={};var _0x585327={'count':0x0,'rows':[]};return db[_0x366d('0x33')][_0x366d('0xba')]({'where':{'id':_0x3f3ff8[_0x366d('0xb4')]['id']}})[_0x366d('0x26')](handleEntityNotFound(_0x546b60,null))[_0x366d('0x26')](function(_0x4cd2f1){if(_0x4cd2f1){_0x545f57[_0x366d('0x37')]=_['keys'](db['FaxMessage'][_0x366d('0x34')]);_0x545f57[_0x366d('0x39')]=_[_0x366d('0x38')](_0x3f3ff8[_0x366d('0x39')]);_0x545f57['filters']=_[_0x366d('0x3b')](_0x545f57[_0x366d('0x37')],_0x545f57[_0x366d('0x39')]);_0x420880[_0x366d('0x3d')]=_[_0x366d('0x3b')](_0x545f57[_0x366d('0x37')],qs[_0x366d('0x3c')](_0x3f3ff8[_0x366d('0x39')][_0x366d('0x3c')]));_0x420880[_0x366d('0x3d')]=_0x420880['attributes'][_0x366d('0x3e')]?_0x420880[_0x366d('0x3d')]:_0x545f57['model'];if(!_0x3f3ff8['query'][_0x366d('0x3f')](_0x366d('0x40'))){_0x420880[_0x366d('0x22')]=qs[_0x366d('0x22')](_0x3f3ff8[_0x366d('0x39')][_0x366d('0x22')]);_0x420880[_0x366d('0x21')]=qs[_0x366d('0x21')](_0x3f3ff8[_0x366d('0x39')][_0x366d('0x21')]);}_0x420880['order']=qs[_0x366d('0x42')](_0x3f3ff8[_0x366d('0x39')][_0x366d('0x42')]);_0x420880[_0x366d('0x43')]=qs[_0x366d('0x3a')](_[_0x366d('0x44')](_0x3f3ff8[_0x366d('0x39')],_0x545f57[_0x366d('0x3a')]));_0x420880[_0x366d('0x43')][_0x366d('0xad')]=_0x4cd2f1['id'];if(_0x3f3ff8[_0x366d('0x39')][_0x366d('0x83')]){_0x420880[_0x366d('0x43')]=_[_0x366d('0x98')](_0x420880[_0x366d('0x43')],{'$or':_[_0x366d('0x2c')](_0x420880[_0x366d('0x3d')],function(_0x46c40d){var _0x5ca8c8={};_0x5ca8c8[_0x46c40d]={'$like':'%'+_0x3f3ff8[_0x366d('0x39')][_0x366d('0x83')]+'%'};return _0x5ca8c8;})});}if(_0x3f3ff8['query']['$gte']){var _0x44a172=_0x3f3ff8[_0x366d('0x39')][_0x366d('0x78')][_0x366d('0x30')](',');var _0x145a33={};_0x145a33[_0x44a172[0x0]]={'$gte':moment(_0x44a172[0x1])['format'](_0x366d('0xbb'))};_0x420880[_0x366d('0x43')]=_['merge'](_0x420880[_0x366d('0x43')],_0x145a33);}_0x420880=_[_0x366d('0x98')]({},_0x420880,_0x3f3ff8[_0x366d('0xb0')]);return db[_0x366d('0xbc')][_0x366d('0x20')]({'where':_0x420880[_0x366d('0x43')]})[_0x366d('0x26')](function(_0x3daedb){_0x585327[_0x366d('0x20')]=_0x3daedb;if(_0x3f3ff8[_0x366d('0x39')][_0x366d('0xbd')]){_0x420880[_0x366d('0xaf')]=[{'all':!![]}];}return db[_0x366d('0xbc')][_0x366d('0xbe')](_0x420880);})['then'](function(_0x537915){_0x585327['rows']=_0x537915;return _0x585327;});}})[_0x366d('0x26')](respondWithFilteredResult(_0x546b60,_0x420880))['catch'](handleError(_0x546b60,null));};exports[_0x366d('0xbf')]=function(_0x28cfd8,_0x2086c8,_0x30a27b){return db[_0x366d('0x33')][_0x366d('0x5d')]({'where':{'id':_0x28cfd8[_0x366d('0xb4')]['id']}})[_0x366d('0x26')](handleEntityNotFound(_0x2086c8,null))[_0x366d('0x26')](function(_0x286fde){if(_0x286fde){return _0x286fde[_0x366d('0xc0')](_0x28cfd8[_0x366d('0x71')][_0x366d('0xb8')],_[_0x366d('0xb9')](_0x28cfd8[_0x366d('0x71')],['ids','id'])||{})[_0x366d('0xc1')](function(){return db[_0x366d('0x6a')][_0x366d('0xbe')]({'attributes':['id',_0x366d('0x2a'),_0x366d('0x47')],'where':{'id':_0x28cfd8[_0x366d('0x71')][_0x366d('0xb8')]}});})[_0x366d('0x26')](function(_0xc166ce){socket[_0x366d('0xc2')]('faxInteractionTags:save',{'id':Number(_0x28cfd8[_0x366d('0xb4')]['id']),'tags':_0xc166ce||[]});return{'id':Number(_0x28cfd8[_0x366d('0xb4')]['id']),'tags':_0xc166ce||[]};});}})[_0x366d('0x26')](respondWithResult(_0x2086c8,null))['catch'](handleError(_0x2086c8,null));};exports[_0x366d('0xc3')]=function(_0x336be8,_0x132a56,_0x1fe831){return db[_0x366d('0x33')][_0x366d('0x5d')]({'where':{'id':_0x336be8[_0x366d('0xb4')]['id']}})[_0x366d('0x26')](handleEntityNotFound(_0x132a56,null))[_0x366d('0x26')](function(_0x55b963){if(_0x55b963){return _0x55b963[_0x366d('0xc3')](_0x336be8['query']['ids']);}})[_0x366d('0x26')](respondWithStatusCode(_0x132a56,null))[_0x366d('0xb1')](handleError(_0x132a56,null));};exports[_0x366d('0xc4')]=function(_0x108130,_0x18275a){var _0x3025c6=moment()[_0x366d('0xc5')]()[_0x366d('0x96')]();var _0x1165d6=path[_0x366d('0xc6')](config[_0x366d('0xc7')],_0x366d('0xc8'),_0x366d('0xc9'),_0x366d('0xca'));var _0x5016d3=path[_0x366d('0xc6')](config['root'],_0x366d('0xc8'),'files','attachments');var _0x9398de=path[_0x366d('0xc6')](_0x1165d6,_0x3025c6);var _0x10053a=util['format']('transcript-%d-%s.zip',_0x108130['params']['id'],_0x3025c6);var _0x2a3f9e=path[_0x366d('0xc6')](_0x1165d6,_0x10053a);var _0xcee73d=[];_0xcee73d[_0x366d('0x31')]({'model':db[_0x366d('0xcb')],'as':_0x366d('0xcb'),'raw':!![]});var _0x5a9c68=[{'model':db[_0x366d('0xbc')],'as':_0x366d('0xcc'),'attributes':['id',_0x366d('0x71'),_0x366d('0x76')],'include':_0xcee73d}];return db[_0x366d('0x33')][_0x366d('0x5d')]({'where':{'id':_0x108130['params']['id']},'include':_0x5a9c68})[_0x366d('0x26')](handleEntityNotFound(_0x18275a,null))[_0x366d('0x26')](function(_0x2501b3){if(_0x2501b3&&_0x2501b3['Messages']){var _0x22d125=_0x2501b3[_0x366d('0xcd')]({'plain':!![]});fs[_0x366d('0xce')](_0x9398de);for(var _0x5b166c=0x0;_0x5b166c<_0x22d125[_0x366d('0xcc')]['length'];_0x5b166c++){var _0x104fd0=_0x22d125['Messages'][_0x5b166c]['Attachment'];if(_0x104fd0){var _0x599074=path[_0x366d('0xc6')](_0x5016d3,_0x104fd0[_0x366d('0xcf')]);if(fs['existsSync'](_0x599074)){fs[_0x366d('0xd0')](_0x599074)[_0x366d('0xd1')](fs['createWriteStream'](path['join'](_0x9398de,_0x104fd0[_0x366d('0xcf')])));}}}return BPromise[_0x366d('0x90')]()[_0x366d('0x26')](function(){return new BPromise(function(_0x5e0d3a,_0x37ebda){zipdir(_0x9398de,{'saveTo':_0x2a3f9e},function(_0x664fa,_0x4bce59){if(_0x664fa)return _0x37ebda(_0x664fa);return _0x5e0d3a(_0x4bce59);});})[_0x366d('0x26')](function(){return new BPromise(function(_0x373131,_0x1f734a){rimraf(_0x9398de,function(_0x31a4e3){if(_0x31a4e3)_0x1f734a(_0x31a4e3);return _0x373131();});});})[_0x366d('0x26')](function(){return _0x18275a[_0x366d('0xc4')](_0x2a3f9e,_0x10053a,function(_0x39926e){if(_0x39926e){console[_0x366d('0xd2')](_0x366d('0xd3'),_0x39926e);}else{fs[_0x366d('0xd4')](_0x2a3f9e);}});});});}else{return _0x18275a[_0x366d('0x1d')](0xc8);}})[_0x366d('0xb1')](handleError(_0x18275a,null));};