ca53999b7ac457b42a02cf84a0f9be0abe333986
[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 _0x90de=['includeAll','findAll','rows','catch','show','include','find','create','body','get','user','autoAssociation','error','update','params','destroy','addAllCondition','TriggerAllId','Condition','addAnyCondition','TriggerAnyId','getAllConditions','findOne','order','nolimit','getAnyConditions','addAction','TriggerId','getActions','Action','eml-format','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','reject','then','Triggers','UserProfileResource','stack','name','send','index','map','Trigger','rawAttributes','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','sort','where','pick','filter','merge','VIRTUAL','options'];(function(_0xeb2d61,_0x2837f7){var _0x38d3d0=function(_0x58b02c){while(--_0x58b02c){_0xeb2d61['push'](_0xeb2d61['shift']());}};_0x38d3d0(++_0x2837f7);}(_0x90de,0x192));var _0xe90d=function(_0x60fa35,_0x12abc6){_0x60fa35=_0x60fa35-0x0;var _0x2d9933=_0x90de[_0x60fa35];return _0x2d9933;};'use strict';var emlformat=require(_0xe90d('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xe90d('0x1'));var rp=require(_0xe90d('0x2'));var moment=require(_0xe90d('0x3'));var BPromise=require(_0xe90d('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0xe90d('0x5'));var sox=require(_0xe90d('0x6'));var csv=require(_0xe90d('0x7'));var ejs=require(_0xe90d('0x8'));var fs=require('fs');var fs_extra=require(_0xe90d('0x9'));var _=require(_0xe90d('0xa'));var squel=require(_0xe90d('0xb'));var crypto=require(_0xe90d('0xc'));var jsforce=require(_0xe90d('0xd'));var deskjs=require(_0xe90d('0xe'));var toCsv=require(_0xe90d('0x7'));var querystring=require(_0xe90d('0xf'));var Papa=require(_0xe90d('0x10'));var Redis=require(_0xe90d('0x11'));var authService=require(_0xe90d('0x12'));var qs=require(_0xe90d('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xe90d('0x14'))(_0xe90d('0x15'));var utils=require(_0xe90d('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xe90d('0x17'));var db=require(_0xe90d('0x18'))['db'];function respondWithStatusCode(_0x12756b,_0x57dd2c){_0x57dd2c=_0x57dd2c||0xcc;return function(_0x1a870e){if(_0x1a870e){return _0x12756b[_0xe90d('0x19')](_0x57dd2c);}return _0x12756b[_0xe90d('0x1a')](_0x57dd2c)[_0xe90d('0x1b')]();};}function respondWithResult(_0x186005,_0x23cc04){_0x23cc04=_0x23cc04||0xc8;return function(_0x7104d5){if(_0x7104d5){return _0x186005[_0xe90d('0x1a')](_0x23cc04)['json'](_0x7104d5);}};}function respondWithFilteredResult(_0x564d25,_0x10dcb2){return function(_0x30ec78){if(_0x30ec78){var _0x27176c=typeof _0x10dcb2[_0xe90d('0x1c')]===_0xe90d('0x1d')&&typeof _0x10dcb2[_0xe90d('0x1e')]===_0xe90d('0x1d');var _0x342aef=_0x30ec78[_0xe90d('0x1f')];var _0x8e740c=_0x27176c?0x0:_0x10dcb2[_0xe90d('0x1c')];var _0x5ce8a8=_0x27176c?_0x30ec78['count']:_0x10dcb2[_0xe90d('0x1c')]+_0x10dcb2[_0xe90d('0x1e')];var _0x536a73;if(_0x5ce8a8>=_0x342aef){_0x5ce8a8=_0x342aef;_0x536a73=0xc8;}else{_0x536a73=0xce;}_0x564d25[_0xe90d('0x1a')](_0x536a73);return _0x564d25[_0xe90d('0x20')](_0xe90d('0x21'),_0x8e740c+'-'+_0x5ce8a8+'/'+_0x342aef)[_0xe90d('0x22')](_0x30ec78);}return null;};}function patchUpdates(_0xf3a823){return function(_0x1c42c1){try{jsonpatch[_0xe90d('0x23')](_0x1c42c1,_0xf3a823,!![]);}catch(_0x3a4f65){return BPromise[_0xe90d('0x24')](_0x3a4f65);}return _0x1c42c1['save']();};}function saveUpdates(_0x21f35a,_0x3483e7){return function(_0x5c4f10){if(_0x5c4f10){return _0x5c4f10['update'](_0x21f35a)[_0xe90d('0x25')](function(_0xb76f66){return _0xb76f66;});}return null;};}function removeEntity(_0x4c9741,_0xd1e298){return function(_0x4d2001){if(_0x4d2001){return _0x4d2001['destroy']()[_0xe90d('0x25')](function(){var _0x333ff7=_0x4d2001['get']({'plain':!![]});var _0x5ddf5d=_0xe90d('0x26');return db[_0xe90d('0x27')]['destroy']({'where':{'type':_0x5ddf5d,'resourceId':_0x333ff7['id']}})[_0xe90d('0x25')](function(){return _0x4d2001;});})[_0xe90d('0x25')](function(){_0x4c9741[_0xe90d('0x1a')](0xcc)[_0xe90d('0x1b')]();});}};}function handleEntityNotFound(_0x1cb9fe,_0x5c5273){return function(_0x325246){if(!_0x325246){_0x1cb9fe[_0xe90d('0x19')](0x194);}return _0x325246;};}function handleError(_0xcfe6be,_0x4e996f){_0x4e996f=_0x4e996f||0x1f4;return function(_0x62cfc0){logger['error'](_0x62cfc0[_0xe90d('0x28')]);if(_0x62cfc0[_0xe90d('0x29')]){delete _0x62cfc0[_0xe90d('0x29')];}_0xcfe6be[_0xe90d('0x1a')](_0x4e996f)[_0xe90d('0x2a')](_0x62cfc0);};}exports[_0xe90d('0x2b')]=function(_0x3a1ae5,_0x508314){var _0x2e6b11={},_0x54e21e={},_0x52ae61={'count':0x0,'rows':[]};var _0x287806=_[_0xe90d('0x2c')](db[_0xe90d('0x2d')][_0xe90d('0x2e')],function(_0x1c5151){return{'name':_0x1c5151['fieldName'],'type':_0x1c5151['type']['key']};});_0x54e21e[_0xe90d('0x2f')]=_[_0xe90d('0x2c')](_0x287806,_0xe90d('0x29'));_0x54e21e[_0xe90d('0x30')]=_[_0xe90d('0x31')](_0x3a1ae5[_0xe90d('0x30')]);_0x54e21e[_0xe90d('0x32')]=_[_0xe90d('0x33')](_0x54e21e['model'],_0x54e21e[_0xe90d('0x30')]);_0x2e6b11['attributes']=_['intersection'](_0x54e21e['model'],qs[_0xe90d('0x34')](_0x3a1ae5[_0xe90d('0x30')][_0xe90d('0x34')]));_0x2e6b11[_0xe90d('0x35')]=_0x2e6b11[_0xe90d('0x35')][_0xe90d('0x36')]?_0x2e6b11[_0xe90d('0x35')]:_0x54e21e[_0xe90d('0x2f')];if(!_0x3a1ae5[_0xe90d('0x30')][_0xe90d('0x37')]('nolimit')){_0x2e6b11[_0xe90d('0x1e')]=qs['limit'](_0x3a1ae5['query'][_0xe90d('0x1e')]);_0x2e6b11['offset']=qs[_0xe90d('0x1c')](_0x3a1ae5[_0xe90d('0x30')]['offset']);}_0x2e6b11['order']=qs[_0xe90d('0x38')](_0x3a1ae5[_0xe90d('0x30')][_0xe90d('0x38')]);_0x2e6b11[_0xe90d('0x39')]=qs['filters'](_[_0xe90d('0x3a')](_0x3a1ae5['query'],_0x54e21e[_0xe90d('0x32')]),_0x287806);if(_0x3a1ae5['query'][_0xe90d('0x3b')]){_0x2e6b11[_0xe90d('0x39')]=_[_0xe90d('0x3c')](_0x2e6b11[_0xe90d('0x39')],{'$or':_[_0xe90d('0x2c')](_0x287806,function(_0x1e786e){if(_0x1e786e['type']!==_0xe90d('0x3d')){var _0x478e10={};_0x478e10[_0x1e786e['name']]={'$like':'%'+_0x3a1ae5[_0xe90d('0x30')][_0xe90d('0x3b')]+'%'};return _0x478e10;}})});}_0x2e6b11=_[_0xe90d('0x3c')]({},_0x2e6b11,_0x3a1ae5[_0xe90d('0x3e')]);var _0x271cfe={'where':_0x2e6b11[_0xe90d('0x39')]};return db[_0xe90d('0x2d')][_0xe90d('0x1f')](_0x271cfe)[_0xe90d('0x25')](function(_0x4b4317){_0x52ae61[_0xe90d('0x1f')]=_0x4b4317;if(_0x3a1ae5[_0xe90d('0x30')][_0xe90d('0x3f')]){_0x2e6b11['include']=[{'all':!![]}];}return db['Trigger'][_0xe90d('0x40')](_0x2e6b11);})[_0xe90d('0x25')](function(_0x431bc8){_0x52ae61[_0xe90d('0x41')]=_0x431bc8;return _0x52ae61;})[_0xe90d('0x25')](respondWithFilteredResult(_0x508314,_0x2e6b11))[_0xe90d('0x42')](handleError(_0x508314,null));};exports[_0xe90d('0x43')]=function(_0x40e654,_0x3ebb31){var _0x222d2f={'raw':![],'where':{'id':_0x40e654['params']['id']}},_0x1fa7f5={};_0x1fa7f5[_0xe90d('0x2f')]=_[_0xe90d('0x31')](db[_0xe90d('0x2d')]['rawAttributes']);_0x1fa7f5[_0xe90d('0x30')]=_[_0xe90d('0x31')](_0x40e654['query']);_0x1fa7f5['filters']=_[_0xe90d('0x33')](_0x1fa7f5[_0xe90d('0x2f')],_0x1fa7f5[_0xe90d('0x30')]);_0x222d2f[_0xe90d('0x35')]=_['intersection'](_0x1fa7f5[_0xe90d('0x2f')],qs[_0xe90d('0x34')](_0x40e654[_0xe90d('0x30')]['fields']));_0x222d2f[_0xe90d('0x35')]=_0x222d2f[_0xe90d('0x35')][_0xe90d('0x36')]?_0x222d2f[_0xe90d('0x35')]:_0x1fa7f5[_0xe90d('0x2f')];if(_0x40e654[_0xe90d('0x30')][_0xe90d('0x3f')]){_0x222d2f[_0xe90d('0x44')]=[{'all':!![]}];}_0x222d2f=_['merge']({},_0x222d2f,_0x40e654[_0xe90d('0x3e')]);return db[_0xe90d('0x2d')][_0xe90d('0x45')](_0x222d2f)[_0xe90d('0x25')](handleEntityNotFound(_0x3ebb31,null))[_0xe90d('0x25')](respondWithResult(_0x3ebb31,null))[_0xe90d('0x42')](handleError(_0x3ebb31,null));};exports[_0xe90d('0x46')]=function(_0x25b4ed,_0x2afdbe){return db[_0xe90d('0x2d')][_0xe90d('0x46')](_0x25b4ed[_0xe90d('0x47')],{})['then'](function(_0x9c1ad2){var _0x12446d=_0x25b4ed['user'][_0xe90d('0x48')]({'plain':!![]});if(!_0x12446d)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x12446d['role']===_0xe90d('0x49')){var _0xf463f=_0x9c1ad2[_0xe90d('0x48')]({'plain':!![]});var _0x307515='Triggers';return db['UserProfileSection'][_0xe90d('0x45')]({'where':{'name':_0x307515,'userProfileId':_0x12446d['userProfileId']},'raw':!![]})[_0xe90d('0x25')](function(_0x414148){if(_0x414148&&_0x414148[_0xe90d('0x4a')]===0x0){return db[_0xe90d('0x27')][_0xe90d('0x46')]({'name':_0xf463f[_0xe90d('0x29')],'resourceId':_0xf463f['id'],'type':_0x414148[_0xe90d('0x29')],'sectionId':_0x414148['id']},{})[_0xe90d('0x25')](function(){return _0x9c1ad2;});}else{return _0x9c1ad2;}})[_0xe90d('0x42')](function(_0xf89a4){logger[_0xe90d('0x4b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0xf89a4);throw _0xf89a4;});}return _0x9c1ad2;})[_0xe90d('0x25')](respondWithResult(_0x2afdbe,0xc9))[_0xe90d('0x42')](handleError(_0x2afdbe,null));};exports[_0xe90d('0x4c')]=function(_0x1b8738,_0x58f8b2){if(_0x1b8738[_0xe90d('0x47')]['id']){delete _0x1b8738['body']['id'];}return db[_0xe90d('0x2d')][_0xe90d('0x45')]({'where':{'id':_0x1b8738[_0xe90d('0x4d')]['id']}})['then'](handleEntityNotFound(_0x58f8b2,null))['then'](saveUpdates(_0x1b8738[_0xe90d('0x47')],null))[_0xe90d('0x25')](respondWithResult(_0x58f8b2,null))[_0xe90d('0x42')](handleError(_0x58f8b2,null));};exports[_0xe90d('0x4e')]=function(_0x286186,_0x21c2de){return db[_0xe90d('0x2d')][_0xe90d('0x45')]({'where':{'id':_0x286186[_0xe90d('0x4d')]['id']}})['then'](handleEntityNotFound(_0x21c2de,null))[_0xe90d('0x25')](removeEntity(_0x21c2de,null))[_0xe90d('0x42')](handleError(_0x21c2de,null));};exports[_0xe90d('0x4f')]=function(_0x3e7426,_0x4af82c,_0x34b8bf){if(_0x3e7426[_0xe90d('0x47')]['id']){delete _0x3e7426['body']['id'];}return db[_0xe90d('0x2d')]['find']({'where':{'id':_0x3e7426['params']['id']}})['then'](handleEntityNotFound(_0x4af82c,null))[_0xe90d('0x25')](function(_0x7fcbb5){if(_0x7fcbb5){_0x3e7426[_0xe90d('0x47')][_0xe90d('0x50')]=_0x7fcbb5['id'];return db[_0xe90d('0x51')][_0xe90d('0x46')](_0x3e7426[_0xe90d('0x47')]);}})[_0xe90d('0x25')](respondWithResult(_0x4af82c,null))[_0xe90d('0x42')](handleError(_0x4af82c,null));};exports[_0xe90d('0x52')]=function(_0x480ba9,_0x4f5755,_0x18252f){if(_0x480ba9['body']['id']){delete _0x480ba9['body']['id'];}return db[_0xe90d('0x2d')][_0xe90d('0x45')]({'where':{'id':_0x480ba9[_0xe90d('0x4d')]['id']}})[_0xe90d('0x25')](handleEntityNotFound(_0x4f5755,null))[_0xe90d('0x25')](function(_0x513181){if(_0x513181){_0x480ba9['body'][_0xe90d('0x53')]=_0x513181['id'];return db['Condition']['create'](_0x480ba9[_0xe90d('0x47')]);}})[_0xe90d('0x25')](respondWithResult(_0x4f5755,null))[_0xe90d('0x42')](handleError(_0x4f5755,null));};exports[_0xe90d('0x54')]=function(_0x17c0ea,_0x539ebe,_0xa6f5c){var _0x577920={};var _0x50d962={};var _0x385211;var _0x2312e1;return db[_0xe90d('0x2d')][_0xe90d('0x55')]({'where':{'id':_0x17c0ea[_0xe90d('0x4d')]['id']}})[_0xe90d('0x25')](handleEntityNotFound(_0x539ebe,null))[_0xe90d('0x25')](function(_0x4b84be){if(_0x4b84be){_0x385211=_0x4b84be;_0x50d962[_0xe90d('0x2f')]=_['keys'](db['Condition'][_0xe90d('0x2e')]);_0x50d962[_0xe90d('0x30')]=_['keys'](_0x17c0ea['query']);_0x50d962[_0xe90d('0x32')]=_['intersection'](_0x50d962[_0xe90d('0x2f')],_0x50d962[_0xe90d('0x30')]);_0x577920[_0xe90d('0x35')]=_['intersection'](_0x50d962[_0xe90d('0x2f')],qs[_0xe90d('0x34')](_0x17c0ea[_0xe90d('0x30')][_0xe90d('0x34')]));_0x577920['attributes']=_0x577920['attributes'][_0xe90d('0x36')]?_0x577920['attributes']:_0x50d962[_0xe90d('0x2f')];_0x577920[_0xe90d('0x56')]=qs['sort'](_0x17c0ea['query'][_0xe90d('0x38')]);_0x577920[_0xe90d('0x39')]=qs[_0xe90d('0x32')](_[_0xe90d('0x3a')](_0x17c0ea[_0xe90d('0x30')],_0x50d962['filters']));if(_0x17c0ea[_0xe90d('0x30')]['filter']){_0x577920[_0xe90d('0x39')]=_[_0xe90d('0x3c')](_0x577920[_0xe90d('0x39')],{'$or':_[_0xe90d('0x2c')](_0x577920['attributes'],function(_0x4c1055){var _0x453526={};_0x453526[_0x4c1055]={'$like':'%'+_0x17c0ea[_0xe90d('0x30')]['filter']+'%'};return _0x453526;})});}_0x577920=_[_0xe90d('0x3c')]({},_0x577920,_0x17c0ea[_0xe90d('0x3e')]);return _0x385211['getAllConditions'](_0x577920);}})[_0xe90d('0x25')](function(_0x4223e9){if(_0x4223e9){_0x2312e1=_0x4223e9[_0xe90d('0x36')];if(!_0x17c0ea[_0xe90d('0x30')][_0xe90d('0x37')](_0xe90d('0x57'))){_0x577920[_0xe90d('0x1e')]=qs[_0xe90d('0x1e')](_0x17c0ea[_0xe90d('0x30')][_0xe90d('0x1e')]);_0x577920['offset']=qs['offset'](_0x17c0ea[_0xe90d('0x30')][_0xe90d('0x1c')]);}return _0x385211['getAllConditions'](_0x577920);}})[_0xe90d('0x25')](function(_0x25ba8a){if(_0x25ba8a){return _0x25ba8a?{'count':_0x2312e1,'rows':_0x25ba8a}:null;}})[_0xe90d('0x25')](respondWithResult(_0x539ebe,null))['catch'](handleError(_0x539ebe,null));};exports[_0xe90d('0x58')]=function(_0x24ddf4,_0x34323e,_0x10997d){var _0x4f49a9={};var _0x314ba3={};var _0x56a265;var _0x1a041b;return db['Trigger'][_0xe90d('0x55')]({'where':{'id':_0x24ddf4[_0xe90d('0x4d')]['id']}})[_0xe90d('0x25')](handleEntityNotFound(_0x34323e,null))[_0xe90d('0x25')](function(_0x4f9e74){if(_0x4f9e74){_0x56a265=_0x4f9e74;_0x314ba3['model']=_['keys'](db[_0xe90d('0x51')][_0xe90d('0x2e')]);_0x314ba3[_0xe90d('0x30')]=_['keys'](_0x24ddf4['query']);_0x314ba3['filters']=_['intersection'](_0x314ba3['model'],_0x314ba3[_0xe90d('0x30')]);_0x4f49a9[_0xe90d('0x35')]=_[_0xe90d('0x33')](_0x314ba3[_0xe90d('0x2f')],qs['fields'](_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x34')]));_0x4f49a9['attributes']=_0x4f49a9[_0xe90d('0x35')][_0xe90d('0x36')]?_0x4f49a9[_0xe90d('0x35')]:_0x314ba3[_0xe90d('0x2f')];_0x4f49a9[_0xe90d('0x56')]=qs['sort'](_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x38')]);_0x4f49a9['where']=qs['filters'](_['pick'](_0x24ddf4[_0xe90d('0x30')],_0x314ba3[_0xe90d('0x32')]));if(_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x3b')]){_0x4f49a9[_0xe90d('0x39')]=_['merge'](_0x4f49a9[_0xe90d('0x39')],{'$or':_[_0xe90d('0x2c')](_0x4f49a9[_0xe90d('0x35')],function(_0x30f20f){var _0x429d66={};_0x429d66[_0x30f20f]={'$like':'%'+_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x3b')]+'%'};return _0x429d66;})});}_0x4f49a9=_['merge']({},_0x4f49a9,_0x24ddf4[_0xe90d('0x3e')]);return _0x56a265[_0xe90d('0x58')](_0x4f49a9);}})['then'](function(_0x429dba){if(_0x429dba){_0x1a041b=_0x429dba[_0xe90d('0x36')];if(!_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x37')](_0xe90d('0x57'))){_0x4f49a9[_0xe90d('0x1e')]=qs[_0xe90d('0x1e')](_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x1e')]);_0x4f49a9[_0xe90d('0x1c')]=qs[_0xe90d('0x1c')](_0x24ddf4[_0xe90d('0x30')][_0xe90d('0x1c')]);}return _0x56a265[_0xe90d('0x58')](_0x4f49a9);}})['then'](function(_0x526828){if(_0x526828){return _0x526828?{'count':_0x1a041b,'rows':_0x526828}:null;}})[_0xe90d('0x25')](respondWithResult(_0x34323e,null))[_0xe90d('0x42')](handleError(_0x34323e,null));};exports[_0xe90d('0x59')]=function(_0x38c3d1,_0xd3179b,_0x16f489){if(_0x38c3d1[_0xe90d('0x47')]['id']){delete _0x38c3d1[_0xe90d('0x47')]['id'];}return db['Trigger'][_0xe90d('0x45')]({'where':{'id':_0x38c3d1[_0xe90d('0x4d')]['id']}})[_0xe90d('0x25')](handleEntityNotFound(_0xd3179b,null))['then'](function(_0x1fe124){if(_0x1fe124){_0x38c3d1['body'][_0xe90d('0x5a')]=_0x1fe124['id'];return db['Action'][_0xe90d('0x46')](_0x38c3d1[_0xe90d('0x47')]);}})[_0xe90d('0x25')](respondWithResult(_0xd3179b,null))['catch'](handleError(_0xd3179b,null));};exports[_0xe90d('0x5b')]=function(_0x87a053,_0x4302d1,_0x120524){var _0x567cda={};var _0x3ab780={};var _0x5a1ab0;var _0x375dd7;return db[_0xe90d('0x2d')][_0xe90d('0x55')]({'where':{'id':_0x87a053[_0xe90d('0x4d')]['id']}})[_0xe90d('0x25')](handleEntityNotFound(_0x4302d1,null))['then'](function(_0x21997f){if(_0x21997f){_0x5a1ab0=_0x21997f;_0x3ab780[_0xe90d('0x2f')]=_[_0xe90d('0x31')](db[_0xe90d('0x5c')]['rawAttributes']);_0x3ab780[_0xe90d('0x30')]=_[_0xe90d('0x31')](_0x87a053['query']);_0x3ab780[_0xe90d('0x32')]=_[_0xe90d('0x33')](_0x3ab780[_0xe90d('0x2f')],_0x3ab780[_0xe90d('0x30')]);_0x567cda[_0xe90d('0x35')]=_[_0xe90d('0x33')](_0x3ab780[_0xe90d('0x2f')],qs['fields'](_0x87a053['query']['fields']));_0x567cda[_0xe90d('0x35')]=_0x567cda['attributes'][_0xe90d('0x36')]?_0x567cda[_0xe90d('0x35')]:_0x3ab780[_0xe90d('0x2f')];_0x567cda[_0xe90d('0x56')]=qs[_0xe90d('0x38')](_0x87a053['query'][_0xe90d('0x38')]);_0x567cda['where']=qs[_0xe90d('0x32')](_['pick'](_0x87a053[_0xe90d('0x30')],_0x3ab780[_0xe90d('0x32')]));if(_0x87a053['query']['filter']){_0x567cda[_0xe90d('0x39')]=_[_0xe90d('0x3c')](_0x567cda[_0xe90d('0x39')],{'$or':_[_0xe90d('0x2c')](_0x567cda[_0xe90d('0x35')],function(_0x32b1bb){var _0xd37602={};_0xd37602[_0x32b1bb]={'$like':'%'+_0x87a053[_0xe90d('0x30')][_0xe90d('0x3b')]+'%'};return _0xd37602;})});}_0x567cda=_[_0xe90d('0x3c')]({},_0x567cda,_0x87a053[_0xe90d('0x3e')]);return _0x5a1ab0['getActions'](_0x567cda);}})[_0xe90d('0x25')](function(_0x1a2dbb){if(_0x1a2dbb){_0x375dd7=_0x1a2dbb[_0xe90d('0x36')];if(!_0x87a053['query'][_0xe90d('0x37')](_0xe90d('0x57'))){_0x567cda[_0xe90d('0x1e')]=qs[_0xe90d('0x1e')](_0x87a053[_0xe90d('0x30')]['limit']);_0x567cda[_0xe90d('0x1c')]=qs[_0xe90d('0x1c')](_0x87a053[_0xe90d('0x30')][_0xe90d('0x1c')]);}return _0x5a1ab0[_0xe90d('0x5b')](_0x567cda);}})['then'](function(_0x4be606){if(_0x4be606){return _0x4be606?{'count':_0x375dd7,'rows':_0x4be606}:null;}})[_0xe90d('0x25')](respondWithResult(_0x4302d1,null))[_0xe90d('0x42')](handleError(_0x4302d1,null));};