3d4f31f8270cccd8e4f383ac609f0f5595d2514c
[motion2.git] / server / api / dashboard / dashboard.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 _0x3b36=['attrMetric','total','attrVoiceQueues','multibar-chart','attrSerie1','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','stringify','DashboardId','getItems','findOne','DashboardItem','order','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','defaults','localhost','socket.io-emitter','./dashboard.socket','register','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','get','CustomDashboards','UserProfileResource','stack','name','index','map','Dashboard','rawAttributes','fieldName','type','model','query','keys','filters','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','VIRTUAL','include','findAll','rows','catch','show','params','intersection','length','includeAll','merge','options','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','body','role','userProfileId','iframe','attrUrl','attrs','value','https://','attrHourFormat','attrTimezone','0.00','attrFontSize','counter'];(function(_0x443b30,_0x4ad660){var _0x1d4590=function(_0x3a03e1){while(--_0x3a03e1){_0x443b30['push'](_0x443b30['shift']());}};_0x1d4590(++_0x4ad660);}(_0x3b36,0x177));var _0x63b3=function(_0x252a4b,_0x6e5423){_0x252a4b=_0x252a4b-0x0;var _0x449185=_0x3b36[_0x252a4b];return _0x449185;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x63b3('0x0'));var rimraf=require(_0x63b3('0x1'));var zipdir=require(_0x63b3('0x2'));var jsonpatch=require(_0x63b3('0x3'));var rp=require(_0x63b3('0x4'));var moment=require(_0x63b3('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x63b3('0x6'));var util=require(_0x63b3('0x7'));var path=require('path');var sox=require(_0x63b3('0x8'));var csv=require(_0x63b3('0x9'));var ejs=require(_0x63b3('0xa'));var fs=require('fs');var _=require(_0x63b3('0xb'));var squel=require(_0x63b3('0xc'));var crypto=require('crypto');var jsforce=require(_0x63b3('0xd'));var deskjs=require(_0x63b3('0xe'));var toCsv=require('to-csv');var querystring=require(_0x63b3('0xf'));var Papa=require('papaparse');var Redis=require(_0x63b3('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x63b3('0x11'));var hardwareService=require(_0x63b3('0x12'));var logger=require('../../config/logger')(_0x63b3('0x13'));var utils=require(_0x63b3('0x14'));var config=require(_0x63b3('0x15'));var db=require('../../mysqldb')['db'];config['redis']=_[_0x63b3('0x16')](config['redis'],{'host':_0x63b3('0x17'),'port':0x18eb});var socket=require(_0x63b3('0x18'))(new Redis(config['redis']));require(_0x63b3('0x19'))[_0x63b3('0x1a')](socket);function respondWithStatusCode(_0x49dff2,_0x17beef){_0x17beef=_0x17beef||0xcc;return function(_0x30d927){if(_0x30d927){return _0x49dff2[_0x63b3('0x1b')](_0x17beef);}return _0x49dff2[_0x63b3('0x1c')](_0x17beef)[_0x63b3('0x1d')]();};}function respondWithResult(_0x2e8e00,_0x2a02f6){_0x2a02f6=_0x2a02f6||0xc8;return function(_0x5e4a56){if(_0x5e4a56){return _0x2e8e00[_0x63b3('0x1c')](_0x2a02f6)[_0x63b3('0x1e')](_0x5e4a56);}};}function respondWithFilteredResult(_0x2d72b6,_0x455194){return function(_0x556c1c){if(_0x556c1c){var _0x4bda19=_0x556c1c[_0x63b3('0x1f')],_0x404f2f=_0x455194[_0x63b3('0x20')],_0x407edd=_0x455194[_0x63b3('0x20')]+_0x455194[_0x63b3('0x21')],_0x349920;if(_0x407edd>=_0x4bda19){_0x407edd=_0x4bda19;_0x349920=0xc8;}else{_0x349920=0xce;}_0x2d72b6['status'](_0x349920);return _0x2d72b6['set'](_0x63b3('0x22'),_0x404f2f+'-'+_0x407edd+'/'+_0x4bda19)[_0x63b3('0x1e')](_0x556c1c);}return null;};}function patchUpdates(_0x4479e8){return function(_0x2001f2){try{jsonpatch[_0x63b3('0x23')](_0x2001f2,_0x4479e8,!![]);}catch(_0x5a4cf9){return BPromise[_0x63b3('0x24')](_0x5a4cf9);}return _0x2001f2[_0x63b3('0x25')]();};}function saveUpdates(_0xcf02e2,_0x2e330e){return function(_0x3739f5){if(_0x3739f5){return _0x3739f5[_0x63b3('0x26')](_0xcf02e2)[_0x63b3('0x27')](function(_0x47aec1){return _0x47aec1;});}return null;};}function removeEntity(_0x3231c0,_0x124a10){return function(_0x301d5f){if(_0x301d5f){return _0x301d5f[_0x63b3('0x28')]()['then'](function(){var _0xf801de=_0x301d5f[_0x63b3('0x29')]({'plain':!![]});var _0xfc9be6=_0x63b3('0x2a');return db[_0x63b3('0x2b')][_0x63b3('0x28')]({'where':{'type':_0xfc9be6,'resourceId':_0xf801de['id']}})[_0x63b3('0x27')](function(){return _0x301d5f;});})['then'](function(){_0x3231c0['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x64d7fd,_0x1ff077){return function(_0x462e83){if(!_0x462e83){_0x64d7fd['sendStatus'](0x194);}return _0x462e83;};}function handleError(_0x2c66b6,_0x227741){_0x227741=_0x227741||0x1f4;return function(_0x5ef3fb){logger['error'](_0x5ef3fb[_0x63b3('0x2c')]);if(_0x5ef3fb[_0x63b3('0x2d')]){delete _0x5ef3fb['name'];}_0x2c66b6[_0x63b3('0x1c')](_0x227741)['send'](_0x5ef3fb);};}exports[_0x63b3('0x2e')]=function(_0x3615e4,_0x4e7689){var _0x245868={},_0x31da90={},_0x54d68c={'count':0x0,'rows':[]};var _0x4e5404=_[_0x63b3('0x2f')](db[_0x63b3('0x30')][_0x63b3('0x31')],function(_0x812c23){return{'name':_0x812c23[_0x63b3('0x32')],'type':_0x812c23[_0x63b3('0x33')]['key']};});_0x31da90[_0x63b3('0x34')]=_[_0x63b3('0x2f')](_0x4e5404,_0x63b3('0x2d'));_0x31da90[_0x63b3('0x35')]=_[_0x63b3('0x36')](_0x3615e4[_0x63b3('0x35')]);_0x31da90[_0x63b3('0x37')]=_['intersection'](_0x31da90[_0x63b3('0x34')],_0x31da90[_0x63b3('0x35')]);_0x245868[_0x63b3('0x38')]=_['intersection'](_0x31da90[_0x63b3('0x34')],qs['fields'](_0x3615e4[_0x63b3('0x35')][_0x63b3('0x39')]));_0x245868[_0x63b3('0x38')]=_0x245868[_0x63b3('0x38')]['length']?_0x245868[_0x63b3('0x38')]:_0x31da90[_0x63b3('0x34')];if(!_0x3615e4['query'][_0x63b3('0x3a')](_0x63b3('0x3b'))){_0x245868['limit']=qs['limit'](_0x3615e4[_0x63b3('0x35')][_0x63b3('0x21')]);_0x245868['offset']=qs[_0x63b3('0x20')](_0x3615e4[_0x63b3('0x35')][_0x63b3('0x20')]);}_0x245868['order']=qs[_0x63b3('0x3c')](_0x3615e4[_0x63b3('0x35')][_0x63b3('0x3c')]);_0x245868[_0x63b3('0x3d')]=qs[_0x63b3('0x37')](_[_0x63b3('0x3e')](_0x3615e4[_0x63b3('0x35')],_0x31da90[_0x63b3('0x37')]),_0x4e5404);if(_0x3615e4[_0x63b3('0x35')][_0x63b3('0x3f')]){_0x245868[_0x63b3('0x3d')]=_['merge'](_0x245868[_0x63b3('0x3d')],{'$or':_[_0x63b3('0x2f')](_0x4e5404,function(_0x40288e){if(_0x40288e[_0x63b3('0x33')]!==_0x63b3('0x40')){var _0x7a1c56={};_0x7a1c56[_0x40288e['name']]={'$like':'%'+_0x3615e4[_0x63b3('0x35')][_0x63b3('0x3f')]+'%'};return _0x7a1c56;}})});}_0x245868=_['merge']({},_0x245868,_0x3615e4['options']);var _0x32c3d0={'where':_0x245868[_0x63b3('0x3d')]};return db['Dashboard'][_0x63b3('0x1f')](_0x32c3d0)[_0x63b3('0x27')](function(_0x2baee2){_0x54d68c[_0x63b3('0x1f')]=_0x2baee2;if(_0x3615e4['query']['includeAll']){_0x245868[_0x63b3('0x41')]=[{'all':!![]}];}return db[_0x63b3('0x30')][_0x63b3('0x42')](_0x245868);})[_0x63b3('0x27')](function(_0x1bafd8){_0x54d68c[_0x63b3('0x43')]=_0x1bafd8;return _0x54d68c;})[_0x63b3('0x27')](respondWithFilteredResult(_0x4e7689,_0x245868))[_0x63b3('0x44')](handleError(_0x4e7689,null));};exports[_0x63b3('0x45')]=function(_0x5cd8ee,_0x1f156b){var _0x3c1fd4={'raw':![],'where':{'id':_0x5cd8ee[_0x63b3('0x46')]['id']}},_0x100c80={};_0x100c80['model']=_[_0x63b3('0x36')](db['Dashboard'][_0x63b3('0x31')]);_0x100c80[_0x63b3('0x35')]=_[_0x63b3('0x36')](_0x5cd8ee[_0x63b3('0x35')]);_0x100c80[_0x63b3('0x37')]=_['intersection'](_0x100c80[_0x63b3('0x34')],_0x100c80[_0x63b3('0x35')]);_0x3c1fd4[_0x63b3('0x38')]=_[_0x63b3('0x47')](_0x100c80['model'],qs[_0x63b3('0x39')](_0x5cd8ee[_0x63b3('0x35')][_0x63b3('0x39')]));_0x3c1fd4[_0x63b3('0x38')]=_0x3c1fd4[_0x63b3('0x38')][_0x63b3('0x48')]?_0x3c1fd4[_0x63b3('0x38')]:_0x100c80[_0x63b3('0x34')];if(_0x5cd8ee[_0x63b3('0x35')][_0x63b3('0x49')]){_0x3c1fd4[_0x63b3('0x41')]=[{'all':!![]}];}_0x3c1fd4=_[_0x63b3('0x4a')]({},_0x3c1fd4,_0x5cd8ee[_0x63b3('0x4b')]);return db[_0x63b3('0x30')][_0x63b3('0x4c')](_0x3c1fd4)[_0x63b3('0x27')](handleEntityNotFound(_0x1f156b,null))['then'](respondWithResult(_0x1f156b,null))[_0x63b3('0x44')](handleError(_0x1f156b,null));};exports[_0x63b3('0x4d')]=function(_0x3f6859,_0x5f1d6d){return db['Dashboard'][_0x63b3('0x4d')](_0x3f6859['body'],{})[_0x63b3('0x27')](function(_0x3a4cb8){var _0x1b7d50=_0x3f6859[_0x63b3('0x4e')][_0x63b3('0x29')]({'plain':!![]});if(!_0x1b7d50)throw new Error(_0x63b3('0x4f'));if(_0x1b7d50['role']===_0x63b3('0x4e')){var _0x5b45ad=_0x3a4cb8[_0x63b3('0x29')]({'plain':!![]});var _0x203679=_0x63b3('0x2a');return db[_0x63b3('0x50')][_0x63b3('0x4c')]({'where':{'name':_0x203679,'userProfileId':_0x1b7d50['userProfileId']},'raw':!![]})[_0x63b3('0x27')](function(_0x24bf4d){if(_0x24bf4d&&_0x24bf4d[_0x63b3('0x51')]===0x0){return db[_0x63b3('0x2b')][_0x63b3('0x4d')]({'name':_0x5b45ad[_0x63b3('0x2d')],'resourceId':_0x5b45ad['id'],'type':_0x24bf4d[_0x63b3('0x2d')],'sectionId':_0x24bf4d['id']},{})[_0x63b3('0x27')](function(){return _0x3a4cb8;});}else{return _0x3a4cb8;}})[_0x63b3('0x44')](function(_0x4b862c){logger[_0x63b3('0x52')](_0x63b3('0x53'),_0x4b862c);throw _0x4b862c;});}return _0x3a4cb8;})[_0x63b3('0x27')](respondWithResult(_0x5f1d6d,0xc9))['catch'](handleError(_0x5f1d6d,null));};exports[_0x63b3('0x54')]=function(_0x10fc0a,_0x322b66){var _0x1bc0eb={'where':{'id':_0x10fc0a['params']['id']}},_0x5e8416={};_0x5e8416['model']=_[_0x63b3('0x36')](db[_0x63b3('0x30')][_0x63b3('0x31')]);_0x1bc0eb[_0x63b3('0x38')]=_['intersection'](_0x5e8416['model'],qs[_0x63b3('0x39')](_0x10fc0a[_0x63b3('0x35')][_0x63b3('0x39')]));_0x1bc0eb[_0x63b3('0x38')]=_0x1bc0eb[_0x63b3('0x38')][_0x63b3('0x48')]?_0x1bc0eb['attributes']:_0x5e8416[_0x63b3('0x34')];if(_0x10fc0a[_0x63b3('0x35')][_0x63b3('0x49')]){_0x1bc0eb[_0x63b3('0x41')]=[{'all':!![]}];}_0x1bc0eb=_[_0x63b3('0x4a')]({},_0x1bc0eb,_0x10fc0a['options']);return db[_0x63b3('0x30')][_0x63b3('0x4c')](_0x1bc0eb)[_0x63b3('0x27')](handleEntityNotFound(_0x322b66,null))[_0x63b3('0x27')](function(_0x192985){if(_0x192985){var _0x3d8cd8=_0x192985[_0x63b3('0x29')]({'plain':!![]});_0x3d8cd8=qs[_0x63b3('0x55')](_0x3d8cd8,['id',_0x63b3('0x56'),_0x63b3('0x57')]);_0x10fc0a['body']=_[_0x63b3('0x55')](_0x10fc0a['body'],['id',_0x63b3('0x56'),_0x63b3('0x57')]);return db[_0x63b3('0x30')][_0x63b3('0x4d')](_['merge'](_0x3d8cd8,_0x10fc0a[_0x63b3('0x58')]),{'include':_0x10fc0a['query'][_0x63b3('0x49')]?[{'all':!![]}]:undefined})[_0x63b3('0x27')](function(_0x239988){var _0x5aa944=_0x10fc0a[_0x63b3('0x4e')][_0x63b3('0x29')]({'plain':!![]});if(!_0x5aa944)throw new Error(_0x63b3('0x4f'));if(_0x5aa944[_0x63b3('0x59')]===_0x63b3('0x4e')){var _0x4a7283=_0x239988[_0x63b3('0x29')]({'plain':!![]});var _0x39349d=_0x63b3('0x2a');return db[_0x63b3('0x50')][_0x63b3('0x4c')]({'where':{'name':_0x39349d,'userProfileId':_0x5aa944[_0x63b3('0x5a')]},'raw':!![]})[_0x63b3('0x27')](function(_0x1c0da7){if(_0x1c0da7&&_0x1c0da7[_0x63b3('0x51')]===0x0){return db[_0x63b3('0x2b')][_0x63b3('0x4d')]({'name':_0x4a7283[_0x63b3('0x2d')],'resourceId':_0x4a7283['id'],'type':_0x1c0da7[_0x63b3('0x2d')],'sectionId':_0x1c0da7['id']},{})[_0x63b3('0x27')](function(){return _0x239988;});}else{return _0x239988;}})[_0x63b3('0x44')](function(_0x4507e5){logger[_0x63b3('0x52')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4507e5);throw _0x4507e5;});}return _0x239988;});}})['then'](respondWithResult(_0x322b66,0xc9))[_0x63b3('0x44')](handleError(_0x322b66,null));};exports[_0x63b3('0x26')]=function(_0x3ce399,_0x2ba658){if(_0x3ce399['body']['id']){delete _0x3ce399[_0x63b3('0x58')]['id'];}return db[_0x63b3('0x30')]['find']({'where':{'id':_0x3ce399[_0x63b3('0x46')]['id']}})[_0x63b3('0x27')](handleEntityNotFound(_0x2ba658,null))['then'](saveUpdates(_0x3ce399[_0x63b3('0x58')],null))[_0x63b3('0x27')](respondWithResult(_0x2ba658,null))[_0x63b3('0x44')](handleError(_0x2ba658,null));};exports[_0x63b3('0x28')]=function(_0x51d388,_0x5a2d7c){return db[_0x63b3('0x30')][_0x63b3('0x4c')]({'where':{'id':_0x51d388[_0x63b3('0x46')]['id']}})[_0x63b3('0x27')](handleEntityNotFound(_0x5a2d7c,null))['then'](removeEntity(_0x5a2d7c,null))[_0x63b3('0x44')](handleError(_0x5a2d7c,null));};function widgetAttributes(_0x31a146){try{switch(_0x31a146[_0x63b3('0x33')]){case _0x63b3('0x5b'):return[{'name':_0x63b3('0x5c'),'value':_0x31a146[_0x63b3('0x5c')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146['attrs'][0x0][_0x63b3('0x5e')]:undefined)||_0x63b3('0x5f')}];case'custom':return[{'name':'attrPath','value':_0x31a146['attrPath']||(_0x31a146['attrs']&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146['attrs'][0x0][_0x63b3('0x5e')]:undefined)||''}];case'clock':return[{'name':_0x63b3('0x60'),'value':_0x31a146['attrHourFormat']||(_0x31a146['attrs']&&_0x31a146['attrs'][0x0]?_0x31a146['attrs'][0x0]['value']:undefined)||'HH:mm:ss'},{'name':'attrTimezone','value':_0x31a146[_0x63b3('0x61')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x1]?_0x31a146['attrs'][0x1][_0x63b3('0x5e')]:undefined)||_0x63b3('0x62')},{'name':_0x63b3('0x63'),'value':_0x31a146[_0x63b3('0x63')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146['attrs'][0x2]?_0x31a146[_0x63b3('0x5d')][0x2]['value']:undefined)||0xc}];case _0x63b3('0x64'):return[{'name':_0x63b3('0x65'),'value':_0x31a146['attrMetric']||(_0x31a146['attrs']&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146[_0x63b3('0x5d')][0x0][_0x63b3('0x5e')]:undefined)||_0x63b3('0x66')},{'name':_0x63b3('0x67'),'value':_0x31a146[_0x63b3('0x67')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x1]?_0x31a146[_0x63b3('0x5d')][0x1][_0x63b3('0x5e')]:undefined)||[]},{'name':_0x63b3('0x63'),'value':_0x31a146[_0x63b3('0x63')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x2]?_0x31a146[_0x63b3('0x5d')][0x2][_0x63b3('0x5e')]:undefined)||0x14}];case _0x63b3('0x68'):case'pie-chart':return[{'name':_0x63b3('0x69'),'value':_0x31a146['attrSerie1']||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146[_0x63b3('0x5d')][0x0][_0x63b3('0x5e')]:undefined)||'total'},{'name':'attrSerie2','value':_0x31a146[_0x63b3('0x6a')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x1]?_0x31a146['attrs'][0x1][_0x63b3('0x5e')]:undefined)||null},{'name':_0x63b3('0x6b'),'value':_0x31a146[_0x63b3('0x6b')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x2]?_0x31a146['attrs'][0x2]['value']:undefined)||null},{'name':'attrVoiceQueues','value':_0x31a146[_0x63b3('0x67')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x3]?_0x31a146['attrs'][0x3]['value']:undefined)||[]}];case _0x63b3('0x6c'):return[{'name':_0x63b3('0x6d'),'type':_0x31a146[_0x63b3('0x6e')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146['attrs'][0x0][_0x63b3('0x33')]:undefined)||null,'value':_0x31a146['attrReport']||(_0x31a146['attrs']&&_0x31a146[_0x63b3('0x5d')][0x0]?_0x31a146[_0x63b3('0x5d')][0x0][_0x63b3('0x5e')]:undefined)||null},{'name':_0x63b3('0x6f'),'value':_0x31a146[_0x63b3('0x6f')]||(_0x31a146[_0x63b3('0x5d')]&&_0x31a146[_0x63b3('0x5d')][0x1]?_0x31a146[_0x63b3('0x5d')][0x1][_0x63b3('0x5e')]:undefined)||0x0}];default:return[];}}catch(_0x1202e8){logger[_0x63b3('0x52')](_0x63b3('0x70'),JSON[_0x63b3('0x71')](_0x1202e8));return[];}}exports['addItem']=function(_0x497b97,_0x27345d,_0x27db12){if(_0x497b97[_0x63b3('0x58')]['id']){delete _0x497b97[_0x63b3('0x58')]['id'];}return db[_0x63b3('0x30')][_0x63b3('0x4c')]({'where':{'id':_0x497b97['params']['id']}})[_0x63b3('0x27')](handleEntityNotFound(_0x27345d,null))[_0x63b3('0x27')](function(_0x100385){if(_0x100385){_0x497b97['body'][_0x63b3('0x72')]=_0x100385['id'];_0x497b97['body']['attrs']=widgetAttributes(_0x497b97['body']);return db['DashboardItem'][_0x63b3('0x4d')](_0x497b97['body']);}})[_0x63b3('0x27')](respondWithResult(_0x27345d,null))['catch'](handleError(_0x27345d,null));};exports[_0x63b3('0x73')]=function(_0x1b1d24,_0x13a35,_0x3d3501){var _0x370ddf={};var _0x44d628={};var _0x196cfa;var _0x1f3694;return db[_0x63b3('0x30')][_0x63b3('0x74')]({'where':{'id':_0x1b1d24['params']['id']}})['then'](handleEntityNotFound(_0x13a35,null))[_0x63b3('0x27')](function(_0x134102){if(_0x134102){_0x196cfa=_0x134102;_0x44d628['model']=_[_0x63b3('0x36')](db[_0x63b3('0x75')][_0x63b3('0x31')]);_0x44d628[_0x63b3('0x35')]=_['keys'](_0x1b1d24['query']);_0x44d628[_0x63b3('0x37')]=_[_0x63b3('0x47')](_0x44d628[_0x63b3('0x34')],_0x44d628[_0x63b3('0x35')]);_0x370ddf['attributes']=_[_0x63b3('0x47')](_0x44d628[_0x63b3('0x34')],qs['fields'](_0x1b1d24['query'][_0x63b3('0x39')]));_0x370ddf[_0x63b3('0x38')]=_0x370ddf[_0x63b3('0x38')][_0x63b3('0x48')]?_0x370ddf[_0x63b3('0x38')]:_0x44d628[_0x63b3('0x34')];_0x370ddf[_0x63b3('0x76')]=qs[_0x63b3('0x3c')](_0x1b1d24[_0x63b3('0x35')][_0x63b3('0x3c')]);_0x370ddf['where']=qs['filters'](_[_0x63b3('0x3e')](_0x1b1d24[_0x63b3('0x35')],_0x44d628[_0x63b3('0x37')]));if(_0x1b1d24[_0x63b3('0x35')][_0x63b3('0x3f')]){_0x370ddf['where']=_[_0x63b3('0x4a')](_0x370ddf[_0x63b3('0x3d')],{'$or':_[_0x63b3('0x2f')](_0x370ddf[_0x63b3('0x38')],function(_0x16528a){var _0x829d02={};_0x829d02[_0x16528a]={'$like':'%'+_0x1b1d24[_0x63b3('0x35')][_0x63b3('0x3f')]+'%'};return _0x829d02;})});}_0x370ddf=_[_0x63b3('0x4a')]({},_0x370ddf,_0x1b1d24[_0x63b3('0x4b')]);return _0x196cfa[_0x63b3('0x73')](_0x370ddf);}})['then'](function(_0x583de0){if(_0x583de0){_0x1f3694=_0x583de0[_0x63b3('0x48')];if(!_0x1b1d24[_0x63b3('0x35')]['hasOwnProperty'](_0x63b3('0x3b'))){_0x370ddf['limit']=qs['limit'](_0x1b1d24[_0x63b3('0x35')][_0x63b3('0x21')]);_0x370ddf[_0x63b3('0x20')]=qs['offset'](_0x1b1d24[_0x63b3('0x35')][_0x63b3('0x20')]);}return _0x196cfa[_0x63b3('0x73')](_0x370ddf);}})[_0x63b3('0x27')](function(_0x374a92){if(_0x374a92){return _0x374a92?{'count':_0x1f3694,'rows':_0x374a92}:null;}})['then'](respondWithResult(_0x13a35,null))[_0x63b3('0x44')](handleError(_0x13a35,null));};