Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / trigger / trigger.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 _0x5f1c=['create','body','user','role','UserProfileSection','find','userProfileId','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','TriggerAllId','Condition','addAnyCondition','TriggerAnyId','findOne','pick','getAllConditions','getAnyConditions','order','hasOwnProperty','TriggerId','Action','getActions','eml-format','rimraf','moment','bluebird','path','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','count','set','apply','reject','destroy','then','get','Triggers','UserProfileResource','name','send','index','Trigger','fieldName','type','key','map','query','keys','filters','intersection','model','attributes','fields','length','nolimit','sort','where','filter','VIRTUAL','includeAll','include','findAll','rows','catch','show','params','rawAttributes','merge','options'];(function(_0x3aaf0a,_0x450970){var _0x33e6bc=function(_0x1db54d){while(--_0x1db54d){_0x3aaf0a['push'](_0x3aaf0a['shift']());}};_0x33e6bc(++_0x450970);}(_0x5f1c,0x74));var _0xc5f1=function(_0x50c980,_0xa9b56c){_0x50c980=_0x50c980-0x0;var _0x1645d6=_0x5f1c[_0x50c980];return _0x1645d6;};'use strict';var emlformat=require(_0xc5f1('0x0'));var rimraf=require(_0xc5f1('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xc5f1('0x2'));var BPromise=require(_0xc5f1('0x3'));var Mustache=require('mustache');var util=require('util');var path=require(_0xc5f1('0x4'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xc5f1('0x5'));var fs=require('fs');var fs_extra=require(_0xc5f1('0x6'));var _=require(_0xc5f1('0x7'));var squel=require(_0xc5f1('0x8'));var crypto=require(_0xc5f1('0x9'));var jsforce=require(_0xc5f1('0xa'));var deskjs=require(_0xc5f1('0xb'));var toCsv=require('to-csv');var querystring=require(_0xc5f1('0xc'));var Papa=require(_0xc5f1('0xd'));var Redis=require(_0xc5f1('0xe'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xc5f1('0xf'));var hardwareService=require(_0xc5f1('0x10'));var logger=require(_0xc5f1('0x11'))('api');var utils=require(_0xc5f1('0x12'));var config=require('../../config/environment');var licenseUtil=require(_0xc5f1('0x13'));var db=require(_0xc5f1('0x14'))['db'];function respondWithStatusCode(_0x3a79d0,_0x6160ce){_0x6160ce=_0x6160ce||0xcc;return function(_0x48cf31){if(_0x48cf31){return _0x3a79d0[_0xc5f1('0x15')](_0x6160ce);}return _0x3a79d0['status'](_0x6160ce)[_0xc5f1('0x16')]();};}function respondWithResult(_0x474feb,_0x4e5fea){_0x4e5fea=_0x4e5fea||0xc8;return function(_0x197699){if(_0x197699){return _0x474feb[_0xc5f1('0x17')](_0x4e5fea)[_0xc5f1('0x18')](_0x197699);}};}function respondWithFilteredResult(_0x251f24,_0xafdfb4){return function(_0x4a18cf){if(_0x4a18cf){var _0x46f072=typeof _0xafdfb4[_0xc5f1('0x19')]===_0xc5f1('0x1a')&&typeof _0xafdfb4[_0xc5f1('0x1b')]===_0xc5f1('0x1a');var _0x4df3d5=_0x4a18cf[_0xc5f1('0x1c')];var _0x4fa229=_0x46f072?0x0:_0xafdfb4[_0xc5f1('0x19')];var _0x20c3f9=_0x46f072?_0x4a18cf[_0xc5f1('0x1c')]:_0xafdfb4[_0xc5f1('0x19')]+_0xafdfb4['limit'];var _0x49e0a5;if(_0x20c3f9>=_0x4df3d5){_0x20c3f9=_0x4df3d5;_0x49e0a5=0xc8;}else{_0x49e0a5=0xce;}_0x251f24[_0xc5f1('0x17')](_0x49e0a5);return _0x251f24[_0xc5f1('0x1d')]('Content-Range',_0x4fa229+'-'+_0x20c3f9+'/'+_0x4df3d5)[_0xc5f1('0x18')](_0x4a18cf);}return null;};}function patchUpdates(_0x16bb74){return function(_0x5c8454){try{jsonpatch[_0xc5f1('0x1e')](_0x5c8454,_0x16bb74,!![]);}catch(_0xdc828d){return BPromise[_0xc5f1('0x1f')](_0xdc828d);}return _0x5c8454['save']();};}function saveUpdates(_0x5acc61,_0x416fe9){return function(_0x442a9b){if(_0x442a9b){return _0x442a9b['update'](_0x5acc61)['then'](function(_0x1c2e85){return _0x1c2e85;});}return null;};}function removeEntity(_0x361932,_0x237226){return function(_0xed5d71){if(_0xed5d71){return _0xed5d71[_0xc5f1('0x20')]()[_0xc5f1('0x21')](function(){var _0x4b2c47=_0xed5d71[_0xc5f1('0x22')]({'plain':!![]});var _0x326930=_0xc5f1('0x23');return db[_0xc5f1('0x24')]['destroy']({'where':{'type':_0x326930,'resourceId':_0x4b2c47['id']}})['then'](function(){return _0xed5d71;});})[_0xc5f1('0x21')](function(){_0x361932[_0xc5f1('0x17')](0xcc)[_0xc5f1('0x16')]();});}};}function handleEntityNotFound(_0x457e33,_0x59f5cc){return function(_0x417280){if(!_0x417280){_0x457e33[_0xc5f1('0x15')](0x194);}return _0x417280;};}function handleError(_0x18bfa2,_0x21c1bf){_0x21c1bf=_0x21c1bf||0x1f4;return function(_0x1f99ad){logger['error'](_0x1f99ad['stack']);if(_0x1f99ad[_0xc5f1('0x25')]){delete _0x1f99ad[_0xc5f1('0x25')];}_0x18bfa2[_0xc5f1('0x17')](_0x21c1bf)[_0xc5f1('0x26')](_0x1f99ad);};}exports[_0xc5f1('0x27')]=function(_0x23356e,_0x17e406){var _0x4e4388={},_0x2a6e8a={},_0x3df1d5={'count':0x0,'rows':[]};var _0x725048=_['map'](db[_0xc5f1('0x28')]['rawAttributes'],function(_0x286e2c){return{'name':_0x286e2c[_0xc5f1('0x29')],'type':_0x286e2c[_0xc5f1('0x2a')][_0xc5f1('0x2b')]};});_0x2a6e8a['model']=_[_0xc5f1('0x2c')](_0x725048,'name');_0x2a6e8a[_0xc5f1('0x2d')]=_[_0xc5f1('0x2e')](_0x23356e[_0xc5f1('0x2d')]);_0x2a6e8a[_0xc5f1('0x2f')]=_[_0xc5f1('0x30')](_0x2a6e8a[_0xc5f1('0x31')],_0x2a6e8a[_0xc5f1('0x2d')]);_0x4e4388[_0xc5f1('0x32')]=_[_0xc5f1('0x30')](_0x2a6e8a[_0xc5f1('0x31')],qs[_0xc5f1('0x33')](_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x33')]));_0x4e4388[_0xc5f1('0x32')]=_0x4e4388['attributes'][_0xc5f1('0x34')]?_0x4e4388['attributes']:_0x2a6e8a[_0xc5f1('0x31')];if(!_0x23356e['query']['hasOwnProperty'](_0xc5f1('0x35'))){_0x4e4388[_0xc5f1('0x1b')]=qs[_0xc5f1('0x1b')](_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x1b')]);_0x4e4388['offset']=qs[_0xc5f1('0x19')](_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x19')]);}_0x4e4388['order']=qs[_0xc5f1('0x36')](_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x36')]);_0x4e4388[_0xc5f1('0x37')]=qs[_0xc5f1('0x2f')](_['pick'](_0x23356e['query'],_0x2a6e8a[_0xc5f1('0x2f')]),_0x725048);if(_0x23356e['query'][_0xc5f1('0x38')]){_0x4e4388[_0xc5f1('0x37')]=_['merge'](_0x4e4388[_0xc5f1('0x37')],{'$or':_[_0xc5f1('0x2c')](_0x725048,function(_0x35c9a0){if(_0x35c9a0[_0xc5f1('0x2a')]!==_0xc5f1('0x39')){var _0x30d6f9={};_0x30d6f9[_0x35c9a0['name']]={'$like':'%'+_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x38')]+'%'};return _0x30d6f9;}})});}_0x4e4388=_['merge']({},_0x4e4388,_0x23356e['options']);var _0x262ee6={'where':_0x4e4388[_0xc5f1('0x37')]};return db[_0xc5f1('0x28')][_0xc5f1('0x1c')](_0x262ee6)[_0xc5f1('0x21')](function(_0x29e485){_0x3df1d5['count']=_0x29e485;if(_0x23356e[_0xc5f1('0x2d')][_0xc5f1('0x3a')]){_0x4e4388[_0xc5f1('0x3b')]=[{'all':!![]}];}return db['Trigger'][_0xc5f1('0x3c')](_0x4e4388);})['then'](function(_0x1512c8){_0x3df1d5[_0xc5f1('0x3d')]=_0x1512c8;return _0x3df1d5;})[_0xc5f1('0x21')](respondWithFilteredResult(_0x17e406,_0x4e4388))[_0xc5f1('0x3e')](handleError(_0x17e406,null));};exports[_0xc5f1('0x3f')]=function(_0x1d82cd,_0x149eec){var _0x2e2466={'raw':![],'where':{'id':_0x1d82cd[_0xc5f1('0x40')]['id']}},_0x56e95b={};_0x56e95b['model']=_[_0xc5f1('0x2e')](db[_0xc5f1('0x28')][_0xc5f1('0x41')]);_0x56e95b[_0xc5f1('0x2d')]=_[_0xc5f1('0x2e')](_0x1d82cd[_0xc5f1('0x2d')]);_0x56e95b[_0xc5f1('0x2f')]=_[_0xc5f1('0x30')](_0x56e95b['model'],_0x56e95b[_0xc5f1('0x2d')]);_0x2e2466[_0xc5f1('0x32')]=_[_0xc5f1('0x30')](_0x56e95b[_0xc5f1('0x31')],qs[_0xc5f1('0x33')](_0x1d82cd[_0xc5f1('0x2d')]['fields']));_0x2e2466[_0xc5f1('0x32')]=_0x2e2466['attributes'][_0xc5f1('0x34')]?_0x2e2466[_0xc5f1('0x32')]:_0x56e95b[_0xc5f1('0x31')];if(_0x1d82cd['query'][_0xc5f1('0x3a')]){_0x2e2466[_0xc5f1('0x3b')]=[{'all':!![]}];}_0x2e2466=_[_0xc5f1('0x42')]({},_0x2e2466,_0x1d82cd[_0xc5f1('0x43')]);return db[_0xc5f1('0x28')]['find'](_0x2e2466)[_0xc5f1('0x21')](handleEntityNotFound(_0x149eec,null))[_0xc5f1('0x21')](respondWithResult(_0x149eec,null))[_0xc5f1('0x3e')](handleError(_0x149eec,null));};exports['create']=function(_0x63ae1e,_0x21881d){return db['Trigger'][_0xc5f1('0x44')](_0x63ae1e[_0xc5f1('0x45')],{})[_0xc5f1('0x21')](function(_0x2f1eb5){var _0x47050c=_0x63ae1e[_0xc5f1('0x46')][_0xc5f1('0x22')]({'plain':!![]});if(!_0x47050c)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x47050c[_0xc5f1('0x47')]==='user'){var _0x3e8283=_0x2f1eb5[_0xc5f1('0x22')]({'plain':!![]});var _0x294be7=_0xc5f1('0x23');return db[_0xc5f1('0x48')][_0xc5f1('0x49')]({'where':{'name':_0x294be7,'userProfileId':_0x47050c[_0xc5f1('0x4a')]},'raw':!![]})[_0xc5f1('0x21')](function(_0x65e2db){if(_0x65e2db&&_0x65e2db[_0xc5f1('0x4b')]===0x0){return db[_0xc5f1('0x24')]['create']({'name':_0x3e8283[_0xc5f1('0x25')],'resourceId':_0x3e8283['id'],'type':_0x65e2db[_0xc5f1('0x25')],'sectionId':_0x65e2db['id']},{})[_0xc5f1('0x21')](function(){return _0x2f1eb5;});}else{return _0x2f1eb5;}})[_0xc5f1('0x3e')](function(_0x1ed8d6){logger[_0xc5f1('0x4c')](_0xc5f1('0x4d'),_0x1ed8d6);throw _0x1ed8d6;});}return _0x2f1eb5;})[_0xc5f1('0x21')](respondWithResult(_0x21881d,0xc9))['catch'](handleError(_0x21881d,null));};exports[_0xc5f1('0x4e')]=function(_0x759813,_0x57b509){if(_0x759813['body']['id']){delete _0x759813[_0xc5f1('0x45')]['id'];}return db[_0xc5f1('0x28')]['find']({'where':{'id':_0x759813[_0xc5f1('0x40')]['id']}})[_0xc5f1('0x21')](handleEntityNotFound(_0x57b509,null))[_0xc5f1('0x21')](saveUpdates(_0x759813['body'],null))[_0xc5f1('0x21')](respondWithResult(_0x57b509,null))[_0xc5f1('0x3e')](handleError(_0x57b509,null));};exports['destroy']=function(_0x38bcab,_0x18cb01){return db[_0xc5f1('0x28')][_0xc5f1('0x49')]({'where':{'id':_0x38bcab[_0xc5f1('0x40')]['id']}})['then'](handleEntityNotFound(_0x18cb01,null))[_0xc5f1('0x21')](removeEntity(_0x18cb01,null))[_0xc5f1('0x3e')](handleError(_0x18cb01,null));};exports['addAllCondition']=function(_0x275e9a,_0xf568e3,_0x43365d){if(_0x275e9a[_0xc5f1('0x45')]['id']){delete _0x275e9a[_0xc5f1('0x45')]['id'];}return db[_0xc5f1('0x28')]['find']({'where':{'id':_0x275e9a[_0xc5f1('0x40')]['id']}})[_0xc5f1('0x21')](handleEntityNotFound(_0xf568e3,null))[_0xc5f1('0x21')](function(_0x25b278){if(_0x25b278){_0x275e9a[_0xc5f1('0x45')][_0xc5f1('0x4f')]=_0x25b278['id'];return db[_0xc5f1('0x50')][_0xc5f1('0x44')](_0x275e9a['body']);}})['then'](respondWithResult(_0xf568e3,null))[_0xc5f1('0x3e')](handleError(_0xf568e3,null));};exports[_0xc5f1('0x51')]=function(_0x54106c,_0x5d4037,_0x34101e){if(_0x54106c['body']['id']){delete _0x54106c[_0xc5f1('0x45')]['id'];}return db[_0xc5f1('0x28')][_0xc5f1('0x49')]({'where':{'id':_0x54106c[_0xc5f1('0x40')]['id']}})[_0xc5f1('0x21')](handleEntityNotFound(_0x5d4037,null))[_0xc5f1('0x21')](function(_0x1529af){if(_0x1529af){_0x54106c[_0xc5f1('0x45')][_0xc5f1('0x52')]=_0x1529af['id'];return db[_0xc5f1('0x50')][_0xc5f1('0x44')](_0x54106c[_0xc5f1('0x45')]);}})[_0xc5f1('0x21')](respondWithResult(_0x5d4037,null))[_0xc5f1('0x3e')](handleError(_0x5d4037,null));};exports['getAllConditions']=function(_0x4778c2,_0x14d08e,_0x39e842){var _0x4be24b={};var _0x3549f9={};var _0x37e220;var _0x2e4a95;return db[_0xc5f1('0x28')][_0xc5f1('0x53')]({'where':{'id':_0x4778c2['params']['id']}})['then'](handleEntityNotFound(_0x14d08e,null))[_0xc5f1('0x21')](function(_0x3ae577){if(_0x3ae577){_0x37e220=_0x3ae577;_0x3549f9['model']=_[_0xc5f1('0x2e')](db[_0xc5f1('0x50')][_0xc5f1('0x41')]);_0x3549f9[_0xc5f1('0x2d')]=_['keys'](_0x4778c2[_0xc5f1('0x2d')]);_0x3549f9[_0xc5f1('0x2f')]=_[_0xc5f1('0x30')](_0x3549f9[_0xc5f1('0x31')],_0x3549f9[_0xc5f1('0x2d')]);_0x4be24b[_0xc5f1('0x32')]=_[_0xc5f1('0x30')](_0x3549f9[_0xc5f1('0x31')],qs['fields'](_0x4778c2[_0xc5f1('0x2d')][_0xc5f1('0x33')]));_0x4be24b[_0xc5f1('0x32')]=_0x4be24b[_0xc5f1('0x32')]['length']?_0x4be24b[_0xc5f1('0x32')]:_0x3549f9[_0xc5f1('0x31')];_0x4be24b['order']=qs[_0xc5f1('0x36')](_0x4778c2['query'][_0xc5f1('0x36')]);_0x4be24b['where']=qs[_0xc5f1('0x2f')](_[_0xc5f1('0x54')](_0x4778c2[_0xc5f1('0x2d')],_0x3549f9[_0xc5f1('0x2f')]));if(_0x4778c2[_0xc5f1('0x2d')]['filter']){_0x4be24b[_0xc5f1('0x37')]=_[_0xc5f1('0x42')](_0x4be24b['where'],{'$or':_['map'](_0x4be24b[_0xc5f1('0x32')],function(_0x86bbe6){var _0x718e2f={};_0x718e2f[_0x86bbe6]={'$like':'%'+_0x4778c2[_0xc5f1('0x2d')][_0xc5f1('0x38')]+'%'};return _0x718e2f;})});}_0x4be24b=_['merge']({},_0x4be24b,_0x4778c2['options']);return _0x37e220[_0xc5f1('0x55')](_0x4be24b);}})[_0xc5f1('0x21')](function(_0x5ab130){if(_0x5ab130){_0x2e4a95=_0x5ab130[_0xc5f1('0x34')];if(!_0x4778c2[_0xc5f1('0x2d')]['hasOwnProperty'](_0xc5f1('0x35'))){_0x4be24b[_0xc5f1('0x1b')]=qs[_0xc5f1('0x1b')](_0x4778c2['query'][_0xc5f1('0x1b')]);_0x4be24b[_0xc5f1('0x19')]=qs[_0xc5f1('0x19')](_0x4778c2[_0xc5f1('0x2d')]['offset']);}return _0x37e220['getAllConditions'](_0x4be24b);}})[_0xc5f1('0x21')](function(_0x34def2){if(_0x34def2){return _0x34def2?{'count':_0x2e4a95,'rows':_0x34def2}:null;}})['then'](respondWithResult(_0x14d08e,null))[_0xc5f1('0x3e')](handleError(_0x14d08e,null));};exports[_0xc5f1('0x56')]=function(_0x473118,_0x4b0744,_0x3f75a1){var _0x37983b={};var _0x42a2fd={};var _0x1ecac3;var _0x3b0667;return db[_0xc5f1('0x28')][_0xc5f1('0x53')]({'where':{'id':_0x473118[_0xc5f1('0x40')]['id']}})[_0xc5f1('0x21')](handleEntityNotFound(_0x4b0744,null))[_0xc5f1('0x21')](function(_0x3ccfa1){if(_0x3ccfa1){_0x1ecac3=_0x3ccfa1;_0x42a2fd[_0xc5f1('0x31')]=_[_0xc5f1('0x2e')](db['Condition'][_0xc5f1('0x41')]);_0x42a2fd[_0xc5f1('0x2d')]=_[_0xc5f1('0x2e')](_0x473118['query']);_0x42a2fd[_0xc5f1('0x2f')]=_[_0xc5f1('0x30')](_0x42a2fd['model'],_0x42a2fd['query']);_0x37983b['attributes']=_[_0xc5f1('0x30')](_0x42a2fd[_0xc5f1('0x31')],qs[_0xc5f1('0x33')](_0x473118[_0xc5f1('0x2d')]['fields']));_0x37983b[_0xc5f1('0x32')]=_0x37983b[_0xc5f1('0x32')][_0xc5f1('0x34')]?_0x37983b[_0xc5f1('0x32')]:_0x42a2fd[_0xc5f1('0x31')];_0x37983b[_0xc5f1('0x57')]=qs[_0xc5f1('0x36')](_0x473118[_0xc5f1('0x2d')][_0xc5f1('0x36')]);_0x37983b[_0xc5f1('0x37')]=qs[_0xc5f1('0x2f')](_[_0xc5f1('0x54')](_0x473118[_0xc5f1('0x2d')],_0x42a2fd[_0xc5f1('0x2f')]));if(_0x473118[_0xc5f1('0x2d')][_0xc5f1('0x38')]){_0x37983b[_0xc5f1('0x37')]=_[_0xc5f1('0x42')](_0x37983b['where'],{'$or':_[_0xc5f1('0x2c')](_0x37983b[_0xc5f1('0x32')],function(_0x41c9a8){var _0x443cd9={};_0x443cd9[_0x41c9a8]={'$like':'%'+_0x473118['query'][_0xc5f1('0x38')]+'%'};return _0x443cd9;})});}_0x37983b=_['merge']({},_0x37983b,_0x473118[_0xc5f1('0x43')]);return _0x1ecac3['getAnyConditions'](_0x37983b);}})[_0xc5f1('0x21')](function(_0x5e60f9){if(_0x5e60f9){_0x3b0667=_0x5e60f9['length'];if(!_0x473118[_0xc5f1('0x2d')][_0xc5f1('0x58')](_0xc5f1('0x35'))){_0x37983b['limit']=qs['limit'](_0x473118[_0xc5f1('0x2d')]['limit']);_0x37983b[_0xc5f1('0x19')]=qs[_0xc5f1('0x19')](_0x473118['query'][_0xc5f1('0x19')]);}return _0x1ecac3[_0xc5f1('0x56')](_0x37983b);}})[_0xc5f1('0x21')](function(_0x11858d){if(_0x11858d){return _0x11858d?{'count':_0x3b0667,'rows':_0x11858d}:null;}})[_0xc5f1('0x21')](respondWithResult(_0x4b0744,null))[_0xc5f1('0x3e')](handleError(_0x4b0744,null));};exports['addAction']=function(_0x378eb3,_0x2f6655,_0xef72a6){if(_0x378eb3[_0xc5f1('0x45')]['id']){delete _0x378eb3[_0xc5f1('0x45')]['id'];}return db[_0xc5f1('0x28')][_0xc5f1('0x49')]({'where':{'id':_0x378eb3[_0xc5f1('0x40')]['id']}})['then'](handleEntityNotFound(_0x2f6655,null))[_0xc5f1('0x21')](function(_0x305ce0){if(_0x305ce0){_0x378eb3[_0xc5f1('0x45')][_0xc5f1('0x59')]=_0x305ce0['id'];return db[_0xc5f1('0x5a')]['create'](_0x378eb3[_0xc5f1('0x45')]);}})[_0xc5f1('0x21')](respondWithResult(_0x2f6655,null))[_0xc5f1('0x3e')](handleError(_0x2f6655,null));};exports[_0xc5f1('0x5b')]=function(_0x4c0be1,_0x317945,_0x11dbb4){var _0x1bc3c6={};var _0x122b9c={};var _0x1df614;var _0x37e82e;return db[_0xc5f1('0x28')][_0xc5f1('0x53')]({'where':{'id':_0x4c0be1[_0xc5f1('0x40')]['id']}})[_0xc5f1('0x21')](handleEntityNotFound(_0x317945,null))['then'](function(_0x46d131){if(_0x46d131){_0x1df614=_0x46d131;_0x122b9c[_0xc5f1('0x31')]=_[_0xc5f1('0x2e')](db[_0xc5f1('0x5a')][_0xc5f1('0x41')]);_0x122b9c[_0xc5f1('0x2d')]=_['keys'](_0x4c0be1[_0xc5f1('0x2d')]);_0x122b9c[_0xc5f1('0x2f')]=_[_0xc5f1('0x30')](_0x122b9c[_0xc5f1('0x31')],_0x122b9c[_0xc5f1('0x2d')]);_0x1bc3c6['attributes']=_[_0xc5f1('0x30')](_0x122b9c[_0xc5f1('0x31')],qs[_0xc5f1('0x33')](_0x4c0be1[_0xc5f1('0x2d')]['fields']));_0x1bc3c6[_0xc5f1('0x32')]=_0x1bc3c6[_0xc5f1('0x32')][_0xc5f1('0x34')]?_0x1bc3c6[_0xc5f1('0x32')]:_0x122b9c[_0xc5f1('0x31')];_0x1bc3c6['order']=qs[_0xc5f1('0x36')](_0x4c0be1[_0xc5f1('0x2d')][_0xc5f1('0x36')]);_0x1bc3c6[_0xc5f1('0x37')]=qs[_0xc5f1('0x2f')](_[_0xc5f1('0x54')](_0x4c0be1[_0xc5f1('0x2d')],_0x122b9c[_0xc5f1('0x2f')]));if(_0x4c0be1['query']['filter']){_0x1bc3c6[_0xc5f1('0x37')]=_['merge'](_0x1bc3c6[_0xc5f1('0x37')],{'$or':_[_0xc5f1('0x2c')](_0x1bc3c6[_0xc5f1('0x32')],function(_0x4ca0f5){var _0x41ab8a={};_0x41ab8a[_0x4ca0f5]={'$like':'%'+_0x4c0be1[_0xc5f1('0x2d')][_0xc5f1('0x38')]+'%'};return _0x41ab8a;})});}_0x1bc3c6=_[_0xc5f1('0x42')]({},_0x1bc3c6,_0x4c0be1[_0xc5f1('0x43')]);return _0x1df614[_0xc5f1('0x5b')](_0x1bc3c6);}})[_0xc5f1('0x21')](function(_0x4adf67){if(_0x4adf67){_0x37e82e=_0x4adf67[_0xc5f1('0x34')];if(!_0x4c0be1[_0xc5f1('0x2d')][_0xc5f1('0x58')]('nolimit')){_0x1bc3c6[_0xc5f1('0x1b')]=qs['limit'](_0x4c0be1[_0xc5f1('0x2d')]['limit']);_0x1bc3c6[_0xc5f1('0x19')]=qs['offset'](_0x4c0be1[_0xc5f1('0x2d')][_0xc5f1('0x19')]);}return _0x1df614[_0xc5f1('0x5b')](_0x1bc3c6);}})[_0xc5f1('0x21')](function(_0x9d1402){if(_0x9d1402){return _0x9d1402?{'count':_0x37e82e,'rows':_0x9d1402}:null;}})[_0xc5f1('0x21')](respondWithResult(_0x317945,null))[_0xc5f1('0x3e')](handleError(_0x317945,null));};