782831a2593e62fed10a5c3f75876fe17701ae75
[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 _0xc5ba=['ejs','lodash','squel','crypto','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','jayson/promise','client','http','test','Sequelize','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','info','DeskConfiguration,\x20%s,\x20%s','debug','request\x20sent','error','message','result','catch','sendStatus','status','end','json','offset','limit','set','apply','reject','destroy','stack','name','send','map','DeskConfiguration','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','sort','where','pick','filter','merge','VIRTUAL','options','count','include','findAll','show','params','length','includeAll','find','create','body','update','getFields','findOne','nolimit','getSubjects','DeskField','hasOwnProperty','getDescriptions','order','getTags','Tag','setTags','ids','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv'];(function(_0x1f3514,_0x2e926b){var _0x1d6ed8=function(_0x4da80d){while(--_0x4da80d){_0x1f3514['push'](_0x1f3514['shift']());}};_0x1d6ed8(++_0x2e926b);}(_0xc5ba,0xb9));var _0xac5b=function(_0x1b98b4,_0xb1826a){_0x1b98b4=_0x1b98b4-0x0;var _0x448bb3=_0xc5ba[_0x1b98b4];return _0x448bb3;};'use strict';var pdf=require(_0xac5b('0x0'));var emlformat=require(_0xac5b('0x1'));var rimraf=require(_0xac5b('0x2'));var zipdir=require(_0xac5b('0x3'));var jsonpatch=require(_0xac5b('0x4'));var rp=require(_0xac5b('0x5'));var moment=require(_0xac5b('0x6'));var BPromise=require(_0xac5b('0x7'));var Mustache=require(_0xac5b('0x8'));var util=require(_0xac5b('0x9'));var path=require(_0xac5b('0xa'));var sox=require(_0xac5b('0xb'));var csv=require(_0xac5b('0xc'));var ejs=require(_0xac5b('0xd'));var fs=require('fs');var _=require(_0xac5b('0xe'));var squel=require(_0xac5b('0xf'));var crypto=require(_0xac5b('0x10'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xac5b('0xc'));var querystring=require('querystring');var Papa=require(_0xac5b('0x11'));var Redis=require(_0xac5b('0x12'));var authService=require(_0xac5b('0x13'));var qs=require(_0xac5b('0x14'));var as=require(_0xac5b('0x15'));var hardwareService=require(_0xac5b('0x16'));var logger=require(_0xac5b('0x17'))(_0xac5b('0x18'));var utils=require(_0xac5b('0x19'));var config=require('../../config/environment');var db=require(_0xac5b('0x1a'))['db'];var jayson=require(_0xac5b('0x1b'));var client=jayson[_0xac5b('0x1c')][_0xac5b('0x1d')]({'port':0x232a});function checkPasswordPattern(_0x4644b5,_0x2deb15,_0xa754ff){if(_0xa754ff){var _0x35eef0=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x35eef0[_0xac5b('0x1e')](_0x2deb15)){return _0x4644b5;}else{throw new db[(_0xac5b('0x1f'))][(_0xac5b('0x20'))](_0xac5b('0x21'));}}else{return _0x4644b5;}}function respondWithRpcPromise(_0x5e1482,_0x3bad56,_0xe88a79,_0x3803cf){return new BPromise(function(_0x2e4742,_0xa0b4f2){var _0x73f919=_0x3803cf||client;return _0x73f919[_0xac5b('0x22')](_0x5e1482,_0xe88a79)[_0xac5b('0x23')](function(_0xb0d0a3){logger[_0xac5b('0x24')](_0xac5b('0x25'),_0x3bad56,'request\x20sent');logger[_0xac5b('0x26')]('DeskConfiguration,\x20%s,\x20%s,\x20%s',_0x3bad56,_0xac5b('0x27'),JSON['stringify'](_0xb0d0a3));if(_0xb0d0a3[_0xac5b('0x28')]){if(_0xb0d0a3[_0xac5b('0x28')]['code']===0x1f4){logger['error']('DeskConfiguration,\x20%s,\x20%s',_0x3bad56,_0xb0d0a3[_0xac5b('0x28')]['message']);return _0xa0b4f2(_0xb0d0a3[_0xac5b('0x28')][_0xac5b('0x29')]);}logger[_0xac5b('0x28')](_0xac5b('0x25'),_0x3bad56,_0xb0d0a3[_0xac5b('0x28')]['message']);return _0x2e4742(_0xb0d0a3['error']['message']);}else{logger[_0xac5b('0x24')]('DeskConfiguration,\x20%s,\x20%s',_0x3bad56,_0xac5b('0x27'));_0x2e4742(_0xb0d0a3[_0xac5b('0x2a')]['message']);}})[_0xac5b('0x2b')](function(_0x4735cf){logger[_0xac5b('0x28')](_0xac5b('0x25'),_0x3bad56,_0x4735cf);_0xa0b4f2(_0x4735cf);});});}function respondWithStatusCode(_0x3c3b08,_0x40e99f){_0x40e99f=_0x40e99f||0xcc;return function(_0x1f923d){if(_0x1f923d){return _0x3c3b08[_0xac5b('0x2c')](_0x40e99f);}return _0x3c3b08[_0xac5b('0x2d')](_0x40e99f)[_0xac5b('0x2e')]();};}function respondWithResult(_0x578d11,_0x2b6211){_0x2b6211=_0x2b6211||0xc8;return function(_0xa48194){if(_0xa48194){return _0x578d11[_0xac5b('0x2d')](_0x2b6211)[_0xac5b('0x2f')](_0xa48194);}};}function respondWithFilteredResult(_0x206742,_0x28daf0){return function(_0x1d44f3){if(_0x1d44f3){var _0x108027=_0x1d44f3['count'],_0xbdc94b=_0x28daf0[_0xac5b('0x30')],_0x1314ea=_0x28daf0[_0xac5b('0x30')]+_0x28daf0[_0xac5b('0x31')],_0x36f1e4;if(_0x1314ea>=_0x108027){_0x1314ea=_0x108027;_0x36f1e4=0xc8;}else{_0x36f1e4=0xce;}_0x206742['status'](_0x36f1e4);return _0x206742[_0xac5b('0x32')]('Content-Range',_0xbdc94b+'-'+_0x1314ea+'/'+_0x108027)[_0xac5b('0x2f')](_0x1d44f3);}return null;};}function patchUpdates(_0x3c5e8b){return function(_0x2559f8){try{jsonpatch[_0xac5b('0x33')](_0x2559f8,_0x3c5e8b,!![]);}catch(_0x47f417){return BPromise[_0xac5b('0x34')](_0x47f417);}return _0x2559f8['save']();};}function saveUpdates(_0x486245,_0x23d51d){return function(_0x45ada8){if(_0x45ada8){return _0x45ada8['update'](_0x486245)['then'](function(_0x1eed40){return _0x1eed40;});}return null;};}function removeEntity(_0x17577f,_0x5b024d){return function(_0x424773){if(_0x424773){return _0x424773[_0xac5b('0x35')]()[_0xac5b('0x23')](function(){_0x17577f['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xd1ee60,_0x41bf26){return function(_0x57a460){if(!_0x57a460){_0xd1ee60[_0xac5b('0x2c')](0x194);}return _0x57a460;};}function handleError(_0x3116b8,_0x3f267b){_0x3f267b=_0x3f267b||0x1f4;return function(_0x5f1c77){logger['error'](_0x5f1c77[_0xac5b('0x36')]);if(_0x5f1c77[_0xac5b('0x37')]){delete _0x5f1c77[_0xac5b('0x37')];}_0x3116b8[_0xac5b('0x2d')](_0x3f267b)[_0xac5b('0x38')](_0x5f1c77);};}exports['index']=function(_0x81e0f4,_0x5e5b1c){var _0x2c53c1={},_0x5596cf={},_0x3b08aa={'count':0x0,'rows':[]};var _0x4337ac=_[_0xac5b('0x39')](db[_0xac5b('0x3a')][_0xac5b('0x3b')],function(_0x1b430d){return{'name':_0x1b430d['fieldName'],'type':_0x1b430d[_0xac5b('0x3c')][_0xac5b('0x3d')]};});_0x5596cf[_0xac5b('0x3e')]=_[_0xac5b('0x39')](_0x4337ac,_0xac5b('0x37'));_0x5596cf[_0xac5b('0x3f')]=_[_0xac5b('0x40')](_0x81e0f4['query']);_0x5596cf[_0xac5b('0x41')]=_[_0xac5b('0x42')](_0x5596cf[_0xac5b('0x3e')],_0x5596cf[_0xac5b('0x3f')]);_0x2c53c1[_0xac5b('0x43')]=_[_0xac5b('0x42')](_0x5596cf['model'],qs[_0xac5b('0x44')](_0x81e0f4['query'][_0xac5b('0x44')]));_0x2c53c1['attributes']=_0x2c53c1[_0xac5b('0x43')]['length']?_0x2c53c1['attributes']:_0x5596cf['model'];if(!_0x81e0f4['query']['hasOwnProperty']('nolimit')){_0x2c53c1[_0xac5b('0x31')]=qs['limit'](_0x81e0f4[_0xac5b('0x3f')][_0xac5b('0x31')]);_0x2c53c1[_0xac5b('0x30')]=qs['offset'](_0x81e0f4['query'][_0xac5b('0x30')]);}_0x2c53c1['order']=qs[_0xac5b('0x45')](_0x81e0f4[_0xac5b('0x3f')][_0xac5b('0x45')]);_0x2c53c1[_0xac5b('0x46')]=qs['filters'](_[_0xac5b('0x47')](_0x81e0f4[_0xac5b('0x3f')],_0x5596cf[_0xac5b('0x41')]),_0x4337ac);if(_0x81e0f4['query'][_0xac5b('0x48')]){_0x2c53c1['where']=_[_0xac5b('0x49')](_0x2c53c1[_0xac5b('0x46')],{'$or':_[_0xac5b('0x39')](_0x4337ac,function(_0x4817ee){if(_0x4817ee[_0xac5b('0x3c')]!==_0xac5b('0x4a')){var _0x3697f0={};_0x3697f0[_0x4817ee[_0xac5b('0x37')]]={'$like':'%'+_0x81e0f4[_0xac5b('0x3f')][_0xac5b('0x48')]+'%'};return _0x3697f0;}})});}_0x2c53c1=_[_0xac5b('0x49')]({},_0x2c53c1,_0x81e0f4[_0xac5b('0x4b')]);var _0x2a23d4={'where':_0x2c53c1['where']};return db['DeskConfiguration'][_0xac5b('0x4c')](_0x2a23d4)['then'](function(_0x50b463){_0x3b08aa['count']=_0x50b463;if(_0x81e0f4['query']['includeAll']){_0x2c53c1[_0xac5b('0x4d')]=[{'all':!![]}];}return db[_0xac5b('0x3a')][_0xac5b('0x4e')](_0x2c53c1);})[_0xac5b('0x23')](function(_0x427271){_0x3b08aa['rows']=_0x427271;return _0x3b08aa;})[_0xac5b('0x23')](respondWithFilteredResult(_0x5e5b1c,_0x2c53c1))[_0xac5b('0x2b')](handleError(_0x5e5b1c,null));};exports[_0xac5b('0x4f')]=function(_0x1b2d63,_0x166bb1){var _0x46836c={'raw':![],'where':{'id':_0x1b2d63[_0xac5b('0x50')]['id']}},_0x2e5fe8={};_0x2e5fe8[_0xac5b('0x3e')]=_['keys'](db[_0xac5b('0x3a')][_0xac5b('0x3b')]);_0x2e5fe8[_0xac5b('0x3f')]=_[_0xac5b('0x40')](_0x1b2d63[_0xac5b('0x3f')]);_0x2e5fe8[_0xac5b('0x41')]=_[_0xac5b('0x42')](_0x2e5fe8['model'],_0x2e5fe8[_0xac5b('0x3f')]);_0x46836c[_0xac5b('0x43')]=_['intersection'](_0x2e5fe8['model'],qs[_0xac5b('0x44')](_0x1b2d63[_0xac5b('0x3f')][_0xac5b('0x44')]));_0x46836c[_0xac5b('0x43')]=_0x46836c[_0xac5b('0x43')][_0xac5b('0x51')]?_0x46836c[_0xac5b('0x43')]:_0x2e5fe8[_0xac5b('0x3e')];if(_0x1b2d63[_0xac5b('0x3f')][_0xac5b('0x52')]){_0x46836c[_0xac5b('0x4d')]=[{'all':!![]}];}_0x46836c=_[_0xac5b('0x49')]({},_0x46836c,_0x1b2d63[_0xac5b('0x4b')]);return db[_0xac5b('0x3a')][_0xac5b('0x53')](_0x46836c)[_0xac5b('0x23')](handleEntityNotFound(_0x166bb1,null))[_0xac5b('0x23')](respondWithResult(_0x166bb1,null))[_0xac5b('0x2b')](handleError(_0x166bb1,null));};exports[_0xac5b('0x54')]=function(_0x45c9bf,_0x31cfed){return db[_0xac5b('0x3a')][_0xac5b('0x54')](_0x45c9bf[_0xac5b('0x55')],{})[_0xac5b('0x23')](respondWithResult(_0x31cfed,0xc9))['catch'](handleError(_0x31cfed,null));};exports[_0xac5b('0x56')]=function(_0x1fe11b,_0x204aa7){if(_0x1fe11b[_0xac5b('0x55')]['id']){delete _0x1fe11b['body']['id'];}return db[_0xac5b('0x3a')][_0xac5b('0x53')]({'where':{'id':_0x1fe11b[_0xac5b('0x50')]['id']}})[_0xac5b('0x23')](handleEntityNotFound(_0x204aa7,null))['then'](saveUpdates(_0x1fe11b[_0xac5b('0x55')],null))[_0xac5b('0x23')](respondWithResult(_0x204aa7,null))[_0xac5b('0x2b')](handleError(_0x204aa7,null));};exports[_0xac5b('0x35')]=function(_0x17bbfc,_0x1f277d){return db[_0xac5b('0x3a')]['find']({'where':{'id':_0x17bbfc[_0xac5b('0x50')]['id']}})['then'](handleEntityNotFound(_0x1f277d,null))[_0xac5b('0x23')](removeEntity(_0x1f277d,null))[_0xac5b('0x2b')](handleError(_0x1f277d,null));};exports[_0xac5b('0x57')]=function(_0x111f7b,_0x130f8c,_0x229f32){var _0x59c43e={};var _0x114b36={};var _0x267db3;var _0x4afd82;return db[_0xac5b('0x3a')][_0xac5b('0x58')]({'where':{'id':_0x111f7b['params']['id']}})[_0xac5b('0x23')](handleEntityNotFound(_0x130f8c,null))['then'](function(_0x3be074){if(_0x3be074){_0x267db3=_0x3be074;_0x114b36[_0xac5b('0x3e')]=_[_0xac5b('0x40')](db['DeskField'][_0xac5b('0x3b')]);_0x114b36[_0xac5b('0x3f')]=_[_0xac5b('0x40')](_0x111f7b[_0xac5b('0x3f')]);_0x114b36[_0xac5b('0x41')]=_['intersection'](_0x114b36['model'],_0x114b36['query']);_0x59c43e[_0xac5b('0x43')]=_[_0xac5b('0x42')](_0x114b36[_0xac5b('0x3e')],qs['fields'](_0x111f7b[_0xac5b('0x3f')][_0xac5b('0x44')]));_0x59c43e[_0xac5b('0x43')]=_0x59c43e[_0xac5b('0x43')][_0xac5b('0x51')]?_0x59c43e[_0xac5b('0x43')]:_0x114b36['model'];_0x59c43e['order']=qs['sort'](_0x111f7b[_0xac5b('0x3f')][_0xac5b('0x45')]);_0x59c43e[_0xac5b('0x46')]=qs[_0xac5b('0x41')](_[_0xac5b('0x47')](_0x111f7b[_0xac5b('0x3f')],_0x114b36[_0xac5b('0x41')]));if(_0x111f7b[_0xac5b('0x3f')][_0xac5b('0x48')]){_0x59c43e[_0xac5b('0x46')]=_['merge'](_0x59c43e[_0xac5b('0x46')],{'$or':_[_0xac5b('0x39')](_0x59c43e['attributes'],function(_0x24ae9d){var _0x108081={};_0x108081[_0x24ae9d]={'$like':'%'+_0x111f7b[_0xac5b('0x3f')]['filter']+'%'};return _0x108081;})});}_0x59c43e=_[_0xac5b('0x49')]({},_0x59c43e,_0x111f7b['options']);return _0x267db3[_0xac5b('0x57')](_0x59c43e);}})['then'](function(_0x1b6601){if(_0x1b6601){_0x4afd82=_0x1b6601['length'];if(!_0x111f7b[_0xac5b('0x3f')]['hasOwnProperty'](_0xac5b('0x59'))){_0x59c43e[_0xac5b('0x31')]=qs[_0xac5b('0x31')](_0x111f7b[_0xac5b('0x3f')]['limit']);_0x59c43e[_0xac5b('0x30')]=qs['offset'](_0x111f7b['query'][_0xac5b('0x30')]);}return _0x267db3['getFields'](_0x59c43e);}})['then'](function(_0x2659f2){if(_0x2659f2){return _0x2659f2?{'count':_0x4afd82,'rows':_0x2659f2}:null;}})['then'](respondWithResult(_0x130f8c,null))[_0xac5b('0x2b')](handleError(_0x130f8c,null));};exports[_0xac5b('0x5a')]=function(_0x26455a,_0x22bb14,_0x485528){var _0x235684={};var _0x38a268={};var _0x13bf4e;var _0x36d6ea;return db[_0xac5b('0x3a')][_0xac5b('0x58')]({'where':{'id':_0x26455a['params']['id']}})[_0xac5b('0x23')](handleEntityNotFound(_0x22bb14,null))[_0xac5b('0x23')](function(_0x2e8a72){if(_0x2e8a72){_0x13bf4e=_0x2e8a72;_0x38a268['model']=_[_0xac5b('0x40')](db[_0xac5b('0x5b')][_0xac5b('0x3b')]);_0x38a268['query']=_['keys'](_0x26455a['query']);_0x38a268['filters']=_[_0xac5b('0x42')](_0x38a268[_0xac5b('0x3e')],_0x38a268['query']);_0x235684['attributes']=_[_0xac5b('0x42')](_0x38a268['model'],qs[_0xac5b('0x44')](_0x26455a[_0xac5b('0x3f')][_0xac5b('0x44')]));_0x235684[_0xac5b('0x43')]=_0x235684[_0xac5b('0x43')][_0xac5b('0x51')]?_0x235684[_0xac5b('0x43')]:_0x38a268[_0xac5b('0x3e')];_0x235684['order']=qs[_0xac5b('0x45')](_0x26455a[_0xac5b('0x3f')][_0xac5b('0x45')]);_0x235684[_0xac5b('0x46')]=qs[_0xac5b('0x41')](_[_0xac5b('0x47')](_0x26455a[_0xac5b('0x3f')],_0x38a268[_0xac5b('0x41')]));if(_0x26455a[_0xac5b('0x3f')][_0xac5b('0x48')]){_0x235684[_0xac5b('0x46')]=_['merge'](_0x235684[_0xac5b('0x46')],{'$or':_[_0xac5b('0x39')](_0x235684['attributes'],function(_0x251503){var _0x445000={};_0x445000[_0x251503]={'$like':'%'+_0x26455a[_0xac5b('0x3f')]['filter']+'%'};return _0x445000;})});}_0x235684=_[_0xac5b('0x49')]({},_0x235684,_0x26455a[_0xac5b('0x4b')]);return _0x13bf4e[_0xac5b('0x5a')](_0x235684);}})[_0xac5b('0x23')](function(_0x40cc7d){if(_0x40cc7d){_0x36d6ea=_0x40cc7d['length'];if(!_0x26455a[_0xac5b('0x3f')][_0xac5b('0x5c')](_0xac5b('0x59'))){_0x235684[_0xac5b('0x31')]=qs['limit'](_0x26455a[_0xac5b('0x3f')]['limit']);_0x235684[_0xac5b('0x30')]=qs['offset'](_0x26455a[_0xac5b('0x3f')][_0xac5b('0x30')]);}return _0x13bf4e[_0xac5b('0x5a')](_0x235684);}})['then'](function(_0x3eefe8){if(_0x3eefe8){return _0x3eefe8?{'count':_0x36d6ea,'rows':_0x3eefe8}:null;}})[_0xac5b('0x23')](respondWithResult(_0x22bb14,null))[_0xac5b('0x2b')](handleError(_0x22bb14,null));};exports[_0xac5b('0x5d')]=function(_0x395ea1,_0x12aeb0,_0x337890){var _0x3b29cf={};var _0xa29d7d={};var _0x2c9370;var _0xf2359c;return db['DeskConfiguration'][_0xac5b('0x58')]({'where':{'id':_0x395ea1['params']['id']}})['then'](handleEntityNotFound(_0x12aeb0,null))[_0xac5b('0x23')](function(_0x5e4de6){if(_0x5e4de6){_0x2c9370=_0x5e4de6;_0xa29d7d[_0xac5b('0x3e')]=_[_0xac5b('0x40')](db[_0xac5b('0x5b')][_0xac5b('0x3b')]);_0xa29d7d[_0xac5b('0x3f')]=_['keys'](_0x395ea1[_0xac5b('0x3f')]);_0xa29d7d['filters']=_[_0xac5b('0x42')](_0xa29d7d['model'],_0xa29d7d[_0xac5b('0x3f')]);_0x3b29cf[_0xac5b('0x43')]=_['intersection'](_0xa29d7d['model'],qs[_0xac5b('0x44')](_0x395ea1['query']['fields']));_0x3b29cf[_0xac5b('0x43')]=_0x3b29cf[_0xac5b('0x43')][_0xac5b('0x51')]?_0x3b29cf[_0xac5b('0x43')]:_0xa29d7d[_0xac5b('0x3e')];_0x3b29cf[_0xac5b('0x5e')]=qs['sort'](_0x395ea1[_0xac5b('0x3f')][_0xac5b('0x45')]);_0x3b29cf['where']=qs[_0xac5b('0x41')](_[_0xac5b('0x47')](_0x395ea1[_0xac5b('0x3f')],_0xa29d7d[_0xac5b('0x41')]));if(_0x395ea1['query'][_0xac5b('0x48')]){_0x3b29cf[_0xac5b('0x46')]=_[_0xac5b('0x49')](_0x3b29cf[_0xac5b('0x46')],{'$or':_[_0xac5b('0x39')](_0x3b29cf[_0xac5b('0x43')],function(_0x99183f){var _0x16ac7e={};_0x16ac7e[_0x99183f]={'$like':'%'+_0x395ea1[_0xac5b('0x3f')][_0xac5b('0x48')]+'%'};return _0x16ac7e;})});}_0x3b29cf=_[_0xac5b('0x49')]({},_0x3b29cf,_0x395ea1[_0xac5b('0x4b')]);return _0x2c9370[_0xac5b('0x5d')](_0x3b29cf);}})[_0xac5b('0x23')](function(_0x3a9720){if(_0x3a9720){_0xf2359c=_0x3a9720[_0xac5b('0x51')];if(!_0x395ea1[_0xac5b('0x3f')]['hasOwnProperty']('nolimit')){_0x3b29cf['limit']=qs[_0xac5b('0x31')](_0x395ea1['query'][_0xac5b('0x31')]);_0x3b29cf[_0xac5b('0x30')]=qs['offset'](_0x395ea1[_0xac5b('0x3f')][_0xac5b('0x30')]);}return _0x2c9370[_0xac5b('0x5d')](_0x3b29cf);}})[_0xac5b('0x23')](function(_0x527acb){if(_0x527acb){return _0x527acb?{'count':_0xf2359c,'rows':_0x527acb}:null;}})['then'](respondWithResult(_0x12aeb0,null))[_0xac5b('0x2b')](handleError(_0x12aeb0,null));};exports[_0xac5b('0x5f')]=function(_0x4a1431,_0x9411d5,_0x4f428a){var _0x496598={};var _0xe9d676={};var _0x175cb3;var _0x1a7bed;return db['DeskConfiguration'][_0xac5b('0x58')]({'where':{'id':_0x4a1431[_0xac5b('0x50')]['id']}})[_0xac5b('0x23')](handleEntityNotFound(_0x9411d5,null))['then'](function(_0x3255da){if(_0x3255da){_0x175cb3=_0x3255da;_0xe9d676[_0xac5b('0x3e')]=_[_0xac5b('0x40')](db[_0xac5b('0x60')][_0xac5b('0x3b')]);_0xe9d676[_0xac5b('0x3f')]=_[_0xac5b('0x40')](_0x4a1431[_0xac5b('0x3f')]);_0xe9d676[_0xac5b('0x41')]=_[_0xac5b('0x42')](_0xe9d676[_0xac5b('0x3e')],_0xe9d676['query']);_0x496598['attributes']=_[_0xac5b('0x42')](_0xe9d676[_0xac5b('0x3e')],qs[_0xac5b('0x44')](_0x4a1431[_0xac5b('0x3f')]['fields']));_0x496598[_0xac5b('0x43')]=_0x496598[_0xac5b('0x43')][_0xac5b('0x51')]?_0x496598[_0xac5b('0x43')]:_0xe9d676[_0xac5b('0x3e')];_0x496598[_0xac5b('0x5e')]=qs[_0xac5b('0x45')](_0x4a1431[_0xac5b('0x3f')][_0xac5b('0x45')]);_0x496598[_0xac5b('0x46')]=qs[_0xac5b('0x41')](_[_0xac5b('0x47')](_0x4a1431[_0xac5b('0x3f')],_0xe9d676[_0xac5b('0x41')]));if(_0x4a1431[_0xac5b('0x3f')][_0xac5b('0x48')]){_0x496598[_0xac5b('0x46')]=_[_0xac5b('0x49')](_0x496598['where'],{'$or':_[_0xac5b('0x39')](_0x496598[_0xac5b('0x43')],function(_0x44a6a2){var _0x3eb50d={};_0x3eb50d[_0x44a6a2]={'$like':'%'+_0x4a1431[_0xac5b('0x3f')][_0xac5b('0x48')]+'%'};return _0x3eb50d;})});}_0x496598=_[_0xac5b('0x49')]({},_0x496598,_0x4a1431[_0xac5b('0x4b')]);return _0x175cb3[_0xac5b('0x5f')](_0x496598);}})[_0xac5b('0x23')](function(_0x43d8ac){if(_0x43d8ac){_0x1a7bed=_0x43d8ac['length'];if(!_0x4a1431['query']['hasOwnProperty'](_0xac5b('0x59'))){_0x496598[_0xac5b('0x31')]=qs[_0xac5b('0x31')](_0x4a1431['query'][_0xac5b('0x31')]);_0x496598[_0xac5b('0x30')]=qs[_0xac5b('0x30')](_0x4a1431[_0xac5b('0x3f')][_0xac5b('0x30')]);}return _0x175cb3[_0xac5b('0x5f')](_0x496598);}})['then'](function(_0x5745ac){if(_0x5745ac){return _0x5745ac?{'count':_0x1a7bed,'rows':_0x5745ac}:null;}})[_0xac5b('0x23')](respondWithResult(_0x9411d5,null))[_0xac5b('0x2b')](handleError(_0x9411d5,null));};exports[_0xac5b('0x61')]=function(_0xeff25,_0x2ed2f1,_0x78ddd0){if(_0xeff25[_0xac5b('0x55')]['id']){delete _0xeff25[_0xac5b('0x55')]['id'];}return db[_0xac5b('0x3a')][_0xac5b('0x58')]({'where':{'id':_0xeff25[_0xac5b('0x50')]['id']}})['then'](handleEntityNotFound(_0x2ed2f1,null))['then'](function(_0x316887){if(_0x316887){return _0x316887[_0xac5b('0x61')](_0xeff25['body'][_0xac5b('0x62')]||[]);}return null;})[_0xac5b('0x23')](respondWithResult(_0x2ed2f1,null))[_0xac5b('0x2b')](handleError(_0x2ed2f1,null));};