Built motion from commit 994c64e1.|2.6.1
[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 _0xb5c4=['status','end','json','offset','undefined','limit','count','Content-Range','reject','update','then','destroy','get','sendStatus','error','stack','name','send','index','map','Trigger','rawAttributes','fieldName','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','rows','show','params','keys','find','catch','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Triggers','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','TriggerAllId','addAnyCondition','TriggerAnyId','Condition','getAllConditions','getAnyConditions','findOne','addAction','TriggerId','Action','getActions','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','sox','ejs','fs-extra','squel','crypto','desk.js','to-csv','querystring','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb'];(function(_0x2bab31,_0x52de06){var _0x4653b0=function(_0x1884cb){while(--_0x1884cb){_0x2bab31['push'](_0x2bab31['shift']());}};_0x4653b0(++_0x52de06);}(_0xb5c4,0x1cc));var _0x4b5c=function(_0x21d0a5,_0x242625){_0x21d0a5=_0x21d0a5-0x0;var _0x3619ee=_0xb5c4[_0x21d0a5];return _0x3619ee;};'use strict';var emlformat=require(_0x4b5c('0x0'));var rimraf=require(_0x4b5c('0x1'));var zipdir=require(_0x4b5c('0x2'));var jsonpatch=require(_0x4b5c('0x3'));var rp=require(_0x4b5c('0x4'));var moment=require('moment');var BPromise=require(_0x4b5c('0x5'));var Mustache=require('mustache');var util=require(_0x4b5c('0x6'));var path=require(_0x4b5c('0x7'));var sox=require(_0x4b5c('0x8'));var csv=require('to-csv');var ejs=require(_0x4b5c('0x9'));var fs=require('fs');var fs_extra=require(_0x4b5c('0xa'));var _=require('lodash');var squel=require(_0x4b5c('0xb'));var crypto=require(_0x4b5c('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x4b5c('0xd'));var toCsv=require(_0x4b5c('0xe'));var querystring=require(_0x4b5c('0xf'));var Papa=require(_0x4b5c('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x4b5c('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4b5c('0x12'));var logger=require(_0x4b5c('0x13'))(_0x4b5c('0x14'));var utils=require(_0x4b5c('0x15'));var config=require(_0x4b5c('0x16'));var licenseUtil=require(_0x4b5c('0x17'));var db=require(_0x4b5c('0x18'))['db'];function respondWithStatusCode(_0x1e0a2f,_0x3eaa5d){_0x3eaa5d=_0x3eaa5d||0xcc;return function(_0x5ab76f){if(_0x5ab76f){return _0x1e0a2f['sendStatus'](_0x3eaa5d);}return _0x1e0a2f[_0x4b5c('0x19')](_0x3eaa5d)[_0x4b5c('0x1a')]();};}function respondWithResult(_0x542b96,_0x5bd76f){_0x5bd76f=_0x5bd76f||0xc8;return function(_0x3677cf){if(_0x3677cf){return _0x542b96[_0x4b5c('0x19')](_0x5bd76f)[_0x4b5c('0x1b')](_0x3677cf);}};}function respondWithFilteredResult(_0x3b2a5e,_0x4206cb){return function(_0x213b6e){if(_0x213b6e){var _0x234e44=typeof _0x4206cb[_0x4b5c('0x1c')]===_0x4b5c('0x1d')&&typeof _0x4206cb[_0x4b5c('0x1e')]===_0x4b5c('0x1d');var _0x23cbb1=_0x213b6e[_0x4b5c('0x1f')];var _0x1daadc=_0x234e44?0x0:_0x4206cb[_0x4b5c('0x1c')];var _0x5694a1=_0x234e44?_0x213b6e[_0x4b5c('0x1f')]:_0x4206cb['offset']+_0x4206cb[_0x4b5c('0x1e')];var _0x161dab;if(_0x5694a1>=_0x23cbb1){_0x5694a1=_0x23cbb1;_0x161dab=0xc8;}else{_0x161dab=0xce;}_0x3b2a5e[_0x4b5c('0x19')](_0x161dab);return _0x3b2a5e['set'](_0x4b5c('0x20'),_0x1daadc+'-'+_0x5694a1+'/'+_0x23cbb1)[_0x4b5c('0x1b')](_0x213b6e);}return null;};}function patchUpdates(_0x519e4){return function(_0x2b751e){try{jsonpatch['apply'](_0x2b751e,_0x519e4,!![]);}catch(_0x5647a9){return BPromise[_0x4b5c('0x21')](_0x5647a9);}return _0x2b751e['save']();};}function saveUpdates(_0x6ac64d,_0x2c461d){return function(_0x3050c2){if(_0x3050c2){return _0x3050c2[_0x4b5c('0x22')](_0x6ac64d)[_0x4b5c('0x23')](function(_0x477335){return _0x477335;});}return null;};}function removeEntity(_0x3a57cb,_0x501690){return function(_0x11cdbf){if(_0x11cdbf){return _0x11cdbf[_0x4b5c('0x24')]()['then'](function(){var _0x20a389=_0x11cdbf[_0x4b5c('0x25')]({'plain':!![]});var _0x262e30='Triggers';return db['UserProfileResource']['destroy']({'where':{'type':_0x262e30,'resourceId':_0x20a389['id']}})[_0x4b5c('0x23')](function(){return _0x11cdbf;});})[_0x4b5c('0x23')](function(){_0x3a57cb['status'](0xcc)[_0x4b5c('0x1a')]();});}};}function handleEntityNotFound(_0x5d984e,_0x36e44c){return function(_0xab6335){if(!_0xab6335){_0x5d984e[_0x4b5c('0x26')](0x194);}return _0xab6335;};}function handleError(_0x116304,_0x3d5e15){_0x3d5e15=_0x3d5e15||0x1f4;return function(_0x1a6f4f){logger[_0x4b5c('0x27')](_0x1a6f4f[_0x4b5c('0x28')]);if(_0x1a6f4f[_0x4b5c('0x29')]){delete _0x1a6f4f[_0x4b5c('0x29')];}_0x116304['status'](_0x3d5e15)[_0x4b5c('0x2a')](_0x1a6f4f);};}exports[_0x4b5c('0x2b')]=function(_0x16845a,_0x3a41c2){var _0x394caf={},_0x56fe3d={},_0x19a2ab={'count':0x0,'rows':[]};var _0x40e854=_[_0x4b5c('0x2c')](db[_0x4b5c('0x2d')][_0x4b5c('0x2e')],function(_0x29a4b9){return{'name':_0x29a4b9[_0x4b5c('0x2f')],'type':_0x29a4b9[_0x4b5c('0x30')][_0x4b5c('0x31')]};});_0x56fe3d[_0x4b5c('0x32')]=_[_0x4b5c('0x2c')](_0x40e854,_0x4b5c('0x29'));_0x56fe3d['query']=_['keys'](_0x16845a[_0x4b5c('0x33')]);_0x56fe3d[_0x4b5c('0x34')]=_[_0x4b5c('0x35')](_0x56fe3d['model'],_0x56fe3d[_0x4b5c('0x33')]);_0x394caf['attributes']=_[_0x4b5c('0x35')](_0x56fe3d[_0x4b5c('0x32')],qs[_0x4b5c('0x36')](_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x36')]));_0x394caf[_0x4b5c('0x37')]=_0x394caf['attributes'][_0x4b5c('0x38')]?_0x394caf[_0x4b5c('0x37')]:_0x56fe3d[_0x4b5c('0x32')];if(!_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x39')](_0x4b5c('0x3a'))){_0x394caf[_0x4b5c('0x1e')]=qs['limit'](_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x1e')]);_0x394caf[_0x4b5c('0x1c')]=qs[_0x4b5c('0x1c')](_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x1c')]);}_0x394caf[_0x4b5c('0x3b')]=qs['sort'](_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x3c')]);_0x394caf[_0x4b5c('0x3d')]=qs['filters'](_[_0x4b5c('0x3e')](_0x16845a[_0x4b5c('0x33')],_0x56fe3d[_0x4b5c('0x34')]),_0x40e854);if(_0x16845a[_0x4b5c('0x33')][_0x4b5c('0x3f')]){_0x394caf[_0x4b5c('0x3d')]=_[_0x4b5c('0x40')](_0x394caf[_0x4b5c('0x3d')],{'$or':_[_0x4b5c('0x2c')](_0x40e854,function(_0x7ccb00){if(_0x7ccb00[_0x4b5c('0x30')]!==_0x4b5c('0x41')){var _0x558f26={};_0x558f26[_0x7ccb00[_0x4b5c('0x29')]]={'$like':'%'+_0x16845a['query'][_0x4b5c('0x3f')]+'%'};return _0x558f26;}})});}_0x394caf=_[_0x4b5c('0x40')]({},_0x394caf,_0x16845a[_0x4b5c('0x42')]);var _0x33e378={'where':_0x394caf['where']};return db['Trigger'][_0x4b5c('0x1f')](_0x33e378)[_0x4b5c('0x23')](function(_0x5390d7){_0x19a2ab[_0x4b5c('0x1f')]=_0x5390d7;if(_0x16845a['query'][_0x4b5c('0x43')]){_0x394caf[_0x4b5c('0x44')]=[{'all':!![]}];}return db[_0x4b5c('0x2d')]['findAll'](_0x394caf);})[_0x4b5c('0x23')](function(_0x100213){_0x19a2ab[_0x4b5c('0x45')]=_0x100213;return _0x19a2ab;})[_0x4b5c('0x23')](respondWithFilteredResult(_0x3a41c2,_0x394caf))['catch'](handleError(_0x3a41c2,null));};exports[_0x4b5c('0x46')]=function(_0x698d7e,_0x32facf){var _0x28aa9e={'raw':![],'where':{'id':_0x698d7e[_0x4b5c('0x47')]['id']}},_0x4f8475={};_0x4f8475[_0x4b5c('0x32')]=_[_0x4b5c('0x48')](db[_0x4b5c('0x2d')]['rawAttributes']);_0x4f8475['query']=_[_0x4b5c('0x48')](_0x698d7e[_0x4b5c('0x33')]);_0x4f8475['filters']=_[_0x4b5c('0x35')](_0x4f8475[_0x4b5c('0x32')],_0x4f8475[_0x4b5c('0x33')]);_0x28aa9e['attributes']=_[_0x4b5c('0x35')](_0x4f8475[_0x4b5c('0x32')],qs['fields'](_0x698d7e[_0x4b5c('0x33')][_0x4b5c('0x36')]));_0x28aa9e[_0x4b5c('0x37')]=_0x28aa9e['attributes']['length']?_0x28aa9e['attributes']:_0x4f8475['model'];if(_0x698d7e['query'][_0x4b5c('0x43')]){_0x28aa9e[_0x4b5c('0x44')]=[{'all':!![]}];}_0x28aa9e=_[_0x4b5c('0x40')]({},_0x28aa9e,_0x698d7e[_0x4b5c('0x42')]);return db[_0x4b5c('0x2d')][_0x4b5c('0x49')](_0x28aa9e)[_0x4b5c('0x23')](handleEntityNotFound(_0x32facf,null))[_0x4b5c('0x23')](respondWithResult(_0x32facf,null))[_0x4b5c('0x4a')](handleError(_0x32facf,null));};exports[_0x4b5c('0x4b')]=function(_0x53b13b,_0x5a4979){return db[_0x4b5c('0x2d')][_0x4b5c('0x4b')](_0x53b13b['body'],{})[_0x4b5c('0x23')](function(_0x194e1e){var _0x329dcb=_0x53b13b[_0x4b5c('0x4c')][_0x4b5c('0x25')]({'plain':!![]});if(!_0x329dcb)throw new Error(_0x4b5c('0x4d'));if(_0x329dcb[_0x4b5c('0x4e')]===_0x4b5c('0x4c')){var _0x184fe9=_0x194e1e[_0x4b5c('0x25')]({'plain':!![]});var _0x2fa976=_0x4b5c('0x4f');return db[_0x4b5c('0x50')][_0x4b5c('0x49')]({'where':{'name':_0x2fa976,'userProfileId':_0x329dcb[_0x4b5c('0x51')]},'raw':!![]})[_0x4b5c('0x23')](function(_0xef9b62){if(_0xef9b62&&_0xef9b62[_0x4b5c('0x52')]===0x0){return db[_0x4b5c('0x53')][_0x4b5c('0x4b')]({'name':_0x184fe9[_0x4b5c('0x29')],'resourceId':_0x184fe9['id'],'type':_0xef9b62['name'],'sectionId':_0xef9b62['id']},{})['then'](function(){return _0x194e1e;});}else{return _0x194e1e;}})[_0x4b5c('0x4a')](function(_0x347133){logger[_0x4b5c('0x27')](_0x4b5c('0x54'),_0x347133);throw _0x347133;});}return _0x194e1e;})[_0x4b5c('0x23')](respondWithResult(_0x5a4979,0xc9))[_0x4b5c('0x4a')](handleError(_0x5a4979,null));};exports['update']=function(_0x4e6b17,_0x3971d8){if(_0x4e6b17[_0x4b5c('0x55')]['id']){delete _0x4e6b17['body']['id'];}return db[_0x4b5c('0x2d')][_0x4b5c('0x49')]({'where':{'id':_0x4e6b17[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x3971d8,null))[_0x4b5c('0x23')](saveUpdates(_0x4e6b17[_0x4b5c('0x55')],null))[_0x4b5c('0x23')](respondWithResult(_0x3971d8,null))[_0x4b5c('0x4a')](handleError(_0x3971d8,null));};exports['destroy']=function(_0x16ba72,_0x9a23c7){return db[_0x4b5c('0x2d')][_0x4b5c('0x49')]({'where':{'id':_0x16ba72[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x9a23c7,null))[_0x4b5c('0x23')](removeEntity(_0x9a23c7,null))['catch'](handleError(_0x9a23c7,null));};exports['addAllCondition']=function(_0x6db88c,_0x23d823,_0x4f2c3c){if(_0x6db88c[_0x4b5c('0x55')]['id']){delete _0x6db88c[_0x4b5c('0x55')]['id'];}return db[_0x4b5c('0x2d')][_0x4b5c('0x49')]({'where':{'id':_0x6db88c[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x23d823,null))[_0x4b5c('0x23')](function(_0x270113){if(_0x270113){_0x6db88c[_0x4b5c('0x55')][_0x4b5c('0x56')]=_0x270113['id'];return db['Condition'][_0x4b5c('0x4b')](_0x6db88c[_0x4b5c('0x55')]);}})[_0x4b5c('0x23')](respondWithResult(_0x23d823,null))[_0x4b5c('0x4a')](handleError(_0x23d823,null));};exports[_0x4b5c('0x57')]=function(_0x3424af,_0x4fde8c,_0x5e1661){if(_0x3424af[_0x4b5c('0x55')]['id']){delete _0x3424af['body']['id'];}return db[_0x4b5c('0x2d')]['find']({'where':{'id':_0x3424af[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x4fde8c,null))[_0x4b5c('0x23')](function(_0x3dc647){if(_0x3dc647){_0x3424af[_0x4b5c('0x55')][_0x4b5c('0x58')]=_0x3dc647['id'];return db[_0x4b5c('0x59')][_0x4b5c('0x4b')](_0x3424af[_0x4b5c('0x55')]);}})[_0x4b5c('0x23')](respondWithResult(_0x4fde8c,null))[_0x4b5c('0x4a')](handleError(_0x4fde8c,null));};exports[_0x4b5c('0x5a')]=function(_0xabfedf,_0x2e8aff,_0x26b71d){var _0x30a6ab={};var _0x4caf8d={};var _0x513ad4;var _0x4e11db;return db[_0x4b5c('0x2d')]['findOne']({'where':{'id':_0xabfedf[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x2e8aff,null))['then'](function(_0x10b607){if(_0x10b607){_0x513ad4=_0x10b607;_0x4caf8d[_0x4b5c('0x32')]=_[_0x4b5c('0x48')](db['Condition'][_0x4b5c('0x2e')]);_0x4caf8d[_0x4b5c('0x33')]=_['keys'](_0xabfedf[_0x4b5c('0x33')]);_0x4caf8d[_0x4b5c('0x34')]=_['intersection'](_0x4caf8d['model'],_0x4caf8d[_0x4b5c('0x33')]);_0x30a6ab[_0x4b5c('0x37')]=_[_0x4b5c('0x35')](_0x4caf8d[_0x4b5c('0x32')],qs[_0x4b5c('0x36')](_0xabfedf['query'][_0x4b5c('0x36')]));_0x30a6ab['attributes']=_0x30a6ab['attributes'][_0x4b5c('0x38')]?_0x30a6ab[_0x4b5c('0x37')]:_0x4caf8d[_0x4b5c('0x32')];_0x30a6ab[_0x4b5c('0x3b')]=qs['sort'](_0xabfedf[_0x4b5c('0x33')]['sort']);_0x30a6ab['where']=qs[_0x4b5c('0x34')](_['pick'](_0xabfedf[_0x4b5c('0x33')],_0x4caf8d[_0x4b5c('0x34')]));if(_0xabfedf[_0x4b5c('0x33')]['filter']){_0x30a6ab[_0x4b5c('0x3d')]=_[_0x4b5c('0x40')](_0x30a6ab[_0x4b5c('0x3d')],{'$or':_[_0x4b5c('0x2c')](_0x30a6ab[_0x4b5c('0x37')],function(_0x1e4c92){var _0x4236e6={};_0x4236e6[_0x1e4c92]={'$like':'%'+_0xabfedf['query'][_0x4b5c('0x3f')]+'%'};return _0x4236e6;})});}_0x30a6ab=_[_0x4b5c('0x40')]({},_0x30a6ab,_0xabfedf['options']);return _0x513ad4[_0x4b5c('0x5a')](_0x30a6ab);}})[_0x4b5c('0x23')](function(_0x537f68){if(_0x537f68){_0x4e11db=_0x537f68[_0x4b5c('0x38')];if(!_0xabfedf['query'][_0x4b5c('0x39')](_0x4b5c('0x3a'))){_0x30a6ab[_0x4b5c('0x1e')]=qs[_0x4b5c('0x1e')](_0xabfedf[_0x4b5c('0x33')][_0x4b5c('0x1e')]);_0x30a6ab['offset']=qs[_0x4b5c('0x1c')](_0xabfedf[_0x4b5c('0x33')]['offset']);}return _0x513ad4['getAllConditions'](_0x30a6ab);}})[_0x4b5c('0x23')](function(_0x4c5ee2){if(_0x4c5ee2){return _0x4c5ee2?{'count':_0x4e11db,'rows':_0x4c5ee2}:null;}})[_0x4b5c('0x23')](respondWithResult(_0x2e8aff,null))['catch'](handleError(_0x2e8aff,null));};exports[_0x4b5c('0x5b')]=function(_0x2820cd,_0x393791,_0x5b1118){var _0x5f5296={};var _0x3f3bba={};var _0x140899;var _0x3fac68;return db[_0x4b5c('0x2d')][_0x4b5c('0x5c')]({'where':{'id':_0x2820cd[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x393791,null))[_0x4b5c('0x23')](function(_0xbc6871){if(_0xbc6871){_0x140899=_0xbc6871;_0x3f3bba['model']=_[_0x4b5c('0x48')](db[_0x4b5c('0x59')][_0x4b5c('0x2e')]);_0x3f3bba[_0x4b5c('0x33')]=_[_0x4b5c('0x48')](_0x2820cd[_0x4b5c('0x33')]);_0x3f3bba[_0x4b5c('0x34')]=_['intersection'](_0x3f3bba['model'],_0x3f3bba[_0x4b5c('0x33')]);_0x5f5296[_0x4b5c('0x37')]=_[_0x4b5c('0x35')](_0x3f3bba[_0x4b5c('0x32')],qs['fields'](_0x2820cd[_0x4b5c('0x33')][_0x4b5c('0x36')]));_0x5f5296[_0x4b5c('0x37')]=_0x5f5296[_0x4b5c('0x37')][_0x4b5c('0x38')]?_0x5f5296['attributes']:_0x3f3bba[_0x4b5c('0x32')];_0x5f5296[_0x4b5c('0x3b')]=qs[_0x4b5c('0x3c')](_0x2820cd['query'][_0x4b5c('0x3c')]);_0x5f5296[_0x4b5c('0x3d')]=qs[_0x4b5c('0x34')](_['pick'](_0x2820cd['query'],_0x3f3bba['filters']));if(_0x2820cd[_0x4b5c('0x33')][_0x4b5c('0x3f')]){_0x5f5296[_0x4b5c('0x3d')]=_[_0x4b5c('0x40')](_0x5f5296[_0x4b5c('0x3d')],{'$or':_[_0x4b5c('0x2c')](_0x5f5296[_0x4b5c('0x37')],function(_0x431624){var _0x476e3c={};_0x476e3c[_0x431624]={'$like':'%'+_0x2820cd[_0x4b5c('0x33')][_0x4b5c('0x3f')]+'%'};return _0x476e3c;})});}_0x5f5296=_[_0x4b5c('0x40')]({},_0x5f5296,_0x2820cd[_0x4b5c('0x42')]);return _0x140899[_0x4b5c('0x5b')](_0x5f5296);}})[_0x4b5c('0x23')](function(_0x2eb9de){if(_0x2eb9de){_0x3fac68=_0x2eb9de[_0x4b5c('0x38')];if(!_0x2820cd[_0x4b5c('0x33')][_0x4b5c('0x39')](_0x4b5c('0x3a'))){_0x5f5296[_0x4b5c('0x1e')]=qs[_0x4b5c('0x1e')](_0x2820cd['query'][_0x4b5c('0x1e')]);_0x5f5296[_0x4b5c('0x1c')]=qs[_0x4b5c('0x1c')](_0x2820cd['query'][_0x4b5c('0x1c')]);}return _0x140899[_0x4b5c('0x5b')](_0x5f5296);}})[_0x4b5c('0x23')](function(_0x1931fd){if(_0x1931fd){return _0x1931fd?{'count':_0x3fac68,'rows':_0x1931fd}:null;}})[_0x4b5c('0x23')](respondWithResult(_0x393791,null))[_0x4b5c('0x4a')](handleError(_0x393791,null));};exports[_0x4b5c('0x5d')]=function(_0x283fb3,_0x3bbced,_0x5e5a32){if(_0x283fb3[_0x4b5c('0x55')]['id']){delete _0x283fb3[_0x4b5c('0x55')]['id'];}return db[_0x4b5c('0x2d')][_0x4b5c('0x49')]({'where':{'id':_0x283fb3['params']['id']}})['then'](handleEntityNotFound(_0x3bbced,null))[_0x4b5c('0x23')](function(_0x2749c7){if(_0x2749c7){_0x283fb3['body'][_0x4b5c('0x5e')]=_0x2749c7['id'];return db[_0x4b5c('0x5f')][_0x4b5c('0x4b')](_0x283fb3[_0x4b5c('0x55')]);}})[_0x4b5c('0x23')](respondWithResult(_0x3bbced,null))['catch'](handleError(_0x3bbced,null));};exports[_0x4b5c('0x60')]=function(_0x4aa2e0,_0x2dee70,_0x3168eb){var _0xd58a3={};var _0x300d8d={};var _0xa5b9b1;var _0x4a0499;return db[_0x4b5c('0x2d')]['findOne']({'where':{'id':_0x4aa2e0[_0x4b5c('0x47')]['id']}})[_0x4b5c('0x23')](handleEntityNotFound(_0x2dee70,null))['then'](function(_0x5dae6a){if(_0x5dae6a){_0xa5b9b1=_0x5dae6a;_0x300d8d['model']=_['keys'](db[_0x4b5c('0x5f')]['rawAttributes']);_0x300d8d['query']=_['keys'](_0x4aa2e0['query']);_0x300d8d[_0x4b5c('0x34')]=_['intersection'](_0x300d8d[_0x4b5c('0x32')],_0x300d8d[_0x4b5c('0x33')]);_0xd58a3[_0x4b5c('0x37')]=_[_0x4b5c('0x35')](_0x300d8d[_0x4b5c('0x32')],qs['fields'](_0x4aa2e0[_0x4b5c('0x33')][_0x4b5c('0x36')]));_0xd58a3[_0x4b5c('0x37')]=_0xd58a3[_0x4b5c('0x37')][_0x4b5c('0x38')]?_0xd58a3[_0x4b5c('0x37')]:_0x300d8d['model'];_0xd58a3[_0x4b5c('0x3b')]=qs['sort'](_0x4aa2e0['query'][_0x4b5c('0x3c')]);_0xd58a3[_0x4b5c('0x3d')]=qs[_0x4b5c('0x34')](_[_0x4b5c('0x3e')](_0x4aa2e0[_0x4b5c('0x33')],_0x300d8d[_0x4b5c('0x34')]));if(_0x4aa2e0[_0x4b5c('0x33')][_0x4b5c('0x3f')]){_0xd58a3[_0x4b5c('0x3d')]=_[_0x4b5c('0x40')](_0xd58a3[_0x4b5c('0x3d')],{'$or':_[_0x4b5c('0x2c')](_0xd58a3[_0x4b5c('0x37')],function(_0x1295ce){var _0x2f5768={};_0x2f5768[_0x1295ce]={'$like':'%'+_0x4aa2e0[_0x4b5c('0x33')]['filter']+'%'};return _0x2f5768;})});}_0xd58a3=_[_0x4b5c('0x40')]({},_0xd58a3,_0x4aa2e0[_0x4b5c('0x42')]);return _0xa5b9b1[_0x4b5c('0x60')](_0xd58a3);}})[_0x4b5c('0x23')](function(_0x5b24c0){if(_0x5b24c0){_0x4a0499=_0x5b24c0['length'];if(!_0x4aa2e0[_0x4b5c('0x33')][_0x4b5c('0x39')](_0x4b5c('0x3a'))){_0xd58a3['limit']=qs[_0x4b5c('0x1e')](_0x4aa2e0['query'][_0x4b5c('0x1e')]);_0xd58a3['offset']=qs['offset'](_0x4aa2e0[_0x4b5c('0x33')][_0x4b5c('0x1c')]);}return _0xa5b9b1[_0x4b5c('0x60')](_0xd58a3);}})[_0x4b5c('0x23')](function(_0x1bafbe){if(_0x1bafbe){return _0x1bafbe?{'count':_0x4a0499,'rows':_0x1bafbe}:null;}})[_0x4b5c('0x23')](respondWithResult(_0x2dee70,null))[_0x4b5c('0x4a')](handleError(_0x2dee70,null));};