Built motion from commit 97153652.|2.6.26
[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 _0x5c37=['hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','includeAll','findAll','show','params','rawAttributes','include','options','find','catch','create','update','body','getFields','findOne','DeskField','getSubjects','getDescriptions','getTags','setTags','ids','eml-format','zip-dir','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','undefined','limit','count','offset','Content-Range','json','apply','then','error','stack','name','index','map','DeskConfiguration','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length'];(function(_0x312be5,_0x149363){var _0x14d204=function(_0x21d24c){while(--_0x21d24c){_0x312be5['push'](_0x312be5['shift']());}};_0x14d204(++_0x149363);}(_0x5c37,0x161));var _0x75c3=function(_0x1fd9e7,_0x24cdbe){_0x1fd9e7=_0x1fd9e7-0x0;var _0x1781f2=_0x5c37[_0x1fd9e7];return _0x1781f2;};'use strict';var emlformat=require(_0x75c3('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x75c3('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x75c3('0x2'));var BPromise=require(_0x75c3('0x3'));var Mustache=require(_0x75c3('0x4'));var util=require(_0x75c3('0x5'));var path=require(_0x75c3('0x6'));var sox=require(_0x75c3('0x7'));var csv=require(_0x75c3('0x8'));var ejs=require(_0x75c3('0x9'));var fs=require('fs');var fs_extra=require(_0x75c3('0xa'));var _=require(_0x75c3('0xb'));var squel=require(_0x75c3('0xc'));var crypto=require(_0x75c3('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x75c3('0xe'));var toCsv=require(_0x75c3('0x8'));var querystring=require(_0x75c3('0xf'));var Papa=require(_0x75c3('0x10'));var Redis=require(_0x75c3('0x11'));var authService=require(_0x75c3('0x12'));var qs=require(_0x75c3('0x13'));var as=require(_0x75c3('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x75c3('0x15'))('api');var utils=require(_0x75c3('0x16'));var config=require(_0x75c3('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x75c3('0x18'))['db'];function respondWithStatusCode(_0x5eb687,_0x3f7c24){_0x3f7c24=_0x3f7c24||0xcc;return function(_0x40ed05){if(_0x40ed05){return _0x5eb687[_0x75c3('0x19')](_0x3f7c24);}return _0x5eb687[_0x75c3('0x1a')](_0x3f7c24)[_0x75c3('0x1b')]();};}function respondWithResult(_0x73c279,_0x19a7c9){_0x19a7c9=_0x19a7c9||0xc8;return function(_0x164e22){if(_0x164e22){return _0x73c279[_0x75c3('0x1a')](_0x19a7c9)['json'](_0x164e22);}};}function respondWithFilteredResult(_0x17485e,_0x43132c){return function(_0x58c8da){if(_0x58c8da){var _0x37f6cc=typeof _0x43132c['offset']===_0x75c3('0x1c')&&typeof _0x43132c[_0x75c3('0x1d')]===_0x75c3('0x1c');var _0x26ccd1=_0x58c8da[_0x75c3('0x1e')];var _0x407a59=_0x37f6cc?0x0:_0x43132c[_0x75c3('0x1f')];var _0x144c40=_0x37f6cc?_0x58c8da[_0x75c3('0x1e')]:_0x43132c[_0x75c3('0x1f')]+_0x43132c['limit'];var _0x1f1dc5;if(_0x144c40>=_0x26ccd1){_0x144c40=_0x26ccd1;_0x1f1dc5=0xc8;}else{_0x1f1dc5=0xce;}_0x17485e[_0x75c3('0x1a')](_0x1f1dc5);return _0x17485e['set'](_0x75c3('0x20'),_0x407a59+'-'+_0x144c40+'/'+_0x26ccd1)[_0x75c3('0x21')](_0x58c8da);}return null;};}function patchUpdates(_0x1d3b80){return function(_0xfd2637){try{jsonpatch[_0x75c3('0x22')](_0xfd2637,_0x1d3b80,!![]);}catch(_0x3ef28c){return BPromise['reject'](_0x3ef28c);}return _0xfd2637['save']();};}function saveUpdates(_0x2580b3,_0x7f1e1){return function(_0x17e58a){if(_0x17e58a){return _0x17e58a['update'](_0x2580b3)[_0x75c3('0x23')](function(_0x54366c){return _0x54366c;});}return null;};}function removeEntity(_0x597993,_0x14506e){return function(_0x1afd65){if(_0x1afd65){return _0x1afd65['destroy']()[_0x75c3('0x23')](function(){_0x597993[_0x75c3('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5e9e99,_0x25aeff){return function(_0xa43d4d){if(!_0xa43d4d){_0x5e9e99[_0x75c3('0x19')](0x194);}return _0xa43d4d;};}function handleError(_0x246f17,_0x4da2a2){_0x4da2a2=_0x4da2a2||0x1f4;return function(_0x4d7ce2){logger[_0x75c3('0x24')](_0x4d7ce2[_0x75c3('0x25')]);if(_0x4d7ce2[_0x75c3('0x26')]){delete _0x4d7ce2[_0x75c3('0x26')];}_0x246f17[_0x75c3('0x1a')](_0x4da2a2)['send'](_0x4d7ce2);};}exports[_0x75c3('0x27')]=function(_0x4eddcc,_0x13f486){var _0x1f6538={},_0xab8bd0={},_0xe44053={'count':0x0,'rows':[]};var _0x1f254d=_[_0x75c3('0x28')](db[_0x75c3('0x29')]['rawAttributes'],function(_0x112577){return{'name':_0x112577[_0x75c3('0x2a')],'type':_0x112577[_0x75c3('0x2b')]['key']};});_0xab8bd0[_0x75c3('0x2c')]=_[_0x75c3('0x28')](_0x1f254d,_0x75c3('0x26'));_0xab8bd0[_0x75c3('0x2d')]=_[_0x75c3('0x2e')](_0x4eddcc[_0x75c3('0x2d')]);_0xab8bd0[_0x75c3('0x2f')]=_[_0x75c3('0x30')](_0xab8bd0[_0x75c3('0x2c')],_0xab8bd0[_0x75c3('0x2d')]);_0x1f6538[_0x75c3('0x31')]=_[_0x75c3('0x30')](_0xab8bd0[_0x75c3('0x2c')],qs[_0x75c3('0x32')](_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x32')]));_0x1f6538[_0x75c3('0x31')]=_0x1f6538[_0x75c3('0x31')][_0x75c3('0x33')]?_0x1f6538[_0x75c3('0x31')]:_0xab8bd0[_0x75c3('0x2c')];if(!_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x34')](_0x75c3('0x35'))){_0x1f6538[_0x75c3('0x1d')]=qs[_0x75c3('0x1d')](_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x1d')]);_0x1f6538[_0x75c3('0x1f')]=qs['offset'](_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x1f')]);}_0x1f6538[_0x75c3('0x36')]=qs['sort'](_0x4eddcc['query'][_0x75c3('0x37')]);_0x1f6538[_0x75c3('0x38')]=qs[_0x75c3('0x2f')](_[_0x75c3('0x39')](_0x4eddcc[_0x75c3('0x2d')],_0xab8bd0[_0x75c3('0x2f')]),_0x1f254d);if(_0x4eddcc[_0x75c3('0x2d')]['filter']){_0x1f6538[_0x75c3('0x38')]=_[_0x75c3('0x3a')](_0x1f6538[_0x75c3('0x38')],{'$or':_[_0x75c3('0x28')](_0x1f254d,function(_0x1bbf8d){if(_0x1bbf8d[_0x75c3('0x2b')]!==_0x75c3('0x3b')){var _0x259f48={};_0x259f48[_0x1bbf8d['name']]={'$like':'%'+_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x3c')]+'%'};return _0x259f48;}})});}_0x1f6538=_[_0x75c3('0x3a')]({},_0x1f6538,_0x4eddcc['options']);var _0x25cbb6={'where':_0x1f6538[_0x75c3('0x38')]};return db['DeskConfiguration'][_0x75c3('0x1e')](_0x25cbb6)['then'](function(_0x2a44b8){_0xe44053['count']=_0x2a44b8;if(_0x4eddcc[_0x75c3('0x2d')][_0x75c3('0x3d')]){_0x1f6538['include']=[{'all':!![]}];}return db[_0x75c3('0x29')][_0x75c3('0x3e')](_0x1f6538);})['then'](function(_0x3da320){_0xe44053['rows']=_0x3da320;return _0xe44053;})[_0x75c3('0x23')](respondWithFilteredResult(_0x13f486,_0x1f6538))['catch'](handleError(_0x13f486,null));};exports[_0x75c3('0x3f')]=function(_0x503b8b,_0x48cb50){var _0x1b336c={'raw':![],'where':{'id':_0x503b8b[_0x75c3('0x40')]['id']}},_0xb1c90={};_0xb1c90[_0x75c3('0x2c')]=_[_0x75c3('0x2e')](db[_0x75c3('0x29')][_0x75c3('0x41')]);_0xb1c90[_0x75c3('0x2d')]=_['keys'](_0x503b8b[_0x75c3('0x2d')]);_0xb1c90['filters']=_[_0x75c3('0x30')](_0xb1c90['model'],_0xb1c90[_0x75c3('0x2d')]);_0x1b336c[_0x75c3('0x31')]=_[_0x75c3('0x30')](_0xb1c90[_0x75c3('0x2c')],qs[_0x75c3('0x32')](_0x503b8b['query'][_0x75c3('0x32')]));_0x1b336c[_0x75c3('0x31')]=_0x1b336c[_0x75c3('0x31')][_0x75c3('0x33')]?_0x1b336c[_0x75c3('0x31')]:_0xb1c90[_0x75c3('0x2c')];if(_0x503b8b[_0x75c3('0x2d')][_0x75c3('0x3d')]){_0x1b336c[_0x75c3('0x42')]=[{'all':!![]}];}_0x1b336c=_[_0x75c3('0x3a')]({},_0x1b336c,_0x503b8b[_0x75c3('0x43')]);return db[_0x75c3('0x29')][_0x75c3('0x44')](_0x1b336c)[_0x75c3('0x23')](handleEntityNotFound(_0x48cb50,null))[_0x75c3('0x23')](respondWithResult(_0x48cb50,null))[_0x75c3('0x45')](handleError(_0x48cb50,null));};exports['create']=function(_0x214326,_0x28e791){return db['DeskConfiguration'][_0x75c3('0x46')](_0x214326['body'],{})[_0x75c3('0x23')](respondWithResult(_0x28e791,0xc9))[_0x75c3('0x45')](handleError(_0x28e791,null));};exports[_0x75c3('0x47')]=function(_0x8ca480,_0x587939){if(_0x8ca480[_0x75c3('0x48')]['id']){delete _0x8ca480[_0x75c3('0x48')]['id'];}return db['DeskConfiguration'][_0x75c3('0x44')]({'where':{'id':_0x8ca480[_0x75c3('0x40')]['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x587939,null))[_0x75c3('0x23')](saveUpdates(_0x8ca480[_0x75c3('0x48')],null))[_0x75c3('0x23')](respondWithResult(_0x587939,null))[_0x75c3('0x45')](handleError(_0x587939,null));};exports['destroy']=function(_0x39e59c,_0x40ab3d){return db['DeskConfiguration']['find']({'where':{'id':_0x39e59c['params']['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x40ab3d,null))[_0x75c3('0x23')](removeEntity(_0x40ab3d,null))[_0x75c3('0x45')](handleError(_0x40ab3d,null));};exports[_0x75c3('0x49')]=function(_0x3c8520,_0x20955a,_0x5b8b3b){var _0x5bbb6a={};var _0x5f43dd={};var _0x35c606;var _0x2aa841;return db['DeskConfiguration'][_0x75c3('0x4a')]({'where':{'id':_0x3c8520[_0x75c3('0x40')]['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x20955a,null))[_0x75c3('0x23')](function(_0x613960){if(_0x613960){_0x35c606=_0x613960;_0x5f43dd[_0x75c3('0x2c')]=_[_0x75c3('0x2e')](db[_0x75c3('0x4b')][_0x75c3('0x41')]);_0x5f43dd[_0x75c3('0x2d')]=_[_0x75c3('0x2e')](_0x3c8520[_0x75c3('0x2d')]);_0x5f43dd[_0x75c3('0x2f')]=_[_0x75c3('0x30')](_0x5f43dd[_0x75c3('0x2c')],_0x5f43dd['query']);_0x5bbb6a[_0x75c3('0x31')]=_[_0x75c3('0x30')](_0x5f43dd['model'],qs['fields'](_0x3c8520[_0x75c3('0x2d')][_0x75c3('0x32')]));_0x5bbb6a['attributes']=_0x5bbb6a[_0x75c3('0x31')]['length']?_0x5bbb6a[_0x75c3('0x31')]:_0x5f43dd[_0x75c3('0x2c')];_0x5bbb6a[_0x75c3('0x36')]=qs[_0x75c3('0x37')](_0x3c8520[_0x75c3('0x2d')][_0x75c3('0x37')]);_0x5bbb6a[_0x75c3('0x38')]=qs[_0x75c3('0x2f')](_[_0x75c3('0x39')](_0x3c8520[_0x75c3('0x2d')],_0x5f43dd[_0x75c3('0x2f')]));if(_0x3c8520[_0x75c3('0x2d')]['filter']){_0x5bbb6a['where']=_[_0x75c3('0x3a')](_0x5bbb6a[_0x75c3('0x38')],{'$or':_[_0x75c3('0x28')](_0x5bbb6a[_0x75c3('0x31')],function(_0x4a5fdf){var _0xb6f55f={};_0xb6f55f[_0x4a5fdf]={'$like':'%'+_0x3c8520[_0x75c3('0x2d')][_0x75c3('0x3c')]+'%'};return _0xb6f55f;})});}_0x5bbb6a=_['merge']({},_0x5bbb6a,_0x3c8520[_0x75c3('0x43')]);return _0x35c606['getFields'](_0x5bbb6a);}})[_0x75c3('0x23')](function(_0x43a83f){if(_0x43a83f){_0x2aa841=_0x43a83f['length'];if(!_0x3c8520[_0x75c3('0x2d')]['hasOwnProperty']('nolimit')){_0x5bbb6a[_0x75c3('0x1d')]=qs['limit'](_0x3c8520[_0x75c3('0x2d')][_0x75c3('0x1d')]);_0x5bbb6a[_0x75c3('0x1f')]=qs[_0x75c3('0x1f')](_0x3c8520['query'][_0x75c3('0x1f')]);}return _0x35c606[_0x75c3('0x49')](_0x5bbb6a);}})[_0x75c3('0x23')](function(_0x20fc9c){if(_0x20fc9c){return _0x20fc9c?{'count':_0x2aa841,'rows':_0x20fc9c}:null;}})[_0x75c3('0x23')](respondWithResult(_0x20955a,null))[_0x75c3('0x45')](handleError(_0x20955a,null));};exports['getSubjects']=function(_0x58d6c4,_0x5456bc,_0x4f4209){var _0x175428={};var _0x287ae8={};var _0x25cfa2;var _0x2ea52e;return db[_0x75c3('0x29')]['findOne']({'where':{'id':_0x58d6c4['params']['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x5456bc,null))[_0x75c3('0x23')](function(_0x48d636){if(_0x48d636){_0x25cfa2=_0x48d636;_0x287ae8[_0x75c3('0x2c')]=_[_0x75c3('0x2e')](db['DeskField'][_0x75c3('0x41')]);_0x287ae8[_0x75c3('0x2d')]=_[_0x75c3('0x2e')](_0x58d6c4['query']);_0x287ae8['filters']=_['intersection'](_0x287ae8[_0x75c3('0x2c')],_0x287ae8[_0x75c3('0x2d')]);_0x175428[_0x75c3('0x31')]=_[_0x75c3('0x30')](_0x287ae8[_0x75c3('0x2c')],qs[_0x75c3('0x32')](_0x58d6c4[_0x75c3('0x2d')]['fields']));_0x175428[_0x75c3('0x31')]=_0x175428[_0x75c3('0x31')][_0x75c3('0x33')]?_0x175428[_0x75c3('0x31')]:_0x287ae8[_0x75c3('0x2c')];_0x175428['order']=qs['sort'](_0x58d6c4[_0x75c3('0x2d')]['sort']);_0x175428['where']=qs['filters'](_['pick'](_0x58d6c4[_0x75c3('0x2d')],_0x287ae8[_0x75c3('0x2f')]));if(_0x58d6c4['query'][_0x75c3('0x3c')]){_0x175428[_0x75c3('0x38')]=_[_0x75c3('0x3a')](_0x175428[_0x75c3('0x38')],{'$or':_['map'](_0x175428['attributes'],function(_0x5d2ffe){var _0x504e48={};_0x504e48[_0x5d2ffe]={'$like':'%'+_0x58d6c4[_0x75c3('0x2d')][_0x75c3('0x3c')]+'%'};return _0x504e48;})});}_0x175428=_[_0x75c3('0x3a')]({},_0x175428,_0x58d6c4['options']);return _0x25cfa2[_0x75c3('0x4c')](_0x175428);}})[_0x75c3('0x23')](function(_0x4d2134){if(_0x4d2134){_0x2ea52e=_0x4d2134['length'];if(!_0x58d6c4[_0x75c3('0x2d')][_0x75c3('0x34')]('nolimit')){_0x175428[_0x75c3('0x1d')]=qs[_0x75c3('0x1d')](_0x58d6c4[_0x75c3('0x2d')][_0x75c3('0x1d')]);_0x175428[_0x75c3('0x1f')]=qs[_0x75c3('0x1f')](_0x58d6c4[_0x75c3('0x2d')][_0x75c3('0x1f')]);}return _0x25cfa2['getSubjects'](_0x175428);}})['then'](function(_0x5beaba){if(_0x5beaba){return _0x5beaba?{'count':_0x2ea52e,'rows':_0x5beaba}:null;}})[_0x75c3('0x23')](respondWithResult(_0x5456bc,null))[_0x75c3('0x45')](handleError(_0x5456bc,null));};exports['getDescriptions']=function(_0x271e85,_0x176141,_0x58eb77){var _0x4716e6={};var _0x29cd3e={};var _0x225b46;var _0x978fd3;return db['DeskConfiguration'][_0x75c3('0x4a')]({'where':{'id':_0x271e85['params']['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x176141,null))[_0x75c3('0x23')](function(_0x5824bd){if(_0x5824bd){_0x225b46=_0x5824bd;_0x29cd3e[_0x75c3('0x2c')]=_[_0x75c3('0x2e')](db[_0x75c3('0x4b')]['rawAttributes']);_0x29cd3e[_0x75c3('0x2d')]=_[_0x75c3('0x2e')](_0x271e85[_0x75c3('0x2d')]);_0x29cd3e[_0x75c3('0x2f')]=_['intersection'](_0x29cd3e[_0x75c3('0x2c')],_0x29cd3e[_0x75c3('0x2d')]);_0x4716e6[_0x75c3('0x31')]=_[_0x75c3('0x30')](_0x29cd3e[_0x75c3('0x2c')],qs[_0x75c3('0x32')](_0x271e85[_0x75c3('0x2d')][_0x75c3('0x32')]));_0x4716e6['attributes']=_0x4716e6['attributes'][_0x75c3('0x33')]?_0x4716e6[_0x75c3('0x31')]:_0x29cd3e[_0x75c3('0x2c')];_0x4716e6[_0x75c3('0x36')]=qs['sort'](_0x271e85[_0x75c3('0x2d')][_0x75c3('0x37')]);_0x4716e6['where']=qs['filters'](_[_0x75c3('0x39')](_0x271e85[_0x75c3('0x2d')],_0x29cd3e[_0x75c3('0x2f')]));if(_0x271e85[_0x75c3('0x2d')]['filter']){_0x4716e6[_0x75c3('0x38')]=_[_0x75c3('0x3a')](_0x4716e6[_0x75c3('0x38')],{'$or':_[_0x75c3('0x28')](_0x4716e6['attributes'],function(_0x5b1ba9){var _0x49a7f2={};_0x49a7f2[_0x5b1ba9]={'$like':'%'+_0x271e85[_0x75c3('0x2d')][_0x75c3('0x3c')]+'%'};return _0x49a7f2;})});}_0x4716e6=_[_0x75c3('0x3a')]({},_0x4716e6,_0x271e85[_0x75c3('0x43')]);return _0x225b46[_0x75c3('0x4d')](_0x4716e6);}})[_0x75c3('0x23')](function(_0x33aee9){if(_0x33aee9){_0x978fd3=_0x33aee9[_0x75c3('0x33')];if(!_0x271e85[_0x75c3('0x2d')][_0x75c3('0x34')](_0x75c3('0x35'))){_0x4716e6[_0x75c3('0x1d')]=qs[_0x75c3('0x1d')](_0x271e85[_0x75c3('0x2d')][_0x75c3('0x1d')]);_0x4716e6[_0x75c3('0x1f')]=qs['offset'](_0x271e85[_0x75c3('0x2d')][_0x75c3('0x1f')]);}return _0x225b46[_0x75c3('0x4d')](_0x4716e6);}})[_0x75c3('0x23')](function(_0x55b92e){if(_0x55b92e){return _0x55b92e?{'count':_0x978fd3,'rows':_0x55b92e}:null;}})[_0x75c3('0x23')](respondWithResult(_0x176141,null))[_0x75c3('0x45')](handleError(_0x176141,null));};exports['getTags']=function(_0x42091b,_0x502529,_0x13ca79){var _0x38ba30={};var _0x204dc3={};var _0x3b2fd7;var _0x3569a0;return db[_0x75c3('0x29')][_0x75c3('0x4a')]({'where':{'id':_0x42091b[_0x75c3('0x40')]['id']}})['then'](handleEntityNotFound(_0x502529,null))['then'](function(_0xd05fa){if(_0xd05fa){_0x3b2fd7=_0xd05fa;_0x204dc3[_0x75c3('0x2c')]=_[_0x75c3('0x2e')](db['Tag'][_0x75c3('0x41')]);_0x204dc3[_0x75c3('0x2d')]=_['keys'](_0x42091b[_0x75c3('0x2d')]);_0x204dc3['filters']=_[_0x75c3('0x30')](_0x204dc3['model'],_0x204dc3[_0x75c3('0x2d')]);_0x38ba30['attributes']=_[_0x75c3('0x30')](_0x204dc3[_0x75c3('0x2c')],qs['fields'](_0x42091b['query'][_0x75c3('0x32')]));_0x38ba30[_0x75c3('0x31')]=_0x38ba30[_0x75c3('0x31')]['length']?_0x38ba30[_0x75c3('0x31')]:_0x204dc3[_0x75c3('0x2c')];_0x38ba30[_0x75c3('0x36')]=qs[_0x75c3('0x37')](_0x42091b[_0x75c3('0x2d')]['sort']);_0x38ba30[_0x75c3('0x38')]=qs[_0x75c3('0x2f')](_[_0x75c3('0x39')](_0x42091b[_0x75c3('0x2d')],_0x204dc3[_0x75c3('0x2f')]));if(_0x42091b[_0x75c3('0x2d')][_0x75c3('0x3c')]){_0x38ba30[_0x75c3('0x38')]=_[_0x75c3('0x3a')](_0x38ba30[_0x75c3('0x38')],{'$or':_['map'](_0x38ba30[_0x75c3('0x31')],function(_0x53c44e){var _0x12ec90={};_0x12ec90[_0x53c44e]={'$like':'%'+_0x42091b[_0x75c3('0x2d')][_0x75c3('0x3c')]+'%'};return _0x12ec90;})});}_0x38ba30=_[_0x75c3('0x3a')]({},_0x38ba30,_0x42091b['options']);return _0x3b2fd7[_0x75c3('0x4e')](_0x38ba30);}})['then'](function(_0x399040){if(_0x399040){_0x3569a0=_0x399040[_0x75c3('0x33')];if(!_0x42091b[_0x75c3('0x2d')][_0x75c3('0x34')]('nolimit')){_0x38ba30['limit']=qs[_0x75c3('0x1d')](_0x42091b[_0x75c3('0x2d')][_0x75c3('0x1d')]);_0x38ba30[_0x75c3('0x1f')]=qs[_0x75c3('0x1f')](_0x42091b[_0x75c3('0x2d')][_0x75c3('0x1f')]);}return _0x3b2fd7[_0x75c3('0x4e')](_0x38ba30);}})['then'](function(_0x25feef){if(_0x25feef){return _0x25feef?{'count':_0x3569a0,'rows':_0x25feef}:null;}})[_0x75c3('0x23')](respondWithResult(_0x502529,null))[_0x75c3('0x45')](handleError(_0x502529,null));};exports['setTags']=function(_0x251957,_0x447127,_0x24671c){if(_0x251957['body']['id']){delete _0x251957['body']['id'];}return db[_0x75c3('0x29')][_0x75c3('0x4a')]({'where':{'id':_0x251957['params']['id']}})[_0x75c3('0x23')](handleEntityNotFound(_0x447127,null))['then'](function(_0x428dc3){if(_0x428dc3){return _0x428dc3[_0x75c3('0x4f')](_0x251957['body'][_0x75c3('0x50')]||[]);}return null;})['then'](respondWithResult(_0x447127,null))[_0x75c3('0x45')](handleError(_0x447127,null));};