7eb514e57757328614ff61b11ec8f81eac99c6ee
[motion2.git] / server / api / intZendeskConfiguration / intZendeskConfiguration.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 _0x4924=['apply','reject','save','update','then','destroy','stack','name','send','index','map','ZendeskConfiguration','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','merge','options','includeAll','findAll','rows','catch','show','params','keys','length','include','find','create','body','getFields','findOne','ZendeskField','pick','getSubjects','filter','getDescriptions','getTags','Tag','setTags','ids','zip-dir','fast-json-patch','moment','util','path','ejs','fs-extra','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range'];(function(_0x222e99,_0x4f7311){var _0x6b0224=function(_0x8ce0e1){while(--_0x8ce0e1){_0x222e99['push'](_0x222e99['shift']());}};_0x6b0224(++_0x4f7311);}(_0x4924,0x1d3));var _0x4492=function(_0x5b5eb4,_0x117c87){_0x5b5eb4=_0x5b5eb4-0x0;var _0x42af53=_0x4924[_0x5b5eb4];return _0x42af53;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x4492('0x0'));var jsonpatch=require(_0x4492('0x1'));var rp=require('request-promise');var moment=require(_0x4492('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x4492('0x3'));var path=require(_0x4492('0x4'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x4492('0x5'));var fs=require('fs');var fs_extra=require(_0x4492('0x6'));var _=require(_0x4492('0x7'));var squel=require(_0x4492('0x8'));var crypto=require(_0x4492('0x9'));var jsforce=require(_0x4492('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x4492('0xb'));var querystring=require(_0x4492('0xc'));var Papa=require(_0x4492('0xd'));var Redis=require(_0x4492('0xe'));var authService=require(_0x4492('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x4492('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x4492('0x11'))(_0x4492('0x12'));var utils=require('../../config/utils');var config=require(_0x4492('0x13'));var licenseUtil=require(_0x4492('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x19c463,_0x21925c){_0x21925c=_0x21925c||0xcc;return function(_0x1235f3){if(_0x1235f3){return _0x19c463[_0x4492('0x15')](_0x21925c);}return _0x19c463[_0x4492('0x16')](_0x21925c)[_0x4492('0x17')]();};}function respondWithResult(_0x296b05,_0x1bf691){_0x1bf691=_0x1bf691||0xc8;return function(_0x3346f2){if(_0x3346f2){return _0x296b05['status'](_0x1bf691)[_0x4492('0x18')](_0x3346f2);}};}function respondWithFilteredResult(_0x2acb5a,_0x1be302){return function(_0xe50910){if(_0xe50910){var _0x49931b=typeof _0x1be302[_0x4492('0x19')]===_0x4492('0x1a')&&typeof _0x1be302[_0x4492('0x1b')]===_0x4492('0x1a');var _0x3f8558=_0xe50910[_0x4492('0x1c')];var _0x30aaab=_0x49931b?0x0:_0x1be302[_0x4492('0x19')];var _0x1871cf=_0x49931b?_0xe50910[_0x4492('0x1c')]:_0x1be302[_0x4492('0x19')]+_0x1be302[_0x4492('0x1b')];var _0xdfdbf2;if(_0x1871cf>=_0x3f8558){_0x1871cf=_0x3f8558;_0xdfdbf2=0xc8;}else{_0xdfdbf2=0xce;}_0x2acb5a['status'](_0xdfdbf2);return _0x2acb5a[_0x4492('0x1d')](_0x4492('0x1e'),_0x30aaab+'-'+_0x1871cf+'/'+_0x3f8558)[_0x4492('0x18')](_0xe50910);}return null;};}function patchUpdates(_0x4a3ad7){return function(_0x139aee){try{jsonpatch[_0x4492('0x1f')](_0x139aee,_0x4a3ad7,!![]);}catch(_0x4f1dc9){return BPromise[_0x4492('0x20')](_0x4f1dc9);}return _0x139aee[_0x4492('0x21')]();};}function saveUpdates(_0x392b8e,_0x29e9d8){return function(_0xc396e8){if(_0xc396e8){return _0xc396e8[_0x4492('0x22')](_0x392b8e)[_0x4492('0x23')](function(_0x3b881d){return _0x3b881d;});}return null;};}function removeEntity(_0x47978b,_0x1eac79){return function(_0x502ae1){if(_0x502ae1){return _0x502ae1[_0x4492('0x24')]()[_0x4492('0x23')](function(){_0x47978b[_0x4492('0x16')](0xcc)[_0x4492('0x17')]();});}};}function handleEntityNotFound(_0x4b43cf,_0x2f95f4){return function(_0x59137c){if(!_0x59137c){_0x4b43cf[_0x4492('0x15')](0x194);}return _0x59137c;};}function handleError(_0x11c291,_0x2097ad){_0x2097ad=_0x2097ad||0x1f4;return function(_0x1980e4){logger['error'](_0x1980e4[_0x4492('0x25')]);if(_0x1980e4[_0x4492('0x26')]){delete _0x1980e4[_0x4492('0x26')];}_0x11c291[_0x4492('0x16')](_0x2097ad)[_0x4492('0x27')](_0x1980e4);};}exports[_0x4492('0x28')]=function(_0x7f953c,_0x440ed8){var _0x2178a2={},_0x3f352a={},_0x5ec5be={'count':0x0,'rows':[]};var _0x2e3f31=_[_0x4492('0x29')](db[_0x4492('0x2a')][_0x4492('0x2b')],function(_0x1812ca){return{'name':_0x1812ca[_0x4492('0x2c')],'type':_0x1812ca[_0x4492('0x2d')][_0x4492('0x2e')]};});_0x3f352a[_0x4492('0x2f')]=_[_0x4492('0x29')](_0x2e3f31,_0x4492('0x26'));_0x3f352a['query']=_['keys'](_0x7f953c[_0x4492('0x30')]);_0x3f352a[_0x4492('0x31')]=_[_0x4492('0x32')](_0x3f352a[_0x4492('0x2f')],_0x3f352a[_0x4492('0x30')]);_0x2178a2[_0x4492('0x33')]=_[_0x4492('0x32')](_0x3f352a[_0x4492('0x2f')],qs[_0x4492('0x34')](_0x7f953c[_0x4492('0x30')][_0x4492('0x34')]));_0x2178a2[_0x4492('0x33')]=_0x2178a2[_0x4492('0x33')]['length']?_0x2178a2[_0x4492('0x33')]:_0x3f352a['model'];if(!_0x7f953c['query'][_0x4492('0x35')](_0x4492('0x36'))){_0x2178a2[_0x4492('0x1b')]=qs[_0x4492('0x1b')](_0x7f953c[_0x4492('0x30')][_0x4492('0x1b')]);_0x2178a2[_0x4492('0x19')]=qs[_0x4492('0x19')](_0x7f953c[_0x4492('0x30')][_0x4492('0x19')]);}_0x2178a2[_0x4492('0x37')]=qs['sort'](_0x7f953c[_0x4492('0x30')][_0x4492('0x38')]);_0x2178a2[_0x4492('0x39')]=qs['filters'](_['pick'](_0x7f953c[_0x4492('0x30')],_0x3f352a[_0x4492('0x31')]),_0x2e3f31);if(_0x7f953c[_0x4492('0x30')]['filter']){_0x2178a2[_0x4492('0x39')]=_[_0x4492('0x3a')](_0x2178a2['where'],{'$or':_[_0x4492('0x29')](_0x2e3f31,function(_0x1e5116){if(_0x1e5116['type']!=='VIRTUAL'){var _0x11be98={};_0x11be98[_0x1e5116[_0x4492('0x26')]]={'$like':'%'+_0x7f953c[_0x4492('0x30')]['filter']+'%'};return _0x11be98;}})});}_0x2178a2=_[_0x4492('0x3a')]({},_0x2178a2,_0x7f953c[_0x4492('0x3b')]);var _0x199eed={'where':_0x2178a2['where']};return db[_0x4492('0x2a')][_0x4492('0x1c')](_0x199eed)[_0x4492('0x23')](function(_0x33bec5){_0x5ec5be[_0x4492('0x1c')]=_0x33bec5;if(_0x7f953c['query'][_0x4492('0x3c')]){_0x2178a2['include']=[{'all':!![]}];}return db[_0x4492('0x2a')][_0x4492('0x3d')](_0x2178a2);})[_0x4492('0x23')](function(_0x366aae){_0x5ec5be[_0x4492('0x3e')]=_0x366aae;return _0x5ec5be;})[_0x4492('0x23')](respondWithFilteredResult(_0x440ed8,_0x2178a2))[_0x4492('0x3f')](handleError(_0x440ed8,null));};exports[_0x4492('0x40')]=function(_0x53d8e3,_0x40a10e){var _0xf53020={'raw':![],'where':{'id':_0x53d8e3[_0x4492('0x41')]['id']}},_0x1d752f={};_0x1d752f[_0x4492('0x2f')]=_[_0x4492('0x42')](db[_0x4492('0x2a')][_0x4492('0x2b')]);_0x1d752f[_0x4492('0x30')]=_[_0x4492('0x42')](_0x53d8e3[_0x4492('0x30')]);_0x1d752f['filters']=_[_0x4492('0x32')](_0x1d752f['model'],_0x1d752f[_0x4492('0x30')]);_0xf53020[_0x4492('0x33')]=_['intersection'](_0x1d752f[_0x4492('0x2f')],qs[_0x4492('0x34')](_0x53d8e3[_0x4492('0x30')][_0x4492('0x34')]));_0xf53020[_0x4492('0x33')]=_0xf53020[_0x4492('0x33')][_0x4492('0x43')]?_0xf53020[_0x4492('0x33')]:_0x1d752f[_0x4492('0x2f')];if(_0x53d8e3['query'][_0x4492('0x3c')]){_0xf53020[_0x4492('0x44')]=[{'all':!![]}];}_0xf53020=_[_0x4492('0x3a')]({},_0xf53020,_0x53d8e3[_0x4492('0x3b')]);return db[_0x4492('0x2a')][_0x4492('0x45')](_0xf53020)[_0x4492('0x23')](handleEntityNotFound(_0x40a10e,null))[_0x4492('0x23')](respondWithResult(_0x40a10e,null))['catch'](handleError(_0x40a10e,null));};exports[_0x4492('0x46')]=function(_0x1ac270,_0x1871a6){return db[_0x4492('0x2a')][_0x4492('0x46')](_0x1ac270[_0x4492('0x47')],{})[_0x4492('0x23')](respondWithResult(_0x1871a6,0xc9))[_0x4492('0x3f')](handleError(_0x1871a6,null));};exports[_0x4492('0x22')]=function(_0x5d431a,_0x1376f4){if(_0x5d431a['body']['id']){delete _0x5d431a[_0x4492('0x47')]['id'];}return db['ZendeskConfiguration'][_0x4492('0x45')]({'where':{'id':_0x5d431a[_0x4492('0x41')]['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x1376f4,null))[_0x4492('0x23')](saveUpdates(_0x5d431a[_0x4492('0x47')],null))[_0x4492('0x23')](respondWithResult(_0x1376f4,null))[_0x4492('0x3f')](handleError(_0x1376f4,null));};exports['destroy']=function(_0x329acd,_0x6030b6){return db[_0x4492('0x2a')][_0x4492('0x45')]({'where':{'id':_0x329acd['params']['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x6030b6,null))['then'](removeEntity(_0x6030b6,null))[_0x4492('0x3f')](handleError(_0x6030b6,null));};exports[_0x4492('0x48')]=function(_0x47e0b7,_0x25409b,_0x279200){var _0x245557={};var _0x2aa342={};var _0x4f5f56;var _0x42d8ed;return db[_0x4492('0x2a')][_0x4492('0x49')]({'where':{'id':_0x47e0b7[_0x4492('0x41')]['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x25409b,null))[_0x4492('0x23')](function(_0x47e27d){if(_0x47e27d){_0x4f5f56=_0x47e27d;_0x2aa342[_0x4492('0x2f')]=_['keys'](db[_0x4492('0x4a')][_0x4492('0x2b')]);_0x2aa342[_0x4492('0x30')]=_[_0x4492('0x42')](_0x47e0b7['query']);_0x2aa342[_0x4492('0x31')]=_[_0x4492('0x32')](_0x2aa342[_0x4492('0x2f')],_0x2aa342[_0x4492('0x30')]);_0x245557['attributes']=_['intersection'](_0x2aa342['model'],qs[_0x4492('0x34')](_0x47e0b7[_0x4492('0x30')][_0x4492('0x34')]));_0x245557['attributes']=_0x245557[_0x4492('0x33')][_0x4492('0x43')]?_0x245557['attributes']:_0x2aa342[_0x4492('0x2f')];_0x245557['order']=qs[_0x4492('0x38')](_0x47e0b7[_0x4492('0x30')][_0x4492('0x38')]);_0x245557['where']=qs['filters'](_['pick'](_0x47e0b7[_0x4492('0x30')],_0x2aa342[_0x4492('0x31')]));if(_0x47e0b7[_0x4492('0x30')]['filter']){_0x245557[_0x4492('0x39')]=_[_0x4492('0x3a')](_0x245557['where'],{'$or':_['map'](_0x245557['attributes'],function(_0x5818cf){var _0x19bbd1={};_0x19bbd1[_0x5818cf]={'$like':'%'+_0x47e0b7[_0x4492('0x30')]['filter']+'%'};return _0x19bbd1;})});}_0x245557=_[_0x4492('0x3a')]({},_0x245557,_0x47e0b7['options']);return _0x4f5f56[_0x4492('0x48')](_0x245557);}})['then'](function(_0x1729ce){if(_0x1729ce){_0x42d8ed=_0x1729ce['length'];if(!_0x47e0b7[_0x4492('0x30')][_0x4492('0x35')]('nolimit')){_0x245557['limit']=qs[_0x4492('0x1b')](_0x47e0b7[_0x4492('0x30')][_0x4492('0x1b')]);_0x245557[_0x4492('0x19')]=qs[_0x4492('0x19')](_0x47e0b7[_0x4492('0x30')][_0x4492('0x19')]);}return _0x4f5f56['getFields'](_0x245557);}})[_0x4492('0x23')](function(_0x4ee93e){if(_0x4ee93e){return _0x4ee93e?{'count':_0x42d8ed,'rows':_0x4ee93e}:null;}})[_0x4492('0x23')](respondWithResult(_0x25409b,null))[_0x4492('0x3f')](handleError(_0x25409b,null));};exports['getSubjects']=function(_0xec8731,_0x3cf74d,_0x589101){var _0x1c93a7={};var _0xcba4e5={};var _0x1875f6;var _0x467508;return db[_0x4492('0x2a')]['findOne']({'where':{'id':_0xec8731[_0x4492('0x41')]['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x3cf74d,null))[_0x4492('0x23')](function(_0x238966){if(_0x238966){_0x1875f6=_0x238966;_0xcba4e5['model']=_[_0x4492('0x42')](db['ZendeskField'][_0x4492('0x2b')]);_0xcba4e5[_0x4492('0x30')]=_[_0x4492('0x42')](_0xec8731['query']);_0xcba4e5[_0x4492('0x31')]=_[_0x4492('0x32')](_0xcba4e5[_0x4492('0x2f')],_0xcba4e5[_0x4492('0x30')]);_0x1c93a7['attributes']=_['intersection'](_0xcba4e5[_0x4492('0x2f')],qs['fields'](_0xec8731[_0x4492('0x30')][_0x4492('0x34')]));_0x1c93a7['attributes']=_0x1c93a7[_0x4492('0x33')][_0x4492('0x43')]?_0x1c93a7[_0x4492('0x33')]:_0xcba4e5['model'];_0x1c93a7[_0x4492('0x37')]=qs[_0x4492('0x38')](_0xec8731['query'][_0x4492('0x38')]);_0x1c93a7[_0x4492('0x39')]=qs['filters'](_[_0x4492('0x4b')](_0xec8731[_0x4492('0x30')],_0xcba4e5['filters']));if(_0xec8731[_0x4492('0x30')]['filter']){_0x1c93a7[_0x4492('0x39')]=_[_0x4492('0x3a')](_0x1c93a7[_0x4492('0x39')],{'$or':_['map'](_0x1c93a7[_0x4492('0x33')],function(_0xca182d){var _0xacb85e={};_0xacb85e[_0xca182d]={'$like':'%'+_0xec8731['query']['filter']+'%'};return _0xacb85e;})});}_0x1c93a7=_['merge']({},_0x1c93a7,_0xec8731['options']);return _0x1875f6[_0x4492('0x4c')](_0x1c93a7);}})[_0x4492('0x23')](function(_0x1c4e5a){if(_0x1c4e5a){_0x467508=_0x1c4e5a[_0x4492('0x43')];if(!_0xec8731[_0x4492('0x30')]['hasOwnProperty']('nolimit')){_0x1c93a7[_0x4492('0x1b')]=qs['limit'](_0xec8731[_0x4492('0x30')]['limit']);_0x1c93a7['offset']=qs[_0x4492('0x19')](_0xec8731[_0x4492('0x30')]['offset']);}return _0x1875f6['getSubjects'](_0x1c93a7);}})[_0x4492('0x23')](function(_0x2abdb8){if(_0x2abdb8){return _0x2abdb8?{'count':_0x467508,'rows':_0x2abdb8}:null;}})[_0x4492('0x23')](respondWithResult(_0x3cf74d,null))['catch'](handleError(_0x3cf74d,null));};exports['getDescriptions']=function(_0x422fd6,_0x44f701,_0x138533){var _0x1c95e6={};var _0x1ff4cc={};var _0x156684;var _0x424a85;return db[_0x4492('0x2a')][_0x4492('0x49')]({'where':{'id':_0x422fd6[_0x4492('0x41')]['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x44f701,null))[_0x4492('0x23')](function(_0x5ba25e){if(_0x5ba25e){_0x156684=_0x5ba25e;_0x1ff4cc[_0x4492('0x2f')]=_[_0x4492('0x42')](db[_0x4492('0x4a')][_0x4492('0x2b')]);_0x1ff4cc[_0x4492('0x30')]=_['keys'](_0x422fd6[_0x4492('0x30')]);_0x1ff4cc[_0x4492('0x31')]=_[_0x4492('0x32')](_0x1ff4cc['model'],_0x1ff4cc[_0x4492('0x30')]);_0x1c95e6[_0x4492('0x33')]=_['intersection'](_0x1ff4cc[_0x4492('0x2f')],qs[_0x4492('0x34')](_0x422fd6[_0x4492('0x30')][_0x4492('0x34')]));_0x1c95e6[_0x4492('0x33')]=_0x1c95e6[_0x4492('0x33')][_0x4492('0x43')]?_0x1c95e6[_0x4492('0x33')]:_0x1ff4cc['model'];_0x1c95e6[_0x4492('0x37')]=qs[_0x4492('0x38')](_0x422fd6['query']['sort']);_0x1c95e6[_0x4492('0x39')]=qs[_0x4492('0x31')](_[_0x4492('0x4b')](_0x422fd6['query'],_0x1ff4cc['filters']));if(_0x422fd6[_0x4492('0x30')][_0x4492('0x4d')]){_0x1c95e6[_0x4492('0x39')]=_[_0x4492('0x3a')](_0x1c95e6[_0x4492('0x39')],{'$or':_['map'](_0x1c95e6[_0x4492('0x33')],function(_0x4e0adf){var _0x274d8c={};_0x274d8c[_0x4e0adf]={'$like':'%'+_0x422fd6[_0x4492('0x30')]['filter']+'%'};return _0x274d8c;})});}_0x1c95e6=_[_0x4492('0x3a')]({},_0x1c95e6,_0x422fd6[_0x4492('0x3b')]);return _0x156684[_0x4492('0x4e')](_0x1c95e6);}})[_0x4492('0x23')](function(_0x364aa6){if(_0x364aa6){_0x424a85=_0x364aa6[_0x4492('0x43')];if(!_0x422fd6['query'][_0x4492('0x35')](_0x4492('0x36'))){_0x1c95e6[_0x4492('0x1b')]=qs[_0x4492('0x1b')](_0x422fd6[_0x4492('0x30')]['limit']);_0x1c95e6[_0x4492('0x19')]=qs[_0x4492('0x19')](_0x422fd6[_0x4492('0x30')]['offset']);}return _0x156684[_0x4492('0x4e')](_0x1c95e6);}})[_0x4492('0x23')](function(_0x2a7a0e){if(_0x2a7a0e){return _0x2a7a0e?{'count':_0x424a85,'rows':_0x2a7a0e}:null;}})[_0x4492('0x23')](respondWithResult(_0x44f701,null))[_0x4492('0x3f')](handleError(_0x44f701,null));};exports[_0x4492('0x4f')]=function(_0x1829bc,_0x5dd30d,_0x5bc95e){var _0x22d23b={};var _0x1d541a={};var _0xdf1758;var _0x45883e;return db['ZendeskConfiguration'][_0x4492('0x49')]({'where':{'id':_0x1829bc['params']['id']}})[_0x4492('0x23')](handleEntityNotFound(_0x5dd30d,null))[_0x4492('0x23')](function(_0x1e2bfa){if(_0x1e2bfa){_0xdf1758=_0x1e2bfa;_0x1d541a['model']=_[_0x4492('0x42')](db[_0x4492('0x50')]['rawAttributes']);_0x1d541a[_0x4492('0x30')]=_[_0x4492('0x42')](_0x1829bc[_0x4492('0x30')]);_0x1d541a[_0x4492('0x31')]=_[_0x4492('0x32')](_0x1d541a[_0x4492('0x2f')],_0x1d541a[_0x4492('0x30')]);_0x22d23b[_0x4492('0x33')]=_['intersection'](_0x1d541a[_0x4492('0x2f')],qs[_0x4492('0x34')](_0x1829bc[_0x4492('0x30')][_0x4492('0x34')]));_0x22d23b[_0x4492('0x33')]=_0x22d23b[_0x4492('0x33')]['length']?_0x22d23b[_0x4492('0x33')]:_0x1d541a[_0x4492('0x2f')];_0x22d23b[_0x4492('0x37')]=qs[_0x4492('0x38')](_0x1829bc['query']['sort']);_0x22d23b['where']=qs[_0x4492('0x31')](_[_0x4492('0x4b')](_0x1829bc[_0x4492('0x30')],_0x1d541a[_0x4492('0x31')]));if(_0x1829bc[_0x4492('0x30')][_0x4492('0x4d')]){_0x22d23b[_0x4492('0x39')]=_[_0x4492('0x3a')](_0x22d23b[_0x4492('0x39')],{'$or':_['map'](_0x22d23b[_0x4492('0x33')],function(_0x28eeaf){var _0x1ff3f0={};_0x1ff3f0[_0x28eeaf]={'$like':'%'+_0x1829bc[_0x4492('0x30')][_0x4492('0x4d')]+'%'};return _0x1ff3f0;})});}_0x22d23b=_[_0x4492('0x3a')]({},_0x22d23b,_0x1829bc[_0x4492('0x3b')]);return _0xdf1758[_0x4492('0x4f')](_0x22d23b);}})['then'](function(_0x59a869){if(_0x59a869){_0x45883e=_0x59a869[_0x4492('0x43')];if(!_0x1829bc[_0x4492('0x30')][_0x4492('0x35')](_0x4492('0x36'))){_0x22d23b[_0x4492('0x1b')]=qs[_0x4492('0x1b')](_0x1829bc[_0x4492('0x30')][_0x4492('0x1b')]);_0x22d23b[_0x4492('0x19')]=qs[_0x4492('0x19')](_0x1829bc['query'][_0x4492('0x19')]);}return _0xdf1758[_0x4492('0x4f')](_0x22d23b);}})['then'](function(_0x2f2742){if(_0x2f2742){return _0x2f2742?{'count':_0x45883e,'rows':_0x2f2742}:null;}})[_0x4492('0x23')](respondWithResult(_0x5dd30d,null))[_0x4492('0x3f')](handleError(_0x5dd30d,null));};exports[_0x4492('0x51')]=function(_0x165342,_0x4400ca,_0x2e744a){if(_0x165342[_0x4492('0x47')]['id']){delete _0x165342[_0x4492('0x47')]['id'];}return db[_0x4492('0x2a')][_0x4492('0x49')]({'where':{'id':_0x165342['params']['id']}})['then'](handleEntityNotFound(_0x4400ca,null))[_0x4492('0x23')](function(_0x1ab530){if(_0x1ab530){return _0x1ab530[_0x4492('0x51')](_0x165342[_0x4492('0x47')][_0x4492('0x52')]||[]);}return null;})['then'](respondWithResult(_0x4400ca,null))[_0x4492('0x3f')](handleError(_0x4400ca,null));};