Built motion from commit (unavailable).|2.5.18
[motion2.git] / server / api / faxMessage / faxMessage.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 _0xe605=['download','join','root','server','files','attachments','Attachment','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','register','jayson/promise','client','http','request','info','request\x20sent','debug','FaxMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','FaxMessage,\x20%s,\x20%s','message','result','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','index','rawAttributes','fieldName','type','key','map','query','keys','filters','intersection','attributes','fields','model','nolimit','sort','where','pick','filter','merge','VIRTUAL','FaxMessage','includeAll','include','findAll','rows','catch','show','params','options','find','body','describe','fax-interactions','accept','fax','read','readAt','format','UserId','agent','CmContact','Contact','get','FaxInteraction','FaxInteractionId','read1stAt','[FAXMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','interaction','null','acceptMessage','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','[FAXMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','rejectmessage','create','findOne','ContactId','isNil','AttachmentId','SendFax','FaxAccountId','basename'];(function(_0x200258,_0x5bdf12){var _0x1edc1d=function(_0x3544bd){while(--_0x3544bd){_0x200258['push'](_0x200258['shift']());}};_0x1edc1d(++_0x5bdf12);}(_0xe605,0x92));var _0x5e60=function(_0x249080,_0x24bc43){_0x249080=_0x249080-0x0;var _0x96ea20=_0xe605[_0x249080];return _0x96ea20;};'use strict';var pdf=require(_0x5e60('0x0'));var emlformat=require(_0x5e60('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x5e60('0x2'));var jsonpatch=require(_0x5e60('0x3'));var rp=require(_0x5e60('0x4'));var moment=require(_0x5e60('0x5'));var BPromise=require(_0x5e60('0x6'));var Mustache=require(_0x5e60('0x7'));var util=require(_0x5e60('0x8'));var path=require(_0x5e60('0x9'));var sox=require(_0x5e60('0xa'));var csv=require(_0x5e60('0xb'));var ejs=require(_0x5e60('0xc'));var fs=require('fs');var _=require(_0x5e60('0xd'));var squel=require('squel');var crypto=require(_0x5e60('0xe'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x5e60('0xf'));var Papa=require(_0x5e60('0x10'));var Redis=require(_0x5e60('0x11'));var authService=require(_0x5e60('0x12'));var qs=require(_0x5e60('0x13'));var as=require(_0x5e60('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5e60('0x15'))('api');var utils=require(_0x5e60('0x16'));var config=require(_0x5e60('0x17'));var licenseUtil=require(_0x5e60('0x18'));var db=require('../../mysqldb')['db'];config[_0x5e60('0x19')]=_[_0x5e60('0x1a')](config[_0x5e60('0x19')],{'host':_0x5e60('0x1b'),'port':0x18eb});var socket=require(_0x5e60('0x1c'))(new Redis(config[_0x5e60('0x19')]));require('./faxMessage.socket')[_0x5e60('0x1d')](socket);var jayson=require(_0x5e60('0x1e'));var client=jayson[_0x5e60('0x1f')][_0x5e60('0x20')]({'port':0x232c});var client9002=jayson['client'][_0x5e60('0x20')]({'port':0x232a});function respondWithRpcPromise(_0x529ffe,_0x1ffd77,_0x3bc7d8,_0x4cf084){return new BPromise(function(_0x39be57,_0x3e1a44){var _0xaa7d05=_0x4cf084||client;return _0xaa7d05[_0x5e60('0x21')](_0x529ffe,_0x3bc7d8)['then'](function(_0xdd0a71){logger[_0x5e60('0x22')]('FaxMessage,\x20%s,\x20%s',_0x1ffd77,_0x5e60('0x23'));logger[_0x5e60('0x24')](_0x5e60('0x25'),_0x1ffd77,_0x5e60('0x23'),JSON[_0x5e60('0x26')](_0xdd0a71));if(_0xdd0a71[_0x5e60('0x27')]){if(_0xdd0a71[_0x5e60('0x27')][_0x5e60('0x28')]===0x1f4){logger[_0x5e60('0x27')](_0x5e60('0x29'),_0x1ffd77,_0xdd0a71[_0x5e60('0x27')]['message']);return _0x3e1a44(_0xdd0a71[_0x5e60('0x27')]['message']);}logger[_0x5e60('0x27')](_0x5e60('0x29'),_0x1ffd77,_0xdd0a71[_0x5e60('0x27')][_0x5e60('0x2a')]);return _0x39be57(_0xdd0a71[_0x5e60('0x27')][_0x5e60('0x2a')]);}else{logger[_0x5e60('0x22')]('FaxMessage,\x20%s,\x20%s',_0x1ffd77,_0x5e60('0x23'));_0x39be57(_0xdd0a71[_0x5e60('0x2b')][_0x5e60('0x2a')]);}})['catch'](function(_0x45cb62){logger[_0x5e60('0x27')](_0x5e60('0x29'),_0x1ffd77,_0x45cb62);_0x3e1a44(_0x45cb62);});});}function respondWithStatusCode(_0x153459,_0x4a0dbc){_0x4a0dbc=_0x4a0dbc||0xcc;return function(_0x3bedea){if(_0x3bedea){return _0x153459['sendStatus'](_0x4a0dbc);}return _0x153459[_0x5e60('0x2c')](_0x4a0dbc)[_0x5e60('0x2d')]();};}function respondWithResult(_0x4ba727,_0x46691f){_0x46691f=_0x46691f||0xc8;return function(_0x19e5ab){if(_0x19e5ab){return _0x4ba727['status'](_0x46691f)[_0x5e60('0x2e')](_0x19e5ab);}};}function respondWithFilteredResult(_0xac9c7a,_0x52c97c){return function(_0x5431a8){if(_0x5431a8){var _0x52f668=_0x5431a8[_0x5e60('0x2f')],_0xf25956=_0x52c97c[_0x5e60('0x30')],_0x235cc7=_0x52c97c['offset']+_0x52c97c[_0x5e60('0x31')],_0x2e8e9e;if(_0x235cc7>=_0x52f668){_0x235cc7=_0x52f668;_0x2e8e9e=0xc8;}else{_0x2e8e9e=0xce;}_0xac9c7a[_0x5e60('0x2c')](_0x2e8e9e);return _0xac9c7a['set'](_0x5e60('0x32'),_0xf25956+'-'+_0x235cc7+'/'+_0x52f668)['json'](_0x5431a8);}return null;};}function patchUpdates(_0x50f024){return function(_0x1035b0){try{jsonpatch[_0x5e60('0x33')](_0x1035b0,_0x50f024,!![]);}catch(_0x1f474b){return BPromise[_0x5e60('0x34')](_0x1f474b);}return _0x1035b0[_0x5e60('0x35')]();};}function saveUpdates(_0xbf5b7a,_0x655cb0){return function(_0x2ff2b7){if(_0x2ff2b7){return _0x2ff2b7[_0x5e60('0x36')](_0xbf5b7a)[_0x5e60('0x37')](function(_0x5c429c){return _0x5c429c;});}return null;};}function removeEntity(_0x211efc,_0x4dc6bf){return function(_0x52802c){if(_0x52802c){return _0x52802c[_0x5e60('0x38')]()[_0x5e60('0x37')](function(){_0x211efc['status'](0xcc)[_0x5e60('0x2d')]();});}};}function handleEntityNotFound(_0x576c70,_0x3757fc){return function(_0x45d979){if(!_0x45d979){_0x576c70[_0x5e60('0x39')](0x194);}return _0x45d979;};}function handleError(_0x4176a8,_0xbbda4b){_0xbbda4b=_0xbbda4b||0x1f4;return function(_0x23498b){logger[_0x5e60('0x27')](_0x23498b[_0x5e60('0x3a')]);if(_0x23498b['name']){delete _0x23498b[_0x5e60('0x3b')];}_0x4176a8[_0x5e60('0x2c')](_0xbbda4b)[_0x5e60('0x3c')](_0x23498b);};}exports[_0x5e60('0x3d')]=function(_0x200744,_0x2aa7d4){var _0x261245={},_0x54bbff={},_0x3ca05b={'count':0x0,'rows':[]};var _0x18f187=_['map'](db['FaxMessage'][_0x5e60('0x3e')],function(_0xd67757){return{'name':_0xd67757[_0x5e60('0x3f')],'type':_0xd67757[_0x5e60('0x40')][_0x5e60('0x41')]};});_0x54bbff['model']=_[_0x5e60('0x42')](_0x18f187,_0x5e60('0x3b'));_0x54bbff[_0x5e60('0x43')]=_[_0x5e60('0x44')](_0x200744[_0x5e60('0x43')]);_0x54bbff[_0x5e60('0x45')]=_[_0x5e60('0x46')](_0x54bbff['model'],_0x54bbff[_0x5e60('0x43')]);_0x261245[_0x5e60('0x47')]=_['intersection'](_0x54bbff['model'],qs['fields'](_0x200744[_0x5e60('0x43')][_0x5e60('0x48')]));_0x261245[_0x5e60('0x47')]=_0x261245[_0x5e60('0x47')]['length']?_0x261245[_0x5e60('0x47')]:_0x54bbff[_0x5e60('0x49')];if(!_0x200744['query']['hasOwnProperty'](_0x5e60('0x4a'))){_0x261245[_0x5e60('0x31')]=qs[_0x5e60('0x31')](_0x200744[_0x5e60('0x43')][_0x5e60('0x31')]);_0x261245[_0x5e60('0x30')]=qs[_0x5e60('0x30')](_0x200744[_0x5e60('0x43')][_0x5e60('0x30')]);}_0x261245['order']=qs[_0x5e60('0x4b')](_0x200744[_0x5e60('0x43')]['sort']);_0x261245[_0x5e60('0x4c')]=qs[_0x5e60('0x45')](_[_0x5e60('0x4d')](_0x200744[_0x5e60('0x43')],_0x54bbff[_0x5e60('0x45')]),_0x18f187);if(_0x200744['query'][_0x5e60('0x4e')]){_0x261245[_0x5e60('0x4c')]=_[_0x5e60('0x4f')](_0x261245[_0x5e60('0x4c')],{'$or':_['map'](_0x18f187,function(_0x4d9787){if(_0x4d9787['type']!==_0x5e60('0x50')){var _0x2fe3cd={};_0x2fe3cd[_0x4d9787[_0x5e60('0x3b')]]={'$like':'%'+_0x200744[_0x5e60('0x43')][_0x5e60('0x4e')]+'%'};return _0x2fe3cd;}})});}_0x261245=_[_0x5e60('0x4f')]({},_0x261245,_0x200744['options']);var _0x41ce38={'where':_0x261245[_0x5e60('0x4c')]};return db[_0x5e60('0x51')][_0x5e60('0x2f')](_0x41ce38)[_0x5e60('0x37')](function(_0x3dbdc4){_0x3ca05b[_0x5e60('0x2f')]=_0x3dbdc4;if(_0x200744['query'][_0x5e60('0x52')]){_0x261245[_0x5e60('0x53')]=[{'all':!![]}];}return db[_0x5e60('0x51')][_0x5e60('0x54')](_0x261245);})[_0x5e60('0x37')](function(_0x2d4ced){_0x3ca05b[_0x5e60('0x55')]=_0x2d4ced;return _0x3ca05b;})[_0x5e60('0x37')](respondWithFilteredResult(_0x2aa7d4,_0x261245))[_0x5e60('0x56')](handleError(_0x2aa7d4,null));};exports[_0x5e60('0x57')]=function(_0xe5e675,_0x24e3aa){var _0x3e84be={'raw':!![],'where':{'id':_0xe5e675[_0x5e60('0x58')]['id']}},_0x969287={};_0x969287[_0x5e60('0x49')]=_[_0x5e60('0x44')](db[_0x5e60('0x51')]['rawAttributes']);_0x969287['query']=_[_0x5e60('0x44')](_0xe5e675['query']);_0x969287[_0x5e60('0x45')]=_[_0x5e60('0x46')](_0x969287[_0x5e60('0x49')],_0x969287[_0x5e60('0x43')]);_0x3e84be[_0x5e60('0x47')]=_[_0x5e60('0x46')](_0x969287['model'],qs['fields'](_0xe5e675[_0x5e60('0x43')][_0x5e60('0x48')]));_0x3e84be[_0x5e60('0x47')]=_0x3e84be['attributes']['length']?_0x3e84be[_0x5e60('0x47')]:_0x969287[_0x5e60('0x49')];if(_0xe5e675[_0x5e60('0x43')]['includeAll']){_0x3e84be[_0x5e60('0x53')]=[{'all':!![]}];}_0x3e84be=_[_0x5e60('0x4f')]({},_0x3e84be,_0xe5e675[_0x5e60('0x59')]);return db[_0x5e60('0x51')][_0x5e60('0x5a')](_0x3e84be)[_0x5e60('0x37')](handleEntityNotFound(_0x24e3aa,null))['then'](respondWithResult(_0x24e3aa,null))[_0x5e60('0x56')](handleError(_0x24e3aa,null));};exports[_0x5e60('0x36')]=function(_0x4acbe8,_0x2e805d){if(_0x4acbe8[_0x5e60('0x5b')]['id']){delete _0x4acbe8[_0x5e60('0x5b')]['id'];}return db['FaxMessage'][_0x5e60('0x5a')]({'where':{'id':_0x4acbe8[_0x5e60('0x58')]['id']}})['then'](handleEntityNotFound(_0x2e805d,null))[_0x5e60('0x37')](saveUpdates(_0x4acbe8[_0x5e60('0x5b')],null))[_0x5e60('0x37')](respondWithResult(_0x2e805d,null))[_0x5e60('0x56')](handleError(_0x2e805d,null));};exports['destroy']=function(_0xeed911,_0x1abc43){return db['FaxMessage'][_0x5e60('0x5a')]({'where':{'id':_0xeed911['params']['id']}})[_0x5e60('0x37')](handleEntityNotFound(_0x1abc43,null))['then'](removeEntity(_0x1abc43,null))[_0x5e60('0x56')](handleError(_0x1abc43,null));};exports[_0x5e60('0x5c')]=function(_0x5cb589,_0x28eb8c){return db['FaxMessage'][_0x5e60('0x5c')]()['then'](respondWithResult(_0x28eb8c,null))[_0x5e60('0x56')](handleError(_0x28eb8c,null));};var interaction_log=require('../../config/logger')(_0x5e60('0x5d'));exports[_0x5e60('0x5e')]=function(_0xb1ef22,_0x28c2de,_0x252fa3){var _0x2b8343={'agent':{},'channel':_0x5e60('0x5f')};if(_0xb1ef22['body']['id']){delete _0xb1ef22[_0x5e60('0x5b')]['id'];}_0xb1ef22[_0x5e60('0x5b')][_0x5e60('0x60')]=!![];_0xb1ef22[_0x5e60('0x5b')][_0x5e60('0x61')]=moment()[_0x5e60('0x62')]('YYYY-MM-DD\x20HH:mm:ss');_0xb1ef22['body']['UserId']=_0xb1ef22[_0x5e60('0x5b')][_0x5e60('0x63')]||_0xb1ef22['user']['id'];_0x2b8343[_0x5e60('0x64')]['id']=_0xb1ef22[_0x5e60('0x5b')]['UserId'];return db[_0x5e60('0x51')][_0x5e60('0x5a')]({'where':{'id':_0xb1ef22[_0x5e60('0x58')]['id'],'UserId':null},'include':[{'model':db[_0x5e60('0x65')],'as':_0x5e60('0x66')}]})[_0x5e60('0x37')](handleEntityNotFound(_0x28c2de,null))[_0x5e60('0x37')](saveUpdates(_0xb1ef22[_0x5e60('0x5b')],null))[_0x5e60('0x37')](function(_0x406c3a){if(_0x406c3a){_0x2b8343[_0x5e60('0x2a')]=_0x406c3a[_0x5e60('0x67')]({'plain':!![]});return db[_0x5e60('0x68')][_0x5e60('0x5a')]({'where':{'id':_0x406c3a[_0x5e60('0x69')]}});}return null;})[_0x5e60('0x37')](handleEntityNotFound(_0x28c2de,null))[_0x5e60('0x37')](function(_0x5c711c){if(_0x5c711c){return _0x5c711c[_0x5e60('0x36')]({'UserId':_0xb1ef22[_0x5e60('0x5b')][_0x5e60('0x63')],'read1stAt':_['isNil'](_0x5c711c[_0x5e60('0x6a')])?moment()[_0x5e60('0x62')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x5e60('0x37')](function(_0x6f4d2f){if(_0x6f4d2f){_0x2b8343['interaction']=_0x6f4d2f[_0x5e60('0x67')]({'plain':!![]});interaction_log[_0x5e60('0x22')](_0x5e60('0x6b'),_0xb1ef22[_0x5e60('0x6c')]['id'],_0xb1ef22[_0x5e60('0x6c')][_0x5e60('0x3b')],_0xb1ef22[_0x5e60('0x6c')][_0x5e60('0x6d')],_0x2b8343[_0x5e60('0x6e')]['id'],_0xb1ef22['body']?JSON[_0x5e60('0x26')](_0xb1ef22[_0x5e60('0x5b')]):_0x5e60('0x6f'));return respondWithRpcPromise('AcceptMessage',_0x5e60('0x70'),_0x2b8343);}return null;})[_0x5e60('0x37')](function(_0x155db0){if(_0x155db0){if(_0xb1ef22[_0x5e60('0x5b')][_0x5e60('0x71')]){_0x2b8343['message'][_0x5e60('0x72')]=util[_0x5e60('0x62')](_0x5e60('0x73'),_0xb1ef22['user']['name']);_0x2b8343[_0x5e60('0x2a')][_0x5e60('0x74')]=_0x2b8343[_0x5e60('0x74')];_0x2b8343[_0x5e60('0x2a')][_0x5e60('0x75')]=_0x5e60('0x5e');return respondWithRpcPromise(_0x5e60('0x76'),'EventManager',{'event':_0x5e60('0x77'),'message':_0x2b8343[_0x5e60('0x2a')]},client9002)[_0x5e60('0x37')](function(){return _0x2b8343;});}return _0x2b8343;}return null;})['then'](respondWithResult(_0x28c2de,null))['catch'](handleError(_0x28c2de,null));};var interaction_log=require(_0x5e60('0x15'))(_0x5e60('0x5d'));exports[_0x5e60('0x34')]=function(_0x574f2b,_0x4aa61e,_0x3dcf3d){var _0x45cc9c={'agent':{},'channel':_0x5e60('0x5f')};if(_0x574f2b[_0x5e60('0x5b')]['id']){delete _0x574f2b[_0x5e60('0x5b')]['id'];}_0x574f2b[_0x5e60('0x5b')]['UserId']=_0x574f2b[_0x5e60('0x5b')][_0x5e60('0x63')]||_0x574f2b[_0x5e60('0x6c')]['id'];_0x45cc9c[_0x5e60('0x64')]['id']=_0x574f2b[_0x5e60('0x5b')][_0x5e60('0x63')];return db[_0x5e60('0x51')][_0x5e60('0x5a')]({'where':{'id':_0x574f2b[_0x5e60('0x58')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x4aa61e,null))[_0x5e60('0x37')](function(_0x136464){if(_0x136464){_0x45cc9c['message']=_0x136464[_0x5e60('0x67')]({'plain':!![]});return db[_0x5e60('0x68')]['find']({'where':{'id':_0x136464[_0x5e60('0x69')]}});}return null;})[_0x5e60('0x37')](handleEntityNotFound(_0x4aa61e,null))[_0x5e60('0x37')](function(_0x1b4aee){if(_0x1b4aee){_0x45cc9c[_0x5e60('0x6e')]=_0x1b4aee[_0x5e60('0x67')]({'plain':!![]});interaction_log['info'](_0x5e60('0x78'),_0x574f2b[_0x5e60('0x6c')]['id'],_0x574f2b[_0x5e60('0x6c')][_0x5e60('0x3b')],_0x574f2b[_0x5e60('0x6c')][_0x5e60('0x6d')],_0x45cc9c[_0x5e60('0x6e')]['id'],_0x574f2b[_0x5e60('0x5b')]?JSON[_0x5e60('0x26')](_0x574f2b['body']):_0x5e60('0x6f'));return respondWithRpcPromise(_0x5e60('0x79'),_0x5e60('0x7a'),_0x45cc9c);}return null;})[_0x5e60('0x37')](function(_0x2a3b74){if(_0x2a3b74){_0x2a3b74[_0x5e60('0x2a')][_0x5e60('0x72')]=util[_0x5e60('0x62')](_0x5e60('0x73'),_0x574f2b[_0x5e60('0x6c')]['name']);_0x2a3b74['message']['channel']=_0x45cc9c[_0x5e60('0x74')];_0x2a3b74[_0x5e60('0x2a')][_0x5e60('0x75')]=_0x5e60('0x34');respondWithRpcPromise(_0x5e60('0x76'),_0x5e60('0x76'),{'event':_0x5e60('0x7b'),'message':_0x2a3b74[_0x5e60('0x2a')]},client9002);return _0x45cc9c;}return null;})[_0x5e60('0x37')](respondWithResult(_0x4aa61e,null))['catch'](handleError(_0x4aa61e,null));};exports[_0x5e60('0x7c')]=function(_0x42ac7c,_0x2afb9c){var _0x530e04;return db[_0x5e60('0x51')]['create'](_0x42ac7c['body'],{})['then'](function(_0x337491){_0x530e04=_0x337491;return db[_0x5e60('0x65')][_0x5e60('0x7d')]({'where':{'id':_0x530e04[_0x5e60('0x7e')]}});})[_0x5e60('0x37')](function(_0x1a721b){if(_[_0x5e60('0x7f')](_0x1a721b)){return;}else{_0x530e04[_0x5e60('0x5f')]=_0x1a721b[_0x5e60('0x5f')];return db['Attachment'][_0x5e60('0x7d')]({'where':{'id':_0x530e04[_0x5e60('0x80')]}});}})[_0x5e60('0x37')](function(_0x2f40fa){return respondWithRpcPromise(_0x5e60('0x81'),_0x5e60('0x81'),{'FaxAccountId':_[_0x5e60('0x7f')](_0x42ac7c[_0x5e60('0x5b')])?undefined:_0x42ac7c[_0x5e60('0x5b')][_0x5e60('0x82')],'path':_[_0x5e60('0x7f')](_0x2f40fa)?undefined:util[_0x5e60('0x62')]('/var/opt/motion2/server/files/attachments/%s',_0x2f40fa[_0x5e60('0x83')]),'fax':_[_0x5e60('0x7f')](_0x530e04[_0x5e60('0x5f')])?undefined:_0x530e04[_0x5e60('0x5f')],'AttachmentId':_0x530e04[_0x5e60('0x80')]},client9002);})[_0x5e60('0x37')](respondWithResult(_0x2afb9c,0xc9))[_0x5e60('0x56')](handleError(_0x2afb9c,null));};exports[_0x5e60('0x84')]=function(_0xcea76e,_0x20af25){var _0x44fe9e=path[_0x5e60('0x85')](config[_0x5e60('0x86')],_0x5e60('0x87'),_0x5e60('0x88'),_0x5e60('0x89'));return db[_0x5e60('0x51')][_0x5e60('0x5a')]({'where':{'id':_0xcea76e[_0x5e60('0x58')]['id']},'include':[{'model':db[_0x5e60('0x8a')],'as':'Attachment'}]})[_0x5e60('0x37')](handleEntityNotFound(_0x20af25,null))[_0x5e60('0x37')](function(_0x136bfb){if(_0x136bfb){return _0x20af25['download'](path['join'](_0x44fe9e,_0x136bfb[_0x5e60('0x8a')][_0x5e60('0x83')]));}})[_0x5e60('0x56')](handleError(_0x20af25,null));};