6da6c00e1d64c51cc1f2f04f456e9d3cd9d7590f
[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 _0xaf92=['api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./dashboard.socket','register','sendStatus','end','status','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','CustomDashboards','UserProfileResource','error','name','send','index','map','Dashboard','rawAttributes','fieldName','type','key','query','model','attributes','intersection','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','options','includeAll','findAll','rows','catch','show','params','keys','fields','include','create','body','user','role','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','find','omit','createdAt','updatedAt','Unable\x20to\x20retrieve\x20the\x20current\x20user','iframe','attrUrl','attrs','value','custom','attrPath','clock','attrHourFormat','HH:mm:ss','attrTimezone','0.00','attrFontSize','attrMetric','attrVoiceQueues','pie-chart','attrSerie1','total','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','stringify','addItem','DashboardItem','getItems','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger'];(function(_0x3a13ab,_0x114561){var _0x12d5c7=function(_0x54f0be){while(--_0x54f0be){_0x3a13ab['push'](_0x3a13ab['shift']());}};_0x12d5c7(++_0x114561);}(_0xaf92,0x67));var _0x2af9=function(_0x5cab26,_0x40d7bf){_0x5cab26=_0x5cab26-0x0;var _0x23e642=_0xaf92[_0x5cab26];return _0x23e642;};'use strict';var pdf=require(_0x2af9('0x0'));var emlformat=require(_0x2af9('0x1'));var rimraf=require(_0x2af9('0x2'));var zipdir=require(_0x2af9('0x3'));var jsonpatch=require(_0x2af9('0x4'));var rp=require(_0x2af9('0x5'));var moment=require(_0x2af9('0x6'));var BPromise=require('bluebird');var Mustache=require(_0x2af9('0x7'));var util=require(_0x2af9('0x8'));var path=require(_0x2af9('0x9'));var sox=require('sox');var csv=require(_0x2af9('0xa'));var ejs=require(_0x2af9('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x2af9('0xc'));var crypto=require(_0x2af9('0xd'));var jsforce=require(_0x2af9('0xe'));var deskjs=require(_0x2af9('0xf'));var toCsv=require('to-csv');var querystring=require(_0x2af9('0x10'));var Papa=require(_0x2af9('0x11'));var Redis=require(_0x2af9('0x12'));var authService=require(_0x2af9('0x13'));var qs=require(_0x2af9('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x2af9('0x15'));var logger=require(_0x2af9('0x16'))(_0x2af9('0x17'));var utils=require(_0x2af9('0x18'));var config=require(_0x2af9('0x19'));var db=require(_0x2af9('0x1a'))['db'];config[_0x2af9('0x1b')]=_[_0x2af9('0x1c')](config[_0x2af9('0x1b')],{'host':_0x2af9('0x1d'),'port':0x18eb});var socket=require(_0x2af9('0x1e'))(new Redis(config[_0x2af9('0x1b')]));require(_0x2af9('0x1f'))[_0x2af9('0x20')](socket);function respondWithStatusCode(_0x24b58f,_0x26b86c){_0x26b86c=_0x26b86c||0xcc;return function(_0x38cc87){if(_0x38cc87){return _0x24b58f[_0x2af9('0x21')](_0x26b86c);}return _0x24b58f['status'](_0x26b86c)[_0x2af9('0x22')]();};}function respondWithResult(_0x5f3316,_0x23a950){_0x23a950=_0x23a950||0xc8;return function(_0x53af25){if(_0x53af25){return _0x5f3316[_0x2af9('0x23')](_0x23a950)[_0x2af9('0x24')](_0x53af25);}};}function respondWithFilteredResult(_0x53bb19,_0x2ff658){return function(_0x46fa23){if(_0x46fa23){var _0xe5e4c1=_0x46fa23[_0x2af9('0x25')],_0x5c459c=_0x2ff658[_0x2af9('0x26')],_0x3698ae=_0x2ff658['offset']+_0x2ff658[_0x2af9('0x27')],_0x1eb9f1;if(_0x3698ae>=_0xe5e4c1){_0x3698ae=_0xe5e4c1;_0x1eb9f1=0xc8;}else{_0x1eb9f1=0xce;}_0x53bb19[_0x2af9('0x23')](_0x1eb9f1);return _0x53bb19[_0x2af9('0x28')](_0x2af9('0x29'),_0x5c459c+'-'+_0x3698ae+'/'+_0xe5e4c1)[_0x2af9('0x24')](_0x46fa23);}return null;};}function patchUpdates(_0x4f7a20){return function(_0x54b194){try{jsonpatch[_0x2af9('0x2a')](_0x54b194,_0x4f7a20,!![]);}catch(_0x34f5e1){return BPromise[_0x2af9('0x2b')](_0x34f5e1);}return _0x54b194[_0x2af9('0x2c')]();};}function saveUpdates(_0x517979,_0x403469){return function(_0x308a68){if(_0x308a68){return _0x308a68[_0x2af9('0x2d')](_0x517979)[_0x2af9('0x2e')](function(_0x6923b3){return _0x6923b3;});}return null;};}function removeEntity(_0x73d26d,_0x528be7){return function(_0x4058b5){if(_0x4058b5){return _0x4058b5[_0x2af9('0x2f')]()['then'](function(){var _0x521b67=_0x4058b5[_0x2af9('0x30')]({'plain':!![]});var _0x24eba2=_0x2af9('0x31');return db[_0x2af9('0x32')][_0x2af9('0x2f')]({'where':{'type':_0x24eba2,'resourceId':_0x521b67['id']}})['then'](function(){return _0x4058b5;});})['then'](function(){_0x73d26d[_0x2af9('0x23')](0xcc)[_0x2af9('0x22')]();});}};}function handleEntityNotFound(_0x2c1eec,_0x304dba){return function(_0x24b60e){if(!_0x24b60e){_0x2c1eec[_0x2af9('0x21')](0x194);}return _0x24b60e;};}function handleError(_0x5abf6b,_0x5d789c){_0x5d789c=_0x5d789c||0x1f4;return function(_0x3d7588){logger[_0x2af9('0x33')](_0x3d7588['stack']);if(_0x3d7588[_0x2af9('0x34')]){delete _0x3d7588[_0x2af9('0x34')];}_0x5abf6b[_0x2af9('0x23')](_0x5d789c)[_0x2af9('0x35')](_0x3d7588);};}exports[_0x2af9('0x36')]=function(_0x4f148d,_0x333295){var _0x48aae8={},_0x48a93f={},_0x370f2f={'count':0x0,'rows':[]};var _0x10c901=_[_0x2af9('0x37')](db[_0x2af9('0x38')][_0x2af9('0x39')],function(_0x19305){return{'name':_0x19305[_0x2af9('0x3a')],'type':_0x19305[_0x2af9('0x3b')][_0x2af9('0x3c')]};});_0x48a93f['model']=_[_0x2af9('0x37')](_0x10c901,'name');_0x48a93f['query']=_['keys'](_0x4f148d[_0x2af9('0x3d')]);_0x48a93f['filters']=_['intersection'](_0x48a93f[_0x2af9('0x3e')],_0x48a93f[_0x2af9('0x3d')]);_0x48aae8[_0x2af9('0x3f')]=_[_0x2af9('0x40')](_0x48a93f['model'],qs['fields'](_0x4f148d['query']['fields']));_0x48aae8['attributes']=_0x48aae8['attributes'][_0x2af9('0x41')]?_0x48aae8[_0x2af9('0x3f')]:_0x48a93f[_0x2af9('0x3e')];if(!_0x4f148d[_0x2af9('0x3d')][_0x2af9('0x42')](_0x2af9('0x43'))){_0x48aae8[_0x2af9('0x27')]=qs['limit'](_0x4f148d[_0x2af9('0x3d')][_0x2af9('0x27')]);_0x48aae8[_0x2af9('0x26')]=qs['offset'](_0x4f148d[_0x2af9('0x3d')]['offset']);}_0x48aae8[_0x2af9('0x44')]=qs[_0x2af9('0x45')](_0x4f148d['query'][_0x2af9('0x45')]);_0x48aae8['where']=qs[_0x2af9('0x46')](_[_0x2af9('0x47')](_0x4f148d[_0x2af9('0x3d')],_0x48a93f[_0x2af9('0x46')]),_0x10c901);if(_0x4f148d[_0x2af9('0x3d')][_0x2af9('0x48')]){_0x48aae8[_0x2af9('0x49')]=_[_0x2af9('0x4a')](_0x48aae8['where'],{'$or':_[_0x2af9('0x37')](_0x10c901,function(_0xe721d5){if(_0xe721d5[_0x2af9('0x3b')]!=='VIRTUAL'){var _0x3dd1e1={};_0x3dd1e1[_0xe721d5[_0x2af9('0x34')]]={'$like':'%'+_0x4f148d[_0x2af9('0x3d')][_0x2af9('0x48')]+'%'};return _0x3dd1e1;}})});}_0x48aae8=_['merge']({},_0x48aae8,_0x4f148d[_0x2af9('0x4b')]);var _0x1f9c41={'where':_0x48aae8[_0x2af9('0x49')]};return db[_0x2af9('0x38')]['count'](_0x1f9c41)[_0x2af9('0x2e')](function(_0x48a99a){_0x370f2f[_0x2af9('0x25')]=_0x48a99a;if(_0x4f148d[_0x2af9('0x3d')][_0x2af9('0x4c')]){_0x48aae8['include']=[{'all':!![]}];}return db['Dashboard'][_0x2af9('0x4d')](_0x48aae8);})[_0x2af9('0x2e')](function(_0x3f914f){_0x370f2f[_0x2af9('0x4e')]=_0x3f914f;return _0x370f2f;})[_0x2af9('0x2e')](respondWithFilteredResult(_0x333295,_0x48aae8))[_0x2af9('0x4f')](handleError(_0x333295,null));};exports[_0x2af9('0x50')]=function(_0x2ebab2,_0x37bc50){var _0x5e9f7d={'raw':![],'where':{'id':_0x2ebab2[_0x2af9('0x51')]['id']}},_0x107761={};_0x107761[_0x2af9('0x3e')]=_['keys'](db[_0x2af9('0x38')][_0x2af9('0x39')]);_0x107761['query']=_[_0x2af9('0x52')](_0x2ebab2[_0x2af9('0x3d')]);_0x107761[_0x2af9('0x46')]=_[_0x2af9('0x40')](_0x107761[_0x2af9('0x3e')],_0x107761[_0x2af9('0x3d')]);_0x5e9f7d[_0x2af9('0x3f')]=_[_0x2af9('0x40')](_0x107761[_0x2af9('0x3e')],qs[_0x2af9('0x53')](_0x2ebab2['query'][_0x2af9('0x53')]));_0x5e9f7d[_0x2af9('0x3f')]=_0x5e9f7d['attributes'][_0x2af9('0x41')]?_0x5e9f7d[_0x2af9('0x3f')]:_0x107761['model'];if(_0x2ebab2[_0x2af9('0x3d')][_0x2af9('0x4c')]){_0x5e9f7d[_0x2af9('0x54')]=[{'all':!![]}];}_0x5e9f7d=_[_0x2af9('0x4a')]({},_0x5e9f7d,_0x2ebab2['options']);return db[_0x2af9('0x38')]['find'](_0x5e9f7d)[_0x2af9('0x2e')](handleEntityNotFound(_0x37bc50,null))[_0x2af9('0x2e')](respondWithResult(_0x37bc50,null))[_0x2af9('0x4f')](handleError(_0x37bc50,null));};exports['create']=function(_0x59dbbb,_0x17ff2c){return db[_0x2af9('0x38')][_0x2af9('0x55')](_0x59dbbb[_0x2af9('0x56')],{})['then'](function(_0x5b25e4){var _0x377853=_0x59dbbb[_0x2af9('0x57')][_0x2af9('0x30')]({'plain':!![]});if(!_0x377853)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x377853[_0x2af9('0x58')]===_0x2af9('0x57')){var _0x5c1e91=_0x5b25e4[_0x2af9('0x30')]({'plain':!![]});var _0x27c399=_0x2af9('0x31');return db['UserProfileSection']['find']({'where':{'name':_0x27c399,'userProfileId':_0x377853[_0x2af9('0x59')]},'raw':!![]})[_0x2af9('0x2e')](function(_0x1bef27){if(_0x1bef27&&_0x1bef27[_0x2af9('0x5a')]===0x0){return db[_0x2af9('0x32')]['create']({'name':_0x5c1e91['name'],'resourceId':_0x5c1e91['id'],'type':_0x1bef27[_0x2af9('0x34')],'sectionId':_0x1bef27['id']},{})['then'](function(){return _0x5b25e4;});}else{return _0x5b25e4;}})[_0x2af9('0x4f')](function(_0x576bd8){logger['error'](_0x2af9('0x5b'),_0x576bd8);throw _0x576bd8;});}return _0x5b25e4;})[_0x2af9('0x2e')](respondWithResult(_0x17ff2c,0xc9))['catch'](handleError(_0x17ff2c,null));};exports[_0x2af9('0x5c')]=function(_0x94c7d2,_0xc3bbd8){var _0x5d9a55={'where':{'id':_0x94c7d2['params']['id']}},_0x357abe={};_0x357abe[_0x2af9('0x3e')]=_['keys'](db[_0x2af9('0x38')][_0x2af9('0x39')]);_0x5d9a55['attributes']=_[_0x2af9('0x40')](_0x357abe[_0x2af9('0x3e')],qs[_0x2af9('0x53')](_0x94c7d2[_0x2af9('0x3d')][_0x2af9('0x53')]));_0x5d9a55[_0x2af9('0x3f')]=_0x5d9a55[_0x2af9('0x3f')][_0x2af9('0x41')]?_0x5d9a55['attributes']:_0x357abe['model'];if(_0x94c7d2['query'][_0x2af9('0x4c')]){_0x5d9a55[_0x2af9('0x54')]=[{'all':!![]}];}_0x5d9a55=_[_0x2af9('0x4a')]({},_0x5d9a55,_0x94c7d2[_0x2af9('0x4b')]);return db[_0x2af9('0x38')][_0x2af9('0x5d')](_0x5d9a55)[_0x2af9('0x2e')](handleEntityNotFound(_0xc3bbd8,null))['then'](function(_0x3fda86){if(_0x3fda86){var _0x216421=_0x3fda86[_0x2af9('0x30')]({'plain':!![]});_0x216421=qs[_0x2af9('0x5e')](_0x216421,['id',_0x2af9('0x5f'),'updatedAt']);_0x94c7d2[_0x2af9('0x56')]=_[_0x2af9('0x5e')](_0x94c7d2[_0x2af9('0x56')],['id','createdAt',_0x2af9('0x60')]);return db[_0x2af9('0x38')]['create'](_[_0x2af9('0x4a')](_0x216421,_0x94c7d2[_0x2af9('0x56')]),{'include':_0x94c7d2[_0x2af9('0x3d')]['includeAll']?[{'all':!![]}]:undefined})[_0x2af9('0x2e')](function(_0x58bf88){var _0x120527=_0x94c7d2[_0x2af9('0x57')][_0x2af9('0x30')]({'plain':!![]});if(!_0x120527)throw new Error(_0x2af9('0x61'));if(_0x120527[_0x2af9('0x58')]===_0x2af9('0x57')){var _0xabe691=_0x58bf88['get']({'plain':!![]});var _0x4789c6=_0x2af9('0x31');return db['UserProfileSection'][_0x2af9('0x5d')]({'where':{'name':_0x4789c6,'userProfileId':_0x120527[_0x2af9('0x59')]},'raw':!![]})['then'](function(_0x2856a3){if(_0x2856a3&&_0x2856a3[_0x2af9('0x5a')]===0x0){return db[_0x2af9('0x32')][_0x2af9('0x55')]({'name':_0xabe691[_0x2af9('0x34')],'resourceId':_0xabe691['id'],'type':_0x2856a3[_0x2af9('0x34')],'sectionId':_0x2856a3['id']},{})['then'](function(){return _0x58bf88;});}else{return _0x58bf88;}})[_0x2af9('0x4f')](function(_0x524066){logger[_0x2af9('0x33')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x524066);throw _0x524066;});}return _0x58bf88;});}})[_0x2af9('0x2e')](respondWithResult(_0xc3bbd8,0xc9))[_0x2af9('0x4f')](handleError(_0xc3bbd8,null));};exports['update']=function(_0x2f187c,_0x3efbc9){if(_0x2f187c[_0x2af9('0x56')]['id']){delete _0x2f187c[_0x2af9('0x56')]['id'];}return db['Dashboard'][_0x2af9('0x5d')]({'where':{'id':_0x2f187c['params']['id']}})['then'](handleEntityNotFound(_0x3efbc9,null))[_0x2af9('0x2e')](saveUpdates(_0x2f187c[_0x2af9('0x56')],null))[_0x2af9('0x2e')](respondWithResult(_0x3efbc9,null))[_0x2af9('0x4f')](handleError(_0x3efbc9,null));};exports[_0x2af9('0x2f')]=function(_0x2ffe45,_0x4c2d08){return db[_0x2af9('0x38')][_0x2af9('0x5d')]({'where':{'id':_0x2ffe45[_0x2af9('0x51')]['id']}})[_0x2af9('0x2e')](handleEntityNotFound(_0x4c2d08,null))[_0x2af9('0x2e')](removeEntity(_0x4c2d08,null))[_0x2af9('0x4f')](handleError(_0x4c2d08,null));};function widgetAttributes(_0x4915cc){try{switch(_0x4915cc[_0x2af9('0x3b')]){case _0x2af9('0x62'):return[{'name':_0x2af9('0x63'),'value':_0x4915cc[_0x2af9('0x63')]||(_0x4915cc['attrs']&&_0x4915cc['attrs'][0x0]?_0x4915cc[_0x2af9('0x64')][0x0][_0x2af9('0x65')]:undefined)||'https://'}];case _0x2af9('0x66'):return[{'name':_0x2af9('0x67'),'value':_0x4915cc['attrPath']||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc['attrs'][0x0]?_0x4915cc[_0x2af9('0x64')][0x0][_0x2af9('0x65')]:undefined)||''}];case _0x2af9('0x68'):return[{'name':'attrHourFormat','value':_0x4915cc[_0x2af9('0x69')]||(_0x4915cc['attrs']&&_0x4915cc[_0x2af9('0x64')][0x0]?_0x4915cc[_0x2af9('0x64')][0x0]['value']:undefined)||_0x2af9('0x6a')},{'name':_0x2af9('0x6b'),'value':_0x4915cc[_0x2af9('0x6b')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x1]?_0x4915cc[_0x2af9('0x64')][0x1][_0x2af9('0x65')]:undefined)||_0x2af9('0x6c')},{'name':_0x2af9('0x6d'),'value':_0x4915cc['attrFontSize']||(_0x4915cc['attrs']&&_0x4915cc[_0x2af9('0x64')][0x2]?_0x4915cc[_0x2af9('0x64')][0x2]['value']:undefined)||0xc}];case'counter':return[{'name':_0x2af9('0x6e'),'value':_0x4915cc[_0x2af9('0x6e')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x0]?_0x4915cc[_0x2af9('0x64')][0x0][_0x2af9('0x65')]:undefined)||'total'},{'name':_0x2af9('0x6f'),'value':_0x4915cc['attrVoiceQueues']||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x1]?_0x4915cc[_0x2af9('0x64')][0x1][_0x2af9('0x65')]:undefined)||[]},{'name':_0x2af9('0x6d'),'value':_0x4915cc[_0x2af9('0x6d')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x2]?_0x4915cc[_0x2af9('0x64')][0x2][_0x2af9('0x65')]:undefined)||0x14}];case'multibar-chart':case _0x2af9('0x70'):return[{'name':_0x2af9('0x71'),'value':_0x4915cc['attrSerie1']||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc['attrs'][0x0]?_0x4915cc['attrs'][0x0]['value']:undefined)||_0x2af9('0x72')},{'name':'attrSerie2','value':_0x4915cc[_0x2af9('0x73')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x1]?_0x4915cc[_0x2af9('0x64')][0x1][_0x2af9('0x65')]:undefined)||null},{'name':_0x2af9('0x74'),'value':_0x4915cc[_0x2af9('0x74')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x2]?_0x4915cc['attrs'][0x2][_0x2af9('0x65')]:undefined)||null},{'name':_0x2af9('0x6f'),'value':_0x4915cc['attrVoiceQueues']||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x3]?_0x4915cc[_0x2af9('0x64')][0x3][_0x2af9('0x65')]:undefined)||[]}];case _0x2af9('0x75'):return[{'name':_0x2af9('0x76'),'type':_0x4915cc[_0x2af9('0x77')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x0]?_0x4915cc[_0x2af9('0x64')][0x0][_0x2af9('0x3b')]:undefined)||null,'value':_0x4915cc[_0x2af9('0x76')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x0]?_0x4915cc[_0x2af9('0x64')][0x0]['value']:undefined)||null},{'name':_0x2af9('0x78'),'value':_0x4915cc[_0x2af9('0x78')]||(_0x4915cc[_0x2af9('0x64')]&&_0x4915cc[_0x2af9('0x64')][0x1]?_0x4915cc[_0x2af9('0x64')][0x1][_0x2af9('0x65')]:undefined)||0x0}];default:return[];}}catch(_0x330904){logger[_0x2af9('0x33')](_0x2af9('0x79'),JSON[_0x2af9('0x7a')](_0x330904));return[];}}exports[_0x2af9('0x7b')]=function(_0x4d6a9b,_0x473c7f,_0x258786){if(_0x4d6a9b[_0x2af9('0x56')]['id']){delete _0x4d6a9b[_0x2af9('0x56')]['id'];}return db[_0x2af9('0x38')][_0x2af9('0x5d')]({'where':{'id':_0x4d6a9b[_0x2af9('0x51')]['id']}})[_0x2af9('0x2e')](handleEntityNotFound(_0x473c7f,null))[_0x2af9('0x2e')](function(_0x49c756){if(_0x49c756){_0x4d6a9b['body']['DashboardId']=_0x49c756['id'];_0x4d6a9b[_0x2af9('0x56')][_0x2af9('0x64')]=widgetAttributes(_0x4d6a9b['body']);return db[_0x2af9('0x7c')][_0x2af9('0x55')](_0x4d6a9b['body']);}})[_0x2af9('0x2e')](respondWithResult(_0x473c7f,null))[_0x2af9('0x4f')](handleError(_0x473c7f,null));};exports[_0x2af9('0x7d')]=function(_0x43685f,_0x4bd7a3,_0x38ad54){var _0x3e2417={};var _0x46831f={};var _0xbdc47e;var _0x5dd88c;return db[_0x2af9('0x38')]['findOne']({'where':{'id':_0x43685f['params']['id']}})['then'](handleEntityNotFound(_0x4bd7a3,null))[_0x2af9('0x2e')](function(_0x23572d){if(_0x23572d){_0xbdc47e=_0x23572d;_0x46831f[_0x2af9('0x3e')]=_[_0x2af9('0x52')](db[_0x2af9('0x7c')][_0x2af9('0x39')]);_0x46831f[_0x2af9('0x3d')]=_[_0x2af9('0x52')](_0x43685f[_0x2af9('0x3d')]);_0x46831f[_0x2af9('0x46')]=_[_0x2af9('0x40')](_0x46831f[_0x2af9('0x3e')],_0x46831f[_0x2af9('0x3d')]);_0x3e2417['attributes']=_[_0x2af9('0x40')](_0x46831f[_0x2af9('0x3e')],qs['fields'](_0x43685f['query'][_0x2af9('0x53')]));_0x3e2417[_0x2af9('0x3f')]=_0x3e2417['attributes']['length']?_0x3e2417['attributes']:_0x46831f[_0x2af9('0x3e')];_0x3e2417[_0x2af9('0x44')]=qs['sort'](_0x43685f[_0x2af9('0x3d')][_0x2af9('0x45')]);_0x3e2417[_0x2af9('0x49')]=qs[_0x2af9('0x46')](_[_0x2af9('0x47')](_0x43685f[_0x2af9('0x3d')],_0x46831f['filters']));if(_0x43685f[_0x2af9('0x3d')][_0x2af9('0x48')]){_0x3e2417['where']=_[_0x2af9('0x4a')](_0x3e2417['where'],{'$or':_[_0x2af9('0x37')](_0x3e2417[_0x2af9('0x3f')],function(_0xcaf9d9){var _0x36bea2={};_0x36bea2[_0xcaf9d9]={'$like':'%'+_0x43685f[_0x2af9('0x3d')][_0x2af9('0x48')]+'%'};return _0x36bea2;})});}_0x3e2417=_[_0x2af9('0x4a')]({},_0x3e2417,_0x43685f['options']);return _0xbdc47e[_0x2af9('0x7d')](_0x3e2417);}})['then'](function(_0x269f92){if(_0x269f92){_0x5dd88c=_0x269f92[_0x2af9('0x41')];if(!_0x43685f['query'][_0x2af9('0x42')](_0x2af9('0x43'))){_0x3e2417[_0x2af9('0x27')]=qs[_0x2af9('0x27')](_0x43685f[_0x2af9('0x3d')][_0x2af9('0x27')]);_0x3e2417[_0x2af9('0x26')]=qs[_0x2af9('0x26')](_0x43685f[_0x2af9('0x3d')][_0x2af9('0x26')]);}return _0xbdc47e[_0x2af9('0x7d')](_0x3e2417);}})['then'](function(_0x218e79){if(_0x218e79){return _0x218e79?{'count':_0x5dd88c,'rows':_0x218e79}:null;}})[_0x2af9('0x2e')](respondWithResult(_0x4bd7a3,null))[_0x2af9('0x4f')](handleError(_0x4bd7a3,null));};