Built motion from commit 9d1906d1.|2.5.40
[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 _0x9f3d=['then','end','stack','name','index','map','DeskConfiguration','rawAttributes','fieldName','type','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','offset','order','sort','pick','where','merge','VIRTUAL','options','includeAll','findAll','catch','params','keys','include','create','body','update','find','destroy','getFields','findOne','DeskField','filter','getSubjects','getDescriptions','getTags','setTags','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','limit','count','set','Content-Range','json','apply','reject','save'];(function(_0x365be9,_0x3c88b9){var _0x185c12=function(_0xbadbbf){while(--_0xbadbbf){_0x365be9['push'](_0x365be9['shift']());}};_0x185c12(++_0x3c88b9);}(_0x9f3d,0x1cd));var _0xd9f3=function(_0x12e7da,_0x2a54a9){_0x12e7da=_0x12e7da-0x0;var _0x7ef254=_0x9f3d[_0x12e7da];return _0x7ef254;};'use strict';var emlformat=require(_0xd9f3('0x0'));var rimraf=require(_0xd9f3('0x1'));var zipdir=require(_0xd9f3('0x2'));var jsonpatch=require(_0xd9f3('0x3'));var rp=require(_0xd9f3('0x4'));var moment=require(_0xd9f3('0x5'));var BPromise=require(_0xd9f3('0x6'));var Mustache=require('mustache');var util=require(_0xd9f3('0x7'));var path=require(_0xd9f3('0x8'));var sox=require(_0xd9f3('0x9'));var csv=require(_0xd9f3('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd9f3('0xb'));var _=require(_0xd9f3('0xc'));var squel=require(_0xd9f3('0xd'));var crypto=require(_0xd9f3('0xe'));var jsforce=require(_0xd9f3('0xf'));var deskjs=require(_0xd9f3('0x10'));var toCsv=require(_0xd9f3('0xa'));var querystring=require('querystring');var Papa=require(_0xd9f3('0x11'));var Redis=require(_0xd9f3('0x12'));var authService=require(_0xd9f3('0x13'));var qs=require(_0xd9f3('0x14'));var as=require(_0xd9f3('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xd9f3('0x16'));var utils=require(_0xd9f3('0x17'));var config=require(_0xd9f3('0x18'));var licenseUtil=require(_0xd9f3('0x19'));var db=require(_0xd9f3('0x1a'))['db'];function respondWithStatusCode(_0x9aaf53,_0x27a92b){_0x27a92b=_0x27a92b||0xcc;return function(_0x19aad8){if(_0x19aad8){return _0x9aaf53[_0xd9f3('0x1b')](_0x27a92b);}return _0x9aaf53[_0xd9f3('0x1c')](_0x27a92b)['end']();};}function respondWithResult(_0x258c3d,_0xd49ee3){_0xd49ee3=_0xd49ee3||0xc8;return function(_0x20307d){if(_0x20307d){return _0x258c3d[_0xd9f3('0x1c')](_0xd49ee3)['json'](_0x20307d);}};}function respondWithFilteredResult(_0x14b160,_0x3a8ec5){return function(_0x6c60fb){if(_0x6c60fb){var _0x431804=typeof _0x3a8ec5['offset']==='undefined'&&typeof _0x3a8ec5[_0xd9f3('0x1d')]==='undefined';var _0x214c29=_0x6c60fb[_0xd9f3('0x1e')];var _0x36552d=_0x431804?0x0:_0x3a8ec5['offset'];var _0x4a6503=_0x431804?_0x6c60fb['count']:_0x3a8ec5['offset']+_0x3a8ec5['limit'];var _0x260df0;if(_0x4a6503>=_0x214c29){_0x4a6503=_0x214c29;_0x260df0=0xc8;}else{_0x260df0=0xce;}_0x14b160[_0xd9f3('0x1c')](_0x260df0);return _0x14b160[_0xd9f3('0x1f')](_0xd9f3('0x20'),_0x36552d+'-'+_0x4a6503+'/'+_0x214c29)[_0xd9f3('0x21')](_0x6c60fb);}return null;};}function patchUpdates(_0x5094e8){return function(_0x206f76){try{jsonpatch[_0xd9f3('0x22')](_0x206f76,_0x5094e8,!![]);}catch(_0x520f8e){return BPromise[_0xd9f3('0x23')](_0x520f8e);}return _0x206f76[_0xd9f3('0x24')]();};}function saveUpdates(_0x5a9ff4,_0x46e7de){return function(_0x2ad9b2){if(_0x2ad9b2){return _0x2ad9b2['update'](_0x5a9ff4)[_0xd9f3('0x25')](function(_0x279a93){return _0x279a93;});}return null;};}function removeEntity(_0x1d6f6d,_0x475ec9){return function(_0x5f46ae){if(_0x5f46ae){return _0x5f46ae['destroy']()['then'](function(){_0x1d6f6d['status'](0xcc)[_0xd9f3('0x26')]();});}};}function handleEntityNotFound(_0x173d10,_0x7d77ad){return function(_0x3f4c97){if(!_0x3f4c97){_0x173d10[_0xd9f3('0x1b')](0x194);}return _0x3f4c97;};}function handleError(_0x1a5257,_0x5e9f60){_0x5e9f60=_0x5e9f60||0x1f4;return function(_0x5e3ca2){logger['error'](_0x5e3ca2[_0xd9f3('0x27')]);if(_0x5e3ca2[_0xd9f3('0x28')]){delete _0x5e3ca2['name'];}_0x1a5257[_0xd9f3('0x1c')](_0x5e9f60)['send'](_0x5e3ca2);};}exports[_0xd9f3('0x29')]=function(_0x503309,_0x483301){var _0x4ddac6={},_0xbed19={},_0x1e4b6e={'count':0x0,'rows':[]};var _0x4fea1d=_[_0xd9f3('0x2a')](db[_0xd9f3('0x2b')][_0xd9f3('0x2c')],function(_0x58b9c6){return{'name':_0x58b9c6[_0xd9f3('0x2d')],'type':_0x58b9c6[_0xd9f3('0x2e')]['key']};});_0xbed19[_0xd9f3('0x2f')]=_[_0xd9f3('0x2a')](_0x4fea1d,_0xd9f3('0x28'));_0xbed19['query']=_['keys'](_0x503309[_0xd9f3('0x30')]);_0xbed19[_0xd9f3('0x31')]=_[_0xd9f3('0x32')](_0xbed19[_0xd9f3('0x2f')],_0xbed19[_0xd9f3('0x30')]);_0x4ddac6['attributes']=_[_0xd9f3('0x32')](_0xbed19['model'],qs['fields'](_0x503309['query'][_0xd9f3('0x33')]));_0x4ddac6[_0xd9f3('0x34')]=_0x4ddac6[_0xd9f3('0x34')][_0xd9f3('0x35')]?_0x4ddac6['attributes']:_0xbed19[_0xd9f3('0x2f')];if(!_0x503309['query'][_0xd9f3('0x36')](_0xd9f3('0x37'))){_0x4ddac6['limit']=qs[_0xd9f3('0x1d')](_0x503309[_0xd9f3('0x30')]['limit']);_0x4ddac6[_0xd9f3('0x38')]=qs[_0xd9f3('0x38')](_0x503309[_0xd9f3('0x30')][_0xd9f3('0x38')]);}_0x4ddac6[_0xd9f3('0x39')]=qs[_0xd9f3('0x3a')](_0x503309['query']['sort']);_0x4ddac6['where']=qs[_0xd9f3('0x31')](_[_0xd9f3('0x3b')](_0x503309['query'],_0xbed19['filters']),_0x4fea1d);if(_0x503309[_0xd9f3('0x30')]['filter']){_0x4ddac6[_0xd9f3('0x3c')]=_[_0xd9f3('0x3d')](_0x4ddac6[_0xd9f3('0x3c')],{'$or':_[_0xd9f3('0x2a')](_0x4fea1d,function(_0x522874){if(_0x522874['type']!==_0xd9f3('0x3e')){var _0x57511c={};_0x57511c[_0x522874[_0xd9f3('0x28')]]={'$like':'%'+_0x503309['query']['filter']+'%'};return _0x57511c;}})});}_0x4ddac6=_[_0xd9f3('0x3d')]({},_0x4ddac6,_0x503309[_0xd9f3('0x3f')]);var _0x153717={'where':_0x4ddac6[_0xd9f3('0x3c')]};return db['DeskConfiguration']['count'](_0x153717)[_0xd9f3('0x25')](function(_0x2acfb8){_0x1e4b6e[_0xd9f3('0x1e')]=_0x2acfb8;if(_0x503309[_0xd9f3('0x30')][_0xd9f3('0x40')]){_0x4ddac6['include']=[{'all':!![]}];}return db[_0xd9f3('0x2b')][_0xd9f3('0x41')](_0x4ddac6);})[_0xd9f3('0x25')](function(_0x173d64){_0x1e4b6e['rows']=_0x173d64;return _0x1e4b6e;})[_0xd9f3('0x25')](respondWithFilteredResult(_0x483301,_0x4ddac6))[_0xd9f3('0x42')](handleError(_0x483301,null));};exports['show']=function(_0x41b780,_0x394d87){var _0x45b47e={'raw':![],'where':{'id':_0x41b780[_0xd9f3('0x43')]['id']}},_0x270b89={};_0x270b89[_0xd9f3('0x2f')]=_[_0xd9f3('0x44')](db[_0xd9f3('0x2b')][_0xd9f3('0x2c')]);_0x270b89[_0xd9f3('0x30')]=_['keys'](_0x41b780[_0xd9f3('0x30')]);_0x270b89[_0xd9f3('0x31')]=_[_0xd9f3('0x32')](_0x270b89['model'],_0x270b89[_0xd9f3('0x30')]);_0x45b47e[_0xd9f3('0x34')]=_[_0xd9f3('0x32')](_0x270b89[_0xd9f3('0x2f')],qs['fields'](_0x41b780[_0xd9f3('0x30')][_0xd9f3('0x33')]));_0x45b47e['attributes']=_0x45b47e['attributes'][_0xd9f3('0x35')]?_0x45b47e['attributes']:_0x270b89[_0xd9f3('0x2f')];if(_0x41b780['query'][_0xd9f3('0x40')]){_0x45b47e[_0xd9f3('0x45')]=[{'all':!![]}];}_0x45b47e=_['merge']({},_0x45b47e,_0x41b780[_0xd9f3('0x3f')]);return db[_0xd9f3('0x2b')]['find'](_0x45b47e)[_0xd9f3('0x25')](handleEntityNotFound(_0x394d87,null))[_0xd9f3('0x25')](respondWithResult(_0x394d87,null))[_0xd9f3('0x42')](handleError(_0x394d87,null));};exports[_0xd9f3('0x46')]=function(_0x2db19a,_0x29ff63){return db[_0xd9f3('0x2b')][_0xd9f3('0x46')](_0x2db19a[_0xd9f3('0x47')],{})[_0xd9f3('0x25')](respondWithResult(_0x29ff63,0xc9))[_0xd9f3('0x42')](handleError(_0x29ff63,null));};exports[_0xd9f3('0x48')]=function(_0x5d33e5,_0x16c6e6){if(_0x5d33e5['body']['id']){delete _0x5d33e5[_0xd9f3('0x47')]['id'];}return db['DeskConfiguration'][_0xd9f3('0x49')]({'where':{'id':_0x5d33e5['params']['id']}})[_0xd9f3('0x25')](handleEntityNotFound(_0x16c6e6,null))['then'](saveUpdates(_0x5d33e5[_0xd9f3('0x47')],null))[_0xd9f3('0x25')](respondWithResult(_0x16c6e6,null))[_0xd9f3('0x42')](handleError(_0x16c6e6,null));};exports[_0xd9f3('0x4a')]=function(_0x400114,_0xb02e09){return db[_0xd9f3('0x2b')][_0xd9f3('0x49')]({'where':{'id':_0x400114['params']['id']}})[_0xd9f3('0x25')](handleEntityNotFound(_0xb02e09,null))[_0xd9f3('0x25')](removeEntity(_0xb02e09,null))[_0xd9f3('0x42')](handleError(_0xb02e09,null));};exports[_0xd9f3('0x4b')]=function(_0x139d6d,_0x539f45,_0x2553db){var _0x5d80ee={};var _0x15e580={};var _0x3074ec;var _0x599e2a;return db['DeskConfiguration'][_0xd9f3('0x4c')]({'where':{'id':_0x139d6d[_0xd9f3('0x43')]['id']}})['then'](handleEntityNotFound(_0x539f45,null))[_0xd9f3('0x25')](function(_0x2df2a0){if(_0x2df2a0){_0x3074ec=_0x2df2a0;_0x15e580[_0xd9f3('0x2f')]=_[_0xd9f3('0x44')](db[_0xd9f3('0x4d')][_0xd9f3('0x2c')]);_0x15e580[_0xd9f3('0x30')]=_['keys'](_0x139d6d[_0xd9f3('0x30')]);_0x15e580[_0xd9f3('0x31')]=_[_0xd9f3('0x32')](_0x15e580[_0xd9f3('0x2f')],_0x15e580[_0xd9f3('0x30')]);_0x5d80ee[_0xd9f3('0x34')]=_['intersection'](_0x15e580[_0xd9f3('0x2f')],qs[_0xd9f3('0x33')](_0x139d6d[_0xd9f3('0x30')][_0xd9f3('0x33')]));_0x5d80ee[_0xd9f3('0x34')]=_0x5d80ee[_0xd9f3('0x34')]['length']?_0x5d80ee[_0xd9f3('0x34')]:_0x15e580[_0xd9f3('0x2f')];_0x5d80ee[_0xd9f3('0x39')]=qs[_0xd9f3('0x3a')](_0x139d6d[_0xd9f3('0x30')][_0xd9f3('0x3a')]);_0x5d80ee[_0xd9f3('0x3c')]=qs[_0xd9f3('0x31')](_[_0xd9f3('0x3b')](_0x139d6d[_0xd9f3('0x30')],_0x15e580[_0xd9f3('0x31')]));if(_0x139d6d[_0xd9f3('0x30')][_0xd9f3('0x4e')]){_0x5d80ee[_0xd9f3('0x3c')]=_[_0xd9f3('0x3d')](_0x5d80ee[_0xd9f3('0x3c')],{'$or':_[_0xd9f3('0x2a')](_0x5d80ee['attributes'],function(_0x8f00da){var _0x45f572={};_0x45f572[_0x8f00da]={'$like':'%'+_0x139d6d['query']['filter']+'%'};return _0x45f572;})});}_0x5d80ee=_['merge']({},_0x5d80ee,_0x139d6d[_0xd9f3('0x3f')]);return _0x3074ec['getFields'](_0x5d80ee);}})[_0xd9f3('0x25')](function(_0x255c5f){if(_0x255c5f){_0x599e2a=_0x255c5f[_0xd9f3('0x35')];if(!_0x139d6d[_0xd9f3('0x30')][_0xd9f3('0x36')](_0xd9f3('0x37'))){_0x5d80ee[_0xd9f3('0x1d')]=qs['limit'](_0x139d6d[_0xd9f3('0x30')]['limit']);_0x5d80ee[_0xd9f3('0x38')]=qs['offset'](_0x139d6d[_0xd9f3('0x30')][_0xd9f3('0x38')]);}return _0x3074ec[_0xd9f3('0x4b')](_0x5d80ee);}})[_0xd9f3('0x25')](function(_0x144eff){if(_0x144eff){return _0x144eff?{'count':_0x599e2a,'rows':_0x144eff}:null;}})[_0xd9f3('0x25')](respondWithResult(_0x539f45,null))['catch'](handleError(_0x539f45,null));};exports['getSubjects']=function(_0x1f0023,_0x26ddde,_0x16d382){var _0x303fa0={};var _0x110532={};var _0x343012;var _0x4140a9;return db['DeskConfiguration'][_0xd9f3('0x4c')]({'where':{'id':_0x1f0023[_0xd9f3('0x43')]['id']}})[_0xd9f3('0x25')](handleEntityNotFound(_0x26ddde,null))[_0xd9f3('0x25')](function(_0x45772b){if(_0x45772b){_0x343012=_0x45772b;_0x110532['model']=_[_0xd9f3('0x44')](db[_0xd9f3('0x4d')][_0xd9f3('0x2c')]);_0x110532[_0xd9f3('0x30')]=_[_0xd9f3('0x44')](_0x1f0023[_0xd9f3('0x30')]);_0x110532[_0xd9f3('0x31')]=_[_0xd9f3('0x32')](_0x110532[_0xd9f3('0x2f')],_0x110532[_0xd9f3('0x30')]);_0x303fa0[_0xd9f3('0x34')]=_['intersection'](_0x110532['model'],qs[_0xd9f3('0x33')](_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x33')]));_0x303fa0[_0xd9f3('0x34')]=_0x303fa0[_0xd9f3('0x34')][_0xd9f3('0x35')]?_0x303fa0[_0xd9f3('0x34')]:_0x110532[_0xd9f3('0x2f')];_0x303fa0[_0xd9f3('0x39')]=qs[_0xd9f3('0x3a')](_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x3a')]);_0x303fa0[_0xd9f3('0x3c')]=qs[_0xd9f3('0x31')](_[_0xd9f3('0x3b')](_0x1f0023[_0xd9f3('0x30')],_0x110532['filters']));if(_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x4e')]){_0x303fa0[_0xd9f3('0x3c')]=_[_0xd9f3('0x3d')](_0x303fa0[_0xd9f3('0x3c')],{'$or':_[_0xd9f3('0x2a')](_0x303fa0[_0xd9f3('0x34')],function(_0x52b4c6){var _0x2ebbe7={};_0x2ebbe7[_0x52b4c6]={'$like':'%'+_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x4e')]+'%'};return _0x2ebbe7;})});}_0x303fa0=_[_0xd9f3('0x3d')]({},_0x303fa0,_0x1f0023[_0xd9f3('0x3f')]);return _0x343012[_0xd9f3('0x4f')](_0x303fa0);}})['then'](function(_0x5eea0b){if(_0x5eea0b){_0x4140a9=_0x5eea0b[_0xd9f3('0x35')];if(!_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x36')]('nolimit')){_0x303fa0[_0xd9f3('0x1d')]=qs['limit'](_0x1f0023[_0xd9f3('0x30')][_0xd9f3('0x1d')]);_0x303fa0['offset']=qs[_0xd9f3('0x38')](_0x1f0023[_0xd9f3('0x30')]['offset']);}return _0x343012['getSubjects'](_0x303fa0);}})[_0xd9f3('0x25')](function(_0x2b3b22){if(_0x2b3b22){return _0x2b3b22?{'count':_0x4140a9,'rows':_0x2b3b22}:null;}})[_0xd9f3('0x25')](respondWithResult(_0x26ddde,null))[_0xd9f3('0x42')](handleError(_0x26ddde,null));};exports[_0xd9f3('0x50')]=function(_0x579242,_0x811606,_0x16868e){var _0x3eef73={};var _0x41c8cc={};var _0x2a9adc;var _0x60dbca;return db[_0xd9f3('0x2b')]['findOne']({'where':{'id':_0x579242[_0xd9f3('0x43')]['id']}})[_0xd9f3('0x25')](handleEntityNotFound(_0x811606,null))[_0xd9f3('0x25')](function(_0x47148b){if(_0x47148b){_0x2a9adc=_0x47148b;_0x41c8cc[_0xd9f3('0x2f')]=_[_0xd9f3('0x44')](db[_0xd9f3('0x4d')][_0xd9f3('0x2c')]);_0x41c8cc[_0xd9f3('0x30')]=_[_0xd9f3('0x44')](_0x579242[_0xd9f3('0x30')]);_0x41c8cc['filters']=_[_0xd9f3('0x32')](_0x41c8cc[_0xd9f3('0x2f')],_0x41c8cc[_0xd9f3('0x30')]);_0x3eef73[_0xd9f3('0x34')]=_['intersection'](_0x41c8cc[_0xd9f3('0x2f')],qs['fields'](_0x579242[_0xd9f3('0x30')][_0xd9f3('0x33')]));_0x3eef73[_0xd9f3('0x34')]=_0x3eef73['attributes']['length']?_0x3eef73['attributes']:_0x41c8cc[_0xd9f3('0x2f')];_0x3eef73['order']=qs[_0xd9f3('0x3a')](_0x579242[_0xd9f3('0x30')][_0xd9f3('0x3a')]);_0x3eef73[_0xd9f3('0x3c')]=qs[_0xd9f3('0x31')](_[_0xd9f3('0x3b')](_0x579242[_0xd9f3('0x30')],_0x41c8cc[_0xd9f3('0x31')]));if(_0x579242['query'][_0xd9f3('0x4e')]){_0x3eef73['where']=_['merge'](_0x3eef73[_0xd9f3('0x3c')],{'$or':_[_0xd9f3('0x2a')](_0x3eef73[_0xd9f3('0x34')],function(_0x3f0200){var _0x83136={};_0x83136[_0x3f0200]={'$like':'%'+_0x579242[_0xd9f3('0x30')][_0xd9f3('0x4e')]+'%'};return _0x83136;})});}_0x3eef73=_[_0xd9f3('0x3d')]({},_0x3eef73,_0x579242[_0xd9f3('0x3f')]);return _0x2a9adc['getDescriptions'](_0x3eef73);}})[_0xd9f3('0x25')](function(_0x4f3362){if(_0x4f3362){_0x60dbca=_0x4f3362['length'];if(!_0x579242[_0xd9f3('0x30')][_0xd9f3('0x36')](_0xd9f3('0x37'))){_0x3eef73[_0xd9f3('0x1d')]=qs[_0xd9f3('0x1d')](_0x579242[_0xd9f3('0x30')][_0xd9f3('0x1d')]);_0x3eef73[_0xd9f3('0x38')]=qs[_0xd9f3('0x38')](_0x579242[_0xd9f3('0x30')][_0xd9f3('0x38')]);}return _0x2a9adc['getDescriptions'](_0x3eef73);}})[_0xd9f3('0x25')](function(_0x34cf8b){if(_0x34cf8b){return _0x34cf8b?{'count':_0x60dbca,'rows':_0x34cf8b}:null;}})['then'](respondWithResult(_0x811606,null))[_0xd9f3('0x42')](handleError(_0x811606,null));};exports[_0xd9f3('0x51')]=function(_0x29e660,_0x3d8679,_0x3fcfdd){var _0x147d26={};var _0x5a9a6d={};var _0x4fff34;var _0x53ab84;return db[_0xd9f3('0x2b')]['findOne']({'where':{'id':_0x29e660[_0xd9f3('0x43')]['id']}})['then'](handleEntityNotFound(_0x3d8679,null))[_0xd9f3('0x25')](function(_0xec9c71){if(_0xec9c71){_0x4fff34=_0xec9c71;_0x5a9a6d['model']=_[_0xd9f3('0x44')](db['Tag'][_0xd9f3('0x2c')]);_0x5a9a6d[_0xd9f3('0x30')]=_[_0xd9f3('0x44')](_0x29e660[_0xd9f3('0x30')]);_0x5a9a6d[_0xd9f3('0x31')]=_[_0xd9f3('0x32')](_0x5a9a6d['model'],_0x5a9a6d['query']);_0x147d26[_0xd9f3('0x34')]=_[_0xd9f3('0x32')](_0x5a9a6d[_0xd9f3('0x2f')],qs[_0xd9f3('0x33')](_0x29e660[_0xd9f3('0x30')][_0xd9f3('0x33')]));_0x147d26['attributes']=_0x147d26[_0xd9f3('0x34')][_0xd9f3('0x35')]?_0x147d26[_0xd9f3('0x34')]:_0x5a9a6d[_0xd9f3('0x2f')];_0x147d26[_0xd9f3('0x39')]=qs[_0xd9f3('0x3a')](_0x29e660[_0xd9f3('0x30')]['sort']);_0x147d26['where']=qs[_0xd9f3('0x31')](_[_0xd9f3('0x3b')](_0x29e660[_0xd9f3('0x30')],_0x5a9a6d[_0xd9f3('0x31')]));if(_0x29e660[_0xd9f3('0x30')][_0xd9f3('0x4e')]){_0x147d26[_0xd9f3('0x3c')]=_[_0xd9f3('0x3d')](_0x147d26[_0xd9f3('0x3c')],{'$or':_['map'](_0x147d26[_0xd9f3('0x34')],function(_0x1ba206){var _0x3aff94={};_0x3aff94[_0x1ba206]={'$like':'%'+_0x29e660[_0xd9f3('0x30')][_0xd9f3('0x4e')]+'%'};return _0x3aff94;})});}_0x147d26=_[_0xd9f3('0x3d')]({},_0x147d26,_0x29e660[_0xd9f3('0x3f')]);return _0x4fff34['getTags'](_0x147d26);}})[_0xd9f3('0x25')](function(_0x3722b0){if(_0x3722b0){_0x53ab84=_0x3722b0[_0xd9f3('0x35')];if(!_0x29e660['query']['hasOwnProperty']('nolimit')){_0x147d26[_0xd9f3('0x1d')]=qs['limit'](_0x29e660[_0xd9f3('0x30')]['limit']);_0x147d26[_0xd9f3('0x38')]=qs[_0xd9f3('0x38')](_0x29e660[_0xd9f3('0x30')][_0xd9f3('0x38')]);}return _0x4fff34[_0xd9f3('0x51')](_0x147d26);}})['then'](function(_0xa97922){if(_0xa97922){return _0xa97922?{'count':_0x53ab84,'rows':_0xa97922}:null;}})[_0xd9f3('0x25')](respondWithResult(_0x3d8679,null))[_0xd9f3('0x42')](handleError(_0x3d8679,null));};exports[_0xd9f3('0x52')]=function(_0x2974c2,_0x67f17d,_0x3ee091){if(_0x2974c2[_0xd9f3('0x47')]['id']){delete _0x2974c2[_0xd9f3('0x47')]['id'];}return db[_0xd9f3('0x2b')][_0xd9f3('0x4c')]({'where':{'id':_0x2974c2['params']['id']}})[_0xd9f3('0x25')](handleEntityNotFound(_0x67f17d,null))[_0xd9f3('0x25')](function(_0x1b4670){if(_0x1b4670){return _0x1b4670[_0xd9f3('0x52')](_0x2974c2['body']['ids']||[]);}return null;})[_0xd9f3('0x25')](respondWithResult(_0x67f17d,null))[_0xd9f3('0x42')](handleError(_0x67f17d,null));};