2d7c99370ac6a0d5408fd4eb044c7a4c7db9e74a
[motion2.git] / server / api / chatGroup / chatGroup.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 _0xe594=['mustache','path','sox','to-csv','ejs','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','defaults','redis','localhost','register','http','then','info','ChatGroup,\x20%s,\x20%s','debug','stringify','error','code','message','request\x20sent','result','catch','sendStatus','status','end','json','offset','undefined','count','limit','Content-Range','apply','reject','save','update','destroy','name','render','merge','body','agent','interaction','account','map','ChatGroup','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','pick','VIRTUAL','options','includeAll','include','rows','show','params','create','find','describe','getUnread','ChatInternalMessage','user','toInteger','addMembers','ids','omit','getMembers','findOne','User','filter','nolimit','removeMembers','addMessage','ChatGroupId','$gte','YYYY-MM-DD\x20HH:mm:ss','getMessages','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird'];(function(_0x1df021,_0x5435c6){var _0x21b08f=function(_0x1b9efb){while(--_0x1b9efb){_0x1df021['push'](_0x1df021['shift']());}};_0x21b08f(++_0x5435c6);}(_0xe594,0x66));var _0x4e59=function(_0x2ea231,_0x373a5d){_0x2ea231=_0x2ea231-0x0;var _0x28a7d2=_0xe594[_0x2ea231];return _0x28a7d2;};'use strict';var emlformat=require(_0x4e59('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4e59('0x1'));var jsonpatch=require(_0x4e59('0x2'));var rp=require(_0x4e59('0x3'));var moment=require(_0x4e59('0x4'));var BPromise=require(_0x4e59('0x5'));var Mustache=require(_0x4e59('0x6'));var util=require('util');var path=require(_0x4e59('0x7'));var sox=require(_0x4e59('0x8'));var csv=require(_0x4e59('0x9'));var ejs=require(_0x4e59('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x4e59('0xb'));var squel=require('squel');var crypto=require(_0x4e59('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x4e59('0xd'));var toCsv=require(_0x4e59('0x9'));var querystring=require(_0x4e59('0xe'));var Papa=require(_0x4e59('0xf'));var Redis=require(_0x4e59('0x10'));var authService=require(_0x4e59('0x11'));var qs=require(_0x4e59('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4e59('0x13'));var logger=require(_0x4e59('0x14'))(_0x4e59('0x15'));var utils=require('../../config/utils');var config=require(_0x4e59('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x4e59('0x17'))['db'];config['redis']=_[_0x4e59('0x18')](config[_0x4e59('0x19')],{'host':_0x4e59('0x1a'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4e59('0x19')]));require('./chatGroup.socket')[_0x4e59('0x1b')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0x4e59('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x2a7c25,_0x2fa696,_0x36a45b,_0x2260c0){return new BPromise(function(_0x4e94a6,_0x321ead){var _0x1cf17a=_0x2260c0||client;return _0x1cf17a['request'](_0x2a7c25,_0x36a45b)[_0x4e59('0x1d')](function(_0x245469){logger[_0x4e59('0x1e')](_0x4e59('0x1f'),_0x2fa696,'request\x20sent');logger[_0x4e59('0x20')]('ChatGroup,\x20%s,\x20%s,\x20%s',_0x2fa696,'request\x20sent',JSON[_0x4e59('0x21')](_0x245469));if(_0x245469[_0x4e59('0x22')]){if(_0x245469['error'][_0x4e59('0x23')]===0x1f4){logger[_0x4e59('0x22')](_0x4e59('0x1f'),_0x2fa696,_0x245469[_0x4e59('0x22')][_0x4e59('0x24')]);return _0x321ead(_0x245469['error'][_0x4e59('0x24')]);}logger[_0x4e59('0x22')]('ChatGroup,\x20%s,\x20%s',_0x2fa696,_0x245469['error'][_0x4e59('0x24')]);return _0x4e94a6(_0x245469[_0x4e59('0x22')][_0x4e59('0x24')]);}else{logger[_0x4e59('0x1e')]('ChatGroup,\x20%s,\x20%s',_0x2fa696,_0x4e59('0x25'));_0x4e94a6(_0x245469[_0x4e59('0x26')][_0x4e59('0x24')]);}})[_0x4e59('0x27')](function(_0x5a32c8){logger[_0x4e59('0x22')](_0x4e59('0x1f'),_0x2fa696,_0x5a32c8);_0x321ead(_0x5a32c8);});});}function respondWithStatusCode(_0x5a5b73,_0x2d806b){_0x2d806b=_0x2d806b||0xcc;return function(_0x1f9ba6){if(_0x1f9ba6){return _0x5a5b73[_0x4e59('0x28')](_0x2d806b);}return _0x5a5b73[_0x4e59('0x29')](_0x2d806b)[_0x4e59('0x2a')]();};}function respondWithResult(_0x55656d,_0x3e57fb){_0x3e57fb=_0x3e57fb||0xc8;return function(_0x950b59){if(_0x950b59){return _0x55656d[_0x4e59('0x29')](_0x3e57fb)[_0x4e59('0x2b')](_0x950b59);}};}function respondWithFilteredResult(_0x59f809,_0x32bd7c){return function(_0x1fbc02){if(_0x1fbc02){var _0x2c7157=typeof _0x32bd7c[_0x4e59('0x2c')]==='undefined'&&typeof _0x32bd7c['limit']===_0x4e59('0x2d');var _0x313675=_0x1fbc02[_0x4e59('0x2e')];var _0x71ac94=_0x2c7157?0x0:_0x32bd7c['offset'];var _0x19f1e9=_0x2c7157?_0x1fbc02[_0x4e59('0x2e')]:_0x32bd7c[_0x4e59('0x2c')]+_0x32bd7c[_0x4e59('0x2f')];var _0x56b03a;if(_0x19f1e9>=_0x313675){_0x19f1e9=_0x313675;_0x56b03a=0xc8;}else{_0x56b03a=0xce;}_0x59f809[_0x4e59('0x29')](_0x56b03a);return _0x59f809['set'](_0x4e59('0x30'),_0x71ac94+'-'+_0x19f1e9+'/'+_0x313675)['json'](_0x1fbc02);}return null;};}function patchUpdates(_0x3d2daf){return function(_0x483ef8){try{jsonpatch[_0x4e59('0x31')](_0x483ef8,_0x3d2daf,!![]);}catch(_0x4bb215){return BPromise[_0x4e59('0x32')](_0x4bb215);}return _0x483ef8[_0x4e59('0x33')]();};}function saveUpdates(_0x5cd871,_0x4a9fdc){return function(_0x35fcb2){if(_0x35fcb2){return _0x35fcb2[_0x4e59('0x34')](_0x5cd871)[_0x4e59('0x1d')](function(_0x59db9c){return _0x59db9c;});}return null;};}function removeEntity(_0x387717,_0x3db7ba){return function(_0x363960){if(_0x363960){return _0x363960[_0x4e59('0x35')]()[_0x4e59('0x1d')](function(){_0x387717[_0x4e59('0x29')](0xcc)[_0x4e59('0x2a')]();});}};}function handleEntityNotFound(_0x4d9bef,_0x362673){return function(_0x3419f7){if(!_0x3419f7){_0x4d9bef[_0x4e59('0x28')](0x194);}return _0x3419f7;};}function handleError(_0x35ed20,_0x3d2f4d){_0x3d2f4d=_0x3d2f4d||0x1f4;return function(_0xaf5720){logger['error'](_0xaf5720['stack']);if(_0xaf5720[_0x4e59('0x36')]){delete _0xaf5720['name'];}_0x35ed20[_0x4e59('0x29')](_0x3d2f4d)['send'](_0xaf5720);};}function getMustacheRender(_0x33726a,_0x1a7977){return Mustache[_0x4e59('0x37')](_0x33726a,_[_0x4e59('0x38')](_0x1a7977[_0x4e59('0x39')],{'contact':_0x1a7977['contact'],'message':_0x1a7977[_0x4e59('0x24')],'agent':_0x1a7977[_0x4e59('0x3a')],'interaction':_0x1a7977[_0x4e59('0x3b')],'account':_0x1a7977[_0x4e59('0x3c')]}))||'';}exports['index']=function(_0x1f70d5,_0x311e94){var _0x41c482={},_0x120d9e={},_0x3054bd={'count':0x0,'rows':[]};var _0x57dab5=_[_0x4e59('0x3d')](db[_0x4e59('0x3e')][_0x4e59('0x3f')],function(_0x49c0f9){return{'name':_0x49c0f9[_0x4e59('0x40')],'type':_0x49c0f9[_0x4e59('0x41')][_0x4e59('0x42')]};});_0x120d9e['model']=_['map'](_0x57dab5,_0x4e59('0x36'));_0x120d9e[_0x4e59('0x43')]=_[_0x4e59('0x44')](_0x1f70d5[_0x4e59('0x43')]);_0x120d9e[_0x4e59('0x45')]=_[_0x4e59('0x46')](_0x120d9e[_0x4e59('0x47')],_0x120d9e[_0x4e59('0x43')]);_0x41c482[_0x4e59('0x48')]=_['intersection'](_0x120d9e['model'],qs[_0x4e59('0x49')](_0x1f70d5[_0x4e59('0x43')]['fields']));_0x41c482[_0x4e59('0x48')]=_0x41c482[_0x4e59('0x48')][_0x4e59('0x4a')]?_0x41c482[_0x4e59('0x48')]:_0x120d9e[_0x4e59('0x47')];if(!_0x1f70d5[_0x4e59('0x43')][_0x4e59('0x4b')]('nolimit')){_0x41c482[_0x4e59('0x2f')]=qs['limit'](_0x1f70d5[_0x4e59('0x43')][_0x4e59('0x2f')]);_0x41c482['offset']=qs[_0x4e59('0x2c')](_0x1f70d5[_0x4e59('0x43')][_0x4e59('0x2c')]);}_0x41c482[_0x4e59('0x4c')]=qs['sort'](_0x1f70d5[_0x4e59('0x43')][_0x4e59('0x4d')]);_0x41c482[_0x4e59('0x4e')]=qs['filters'](_[_0x4e59('0x4f')](_0x1f70d5['query'],_0x120d9e[_0x4e59('0x45')]),_0x57dab5);if(_0x1f70d5[_0x4e59('0x43')]['filter']){_0x41c482[_0x4e59('0x4e')]=_[_0x4e59('0x38')](_0x41c482['where'],{'$or':_[_0x4e59('0x3d')](_0x57dab5,function(_0x53801c){if(_0x53801c[_0x4e59('0x41')]!==_0x4e59('0x50')){var _0x5c8f96={};_0x5c8f96[_0x53801c['name']]={'$like':'%'+_0x1f70d5[_0x4e59('0x43')]['filter']+'%'};return _0x5c8f96;}})});}_0x41c482=_['merge']({},_0x41c482,_0x1f70d5[_0x4e59('0x51')]);var _0x3c92ec={'where':_0x41c482['where']};return db[_0x4e59('0x3e')][_0x4e59('0x2e')](_0x3c92ec)[_0x4e59('0x1d')](function(_0xa953ae){_0x3054bd[_0x4e59('0x2e')]=_0xa953ae;if(_0x1f70d5[_0x4e59('0x43')][_0x4e59('0x52')]){_0x41c482[_0x4e59('0x53')]=[{'all':!![]}];}return db['ChatGroup']['findAll'](_0x41c482);})['then'](function(_0x472d1d){_0x3054bd[_0x4e59('0x54')]=_0x472d1d;return _0x3054bd;})[_0x4e59('0x1d')](respondWithFilteredResult(_0x311e94,_0x41c482))[_0x4e59('0x27')](handleError(_0x311e94,null));};exports[_0x4e59('0x55')]=function(_0x3ef01a,_0x3b2ed5){var _0x4c0f66={'raw':!![],'where':{'id':_0x3ef01a[_0x4e59('0x56')]['id']}},_0x33d903={};_0x33d903[_0x4e59('0x47')]=_[_0x4e59('0x44')](db['ChatGroup']['rawAttributes']);_0x33d903[_0x4e59('0x43')]=_[_0x4e59('0x44')](_0x3ef01a[_0x4e59('0x43')]);_0x33d903['filters']=_[_0x4e59('0x46')](_0x33d903[_0x4e59('0x47')],_0x33d903['query']);_0x4c0f66[_0x4e59('0x48')]=_['intersection'](_0x33d903[_0x4e59('0x47')],qs[_0x4e59('0x49')](_0x3ef01a[_0x4e59('0x43')][_0x4e59('0x49')]));_0x4c0f66[_0x4e59('0x48')]=_0x4c0f66[_0x4e59('0x48')][_0x4e59('0x4a')]?_0x4c0f66[_0x4e59('0x48')]:_0x33d903[_0x4e59('0x47')];if(_0x3ef01a[_0x4e59('0x43')][_0x4e59('0x52')]){_0x4c0f66[_0x4e59('0x53')]=[{'all':!![]}];}_0x4c0f66=_[_0x4e59('0x38')]({},_0x4c0f66,_0x3ef01a['options']);return db[_0x4e59('0x3e')]['find'](_0x4c0f66)[_0x4e59('0x1d')](handleEntityNotFound(_0x3b2ed5,null))[_0x4e59('0x1d')](respondWithResult(_0x3b2ed5,null))[_0x4e59('0x27')](handleError(_0x3b2ed5,null));};exports[_0x4e59('0x57')]=function(_0x2c2c4d,_0x285f73){return db[_0x4e59('0x3e')][_0x4e59('0x57')](_0x2c2c4d[_0x4e59('0x39')],{})[_0x4e59('0x1d')](respondWithResult(_0x285f73,0xc9))[_0x4e59('0x27')](handleError(_0x285f73,null));};exports[_0x4e59('0x34')]=function(_0x3dcc73,_0xd5d11e){if(_0x3dcc73[_0x4e59('0x39')]['id']){delete _0x3dcc73['body']['id'];}return db['ChatGroup'][_0x4e59('0x58')]({'where':{'id':_0x3dcc73[_0x4e59('0x56')]['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0xd5d11e,null))['then'](saveUpdates(_0x3dcc73[_0x4e59('0x39')],null))[_0x4e59('0x1d')](respondWithResult(_0xd5d11e,null))[_0x4e59('0x27')](handleError(_0xd5d11e,null));};exports[_0x4e59('0x35')]=function(_0x44cac9,_0x4ffdf8){return db['ChatGroup'][_0x4e59('0x58')]({'where':{'id':_0x44cac9[_0x4e59('0x56')]['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0x4ffdf8,null))[_0x4e59('0x1d')](removeEntity(_0x4ffdf8,null))[_0x4e59('0x27')](handleError(_0x4ffdf8,null));};exports[_0x4e59('0x59')]=function(_0xa5a6c1,_0x4b0e92){return db[_0x4e59('0x3e')][_0x4e59('0x59')]()[_0x4e59('0x1d')](respondWithResult(_0x4b0e92,null))[_0x4e59('0x27')](handleError(_0x4b0e92,null));};exports[_0x4e59('0x5a')]=function(_0x2a9ec3,_0xdff9ee,_0x49b616){return db[_0x4e59('0x5b')][_0x4e59('0x2e')]({'where':{'ChatGroupId':_0x2a9ec3['params']['id'],'ToId':_0x2a9ec3[_0x4e59('0x5c')]['id'],'read':![]}})['then'](function(_0x49f027){return{'id':_[_0x4e59('0x5d')](_0x2a9ec3[_0x4e59('0x56')]['id']),'count':_0x49f027};})[_0x4e59('0x1d')](respondWithResult(_0xdff9ee,null))[_0x4e59('0x27')](handleError(_0xdff9ee,null));};exports['addMembers']=function(_0x271564,_0x278590,_0x4cd9ee){return db[_0x4e59('0x3e')][_0x4e59('0x58')]({'where':{'id':_0x271564[_0x4e59('0x56')]['id']}})['then'](handleEntityNotFound(_0x278590,null))[_0x4e59('0x1d')](function(_0x1830c9){if(_0x1830c9){return _0x1830c9[_0x4e59('0x5e')](_0x271564[_0x4e59('0x39')][_0x4e59('0x5f')],_[_0x4e59('0x60')](_0x271564['body'],[_0x4e59('0x5f'),'id'])||{});}})[_0x4e59('0x1d')](respondWithResult(_0x278590,null))[_0x4e59('0x27')](handleError(_0x278590,null));};exports[_0x4e59('0x61')]=function(_0x28a899,_0x2f6c55,_0x3d7d03){var _0x5458f7={};var _0x1348d0={};var _0x1724d3;var _0x9ff95;return db[_0x4e59('0x3e')][_0x4e59('0x62')]({'where':{'id':_0x28a899[_0x4e59('0x56')]['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0x2f6c55,null))[_0x4e59('0x1d')](function(_0x601326){if(_0x601326){_0x1724d3=_0x601326;_0x1348d0['model']=_['keys'](db[_0x4e59('0x63')][_0x4e59('0x3f')]);_0x1348d0['query']=_[_0x4e59('0x44')](_0x28a899[_0x4e59('0x43')]);_0x1348d0[_0x4e59('0x45')]=_[_0x4e59('0x46')](_0x1348d0['model'],_0x1348d0[_0x4e59('0x43')]);_0x5458f7['attributes']=_[_0x4e59('0x46')](_0x1348d0[_0x4e59('0x47')],qs[_0x4e59('0x49')](_0x28a899['query'][_0x4e59('0x49')]));_0x5458f7[_0x4e59('0x48')]=_0x5458f7[_0x4e59('0x48')]['length']?_0x5458f7['attributes']:_0x1348d0[_0x4e59('0x47')];_0x5458f7['order']=qs[_0x4e59('0x4d')](_0x28a899[_0x4e59('0x43')][_0x4e59('0x4d')]);_0x5458f7[_0x4e59('0x4e')]=qs[_0x4e59('0x45')](_[_0x4e59('0x4f')](_0x28a899[_0x4e59('0x43')],_0x1348d0[_0x4e59('0x45')]));if(_0x28a899['query'][_0x4e59('0x64')]){_0x5458f7['where']=_[_0x4e59('0x38')](_0x5458f7[_0x4e59('0x4e')],{'$or':_['map'](_0x5458f7['attributes'],function(_0x2df7aa){var _0x3f7ab2={};_0x3f7ab2[_0x2df7aa]={'$like':'%'+_0x28a899[_0x4e59('0x43')][_0x4e59('0x64')]+'%'};return _0x3f7ab2;})});}_0x5458f7=_['merge']({},_0x5458f7,_0x28a899[_0x4e59('0x51')]);return _0x1724d3[_0x4e59('0x61')](_0x5458f7);}})[_0x4e59('0x1d')](function(_0x5b076e){if(_0x5b076e){_0x9ff95=_0x5b076e[_0x4e59('0x4a')];if(!_0x28a899[_0x4e59('0x43')]['hasOwnProperty'](_0x4e59('0x65'))){_0x5458f7[_0x4e59('0x2f')]=qs[_0x4e59('0x2f')](_0x28a899[_0x4e59('0x43')][_0x4e59('0x2f')]);_0x5458f7[_0x4e59('0x2c')]=qs['offset'](_0x28a899[_0x4e59('0x43')]['offset']);}return _0x1724d3[_0x4e59('0x61')](_0x5458f7);}})['then'](function(_0xdbc533){if(_0xdbc533){return _0xdbc533?{'count':_0x9ff95,'rows':_0xdbc533}:null;}})[_0x4e59('0x1d')](respondWithResult(_0x2f6c55,null))[_0x4e59('0x27')](handleError(_0x2f6c55,null));};exports[_0x4e59('0x66')]=function(_0x2d47a0,_0x124d59,_0x102f54){return db[_0x4e59('0x3e')][_0x4e59('0x58')]({'where':{'id':_0x2d47a0['params']['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0x124d59,null))[_0x4e59('0x1d')](function(_0x37eca3){if(_0x37eca3){return _0x37eca3[_0x4e59('0x66')](_0x2d47a0['query'][_0x4e59('0x5f')]);}})['then'](respondWithStatusCode(_0x124d59,null))[_0x4e59('0x27')](handleError(_0x124d59,null));};exports[_0x4e59('0x67')]=function(_0x49477b,_0x29915d,_0x66a701){if(_0x49477b['body']['id']){delete _0x49477b['body']['id'];}return db[_0x4e59('0x3e')][_0x4e59('0x58')]({'where':{'id':_0x49477b['params']['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0x29915d,null))[_0x4e59('0x1d')](function(_0x142c59){if(_0x142c59){_0x49477b[_0x4e59('0x39')][_0x4e59('0x68')]=_0x142c59['id'];return db[_0x4e59('0x5b')][_0x4e59('0x57')](_0x49477b[_0x4e59('0x39')]);}})[_0x4e59('0x1d')](respondWithResult(_0x29915d,null))[_0x4e59('0x27')](handleError(_0x29915d,null));};exports['getMessages']=function(_0x9b329d,_0x334dd2,_0x17c7df){var _0x58b3e5={};var _0x4f1bb1={};var _0x520e4a;var _0x128ed5;return db['ChatGroup'][_0x4e59('0x62')]({'where':{'id':_0x9b329d['params']['id']}})[_0x4e59('0x1d')](handleEntityNotFound(_0x334dd2,null))[_0x4e59('0x1d')](function(_0xe69b2a){if(_0xe69b2a){_0x520e4a=_0xe69b2a;_0x4f1bb1[_0x4e59('0x47')]=_[_0x4e59('0x44')](db[_0x4e59('0x5b')]['rawAttributes']);_0x4f1bb1[_0x4e59('0x43')]=_['keys'](_0x9b329d['query']);_0x4f1bb1[_0x4e59('0x45')]=_[_0x4e59('0x46')](_0x4f1bb1[_0x4e59('0x47')],_0x4f1bb1[_0x4e59('0x43')]);_0x58b3e5['attributes']=_['intersection'](_0x4f1bb1[_0x4e59('0x47')],qs[_0x4e59('0x49')](_0x9b329d['query']['fields']));_0x58b3e5[_0x4e59('0x48')]=_0x58b3e5[_0x4e59('0x48')][_0x4e59('0x4a')]?_0x58b3e5[_0x4e59('0x48')]:_0x4f1bb1[_0x4e59('0x47')];_0x58b3e5['order']=qs[_0x4e59('0x4d')](_0x9b329d[_0x4e59('0x43')][_0x4e59('0x4d')]);_0x58b3e5[_0x4e59('0x4e')]=qs[_0x4e59('0x45')](_[_0x4e59('0x4f')](_0x9b329d[_0x4e59('0x43')],_0x4f1bb1[_0x4e59('0x45')]));if(_0x9b329d[_0x4e59('0x43')][_0x4e59('0x64')]){_0x58b3e5['where']=_['merge'](_0x58b3e5[_0x4e59('0x4e')],{'$or':_['map'](_0x58b3e5[_0x4e59('0x48')],function(_0x3950b5){var _0x5da756={};_0x5da756[_0x3950b5]={'$like':'%'+_0x9b329d[_0x4e59('0x43')][_0x4e59('0x64')]+'%'};return _0x5da756;})});}if(_0x9b329d[_0x4e59('0x43')][_0x4e59('0x69')]){var _0x340c9a=_0x9b329d['query'][_0x4e59('0x69')]['split'](',');var _0x2a1729={};_0x2a1729[_0x340c9a[0x0]]={'$gte':moment(_0x340c9a[0x1])['format'](_0x4e59('0x6a'))};_0x58b3e5[_0x4e59('0x4e')]=_[_0x4e59('0x38')](_0x58b3e5[_0x4e59('0x4e')],_0x2a1729);}_0x58b3e5=_[_0x4e59('0x38')]({},_0x58b3e5,_0x9b329d['options']);return _0x520e4a[_0x4e59('0x6b')](_0x58b3e5);}})['then'](function(_0x3d5e7f){if(_0x3d5e7f){_0x128ed5=_0x3d5e7f[_0x4e59('0x4a')];if(!_0x9b329d[_0x4e59('0x43')][_0x4e59('0x4b')](_0x4e59('0x65'))){_0x58b3e5[_0x4e59('0x2f')]=qs[_0x4e59('0x2f')](_0x9b329d[_0x4e59('0x43')][_0x4e59('0x2f')]);_0x58b3e5[_0x4e59('0x2c')]=qs[_0x4e59('0x2c')](_0x9b329d[_0x4e59('0x43')][_0x4e59('0x2c')]);}return _0x520e4a[_0x4e59('0x6b')](_0x58b3e5);}})[_0x4e59('0x1d')](function(_0x46c273){if(_0x46c273){return _0x46c273?{'count':_0x128ed5,'rows':_0x46c273}:null;}})[_0x4e59('0x1d')](respondWithResult(_0x334dd2,null))[_0x4e59('0x27')](handleError(_0x334dd2,null));};