Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / api / intDeskConfiguration / intDeskConfiguration.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 _0x8d0d=['getSubjects','getDescriptions','findOne','getTags','Tag','setTags','ids','rimraf','zip-dir','fast-json-patch','moment','util','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','apply','reject','destroy','then','error','name','send','map','DeskConfiguration','key','model','query','keys','filters','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','include','findAll','rows','catch','show','rawAttributes','length','find','create','body','params','getFields','DeskField'];(function(_0x20d54d,_0x1adc8e){var _0x516e8b=function(_0x2754e1){while(--_0x2754e1){_0x20d54d['push'](_0x20d54d['shift']());}};_0x516e8b(++_0x1adc8e);}(_0x8d0d,0x1c3));var _0xd8d0=function(_0x4cbe2f,_0x42d71f){_0x4cbe2f=_0x4cbe2f-0x0;var _0x37a2cb=_0x8d0d[_0x4cbe2f];return _0x37a2cb;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xd8d0('0x0'));var zipdir=require(_0xd8d0('0x1'));var jsonpatch=require(_0xd8d0('0x2'));var rp=require('request-promise');var moment=require(_0xd8d0('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xd8d0('0x4'));var path=require('path');var sox=require('sox');var csv=require(_0xd8d0('0x5'));var ejs=require(_0xd8d0('0x6'));var fs=require('fs');var fs_extra=require(_0xd8d0('0x7'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xd8d0('0x8'));var jsforce=require(_0xd8d0('0x9'));var deskjs=require(_0xd8d0('0xa'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xd8d0('0xb'));var Redis=require(_0xd8d0('0xc'));var authService=require(_0xd8d0('0xd'));var qs=require('../../components/parsers/qs');var as=require(_0xd8d0('0xe'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xd8d0('0xf'))('api');var utils=require('../../config/utils');var config=require(_0xd8d0('0x10'));var licenseUtil=require(_0xd8d0('0x11'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3a2845,_0x4225ec){_0x4225ec=_0x4225ec||0xcc;return function(_0x40123c){if(_0x40123c){return _0x3a2845[_0xd8d0('0x12')](_0x4225ec);}return _0x3a2845[_0xd8d0('0x13')](_0x4225ec)[_0xd8d0('0x14')]();};}function respondWithResult(_0x4c12d1,_0x2e8a0f){_0x2e8a0f=_0x2e8a0f||0xc8;return function(_0x125034){if(_0x125034){return _0x4c12d1[_0xd8d0('0x13')](_0x2e8a0f)[_0xd8d0('0x15')](_0x125034);}};}function respondWithFilteredResult(_0x3ac7e3,_0x3a79e0){return function(_0x4fcc4d){if(_0x4fcc4d){var _0x256d4e=typeof _0x3a79e0[_0xd8d0('0x16')]===_0xd8d0('0x17')&&typeof _0x3a79e0[_0xd8d0('0x18')]===_0xd8d0('0x17');var _0x1adb25=_0x4fcc4d[_0xd8d0('0x19')];var _0x9a88e0=_0x256d4e?0x0:_0x3a79e0['offset'];var _0x25ce6b=_0x256d4e?_0x4fcc4d[_0xd8d0('0x19')]:_0x3a79e0['offset']+_0x3a79e0['limit'];var _0x3527e8;if(_0x25ce6b>=_0x1adb25){_0x25ce6b=_0x1adb25;_0x3527e8=0xc8;}else{_0x3527e8=0xce;}_0x3ac7e3[_0xd8d0('0x13')](_0x3527e8);return _0x3ac7e3['set'](_0xd8d0('0x1a'),_0x9a88e0+'-'+_0x25ce6b+'/'+_0x1adb25)[_0xd8d0('0x15')](_0x4fcc4d);}return null;};}function patchUpdates(_0x4d76f7){return function(_0x36cf74){try{jsonpatch[_0xd8d0('0x1b')](_0x36cf74,_0x4d76f7,!![]);}catch(_0x4fac7d){return BPromise[_0xd8d0('0x1c')](_0x4fac7d);}return _0x36cf74['save']();};}function saveUpdates(_0x54aec9,_0x431fcc){return function(_0x4e2dd2){if(_0x4e2dd2){return _0x4e2dd2['update'](_0x54aec9)['then'](function(_0x3fd956){return _0x3fd956;});}return null;};}function removeEntity(_0x568bdc,_0x2965d1){return function(_0x510c08){if(_0x510c08){return _0x510c08[_0xd8d0('0x1d')]()[_0xd8d0('0x1e')](function(){_0x568bdc[_0xd8d0('0x13')](0xcc)[_0xd8d0('0x14')]();});}};}function handleEntityNotFound(_0x290358,_0x3afbcc){return function(_0x37d4d4){if(!_0x37d4d4){_0x290358[_0xd8d0('0x12')](0x194);}return _0x37d4d4;};}function handleError(_0x3784f3,_0x124048){_0x124048=_0x124048||0x1f4;return function(_0x1fb49e){logger[_0xd8d0('0x1f')](_0x1fb49e['stack']);if(_0x1fb49e[_0xd8d0('0x20')]){delete _0x1fb49e[_0xd8d0('0x20')];}_0x3784f3[_0xd8d0('0x13')](_0x124048)[_0xd8d0('0x21')](_0x1fb49e);};}exports['index']=function(_0x4a8383,_0x444c11){var _0x357ef7={},_0x560d33={},_0x4eae0d={'count':0x0,'rows':[]};var _0x4e9334=_[_0xd8d0('0x22')](db[_0xd8d0('0x23')]['rawAttributes'],function(_0x48d689){return{'name':_0x48d689['fieldName'],'type':_0x48d689['type'][_0xd8d0('0x24')]};});_0x560d33[_0xd8d0('0x25')]=_[_0xd8d0('0x22')](_0x4e9334,_0xd8d0('0x20'));_0x560d33[_0xd8d0('0x26')]=_[_0xd8d0('0x27')](_0x4a8383['query']);_0x560d33[_0xd8d0('0x28')]=_['intersection'](_0x560d33['model'],_0x560d33[_0xd8d0('0x26')]);_0x357ef7[_0xd8d0('0x29')]=_[_0xd8d0('0x2a')](_0x560d33['model'],qs['fields'](_0x4a8383[_0xd8d0('0x26')][_0xd8d0('0x2b')]));_0x357ef7[_0xd8d0('0x29')]=_0x357ef7['attributes']['length']?_0x357ef7['attributes']:_0x560d33[_0xd8d0('0x25')];if(!_0x4a8383[_0xd8d0('0x26')][_0xd8d0('0x2c')](_0xd8d0('0x2d'))){_0x357ef7[_0xd8d0('0x18')]=qs[_0xd8d0('0x18')](_0x4a8383['query'][_0xd8d0('0x18')]);_0x357ef7[_0xd8d0('0x16')]=qs[_0xd8d0('0x16')](_0x4a8383[_0xd8d0('0x26')][_0xd8d0('0x16')]);}_0x357ef7[_0xd8d0('0x2e')]=qs[_0xd8d0('0x2f')](_0x4a8383[_0xd8d0('0x26')][_0xd8d0('0x2f')]);_0x357ef7['where']=qs['filters'](_[_0xd8d0('0x30')](_0x4a8383[_0xd8d0('0x26')],_0x560d33['filters']),_0x4e9334);if(_0x4a8383['query'][_0xd8d0('0x31')]){_0x357ef7[_0xd8d0('0x32')]=_[_0xd8d0('0x33')](_0x357ef7[_0xd8d0('0x32')],{'$or':_['map'](_0x4e9334,function(_0x2ce435){if(_0x2ce435['type']!=='VIRTUAL'){var _0x4df19b={};_0x4df19b[_0x2ce435[_0xd8d0('0x20')]]={'$like':'%'+_0x4a8383['query'][_0xd8d0('0x31')]+'%'};return _0x4df19b;}})});}_0x357ef7=_[_0xd8d0('0x33')]({},_0x357ef7,_0x4a8383[_0xd8d0('0x34')]);var _0x314118={'where':_0x357ef7[_0xd8d0('0x32')]};return db[_0xd8d0('0x23')][_0xd8d0('0x19')](_0x314118)[_0xd8d0('0x1e')](function(_0x2b19e4){_0x4eae0d[_0xd8d0('0x19')]=_0x2b19e4;if(_0x4a8383[_0xd8d0('0x26')][_0xd8d0('0x35')]){_0x357ef7[_0xd8d0('0x36')]=[{'all':!![]}];}return db[_0xd8d0('0x23')][_0xd8d0('0x37')](_0x357ef7);})['then'](function(_0x2a06f9){_0x4eae0d[_0xd8d0('0x38')]=_0x2a06f9;return _0x4eae0d;})[_0xd8d0('0x1e')](respondWithFilteredResult(_0x444c11,_0x357ef7))[_0xd8d0('0x39')](handleError(_0x444c11,null));};exports[_0xd8d0('0x3a')]=function(_0x43cda0,_0x58af07){var _0x4bd7f9={'raw':![],'where':{'id':_0x43cda0['params']['id']}},_0x386051={};_0x386051[_0xd8d0('0x25')]=_[_0xd8d0('0x27')](db[_0xd8d0('0x23')][_0xd8d0('0x3b')]);_0x386051[_0xd8d0('0x26')]=_[_0xd8d0('0x27')](_0x43cda0[_0xd8d0('0x26')]);_0x386051['filters']=_[_0xd8d0('0x2a')](_0x386051['model'],_0x386051[_0xd8d0('0x26')]);_0x4bd7f9[_0xd8d0('0x29')]=_[_0xd8d0('0x2a')](_0x386051[_0xd8d0('0x25')],qs['fields'](_0x43cda0[_0xd8d0('0x26')][_0xd8d0('0x2b')]));_0x4bd7f9[_0xd8d0('0x29')]=_0x4bd7f9[_0xd8d0('0x29')][_0xd8d0('0x3c')]?_0x4bd7f9[_0xd8d0('0x29')]:_0x386051[_0xd8d0('0x25')];if(_0x43cda0[_0xd8d0('0x26')][_0xd8d0('0x35')]){_0x4bd7f9[_0xd8d0('0x36')]=[{'all':!![]}];}_0x4bd7f9=_[_0xd8d0('0x33')]({},_0x4bd7f9,_0x43cda0[_0xd8d0('0x34')]);return db[_0xd8d0('0x23')][_0xd8d0('0x3d')](_0x4bd7f9)[_0xd8d0('0x1e')](handleEntityNotFound(_0x58af07,null))[_0xd8d0('0x1e')](respondWithResult(_0x58af07,null))[_0xd8d0('0x39')](handleError(_0x58af07,null));};exports[_0xd8d0('0x3e')]=function(_0x5ef648,_0x427eaf){return db[_0xd8d0('0x23')][_0xd8d0('0x3e')](_0x5ef648[_0xd8d0('0x3f')],{})[_0xd8d0('0x1e')](respondWithResult(_0x427eaf,0xc9))[_0xd8d0('0x39')](handleError(_0x427eaf,null));};exports['update']=function(_0x68683b,_0x41a29a){if(_0x68683b[_0xd8d0('0x3f')]['id']){delete _0x68683b[_0xd8d0('0x3f')]['id'];}return db[_0xd8d0('0x23')][_0xd8d0('0x3d')]({'where':{'id':_0x68683b[_0xd8d0('0x40')]['id']}})['then'](handleEntityNotFound(_0x41a29a,null))[_0xd8d0('0x1e')](saveUpdates(_0x68683b[_0xd8d0('0x3f')],null))[_0xd8d0('0x1e')](respondWithResult(_0x41a29a,null))[_0xd8d0('0x39')](handleError(_0x41a29a,null));};exports[_0xd8d0('0x1d')]=function(_0x97b861,_0x5aca12){return db['DeskConfiguration'][_0xd8d0('0x3d')]({'where':{'id':_0x97b861[_0xd8d0('0x40')]['id']}})[_0xd8d0('0x1e')](handleEntityNotFound(_0x5aca12,null))[_0xd8d0('0x1e')](removeEntity(_0x5aca12,null))[_0xd8d0('0x39')](handleError(_0x5aca12,null));};exports[_0xd8d0('0x41')]=function(_0x5388b2,_0x52694c,_0x56c3ed){var _0x463e2a={};var _0x3a40e1={};var _0x3268fd;var _0x30bfeb;return db[_0xd8d0('0x23')]['findOne']({'where':{'id':_0x5388b2[_0xd8d0('0x40')]['id']}})['then'](handleEntityNotFound(_0x52694c,null))[_0xd8d0('0x1e')](function(_0x2409be){if(_0x2409be){_0x3268fd=_0x2409be;_0x3a40e1[_0xd8d0('0x25')]=_[_0xd8d0('0x27')](db[_0xd8d0('0x42')][_0xd8d0('0x3b')]);_0x3a40e1[_0xd8d0('0x26')]=_[_0xd8d0('0x27')](_0x5388b2[_0xd8d0('0x26')]);_0x3a40e1['filters']=_[_0xd8d0('0x2a')](_0x3a40e1[_0xd8d0('0x25')],_0x3a40e1[_0xd8d0('0x26')]);_0x463e2a[_0xd8d0('0x29')]=_[_0xd8d0('0x2a')](_0x3a40e1[_0xd8d0('0x25')],qs['fields'](_0x5388b2[_0xd8d0('0x26')][_0xd8d0('0x2b')]));_0x463e2a[_0xd8d0('0x29')]=_0x463e2a[_0xd8d0('0x29')][_0xd8d0('0x3c')]?_0x463e2a[_0xd8d0('0x29')]:_0x3a40e1[_0xd8d0('0x25')];_0x463e2a[_0xd8d0('0x2e')]=qs['sort'](_0x5388b2['query']['sort']);_0x463e2a[_0xd8d0('0x32')]=qs[_0xd8d0('0x28')](_[_0xd8d0('0x30')](_0x5388b2[_0xd8d0('0x26')],_0x3a40e1[_0xd8d0('0x28')]));if(_0x5388b2[_0xd8d0('0x26')][_0xd8d0('0x31')]){_0x463e2a[_0xd8d0('0x32')]=_[_0xd8d0('0x33')](_0x463e2a[_0xd8d0('0x32')],{'$or':_['map'](_0x463e2a[_0xd8d0('0x29')],function(_0x3f295e){var _0x45ddbd={};_0x45ddbd[_0x3f295e]={'$like':'%'+_0x5388b2['query'][_0xd8d0('0x31')]+'%'};return _0x45ddbd;})});}_0x463e2a=_['merge']({},_0x463e2a,_0x5388b2[_0xd8d0('0x34')]);return _0x3268fd['getFields'](_0x463e2a);}})[_0xd8d0('0x1e')](function(_0x5a46bd){if(_0x5a46bd){_0x30bfeb=_0x5a46bd[_0xd8d0('0x3c')];if(!_0x5388b2[_0xd8d0('0x26')]['hasOwnProperty'](_0xd8d0('0x2d'))){_0x463e2a[_0xd8d0('0x18')]=qs[_0xd8d0('0x18')](_0x5388b2['query'][_0xd8d0('0x18')]);_0x463e2a[_0xd8d0('0x16')]=qs[_0xd8d0('0x16')](_0x5388b2['query'][_0xd8d0('0x16')]);}return _0x3268fd['getFields'](_0x463e2a);}})['then'](function(_0x202f1e){if(_0x202f1e){return _0x202f1e?{'count':_0x30bfeb,'rows':_0x202f1e}:null;}})[_0xd8d0('0x1e')](respondWithResult(_0x52694c,null))[_0xd8d0('0x39')](handleError(_0x52694c,null));};exports['getSubjects']=function(_0x207a25,_0x1a31ff,_0xd7fffd){var _0x12a1a3={};var _0x2da68d={};var _0x229463;var _0x367690;return db[_0xd8d0('0x23')]['findOne']({'where':{'id':_0x207a25[_0xd8d0('0x40')]['id']}})['then'](handleEntityNotFound(_0x1a31ff,null))['then'](function(_0x93e9b7){if(_0x93e9b7){_0x229463=_0x93e9b7;_0x2da68d[_0xd8d0('0x25')]=_[_0xd8d0('0x27')](db['DeskField'][_0xd8d0('0x3b')]);_0x2da68d[_0xd8d0('0x26')]=_[_0xd8d0('0x27')](_0x207a25[_0xd8d0('0x26')]);_0x2da68d[_0xd8d0('0x28')]=_[_0xd8d0('0x2a')](_0x2da68d['model'],_0x2da68d[_0xd8d0('0x26')]);_0x12a1a3['attributes']=_[_0xd8d0('0x2a')](_0x2da68d['model'],qs['fields'](_0x207a25['query'][_0xd8d0('0x2b')]));_0x12a1a3[_0xd8d0('0x29')]=_0x12a1a3[_0xd8d0('0x29')][_0xd8d0('0x3c')]?_0x12a1a3[_0xd8d0('0x29')]:_0x2da68d[_0xd8d0('0x25')];_0x12a1a3[_0xd8d0('0x2e')]=qs[_0xd8d0('0x2f')](_0x207a25[_0xd8d0('0x26')][_0xd8d0('0x2f')]);_0x12a1a3[_0xd8d0('0x32')]=qs[_0xd8d0('0x28')](_[_0xd8d0('0x30')](_0x207a25[_0xd8d0('0x26')],_0x2da68d['filters']));if(_0x207a25[_0xd8d0('0x26')][_0xd8d0('0x31')]){_0x12a1a3[_0xd8d0('0x32')]=_[_0xd8d0('0x33')](_0x12a1a3[_0xd8d0('0x32')],{'$or':_[_0xd8d0('0x22')](_0x12a1a3[_0xd8d0('0x29')],function(_0x5d3294){var _0x12455f={};_0x12455f[_0x5d3294]={'$like':'%'+_0x207a25[_0xd8d0('0x26')][_0xd8d0('0x31')]+'%'};return _0x12455f;})});}_0x12a1a3=_['merge']({},_0x12a1a3,_0x207a25['options']);return _0x229463[_0xd8d0('0x43')](_0x12a1a3);}})['then'](function(_0x14a359){if(_0x14a359){_0x367690=_0x14a359[_0xd8d0('0x3c')];if(!_0x207a25['query'][_0xd8d0('0x2c')](_0xd8d0('0x2d'))){_0x12a1a3[_0xd8d0('0x18')]=qs[_0xd8d0('0x18')](_0x207a25[_0xd8d0('0x26')][_0xd8d0('0x18')]);_0x12a1a3[_0xd8d0('0x16')]=qs[_0xd8d0('0x16')](_0x207a25[_0xd8d0('0x26')]['offset']);}return _0x229463[_0xd8d0('0x43')](_0x12a1a3);}})[_0xd8d0('0x1e')](function(_0x217006){if(_0x217006){return _0x217006?{'count':_0x367690,'rows':_0x217006}:null;}})[_0xd8d0('0x1e')](respondWithResult(_0x1a31ff,null))[_0xd8d0('0x39')](handleError(_0x1a31ff,null));};exports[_0xd8d0('0x44')]=function(_0x393794,_0x36151b,_0x306b14){var _0x2406e8={};var _0x16399a={};var _0x2adfc8;var _0x2d768a;return db[_0xd8d0('0x23')][_0xd8d0('0x45')]({'where':{'id':_0x393794[_0xd8d0('0x40')]['id']}})[_0xd8d0('0x1e')](handleEntityNotFound(_0x36151b,null))[_0xd8d0('0x1e')](function(_0x38fa55){if(_0x38fa55){_0x2adfc8=_0x38fa55;_0x16399a['model']=_[_0xd8d0('0x27')](db[_0xd8d0('0x42')][_0xd8d0('0x3b')]);_0x16399a['query']=_[_0xd8d0('0x27')](_0x393794['query']);_0x16399a[_0xd8d0('0x28')]=_[_0xd8d0('0x2a')](_0x16399a[_0xd8d0('0x25')],_0x16399a[_0xd8d0('0x26')]);_0x2406e8[_0xd8d0('0x29')]=_[_0xd8d0('0x2a')](_0x16399a['model'],qs[_0xd8d0('0x2b')](_0x393794[_0xd8d0('0x26')][_0xd8d0('0x2b')]));_0x2406e8[_0xd8d0('0x29')]=_0x2406e8[_0xd8d0('0x29')]['length']?_0x2406e8[_0xd8d0('0x29')]:_0x16399a['model'];_0x2406e8['order']=qs[_0xd8d0('0x2f')](_0x393794[_0xd8d0('0x26')][_0xd8d0('0x2f')]);_0x2406e8[_0xd8d0('0x32')]=qs[_0xd8d0('0x28')](_[_0xd8d0('0x30')](_0x393794[_0xd8d0('0x26')],_0x16399a['filters']));if(_0x393794['query'][_0xd8d0('0x31')]){_0x2406e8[_0xd8d0('0x32')]=_[_0xd8d0('0x33')](_0x2406e8[_0xd8d0('0x32')],{'$or':_[_0xd8d0('0x22')](_0x2406e8[_0xd8d0('0x29')],function(_0x3b210f){var _0x56225d={};_0x56225d[_0x3b210f]={'$like':'%'+_0x393794[_0xd8d0('0x26')][_0xd8d0('0x31')]+'%'};return _0x56225d;})});}_0x2406e8=_[_0xd8d0('0x33')]({},_0x2406e8,_0x393794[_0xd8d0('0x34')]);return _0x2adfc8[_0xd8d0('0x44')](_0x2406e8);}})['then'](function(_0x1a8a21){if(_0x1a8a21){_0x2d768a=_0x1a8a21[_0xd8d0('0x3c')];if(!_0x393794[_0xd8d0('0x26')][_0xd8d0('0x2c')](_0xd8d0('0x2d'))){_0x2406e8[_0xd8d0('0x18')]=qs[_0xd8d0('0x18')](_0x393794['query']['limit']);_0x2406e8[_0xd8d0('0x16')]=qs[_0xd8d0('0x16')](_0x393794[_0xd8d0('0x26')][_0xd8d0('0x16')]);}return _0x2adfc8[_0xd8d0('0x44')](_0x2406e8);}})[_0xd8d0('0x1e')](function(_0x58dca6){if(_0x58dca6){return _0x58dca6?{'count':_0x2d768a,'rows':_0x58dca6}:null;}})[_0xd8d0('0x1e')](respondWithResult(_0x36151b,null))[_0xd8d0('0x39')](handleError(_0x36151b,null));};exports[_0xd8d0('0x46')]=function(_0x163a20,_0x341b10,_0x351c08){var _0x562fde={};var _0x1fda6b={};var _0x51c827;var _0x46b3cb;return db[_0xd8d0('0x23')][_0xd8d0('0x45')]({'where':{'id':_0x163a20['params']['id']}})[_0xd8d0('0x1e')](handleEntityNotFound(_0x341b10,null))['then'](function(_0x34f360){if(_0x34f360){_0x51c827=_0x34f360;_0x1fda6b[_0xd8d0('0x25')]=_[_0xd8d0('0x27')](db[_0xd8d0('0x47')][_0xd8d0('0x3b')]);_0x1fda6b['query']=_['keys'](_0x163a20['query']);_0x1fda6b['filters']=_[_0xd8d0('0x2a')](_0x1fda6b[_0xd8d0('0x25')],_0x1fda6b[_0xd8d0('0x26')]);_0x562fde[_0xd8d0('0x29')]=_[_0xd8d0('0x2a')](_0x1fda6b[_0xd8d0('0x25')],qs[_0xd8d0('0x2b')](_0x163a20[_0xd8d0('0x26')]['fields']));_0x562fde[_0xd8d0('0x29')]=_0x562fde[_0xd8d0('0x29')]['length']?_0x562fde[_0xd8d0('0x29')]:_0x1fda6b[_0xd8d0('0x25')];_0x562fde[_0xd8d0('0x2e')]=qs[_0xd8d0('0x2f')](_0x163a20[_0xd8d0('0x26')][_0xd8d0('0x2f')]);_0x562fde[_0xd8d0('0x32')]=qs['filters'](_[_0xd8d0('0x30')](_0x163a20[_0xd8d0('0x26')],_0x1fda6b[_0xd8d0('0x28')]));if(_0x163a20[_0xd8d0('0x26')][_0xd8d0('0x31')]){_0x562fde[_0xd8d0('0x32')]=_['merge'](_0x562fde['where'],{'$or':_[_0xd8d0('0x22')](_0x562fde['attributes'],function(_0x3beaa0){var _0x23a63d={};_0x23a63d[_0x3beaa0]={'$like':'%'+_0x163a20[_0xd8d0('0x26')][_0xd8d0('0x31')]+'%'};return _0x23a63d;})});}_0x562fde=_['merge']({},_0x562fde,_0x163a20['options']);return _0x51c827[_0xd8d0('0x46')](_0x562fde);}})[_0xd8d0('0x1e')](function(_0x3b1cae){if(_0x3b1cae){_0x46b3cb=_0x3b1cae['length'];if(!_0x163a20[_0xd8d0('0x26')]['hasOwnProperty'](_0xd8d0('0x2d'))){_0x562fde['limit']=qs[_0xd8d0('0x18')](_0x163a20['query']['limit']);_0x562fde[_0xd8d0('0x16')]=qs['offset'](_0x163a20['query']['offset']);}return _0x51c827[_0xd8d0('0x46')](_0x562fde);}})[_0xd8d0('0x1e')](function(_0x1c8d7f){if(_0x1c8d7f){return _0x1c8d7f?{'count':_0x46b3cb,'rows':_0x1c8d7f}:null;}})[_0xd8d0('0x1e')](respondWithResult(_0x341b10,null))[_0xd8d0('0x39')](handleError(_0x341b10,null));};exports[_0xd8d0('0x48')]=function(_0x4e1393,_0x482b28,_0xa6e46d){if(_0x4e1393['body']['id']){delete _0x4e1393[_0xd8d0('0x3f')]['id'];}return db[_0xd8d0('0x23')]['findOne']({'where':{'id':_0x4e1393[_0xd8d0('0x40')]['id']}})[_0xd8d0('0x1e')](handleEntityNotFound(_0x482b28,null))[_0xd8d0('0x1e')](function(_0x418c24){if(_0x418c24){return _0x418c24[_0xd8d0('0x48')](_0x4e1393[_0xd8d0('0x3f')][_0xd8d0('0x49')]||[]);}return null;})[_0xd8d0('0x1e')](respondWithResult(_0x482b28,null))['catch'](handleError(_0x482b28,null));};