Built motion from commit (unavailable).|2.5.14
[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 _0x5ba0=['length','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','DeskConfiguration','count','includeAll','include','rows','show','params','keys','rawAttributes','find','create','body','destroy','getFields','findOne','DeskField','hasOwnProperty','nolimit','getSubjects','getDescriptions','getTags','Tag','setTags','ids','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','http','then','info','DeskConfiguration,\x20%s,\x20%s','request\x20sent','debug','DeskConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','end','status','json','offset','limit','set','save','update','stack','name','send','index','map','type','key','model','query','intersection','attributes','fields'];(function(_0x3758dd,_0x3608b9){var _0x16ba2f=function(_0x2c4d3b){while(--_0x2c4d3b){_0x3758dd['push'](_0x3758dd['shift']());}};_0x16ba2f(++_0x3608b9);}(_0x5ba0,0x7e));var _0x05ba=function(_0x59f744,_0x3aadf8){_0x59f744=_0x59f744-0x0;var _0xe4e0f8=_0x5ba0[_0x59f744];return _0xe4e0f8;};'use strict';var pdf=require(_0x05ba('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x05ba('0x1'));var zipdir=require(_0x05ba('0x2'));var jsonpatch=require(_0x05ba('0x3'));var rp=require(_0x05ba('0x4'));var moment=require(_0x05ba('0x5'));var BPromise=require(_0x05ba('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x05ba('0x7'));var sox=require(_0x05ba('0x8'));var csv=require(_0x05ba('0x9'));var ejs=require(_0x05ba('0xa'));var fs=require('fs');var _=require(_0x05ba('0xb'));var squel=require('squel');var crypto=require(_0x05ba('0xc'));var jsforce=require(_0x05ba('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x05ba('0x9'));var querystring=require(_0x05ba('0xe'));var Papa=require(_0x05ba('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x05ba('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x05ba('0x11'));var utils=require(_0x05ba('0x12'));var config=require(_0x05ba('0x13'));var licenseUtil=require(_0x05ba('0x14'));var db=require(_0x05ba('0x15'))['db'];var jayson=require(_0x05ba('0x16'));var client=jayson[_0x05ba('0x17')][_0x05ba('0x18')]({'port':0x232a});function respondWithRpcPromise(_0x4e6215,_0x8c2061,_0x26154c,_0x52cff9){return new BPromise(function(_0x5d7b48,_0x8d8dd5){var _0x13dd39=_0x52cff9||client;return _0x13dd39['request'](_0x4e6215,_0x26154c)[_0x05ba('0x19')](function(_0x1bc1a4){logger[_0x05ba('0x1a')](_0x05ba('0x1b'),_0x8c2061,_0x05ba('0x1c'));logger[_0x05ba('0x1d')](_0x05ba('0x1e'),_0x8c2061,_0x05ba('0x1c'),JSON[_0x05ba('0x1f')](_0x1bc1a4));if(_0x1bc1a4[_0x05ba('0x20')]){if(_0x1bc1a4['error'][_0x05ba('0x21')]===0x1f4){logger[_0x05ba('0x20')]('DeskConfiguration,\x20%s,\x20%s',_0x8c2061,_0x1bc1a4['error']['message']);return _0x8d8dd5(_0x1bc1a4[_0x05ba('0x20')][_0x05ba('0x22')]);}logger[_0x05ba('0x20')]('DeskConfiguration,\x20%s,\x20%s',_0x8c2061,_0x1bc1a4[_0x05ba('0x20')][_0x05ba('0x22')]);return _0x5d7b48(_0x1bc1a4[_0x05ba('0x20')][_0x05ba('0x22')]);}else{logger[_0x05ba('0x1a')](_0x05ba('0x1b'),_0x8c2061,_0x05ba('0x1c'));_0x5d7b48(_0x1bc1a4[_0x05ba('0x23')]['message']);}})[_0x05ba('0x24')](function(_0xa09dfd){logger[_0x05ba('0x20')]('DeskConfiguration,\x20%s,\x20%s',_0x8c2061,_0xa09dfd);_0x8d8dd5(_0xa09dfd);});});}function respondWithStatusCode(_0x49f403,_0x347069){_0x347069=_0x347069||0xcc;return function(_0x150d65){if(_0x150d65){return _0x49f403[_0x05ba('0x25')](_0x347069);}return _0x49f403['status'](_0x347069)[_0x05ba('0x26')]();};}function respondWithResult(_0x321b85,_0x9e23ac){_0x9e23ac=_0x9e23ac||0xc8;return function(_0x5caf7e){if(_0x5caf7e){return _0x321b85[_0x05ba('0x27')](_0x9e23ac)[_0x05ba('0x28')](_0x5caf7e);}};}function respondWithFilteredResult(_0x31d9eb,_0x2c3513){return function(_0x144b18){if(_0x144b18){var _0x2c5c53=_0x144b18['count'],_0x20da3b=_0x2c3513[_0x05ba('0x29')],_0x3ec4af=_0x2c3513[_0x05ba('0x29')]+_0x2c3513[_0x05ba('0x2a')],_0x10d0cc;if(_0x3ec4af>=_0x2c5c53){_0x3ec4af=_0x2c5c53;_0x10d0cc=0xc8;}else{_0x10d0cc=0xce;}_0x31d9eb[_0x05ba('0x27')](_0x10d0cc);return _0x31d9eb[_0x05ba('0x2b')]('Content-Range',_0x20da3b+'-'+_0x3ec4af+'/'+_0x2c5c53)[_0x05ba('0x28')](_0x144b18);}return null;};}function patchUpdates(_0x44605f){return function(_0x187248){try{jsonpatch['apply'](_0x187248,_0x44605f,!![]);}catch(_0x3a4e4e){return BPromise['reject'](_0x3a4e4e);}return _0x187248[_0x05ba('0x2c')]();};}function saveUpdates(_0x55b899,_0x97d812){return function(_0x33692c){if(_0x33692c){return _0x33692c[_0x05ba('0x2d')](_0x55b899)['then'](function(_0x3c2add){return _0x3c2add;});}return null;};}function removeEntity(_0x26792f,_0x431537){return function(_0x46aaab){if(_0x46aaab){return _0x46aaab['destroy']()[_0x05ba('0x19')](function(){_0x26792f['status'](0xcc)[_0x05ba('0x26')]();});}};}function handleEntityNotFound(_0xfc1b26,_0x50cff8){return function(_0x5d51cd){if(!_0x5d51cd){_0xfc1b26[_0x05ba('0x25')](0x194);}return _0x5d51cd;};}function handleError(_0x2fda52,_0x5c5dc9){_0x5c5dc9=_0x5c5dc9||0x1f4;return function(_0x53ccb2){logger[_0x05ba('0x20')](_0x53ccb2[_0x05ba('0x2e')]);if(_0x53ccb2[_0x05ba('0x2f')]){delete _0x53ccb2[_0x05ba('0x2f')];}_0x2fda52[_0x05ba('0x27')](_0x5c5dc9)[_0x05ba('0x30')](_0x53ccb2);};}exports[_0x05ba('0x31')]=function(_0x4f82aa,_0xe4e4de){var _0x13d6fb={},_0xa3e635={},_0x484019={'count':0x0,'rows':[]};var _0x502277=_[_0x05ba('0x32')](db['DeskConfiguration']['rawAttributes'],function(_0x2a5bee){return{'name':_0x2a5bee['fieldName'],'type':_0x2a5bee[_0x05ba('0x33')][_0x05ba('0x34')]};});_0xa3e635[_0x05ba('0x35')]=_[_0x05ba('0x32')](_0x502277,_0x05ba('0x2f'));_0xa3e635[_0x05ba('0x36')]=_['keys'](_0x4f82aa[_0x05ba('0x36')]);_0xa3e635['filters']=_[_0x05ba('0x37')](_0xa3e635[_0x05ba('0x35')],_0xa3e635['query']);_0x13d6fb[_0x05ba('0x38')]=_[_0x05ba('0x37')](_0xa3e635[_0x05ba('0x35')],qs[_0x05ba('0x39')](_0x4f82aa[_0x05ba('0x36')][_0x05ba('0x39')]));_0x13d6fb[_0x05ba('0x38')]=_0x13d6fb[_0x05ba('0x38')][_0x05ba('0x3a')]?_0x13d6fb[_0x05ba('0x38')]:_0xa3e635[_0x05ba('0x35')];if(!_0x4f82aa['query']['hasOwnProperty']('nolimit')){_0x13d6fb[_0x05ba('0x2a')]=qs['limit'](_0x4f82aa['query']['limit']);_0x13d6fb['offset']=qs[_0x05ba('0x29')](_0x4f82aa['query']['offset']);}_0x13d6fb[_0x05ba('0x3b')]=qs[_0x05ba('0x3c')](_0x4f82aa[_0x05ba('0x36')][_0x05ba('0x3c')]);_0x13d6fb[_0x05ba('0x3d')]=qs[_0x05ba('0x3e')](_[_0x05ba('0x3f')](_0x4f82aa[_0x05ba('0x36')],_0xa3e635[_0x05ba('0x3e')]),_0x502277);if(_0x4f82aa['query'][_0x05ba('0x40')]){_0x13d6fb[_0x05ba('0x3d')]=_[_0x05ba('0x41')](_0x13d6fb[_0x05ba('0x3d')],{'$or':_[_0x05ba('0x32')](_0x502277,function(_0x35b685){if(_0x35b685[_0x05ba('0x33')]!==_0x05ba('0x42')){var _0x5e6a05={};_0x5e6a05[_0x35b685['name']]={'$like':'%'+_0x4f82aa[_0x05ba('0x36')]['filter']+'%'};return _0x5e6a05;}})});}_0x13d6fb=_[_0x05ba('0x41')]({},_0x13d6fb,_0x4f82aa[_0x05ba('0x43')]);var _0x39c214={'where':_0x13d6fb[_0x05ba('0x3d')]};return db[_0x05ba('0x44')][_0x05ba('0x45')](_0x39c214)[_0x05ba('0x19')](function(_0xe5ba38){_0x484019[_0x05ba('0x45')]=_0xe5ba38;if(_0x4f82aa[_0x05ba('0x36')][_0x05ba('0x46')]){_0x13d6fb[_0x05ba('0x47')]=[{'all':!![]}];}return db[_0x05ba('0x44')]['findAll'](_0x13d6fb);})[_0x05ba('0x19')](function(_0x1ef65f){_0x484019[_0x05ba('0x48')]=_0x1ef65f;return _0x484019;})[_0x05ba('0x19')](respondWithFilteredResult(_0xe4e4de,_0x13d6fb))[_0x05ba('0x24')](handleError(_0xe4e4de,null));};exports[_0x05ba('0x49')]=function(_0x5a39eb,_0x4edb32){var _0x158d5d={'raw':![],'where':{'id':_0x5a39eb[_0x05ba('0x4a')]['id']}},_0x20a89e={};_0x20a89e[_0x05ba('0x35')]=_[_0x05ba('0x4b')](db[_0x05ba('0x44')][_0x05ba('0x4c')]);_0x20a89e['query']=_['keys'](_0x5a39eb['query']);_0x20a89e[_0x05ba('0x3e')]=_[_0x05ba('0x37')](_0x20a89e[_0x05ba('0x35')],_0x20a89e[_0x05ba('0x36')]);_0x158d5d['attributes']=_[_0x05ba('0x37')](_0x20a89e[_0x05ba('0x35')],qs[_0x05ba('0x39')](_0x5a39eb[_0x05ba('0x36')]['fields']));_0x158d5d[_0x05ba('0x38')]=_0x158d5d[_0x05ba('0x38')][_0x05ba('0x3a')]?_0x158d5d['attributes']:_0x20a89e[_0x05ba('0x35')];if(_0x5a39eb[_0x05ba('0x36')][_0x05ba('0x46')]){_0x158d5d['include']=[{'all':!![]}];}_0x158d5d=_[_0x05ba('0x41')]({},_0x158d5d,_0x5a39eb[_0x05ba('0x43')]);return db[_0x05ba('0x44')][_0x05ba('0x4d')](_0x158d5d)[_0x05ba('0x19')](handleEntityNotFound(_0x4edb32,null))[_0x05ba('0x19')](respondWithResult(_0x4edb32,null))['catch'](handleError(_0x4edb32,null));};exports[_0x05ba('0x4e')]=function(_0x5ecbe6,_0x773ef4){return db['DeskConfiguration'][_0x05ba('0x4e')](_0x5ecbe6[_0x05ba('0x4f')],{})['then'](respondWithResult(_0x773ef4,0xc9))['catch'](handleError(_0x773ef4,null));};exports[_0x05ba('0x2d')]=function(_0x57aa53,_0x59f506){if(_0x57aa53[_0x05ba('0x4f')]['id']){delete _0x57aa53['body']['id'];}return db[_0x05ba('0x44')][_0x05ba('0x4d')]({'where':{'id':_0x57aa53['params']['id']}})[_0x05ba('0x19')](handleEntityNotFound(_0x59f506,null))['then'](saveUpdates(_0x57aa53[_0x05ba('0x4f')],null))[_0x05ba('0x19')](respondWithResult(_0x59f506,null))[_0x05ba('0x24')](handleError(_0x59f506,null));};exports[_0x05ba('0x50')]=function(_0x240d02,_0x531843){return db[_0x05ba('0x44')][_0x05ba('0x4d')]({'where':{'id':_0x240d02[_0x05ba('0x4a')]['id']}})[_0x05ba('0x19')](handleEntityNotFound(_0x531843,null))[_0x05ba('0x19')](removeEntity(_0x531843,null))[_0x05ba('0x24')](handleError(_0x531843,null));};exports[_0x05ba('0x51')]=function(_0x5d1fc1,_0x2a2971,_0x15cfe2){var _0x8dfbd3={};var _0x1a4e52={};var _0x1d92a5;var _0x371aa5;return db['DeskConfiguration'][_0x05ba('0x52')]({'where':{'id':_0x5d1fc1[_0x05ba('0x4a')]['id']}})['then'](handleEntityNotFound(_0x2a2971,null))['then'](function(_0x498277){if(_0x498277){_0x1d92a5=_0x498277;_0x1a4e52['model']=_[_0x05ba('0x4b')](db[_0x05ba('0x53')]['rawAttributes']);_0x1a4e52[_0x05ba('0x36')]=_[_0x05ba('0x4b')](_0x5d1fc1['query']);_0x1a4e52['filters']=_['intersection'](_0x1a4e52['model'],_0x1a4e52['query']);_0x8dfbd3[_0x05ba('0x38')]=_['intersection'](_0x1a4e52[_0x05ba('0x35')],qs['fields'](_0x5d1fc1['query']['fields']));_0x8dfbd3[_0x05ba('0x38')]=_0x8dfbd3['attributes'][_0x05ba('0x3a')]?_0x8dfbd3['attributes']:_0x1a4e52['model'];_0x8dfbd3[_0x05ba('0x3b')]=qs[_0x05ba('0x3c')](_0x5d1fc1[_0x05ba('0x36')][_0x05ba('0x3c')]);_0x8dfbd3[_0x05ba('0x3d')]=qs[_0x05ba('0x3e')](_[_0x05ba('0x3f')](_0x5d1fc1[_0x05ba('0x36')],_0x1a4e52[_0x05ba('0x3e')]));if(_0x5d1fc1[_0x05ba('0x36')][_0x05ba('0x40')]){_0x8dfbd3[_0x05ba('0x3d')]=_[_0x05ba('0x41')](_0x8dfbd3['where'],{'$or':_[_0x05ba('0x32')](_0x8dfbd3[_0x05ba('0x38')],function(_0x4ba2b6){var _0x5af635={};_0x5af635[_0x4ba2b6]={'$like':'%'+_0x5d1fc1[_0x05ba('0x36')][_0x05ba('0x40')]+'%'};return _0x5af635;})});}_0x8dfbd3=_[_0x05ba('0x41')]({},_0x8dfbd3,_0x5d1fc1[_0x05ba('0x43')]);return _0x1d92a5['getFields'](_0x8dfbd3);}})[_0x05ba('0x19')](function(_0x1c1825){if(_0x1c1825){_0x371aa5=_0x1c1825[_0x05ba('0x3a')];if(!_0x5d1fc1['query'][_0x05ba('0x54')](_0x05ba('0x55'))){_0x8dfbd3[_0x05ba('0x2a')]=qs[_0x05ba('0x2a')](_0x5d1fc1[_0x05ba('0x36')][_0x05ba('0x2a')]);_0x8dfbd3[_0x05ba('0x29')]=qs[_0x05ba('0x29')](_0x5d1fc1[_0x05ba('0x36')][_0x05ba('0x29')]);}return _0x1d92a5[_0x05ba('0x51')](_0x8dfbd3);}})[_0x05ba('0x19')](function(_0x509edb){if(_0x509edb){return _0x509edb?{'count':_0x371aa5,'rows':_0x509edb}:null;}})[_0x05ba('0x19')](respondWithResult(_0x2a2971,null))[_0x05ba('0x24')](handleError(_0x2a2971,null));};exports[_0x05ba('0x56')]=function(_0x22941c,_0xa12f54,_0xa2767f){var _0x5de361={};var _0x465f3c={};var _0x126f4f;var _0x55c4d8;return db[_0x05ba('0x44')][_0x05ba('0x52')]({'where':{'id':_0x22941c[_0x05ba('0x4a')]['id']}})[_0x05ba('0x19')](handleEntityNotFound(_0xa12f54,null))[_0x05ba('0x19')](function(_0x2f11c9){if(_0x2f11c9){_0x126f4f=_0x2f11c9;_0x465f3c[_0x05ba('0x35')]=_[_0x05ba('0x4b')](db[_0x05ba('0x53')][_0x05ba('0x4c')]);_0x465f3c[_0x05ba('0x36')]=_['keys'](_0x22941c[_0x05ba('0x36')]);_0x465f3c[_0x05ba('0x3e')]=_[_0x05ba('0x37')](_0x465f3c[_0x05ba('0x35')],_0x465f3c[_0x05ba('0x36')]);_0x5de361[_0x05ba('0x38')]=_[_0x05ba('0x37')](_0x465f3c[_0x05ba('0x35')],qs[_0x05ba('0x39')](_0x22941c['query'][_0x05ba('0x39')]));_0x5de361[_0x05ba('0x38')]=_0x5de361[_0x05ba('0x38')][_0x05ba('0x3a')]?_0x5de361[_0x05ba('0x38')]:_0x465f3c[_0x05ba('0x35')];_0x5de361[_0x05ba('0x3b')]=qs[_0x05ba('0x3c')](_0x22941c[_0x05ba('0x36')][_0x05ba('0x3c')]);_0x5de361[_0x05ba('0x3d')]=qs['filters'](_['pick'](_0x22941c['query'],_0x465f3c['filters']));if(_0x22941c['query']['filter']){_0x5de361[_0x05ba('0x3d')]=_[_0x05ba('0x41')](_0x5de361['where'],{'$or':_['map'](_0x5de361[_0x05ba('0x38')],function(_0x55f451){var _0x314697={};_0x314697[_0x55f451]={'$like':'%'+_0x22941c[_0x05ba('0x36')][_0x05ba('0x40')]+'%'};return _0x314697;})});}_0x5de361=_['merge']({},_0x5de361,_0x22941c[_0x05ba('0x43')]);return _0x126f4f['getSubjects'](_0x5de361);}})[_0x05ba('0x19')](function(_0xa6219){if(_0xa6219){_0x55c4d8=_0xa6219[_0x05ba('0x3a')];if(!_0x22941c[_0x05ba('0x36')][_0x05ba('0x54')]('nolimit')){_0x5de361[_0x05ba('0x2a')]=qs[_0x05ba('0x2a')](_0x22941c[_0x05ba('0x36')][_0x05ba('0x2a')]);_0x5de361['offset']=qs['offset'](_0x22941c['query'][_0x05ba('0x29')]);}return _0x126f4f[_0x05ba('0x56')](_0x5de361);}})[_0x05ba('0x19')](function(_0x4e8ee9){if(_0x4e8ee9){return _0x4e8ee9?{'count':_0x55c4d8,'rows':_0x4e8ee9}:null;}})[_0x05ba('0x19')](respondWithResult(_0xa12f54,null))[_0x05ba('0x24')](handleError(_0xa12f54,null));};exports['getDescriptions']=function(_0x4ae077,_0x307845,_0x475898){var _0x597751={};var _0x176197={};var _0x31ef0c;var _0x317b4b;return db[_0x05ba('0x44')][_0x05ba('0x52')]({'where':{'id':_0x4ae077[_0x05ba('0x4a')]['id']}})[_0x05ba('0x19')](handleEntityNotFound(_0x307845,null))['then'](function(_0x46a9fa){if(_0x46a9fa){_0x31ef0c=_0x46a9fa;_0x176197['model']=_[_0x05ba('0x4b')](db['DeskField'][_0x05ba('0x4c')]);_0x176197[_0x05ba('0x36')]=_[_0x05ba('0x4b')](_0x4ae077['query']);_0x176197[_0x05ba('0x3e')]=_[_0x05ba('0x37')](_0x176197[_0x05ba('0x35')],_0x176197[_0x05ba('0x36')]);_0x597751['attributes']=_[_0x05ba('0x37')](_0x176197[_0x05ba('0x35')],qs[_0x05ba('0x39')](_0x4ae077[_0x05ba('0x36')]['fields']));_0x597751[_0x05ba('0x38')]=_0x597751[_0x05ba('0x38')][_0x05ba('0x3a')]?_0x597751[_0x05ba('0x38')]:_0x176197[_0x05ba('0x35')];_0x597751['order']=qs['sort'](_0x4ae077[_0x05ba('0x36')][_0x05ba('0x3c')]);_0x597751[_0x05ba('0x3d')]=qs['filters'](_[_0x05ba('0x3f')](_0x4ae077['query'],_0x176197['filters']));if(_0x4ae077[_0x05ba('0x36')][_0x05ba('0x40')]){_0x597751[_0x05ba('0x3d')]=_[_0x05ba('0x41')](_0x597751[_0x05ba('0x3d')],{'$or':_[_0x05ba('0x32')](_0x597751[_0x05ba('0x38')],function(_0x580db0){var _0x199faa={};_0x199faa[_0x580db0]={'$like':'%'+_0x4ae077['query'][_0x05ba('0x40')]+'%'};return _0x199faa;})});}_0x597751=_[_0x05ba('0x41')]({},_0x597751,_0x4ae077['options']);return _0x31ef0c['getDescriptions'](_0x597751);}})[_0x05ba('0x19')](function(_0x46cc12){if(_0x46cc12){_0x317b4b=_0x46cc12[_0x05ba('0x3a')];if(!_0x4ae077[_0x05ba('0x36')]['hasOwnProperty']('nolimit')){_0x597751['limit']=qs[_0x05ba('0x2a')](_0x4ae077[_0x05ba('0x36')]['limit']);_0x597751[_0x05ba('0x29')]=qs[_0x05ba('0x29')](_0x4ae077[_0x05ba('0x36')][_0x05ba('0x29')]);}return _0x31ef0c[_0x05ba('0x57')](_0x597751);}})[_0x05ba('0x19')](function(_0x2e9f68){if(_0x2e9f68){return _0x2e9f68?{'count':_0x317b4b,'rows':_0x2e9f68}:null;}})['then'](respondWithResult(_0x307845,null))['catch'](handleError(_0x307845,null));};exports[_0x05ba('0x58')]=function(_0x34b386,_0x1d6227,_0x23d8a3){var _0x2a35dc={};var _0x55edf2={};var _0x3b003f;var _0x282f71;return db[_0x05ba('0x44')][_0x05ba('0x52')]({'where':{'id':_0x34b386[_0x05ba('0x4a')]['id']}})['then'](handleEntityNotFound(_0x1d6227,null))[_0x05ba('0x19')](function(_0x4ee4a9){if(_0x4ee4a9){_0x3b003f=_0x4ee4a9;_0x55edf2[_0x05ba('0x35')]=_['keys'](db[_0x05ba('0x59')][_0x05ba('0x4c')]);_0x55edf2[_0x05ba('0x36')]=_[_0x05ba('0x4b')](_0x34b386[_0x05ba('0x36')]);_0x55edf2[_0x05ba('0x3e')]=_[_0x05ba('0x37')](_0x55edf2['model'],_0x55edf2['query']);_0x2a35dc[_0x05ba('0x38')]=_[_0x05ba('0x37')](_0x55edf2[_0x05ba('0x35')],qs['fields'](_0x34b386['query'][_0x05ba('0x39')]));_0x2a35dc['attributes']=_0x2a35dc['attributes'][_0x05ba('0x3a')]?_0x2a35dc['attributes']:_0x55edf2[_0x05ba('0x35')];_0x2a35dc[_0x05ba('0x3b')]=qs[_0x05ba('0x3c')](_0x34b386[_0x05ba('0x36')][_0x05ba('0x3c')]);_0x2a35dc['where']=qs[_0x05ba('0x3e')](_[_0x05ba('0x3f')](_0x34b386['query'],_0x55edf2[_0x05ba('0x3e')]));if(_0x34b386[_0x05ba('0x36')]['filter']){_0x2a35dc['where']=_['merge'](_0x2a35dc[_0x05ba('0x3d')],{'$or':_['map'](_0x2a35dc[_0x05ba('0x38')],function(_0x59bdaf){var _0x6224c2={};_0x6224c2[_0x59bdaf]={'$like':'%'+_0x34b386[_0x05ba('0x36')]['filter']+'%'};return _0x6224c2;})});}_0x2a35dc=_[_0x05ba('0x41')]({},_0x2a35dc,_0x34b386['options']);return _0x3b003f['getTags'](_0x2a35dc);}})[_0x05ba('0x19')](function(_0x4f34b5){if(_0x4f34b5){_0x282f71=_0x4f34b5[_0x05ba('0x3a')];if(!_0x34b386[_0x05ba('0x36')][_0x05ba('0x54')](_0x05ba('0x55'))){_0x2a35dc[_0x05ba('0x2a')]=qs[_0x05ba('0x2a')](_0x34b386[_0x05ba('0x36')][_0x05ba('0x2a')]);_0x2a35dc['offset']=qs[_0x05ba('0x29')](_0x34b386[_0x05ba('0x36')][_0x05ba('0x29')]);}return _0x3b003f[_0x05ba('0x58')](_0x2a35dc);}})[_0x05ba('0x19')](function(_0x5edfd5){if(_0x5edfd5){return _0x5edfd5?{'count':_0x282f71,'rows':_0x5edfd5}:null;}})[_0x05ba('0x19')](respondWithResult(_0x1d6227,null))[_0x05ba('0x24')](handleError(_0x1d6227,null));};exports[_0x05ba('0x5a')]=function(_0x6197fd,_0x5dc9b3,_0x53291f){if(_0x6197fd[_0x05ba('0x4f')]['id']){delete _0x6197fd['body']['id'];}return db[_0x05ba('0x44')]['findOne']({'where':{'id':_0x6197fd[_0x05ba('0x4a')]['id']}})['then'](handleEntityNotFound(_0x5dc9b3,null))[_0x05ba('0x19')](function(_0x3baf1e){if(_0x3baf1e){return _0x3baf1e[_0x05ba('0x5a')](_0x6197fd[_0x05ba('0x4f')][_0x05ba('0x5b')]||[]);}return null;})[_0x05ba('0x19')](respondWithResult(_0x5dc9b3,null))['catch'](handleError(_0x5dc9b3,null));};