Built motion from commit b0a9a629.|2.6.33
[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 _0x6e7c=['hasOwnProperty','nolimit','sort','where','pick','filter','merge','includeAll','include','findAll','rows','params','options','catch','create','body','find','getFields','length','findOne','order','getSubjects','getDescriptions','getTags','Tag','setTags','ids','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','sendStatus','end','json','offset','undefined','limit','count','status','Content-Range','reject','update','destroy','then','stack','name','send','map','DeskConfiguration','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields'];(function(_0x15a0c3,_0xa2ae9){var _0x576900=function(_0x5ee47c){while(--_0x5ee47c){_0x15a0c3['push'](_0x15a0c3['shift']());}};_0x576900(++_0xa2ae9);}(_0x6e7c,0xbf));var _0xc6e7=function(_0x47e9dc,_0x347e4e){_0x47e9dc=_0x47e9dc-0x0;var _0x58e385=_0x6e7c[_0x47e9dc];return _0x58e385;};'use strict';var emlformat=require(_0xc6e7('0x0'));var rimraf=require(_0xc6e7('0x1'));var zipdir=require(_0xc6e7('0x2'));var jsonpatch=require(_0xc6e7('0x3'));var rp=require(_0xc6e7('0x4'));var moment=require('moment');var BPromise=require(_0xc6e7('0x5'));var Mustache=require(_0xc6e7('0x6'));var util=require(_0xc6e7('0x7'));var path=require(_0xc6e7('0x8'));var sox=require(_0xc6e7('0x9'));var csv=require(_0xc6e7('0xa'));var ejs=require(_0xc6e7('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc6e7('0xc'));var squel=require(_0xc6e7('0xd'));var crypto=require(_0xc6e7('0xe'));var jsforce=require(_0xc6e7('0xf'));var deskjs=require(_0xc6e7('0x10'));var toCsv=require('to-csv');var querystring=require(_0xc6e7('0x11'));var Papa=require(_0xc6e7('0x12'));var Redis=require(_0xc6e7('0x13'));var authService=require(_0xc6e7('0x14'));var qs=require(_0xc6e7('0x15'));var as=require(_0xc6e7('0x16'));var hardwareService=require(_0xc6e7('0x17'));var logger=require('../../config/logger')('api');var utils=require(_0xc6e7('0x18'));var config=require(_0xc6e7('0x19'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4fc507,_0x308d50){_0x308d50=_0x308d50||0xcc;return function(_0x1d2eff){if(_0x1d2eff){return _0x4fc507[_0xc6e7('0x1a')](_0x308d50);}return _0x4fc507['status'](_0x308d50)[_0xc6e7('0x1b')]();};}function respondWithResult(_0x28327f,_0x350d7c){_0x350d7c=_0x350d7c||0xc8;return function(_0x1629d5){if(_0x1629d5){return _0x28327f['status'](_0x350d7c)[_0xc6e7('0x1c')](_0x1629d5);}};}function respondWithFilteredResult(_0x5fef18,_0x3b1638){return function(_0x59f2e6){if(_0x59f2e6){var _0x47b8f7=typeof _0x3b1638[_0xc6e7('0x1d')]===_0xc6e7('0x1e')&&typeof _0x3b1638[_0xc6e7('0x1f')]==='undefined';var _0x1fed67=_0x59f2e6[_0xc6e7('0x20')];var _0x140ad8=_0x47b8f7?0x0:_0x3b1638[_0xc6e7('0x1d')];var _0x3e2e44=_0x47b8f7?_0x59f2e6[_0xc6e7('0x20')]:_0x3b1638[_0xc6e7('0x1d')]+_0x3b1638[_0xc6e7('0x1f')];var _0x4da367;if(_0x3e2e44>=_0x1fed67){_0x3e2e44=_0x1fed67;_0x4da367=0xc8;}else{_0x4da367=0xce;}_0x5fef18[_0xc6e7('0x21')](_0x4da367);return _0x5fef18['set'](_0xc6e7('0x22'),_0x140ad8+'-'+_0x3e2e44+'/'+_0x1fed67)[_0xc6e7('0x1c')](_0x59f2e6);}return null;};}function patchUpdates(_0x3ac665){return function(_0x4bc68e){try{jsonpatch['apply'](_0x4bc68e,_0x3ac665,!![]);}catch(_0x4d7aa0){return BPromise[_0xc6e7('0x23')](_0x4d7aa0);}return _0x4bc68e['save']();};}function saveUpdates(_0x409c21,_0x5268e5){return function(_0x58ce4c){if(_0x58ce4c){return _0x58ce4c[_0xc6e7('0x24')](_0x409c21)['then'](function(_0x598db0){return _0x598db0;});}return null;};}function removeEntity(_0x37eb05,_0x50e8ff){return function(_0x266d77){if(_0x266d77){return _0x266d77[_0xc6e7('0x25')]()[_0xc6e7('0x26')](function(){_0x37eb05[_0xc6e7('0x21')](0xcc)[_0xc6e7('0x1b')]();});}};}function handleEntityNotFound(_0x5420d0,_0x152082){return function(_0x146504){if(!_0x146504){_0x5420d0[_0xc6e7('0x1a')](0x194);}return _0x146504;};}function handleError(_0x550acd,_0x1c3177){_0x1c3177=_0x1c3177||0x1f4;return function(_0x5d105c){logger['error'](_0x5d105c[_0xc6e7('0x27')]);if(_0x5d105c[_0xc6e7('0x28')]){delete _0x5d105c[_0xc6e7('0x28')];}_0x550acd['status'](_0x1c3177)[_0xc6e7('0x29')](_0x5d105c);};}exports['index']=function(_0x25343d,_0x4dd29b){var _0x7a27a3={},_0x514d21={},_0x5dc786={'count':0x0,'rows':[]};var _0xbdba37=_[_0xc6e7('0x2a')](db[_0xc6e7('0x2b')][_0xc6e7('0x2c')],function(_0x4cc229){return{'name':_0x4cc229[_0xc6e7('0x2d')],'type':_0x4cc229[_0xc6e7('0x2e')][_0xc6e7('0x2f')]};});_0x514d21[_0xc6e7('0x30')]=_[_0xc6e7('0x2a')](_0xbdba37,_0xc6e7('0x28'));_0x514d21[_0xc6e7('0x31')]=_[_0xc6e7('0x32')](_0x25343d['query']);_0x514d21[_0xc6e7('0x33')]=_['intersection'](_0x514d21[_0xc6e7('0x30')],_0x514d21[_0xc6e7('0x31')]);_0x7a27a3[_0xc6e7('0x34')]=_[_0xc6e7('0x35')](_0x514d21['model'],qs[_0xc6e7('0x36')](_0x25343d[_0xc6e7('0x31')][_0xc6e7('0x36')]));_0x7a27a3[_0xc6e7('0x34')]=_0x7a27a3[_0xc6e7('0x34')]['length']?_0x7a27a3['attributes']:_0x514d21[_0xc6e7('0x30')];if(!_0x25343d[_0xc6e7('0x31')][_0xc6e7('0x37')](_0xc6e7('0x38'))){_0x7a27a3[_0xc6e7('0x1f')]=qs[_0xc6e7('0x1f')](_0x25343d[_0xc6e7('0x31')]['limit']);_0x7a27a3[_0xc6e7('0x1d')]=qs[_0xc6e7('0x1d')](_0x25343d[_0xc6e7('0x31')][_0xc6e7('0x1d')]);}_0x7a27a3['order']=qs[_0xc6e7('0x39')](_0x25343d[_0xc6e7('0x31')]['sort']);_0x7a27a3[_0xc6e7('0x3a')]=qs[_0xc6e7('0x33')](_[_0xc6e7('0x3b')](_0x25343d[_0xc6e7('0x31')],_0x514d21[_0xc6e7('0x33')]),_0xbdba37);if(_0x25343d[_0xc6e7('0x31')][_0xc6e7('0x3c')]){_0x7a27a3[_0xc6e7('0x3a')]=_['merge'](_0x7a27a3['where'],{'$or':_[_0xc6e7('0x2a')](_0xbdba37,function(_0x4c155a){if(_0x4c155a[_0xc6e7('0x2e')]!=='VIRTUAL'){var _0x221b2a={};_0x221b2a[_0x4c155a[_0xc6e7('0x28')]]={'$like':'%'+_0x25343d[_0xc6e7('0x31')]['filter']+'%'};return _0x221b2a;}})});}_0x7a27a3=_[_0xc6e7('0x3d')]({},_0x7a27a3,_0x25343d['options']);var _0x30486a={'where':_0x7a27a3['where']};return db['DeskConfiguration'][_0xc6e7('0x20')](_0x30486a)[_0xc6e7('0x26')](function(_0x44e530){_0x5dc786['count']=_0x44e530;if(_0x25343d[_0xc6e7('0x31')][_0xc6e7('0x3e')]){_0x7a27a3[_0xc6e7('0x3f')]=[{'all':!![]}];}return db[_0xc6e7('0x2b')][_0xc6e7('0x40')](_0x7a27a3);})[_0xc6e7('0x26')](function(_0x48a925){_0x5dc786[_0xc6e7('0x41')]=_0x48a925;return _0x5dc786;})['then'](respondWithFilteredResult(_0x4dd29b,_0x7a27a3))['catch'](handleError(_0x4dd29b,null));};exports['show']=function(_0x5bce7c,_0x42185c){var _0x2e61cb={'raw':![],'where':{'id':_0x5bce7c[_0xc6e7('0x42')]['id']}},_0x1ae42a={};_0x1ae42a[_0xc6e7('0x30')]=_[_0xc6e7('0x32')](db[_0xc6e7('0x2b')]['rawAttributes']);_0x1ae42a[_0xc6e7('0x31')]=_[_0xc6e7('0x32')](_0x5bce7c[_0xc6e7('0x31')]);_0x1ae42a[_0xc6e7('0x33')]=_[_0xc6e7('0x35')](_0x1ae42a['model'],_0x1ae42a['query']);_0x2e61cb[_0xc6e7('0x34')]=_[_0xc6e7('0x35')](_0x1ae42a['model'],qs[_0xc6e7('0x36')](_0x5bce7c[_0xc6e7('0x31')][_0xc6e7('0x36')]));_0x2e61cb['attributes']=_0x2e61cb['attributes']['length']?_0x2e61cb[_0xc6e7('0x34')]:_0x1ae42a['model'];if(_0x5bce7c[_0xc6e7('0x31')][_0xc6e7('0x3e')]){_0x2e61cb[_0xc6e7('0x3f')]=[{'all':!![]}];}_0x2e61cb=_[_0xc6e7('0x3d')]({},_0x2e61cb,_0x5bce7c[_0xc6e7('0x43')]);return db[_0xc6e7('0x2b')]['find'](_0x2e61cb)['then'](handleEntityNotFound(_0x42185c,null))[_0xc6e7('0x26')](respondWithResult(_0x42185c,null))[_0xc6e7('0x44')](handleError(_0x42185c,null));};exports[_0xc6e7('0x45')]=function(_0x1c57e2,_0x531a90){return db['DeskConfiguration']['create'](_0x1c57e2[_0xc6e7('0x46')],{})['then'](respondWithResult(_0x531a90,0xc9))[_0xc6e7('0x44')](handleError(_0x531a90,null));};exports['update']=function(_0x291b90,_0xd21b58){if(_0x291b90[_0xc6e7('0x46')]['id']){delete _0x291b90[_0xc6e7('0x46')]['id'];}return db[_0xc6e7('0x2b')][_0xc6e7('0x47')]({'where':{'id':_0x291b90[_0xc6e7('0x42')]['id']}})[_0xc6e7('0x26')](handleEntityNotFound(_0xd21b58,null))['then'](saveUpdates(_0x291b90[_0xc6e7('0x46')],null))[_0xc6e7('0x26')](respondWithResult(_0xd21b58,null))['catch'](handleError(_0xd21b58,null));};exports[_0xc6e7('0x25')]=function(_0x492b65,_0xfd4a85){return db[_0xc6e7('0x2b')][_0xc6e7('0x47')]({'where':{'id':_0x492b65[_0xc6e7('0x42')]['id']}})['then'](handleEntityNotFound(_0xfd4a85,null))['then'](removeEntity(_0xfd4a85,null))[_0xc6e7('0x44')](handleError(_0xfd4a85,null));};exports['getFields']=function(_0x54bfb9,_0x317786,_0x1ddfb9){var _0x2bee45={};var _0x293145={};var _0xe6ed1b;var _0x39b941;return db['DeskConfiguration']['findOne']({'where':{'id':_0x54bfb9[_0xc6e7('0x42')]['id']}})['then'](handleEntityNotFound(_0x317786,null))['then'](function(_0x73e347){if(_0x73e347){_0xe6ed1b=_0x73e347;_0x293145[_0xc6e7('0x30')]=_[_0xc6e7('0x32')](db['DeskField'][_0xc6e7('0x2c')]);_0x293145['query']=_[_0xc6e7('0x32')](_0x54bfb9[_0xc6e7('0x31')]);_0x293145[_0xc6e7('0x33')]=_[_0xc6e7('0x35')](_0x293145[_0xc6e7('0x30')],_0x293145[_0xc6e7('0x31')]);_0x2bee45[_0xc6e7('0x34')]=_[_0xc6e7('0x35')](_0x293145['model'],qs['fields'](_0x54bfb9['query'][_0xc6e7('0x36')]));_0x2bee45[_0xc6e7('0x34')]=_0x2bee45['attributes']['length']?_0x2bee45[_0xc6e7('0x34')]:_0x293145['model'];_0x2bee45['order']=qs['sort'](_0x54bfb9[_0xc6e7('0x31')][_0xc6e7('0x39')]);_0x2bee45[_0xc6e7('0x3a')]=qs[_0xc6e7('0x33')](_[_0xc6e7('0x3b')](_0x54bfb9[_0xc6e7('0x31')],_0x293145[_0xc6e7('0x33')]));if(_0x54bfb9['query'][_0xc6e7('0x3c')]){_0x2bee45[_0xc6e7('0x3a')]=_['merge'](_0x2bee45[_0xc6e7('0x3a')],{'$or':_[_0xc6e7('0x2a')](_0x2bee45[_0xc6e7('0x34')],function(_0x52492e){var _0x515faf={};_0x515faf[_0x52492e]={'$like':'%'+_0x54bfb9['query'][_0xc6e7('0x3c')]+'%'};return _0x515faf;})});}_0x2bee45=_[_0xc6e7('0x3d')]({},_0x2bee45,_0x54bfb9[_0xc6e7('0x43')]);return _0xe6ed1b[_0xc6e7('0x48')](_0x2bee45);}})[_0xc6e7('0x26')](function(_0x53c306){if(_0x53c306){_0x39b941=_0x53c306[_0xc6e7('0x49')];if(!_0x54bfb9[_0xc6e7('0x31')][_0xc6e7('0x37')](_0xc6e7('0x38'))){_0x2bee45[_0xc6e7('0x1f')]=qs[_0xc6e7('0x1f')](_0x54bfb9[_0xc6e7('0x31')][_0xc6e7('0x1f')]);_0x2bee45['offset']=qs[_0xc6e7('0x1d')](_0x54bfb9['query']['offset']);}return _0xe6ed1b['getFields'](_0x2bee45);}})[_0xc6e7('0x26')](function(_0x1701cf){if(_0x1701cf){return _0x1701cf?{'count':_0x39b941,'rows':_0x1701cf}:null;}})['then'](respondWithResult(_0x317786,null))[_0xc6e7('0x44')](handleError(_0x317786,null));};exports['getSubjects']=function(_0x91b6e4,_0x5382eb,_0x5f0ce0){var _0x461e4d={};var _0x1b3b93={};var _0x78b156;var _0x20e848;return db[_0xc6e7('0x2b')][_0xc6e7('0x4a')]({'where':{'id':_0x91b6e4[_0xc6e7('0x42')]['id']}})[_0xc6e7('0x26')](handleEntityNotFound(_0x5382eb,null))['then'](function(_0x525da9){if(_0x525da9){_0x78b156=_0x525da9;_0x1b3b93['model']=_[_0xc6e7('0x32')](db['DeskField'][_0xc6e7('0x2c')]);_0x1b3b93['query']=_['keys'](_0x91b6e4['query']);_0x1b3b93['filters']=_['intersection'](_0x1b3b93[_0xc6e7('0x30')],_0x1b3b93['query']);_0x461e4d[_0xc6e7('0x34')]=_[_0xc6e7('0x35')](_0x1b3b93[_0xc6e7('0x30')],qs[_0xc6e7('0x36')](_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x36')]));_0x461e4d[_0xc6e7('0x34')]=_0x461e4d[_0xc6e7('0x34')][_0xc6e7('0x49')]?_0x461e4d['attributes']:_0x1b3b93[_0xc6e7('0x30')];_0x461e4d[_0xc6e7('0x4b')]=qs['sort'](_0x91b6e4['query']['sort']);_0x461e4d[_0xc6e7('0x3a')]=qs[_0xc6e7('0x33')](_[_0xc6e7('0x3b')](_0x91b6e4[_0xc6e7('0x31')],_0x1b3b93[_0xc6e7('0x33')]));if(_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x3c')]){_0x461e4d[_0xc6e7('0x3a')]=_['merge'](_0x461e4d[_0xc6e7('0x3a')],{'$or':_[_0xc6e7('0x2a')](_0x461e4d['attributes'],function(_0xf03a56){var _0x5ed8ca={};_0x5ed8ca[_0xf03a56]={'$like':'%'+_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x3c')]+'%'};return _0x5ed8ca;})});}_0x461e4d=_[_0xc6e7('0x3d')]({},_0x461e4d,_0x91b6e4['options']);return _0x78b156[_0xc6e7('0x4c')](_0x461e4d);}})[_0xc6e7('0x26')](function(_0x4d5025){if(_0x4d5025){_0x20e848=_0x4d5025['length'];if(!_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x37')](_0xc6e7('0x38'))){_0x461e4d[_0xc6e7('0x1f')]=qs['limit'](_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x1f')]);_0x461e4d[_0xc6e7('0x1d')]=qs['offset'](_0x91b6e4[_0xc6e7('0x31')][_0xc6e7('0x1d')]);}return _0x78b156[_0xc6e7('0x4c')](_0x461e4d);}})['then'](function(_0x5c3046){if(_0x5c3046){return _0x5c3046?{'count':_0x20e848,'rows':_0x5c3046}:null;}})[_0xc6e7('0x26')](respondWithResult(_0x5382eb,null))[_0xc6e7('0x44')](handleError(_0x5382eb,null));};exports[_0xc6e7('0x4d')]=function(_0x526d0e,_0x495b74,_0x2f11bd){var _0x3376c4={};var _0x3838b0={};var _0x2cd1e0;var _0x445321;return db[_0xc6e7('0x2b')][_0xc6e7('0x4a')]({'where':{'id':_0x526d0e['params']['id']}})[_0xc6e7('0x26')](handleEntityNotFound(_0x495b74,null))[_0xc6e7('0x26')](function(_0x8be94a){if(_0x8be94a){_0x2cd1e0=_0x8be94a;_0x3838b0['model']=_[_0xc6e7('0x32')](db['DeskField']['rawAttributes']);_0x3838b0[_0xc6e7('0x31')]=_[_0xc6e7('0x32')](_0x526d0e[_0xc6e7('0x31')]);_0x3838b0[_0xc6e7('0x33')]=_[_0xc6e7('0x35')](_0x3838b0[_0xc6e7('0x30')],_0x3838b0['query']);_0x3376c4[_0xc6e7('0x34')]=_[_0xc6e7('0x35')](_0x3838b0[_0xc6e7('0x30')],qs[_0xc6e7('0x36')](_0x526d0e['query'][_0xc6e7('0x36')]));_0x3376c4[_0xc6e7('0x34')]=_0x3376c4[_0xc6e7('0x34')][_0xc6e7('0x49')]?_0x3376c4[_0xc6e7('0x34')]:_0x3838b0['model'];_0x3376c4[_0xc6e7('0x4b')]=qs[_0xc6e7('0x39')](_0x526d0e[_0xc6e7('0x31')][_0xc6e7('0x39')]);_0x3376c4[_0xc6e7('0x3a')]=qs[_0xc6e7('0x33')](_[_0xc6e7('0x3b')](_0x526d0e['query'],_0x3838b0[_0xc6e7('0x33')]));if(_0x526d0e[_0xc6e7('0x31')][_0xc6e7('0x3c')]){_0x3376c4['where']=_[_0xc6e7('0x3d')](_0x3376c4[_0xc6e7('0x3a')],{'$or':_[_0xc6e7('0x2a')](_0x3376c4['attributes'],function(_0x48f3e3){var _0x208332={};_0x208332[_0x48f3e3]={'$like':'%'+_0x526d0e['query'][_0xc6e7('0x3c')]+'%'};return _0x208332;})});}_0x3376c4=_[_0xc6e7('0x3d')]({},_0x3376c4,_0x526d0e['options']);return _0x2cd1e0[_0xc6e7('0x4d')](_0x3376c4);}})[_0xc6e7('0x26')](function(_0xd097da){if(_0xd097da){_0x445321=_0xd097da[_0xc6e7('0x49')];if(!_0x526d0e['query']['hasOwnProperty'](_0xc6e7('0x38'))){_0x3376c4[_0xc6e7('0x1f')]=qs['limit'](_0x526d0e[_0xc6e7('0x31')]['limit']);_0x3376c4['offset']=qs['offset'](_0x526d0e[_0xc6e7('0x31')][_0xc6e7('0x1d')]);}return _0x2cd1e0[_0xc6e7('0x4d')](_0x3376c4);}})['then'](function(_0x68ce8b){if(_0x68ce8b){return _0x68ce8b?{'count':_0x445321,'rows':_0x68ce8b}:null;}})['then'](respondWithResult(_0x495b74,null))[_0xc6e7('0x44')](handleError(_0x495b74,null));};exports[_0xc6e7('0x4e')]=function(_0x1f77f1,_0x25fa68,_0x4f21bf){var _0x3bf036={};var _0x1e5c6e={};var _0xc672c7;var _0xd483fe;return db[_0xc6e7('0x2b')][_0xc6e7('0x4a')]({'where':{'id':_0x1f77f1['params']['id']}})['then'](handleEntityNotFound(_0x25fa68,null))['then'](function(_0x3a632f){if(_0x3a632f){_0xc672c7=_0x3a632f;_0x1e5c6e[_0xc6e7('0x30')]=_[_0xc6e7('0x32')](db[_0xc6e7('0x4f')][_0xc6e7('0x2c')]);_0x1e5c6e[_0xc6e7('0x31')]=_[_0xc6e7('0x32')](_0x1f77f1['query']);_0x1e5c6e['filters']=_['intersection'](_0x1e5c6e['model'],_0x1e5c6e[_0xc6e7('0x31')]);_0x3bf036[_0xc6e7('0x34')]=_['intersection'](_0x1e5c6e[_0xc6e7('0x30')],qs[_0xc6e7('0x36')](_0x1f77f1[_0xc6e7('0x31')][_0xc6e7('0x36')]));_0x3bf036[_0xc6e7('0x34')]=_0x3bf036[_0xc6e7('0x34')]['length']?_0x3bf036[_0xc6e7('0x34')]:_0x1e5c6e[_0xc6e7('0x30')];_0x3bf036[_0xc6e7('0x4b')]=qs[_0xc6e7('0x39')](_0x1f77f1[_0xc6e7('0x31')][_0xc6e7('0x39')]);_0x3bf036[_0xc6e7('0x3a')]=qs[_0xc6e7('0x33')](_['pick'](_0x1f77f1[_0xc6e7('0x31')],_0x1e5c6e[_0xc6e7('0x33')]));if(_0x1f77f1['query']['filter']){_0x3bf036[_0xc6e7('0x3a')]=_['merge'](_0x3bf036[_0xc6e7('0x3a')],{'$or':_[_0xc6e7('0x2a')](_0x3bf036['attributes'],function(_0x5bc47c){var _0xc06d9={};_0xc06d9[_0x5bc47c]={'$like':'%'+_0x1f77f1[_0xc6e7('0x31')][_0xc6e7('0x3c')]+'%'};return _0xc06d9;})});}_0x3bf036=_[_0xc6e7('0x3d')]({},_0x3bf036,_0x1f77f1[_0xc6e7('0x43')]);return _0xc672c7['getTags'](_0x3bf036);}})[_0xc6e7('0x26')](function(_0x5c4f7a){if(_0x5c4f7a){_0xd483fe=_0x5c4f7a[_0xc6e7('0x49')];if(!_0x1f77f1[_0xc6e7('0x31')]['hasOwnProperty']('nolimit')){_0x3bf036[_0xc6e7('0x1f')]=qs[_0xc6e7('0x1f')](_0x1f77f1[_0xc6e7('0x31')]['limit']);_0x3bf036[_0xc6e7('0x1d')]=qs['offset'](_0x1f77f1[_0xc6e7('0x31')][_0xc6e7('0x1d')]);}return _0xc672c7[_0xc6e7('0x4e')](_0x3bf036);}})[_0xc6e7('0x26')](function(_0x59079c){if(_0x59079c){return _0x59079c?{'count':_0xd483fe,'rows':_0x59079c}:null;}})['then'](respondWithResult(_0x25fa68,null))[_0xc6e7('0x44')](handleError(_0x25fa68,null));};exports[_0xc6e7('0x50')]=function(_0x2523f2,_0x59af8f,_0x1c4369){if(_0x2523f2[_0xc6e7('0x46')]['id']){delete _0x2523f2['body']['id'];}return db[_0xc6e7('0x2b')][_0xc6e7('0x4a')]({'where':{'id':_0x2523f2['params']['id']}})[_0xc6e7('0x26')](handleEntityNotFound(_0x59af8f,null))[_0xc6e7('0x26')](function(_0x7b4083){if(_0x7b4083){return _0x7b4083[_0xc6e7('0x50')](_0x2523f2[_0xc6e7('0x46')][_0xc6e7('0x51')]||[]);}return null;})[_0xc6e7('0x26')](respondWithResult(_0x59af8f,null))[_0xc6e7('0x44')](handleError(_0x59af8f,null));};