Built motion from commit 753c950e.|2.5.42
[motion2.git] / server / api / chatGroup / chatGroup.controller.js
index 3d1fb58..8dda5be 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9174=['../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','redis','defaults','socket.io-emitter','./chatGroup.socket','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','then','error','stack','name','send','ChatGroup','fieldName','type','key','model','map','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filter','merge','options','includeAll','include','findAll','rows','catch','show','params','keys','rawAttributes','find','update','body','describe','ChatInternalMessage','user','addMembers','omit','ids','getMembers','findOne','User','pick','removeMembers','addMessage','ChatGroupId','create','getMessages','$gte','split','YYYY-MM-DD\x20HH:mm:ss','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','to-csv','fs-extra','squel','crypto','querystring','papaparse','ioredis'];(function(_0x48112e,_0x261e02){var _0x4789ed=function(_0x316ea7){while(--_0x316ea7){_0x48112e['push'](_0x48112e['shift']());}};_0x4789ed(++_0x261e02);}(_0x9174,0x165));var _0x4917=function(_0x34928e,_0xd44165){_0x34928e=_0x34928e-0x0;var _0x5b99ca=_0x9174[_0x34928e];return _0x5b99ca;};'use strict';var emlformat=require(_0x4917('0x0'));var rimraf=require(_0x4917('0x1'));var zipdir=require(_0x4917('0x2'));var jsonpatch=require(_0x4917('0x3'));var rp=require(_0x4917('0x4'));var moment=require(_0x4917('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x4917('0x6'));var util=require('util');var path=require(_0x4917('0x7'));var sox=require('sox');var csv=require(_0x4917('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4917('0x9'));var _=require('lodash');var squel=require(_0x4917('0xa'));var crypto=require(_0x4917('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x4917('0xc'));var Papa=require(_0x4917('0xd'));var Redis=require(_0x4917('0xe'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x4917('0xf'));var hardwareService=require(_0x4917('0x10'));var logger=require(_0x4917('0x11'))(_0x4917('0x12'));var utils=require(_0x4917('0x13'));var config=require(_0x4917('0x14'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x4917('0x15')]=_[_0x4917('0x16')](config[_0x4917('0x15')],{'host':'localhost','port':0x18eb});var socket=require(_0x4917('0x17'))(new Redis(config[_0x4917('0x15')]));require(_0x4917('0x18'))[_0x4917('0x19')](socket);function respondWithStatusCode(_0x3c1491,_0x1bec8e){_0x1bec8e=_0x1bec8e||0xcc;return function(_0x355aba){if(_0x355aba){return _0x3c1491[_0x4917('0x1a')](_0x1bec8e);}return _0x3c1491[_0x4917('0x1b')](_0x1bec8e)[_0x4917('0x1c')]();};}function respondWithResult(_0x4ba676,_0x2c430a){_0x2c430a=_0x2c430a||0xc8;return function(_0xe7a848){if(_0xe7a848){return _0x4ba676['status'](_0x2c430a)['json'](_0xe7a848);}};}function respondWithFilteredResult(_0x351999,_0x1ca3bf){return function(_0x43d66b){if(_0x43d66b){var _0xbd3ef4=typeof _0x1ca3bf[_0x4917('0x1d')]===_0x4917('0x1e')&&typeof _0x1ca3bf[_0x4917('0x1f')]===_0x4917('0x1e');var _0xbee921=_0x43d66b[_0x4917('0x20')];var _0x3bbb59=_0xbd3ef4?0x0:_0x1ca3bf['offset'];var _0x348ceb=_0xbd3ef4?_0x43d66b[_0x4917('0x20')]:_0x1ca3bf['offset']+_0x1ca3bf[_0x4917('0x1f')];var _0x12ec42;if(_0x348ceb>=_0xbee921){_0x348ceb=_0xbee921;_0x12ec42=0xc8;}else{_0x12ec42=0xce;}_0x351999[_0x4917('0x1b')](_0x12ec42);return _0x351999[_0x4917('0x21')](_0x4917('0x22'),_0x3bbb59+'-'+_0x348ceb+'/'+_0xbee921)[_0x4917('0x23')](_0x43d66b);}return null;};}function patchUpdates(_0x2c613b){return function(_0x5f4946){try{jsonpatch[_0x4917('0x24')](_0x5f4946,_0x2c613b,!![]);}catch(_0x3d1332){return BPromise[_0x4917('0x25')](_0x3d1332);}return _0x5f4946[_0x4917('0x26')]();};}function saveUpdates(_0x22f0a7,_0x2aebc4){return function(_0x19f476){if(_0x19f476){return _0x19f476['update'](_0x22f0a7)[_0x4917('0x27')](function(_0x5ec7c3){return _0x5ec7c3;});}return null;};}function removeEntity(_0x34d5f5,_0x43bc0d){return function(_0x5d7394){if(_0x5d7394){return _0x5d7394['destroy']()[_0x4917('0x27')](function(){_0x34d5f5[_0x4917('0x1b')](0xcc)[_0x4917('0x1c')]();});}};}function handleEntityNotFound(_0x4daa41,_0x2fa8c9){return function(_0x1b31c2){if(!_0x1b31c2){_0x4daa41[_0x4917('0x1a')](0x194);}return _0x1b31c2;};}function handleError(_0x766c49,_0x794b3e){_0x794b3e=_0x794b3e||0x1f4;return function(_0x1a33ac){logger[_0x4917('0x28')](_0x1a33ac[_0x4917('0x29')]);if(_0x1a33ac[_0x4917('0x2a')]){delete _0x1a33ac[_0x4917('0x2a')];}_0x766c49[_0x4917('0x1b')](_0x794b3e)[_0x4917('0x2b')](_0x1a33ac);};}exports['index']=function(_0x25b710,_0x12774f){var _0x24b3c9={},_0x5d0b49={},_0x4a9e7f={'count':0x0,'rows':[]};var _0x5b2741=_['map'](db[_0x4917('0x2c')]['rawAttributes'],function(_0x215cd1){return{'name':_0x215cd1[_0x4917('0x2d')],'type':_0x215cd1[_0x4917('0x2e')][_0x4917('0x2f')]};});_0x5d0b49[_0x4917('0x30')]=_[_0x4917('0x31')](_0x5b2741,_0x4917('0x2a'));_0x5d0b49[_0x4917('0x32')]=_['keys'](_0x25b710['query']);_0x5d0b49[_0x4917('0x33')]=_[_0x4917('0x34')](_0x5d0b49[_0x4917('0x30')],_0x5d0b49[_0x4917('0x32')]);_0x24b3c9[_0x4917('0x35')]=_['intersection'](_0x5d0b49['model'],qs[_0x4917('0x36')](_0x25b710['query'][_0x4917('0x36')]));_0x24b3c9[_0x4917('0x35')]=_0x24b3c9[_0x4917('0x35')][_0x4917('0x37')]?_0x24b3c9[_0x4917('0x35')]:_0x5d0b49[_0x4917('0x30')];if(!_0x25b710[_0x4917('0x32')][_0x4917('0x38')]('nolimit')){_0x24b3c9['limit']=qs[_0x4917('0x1f')](_0x25b710[_0x4917('0x32')][_0x4917('0x1f')]);_0x24b3c9[_0x4917('0x1d')]=qs[_0x4917('0x1d')](_0x25b710[_0x4917('0x32')]['offset']);}_0x24b3c9[_0x4917('0x39')]=qs['sort'](_0x25b710[_0x4917('0x32')][_0x4917('0x3a')]);_0x24b3c9[_0x4917('0x3b')]=qs[_0x4917('0x33')](_['pick'](_0x25b710['query'],_0x5d0b49[_0x4917('0x33')]),_0x5b2741);if(_0x25b710[_0x4917('0x32')][_0x4917('0x3c')]){_0x24b3c9[_0x4917('0x3b')]=_[_0x4917('0x3d')](_0x24b3c9['where'],{'$or':_['map'](_0x5b2741,function(_0x4c96c0){if(_0x4c96c0[_0x4917('0x2e')]!=='VIRTUAL'){var _0x4c0b6d={};_0x4c0b6d[_0x4c96c0['name']]={'$like':'%'+_0x25b710[_0x4917('0x32')][_0x4917('0x3c')]+'%'};return _0x4c0b6d;}})});}_0x24b3c9=_[_0x4917('0x3d')]({},_0x24b3c9,_0x25b710[_0x4917('0x3e')]);var _0x4a5b57={'where':_0x24b3c9[_0x4917('0x3b')]};return db['ChatGroup'][_0x4917('0x20')](_0x4a5b57)['then'](function(_0x1d4902){_0x4a9e7f[_0x4917('0x20')]=_0x1d4902;if(_0x25b710[_0x4917('0x32')][_0x4917('0x3f')]){_0x24b3c9[_0x4917('0x40')]=[{'all':!![]}];}return db['ChatGroup'][_0x4917('0x41')](_0x24b3c9);})[_0x4917('0x27')](function(_0x1a2bb9){_0x4a9e7f[_0x4917('0x42')]=_0x1a2bb9;return _0x4a9e7f;})[_0x4917('0x27')](respondWithFilteredResult(_0x12774f,_0x24b3c9))[_0x4917('0x43')](handleError(_0x12774f,null));};exports[_0x4917('0x44')]=function(_0x54b80a,_0x42d0c0){var _0x259207={'raw':!![],'where':{'id':_0x54b80a[_0x4917('0x45')]['id']}},_0x56c047={};_0x56c047['model']=_[_0x4917('0x46')](db[_0x4917('0x2c')][_0x4917('0x47')]);_0x56c047[_0x4917('0x32')]=_['keys'](_0x54b80a['query']);_0x56c047[_0x4917('0x33')]=_['intersection'](_0x56c047[_0x4917('0x30')],_0x56c047['query']);_0x259207['attributes']=_[_0x4917('0x34')](_0x56c047[_0x4917('0x30')],qs[_0x4917('0x36')](_0x54b80a[_0x4917('0x32')][_0x4917('0x36')]));_0x259207[_0x4917('0x35')]=_0x259207['attributes'][_0x4917('0x37')]?_0x259207[_0x4917('0x35')]:_0x56c047[_0x4917('0x30')];if(_0x54b80a[_0x4917('0x32')][_0x4917('0x3f')]){_0x259207[_0x4917('0x40')]=[{'all':!![]}];}_0x259207=_[_0x4917('0x3d')]({},_0x259207,_0x54b80a['options']);return db[_0x4917('0x2c')][_0x4917('0x48')](_0x259207)[_0x4917('0x27')](handleEntityNotFound(_0x42d0c0,null))[_0x4917('0x27')](respondWithResult(_0x42d0c0,null))[_0x4917('0x43')](handleError(_0x42d0c0,null));};exports['create']=function(_0x19711f,_0x4c0012){return db['ChatGroup']['create'](_0x19711f['body'],{})[_0x4917('0x27')](respondWithResult(_0x4c0012,0xc9))['catch'](handleError(_0x4c0012,null));};exports[_0x4917('0x49')]=function(_0x51e992,_0x35861b){if(_0x51e992[_0x4917('0x4a')]['id']){delete _0x51e992['body']['id'];}return db[_0x4917('0x2c')][_0x4917('0x48')]({'where':{'id':_0x51e992['params']['id']}})['then'](handleEntityNotFound(_0x35861b,null))[_0x4917('0x27')](saveUpdates(_0x51e992['body'],null))[_0x4917('0x27')](respondWithResult(_0x35861b,null))[_0x4917('0x43')](handleError(_0x35861b,null));};exports['destroy']=function(_0x25c7b9,_0x408772){return db[_0x4917('0x2c')][_0x4917('0x48')]({'where':{'id':_0x25c7b9['params']['id']}})[_0x4917('0x27')](handleEntityNotFound(_0x408772,null))[_0x4917('0x27')](removeEntity(_0x408772,null))[_0x4917('0x43')](handleError(_0x408772,null));};exports[_0x4917('0x4b')]=function(_0x3d374e,_0x1a6f17){return db[_0x4917('0x2c')][_0x4917('0x4b')]()[_0x4917('0x27')](respondWithResult(_0x1a6f17,null))[_0x4917('0x43')](handleError(_0x1a6f17,null));};exports['getUnread']=function(_0x230225,_0x5ae4cc,_0x271106){return db[_0x4917('0x4c')][_0x4917('0x20')]({'where':{'ChatGroupId':_0x230225[_0x4917('0x45')]['id'],'ToId':_0x230225[_0x4917('0x4d')]['id'],'read':![]}})['then'](function(_0x554729){return{'id':_['toInteger'](_0x230225['params']['id']),'count':_0x554729};})['then'](respondWithResult(_0x5ae4cc,null))['catch'](handleError(_0x5ae4cc,null));};exports[_0x4917('0x4e')]=function(_0xa244b1,_0x49b13c,_0x4dc24f){return db[_0x4917('0x2c')][_0x4917('0x48')]({'where':{'id':_0xa244b1[_0x4917('0x45')]['id']}})[_0x4917('0x27')](handleEntityNotFound(_0x49b13c,null))[_0x4917('0x27')](function(_0x42a39d){if(_0x42a39d){return _0x42a39d[_0x4917('0x4e')](_0xa244b1[_0x4917('0x4a')]['ids'],_[_0x4917('0x4f')](_0xa244b1[_0x4917('0x4a')],[_0x4917('0x50'),'id'])||{});}})[_0x4917('0x27')](respondWithResult(_0x49b13c,null))['catch'](handleError(_0x49b13c,null));};exports[_0x4917('0x51')]=function(_0x47a6b7,_0x525de6,_0x5a1c2f){var _0x584c2c={};var _0x12456e={};var _0x35d4f7;var _0xf2e2c7;return db[_0x4917('0x2c')][_0x4917('0x52')]({'where':{'id':_0x47a6b7[_0x4917('0x45')]['id']}})[_0x4917('0x27')](handleEntityNotFound(_0x525de6,null))['then'](function(_0xff26ca){if(_0xff26ca){_0x35d4f7=_0xff26ca;_0x12456e[_0x4917('0x30')]=_[_0x4917('0x46')](db[_0x4917('0x53')]['rawAttributes']);_0x12456e[_0x4917('0x32')]=_[_0x4917('0x46')](_0x47a6b7[_0x4917('0x32')]);_0x12456e[_0x4917('0x33')]=_[_0x4917('0x34')](_0x12456e[_0x4917('0x30')],_0x12456e['query']);_0x584c2c[_0x4917('0x35')]=_[_0x4917('0x34')](_0x12456e[_0x4917('0x30')],qs[_0x4917('0x36')](_0x47a6b7[_0x4917('0x32')]['fields']));_0x584c2c['attributes']=_0x584c2c[_0x4917('0x35')]['length']?_0x584c2c[_0x4917('0x35')]:_0x12456e[_0x4917('0x30')];_0x584c2c['order']=qs['sort'](_0x47a6b7[_0x4917('0x32')]['sort']);_0x584c2c['where']=qs[_0x4917('0x33')](_[_0x4917('0x54')](_0x47a6b7['query'],_0x12456e['filters']));if(_0x47a6b7[_0x4917('0x32')][_0x4917('0x3c')]){_0x584c2c[_0x4917('0x3b')]=_['merge'](_0x584c2c[_0x4917('0x3b')],{'$or':_['map'](_0x584c2c['attributes'],function(_0x3219f4){var _0xd91f35={};_0xd91f35[_0x3219f4]={'$like':'%'+_0x47a6b7['query']['filter']+'%'};return _0xd91f35;})});}_0x584c2c=_['merge']({},_0x584c2c,_0x47a6b7['options']);return _0x35d4f7[_0x4917('0x51')](_0x584c2c);}})['then'](function(_0x3e0e74){if(_0x3e0e74){_0xf2e2c7=_0x3e0e74[_0x4917('0x37')];if(!_0x47a6b7['query'][_0x4917('0x38')]('nolimit')){_0x584c2c[_0x4917('0x1f')]=qs[_0x4917('0x1f')](_0x47a6b7['query'][_0x4917('0x1f')]);_0x584c2c[_0x4917('0x1d')]=qs['offset'](_0x47a6b7[_0x4917('0x32')][_0x4917('0x1d')]);}return _0x35d4f7[_0x4917('0x51')](_0x584c2c);}})[_0x4917('0x27')](function(_0x32d7c4){if(_0x32d7c4){return _0x32d7c4?{'count':_0xf2e2c7,'rows':_0x32d7c4}:null;}})[_0x4917('0x27')](respondWithResult(_0x525de6,null))[_0x4917('0x43')](handleError(_0x525de6,null));};exports[_0x4917('0x55')]=function(_0x4b972f,_0x2a92ae,_0x43f412){return db[_0x4917('0x2c')][_0x4917('0x48')]({'where':{'id':_0x4b972f[_0x4917('0x45')]['id']}})['then'](handleEntityNotFound(_0x2a92ae,null))[_0x4917('0x27')](function(_0x36b4b4){if(_0x36b4b4){return _0x36b4b4[_0x4917('0x55')](_0x4b972f[_0x4917('0x32')][_0x4917('0x50')]);}})[_0x4917('0x27')](respondWithStatusCode(_0x2a92ae,null))[_0x4917('0x43')](handleError(_0x2a92ae,null));};exports[_0x4917('0x56')]=function(_0x18cf44,_0x2d20af,_0x329546){if(_0x18cf44[_0x4917('0x4a')]['id']){delete _0x18cf44[_0x4917('0x4a')]['id'];}return db['ChatGroup'][_0x4917('0x48')]({'where':{'id':_0x18cf44[_0x4917('0x45')]['id']}})[_0x4917('0x27')](handleEntityNotFound(_0x2d20af,null))[_0x4917('0x27')](function(_0x4b9f94){if(_0x4b9f94){_0x18cf44[_0x4917('0x4a')][_0x4917('0x57')]=_0x4b9f94['id'];return db['ChatInternalMessage'][_0x4917('0x58')](_0x18cf44[_0x4917('0x4a')]);}})[_0x4917('0x27')](respondWithResult(_0x2d20af,null))[_0x4917('0x43')](handleError(_0x2d20af,null));};exports[_0x4917('0x59')]=function(_0x4f36a5,_0x155b41,_0x4eaf1b){var _0x156575={};var _0x5d2729={};var _0x47ce18;var _0x17d39b;return db[_0x4917('0x2c')][_0x4917('0x52')]({'where':{'id':_0x4f36a5[_0x4917('0x45')]['id']}})[_0x4917('0x27')](handleEntityNotFound(_0x155b41,null))['then'](function(_0x324b74){if(_0x324b74){_0x47ce18=_0x324b74;_0x5d2729[_0x4917('0x30')]=_[_0x4917('0x46')](db[_0x4917('0x4c')][_0x4917('0x47')]);_0x5d2729[_0x4917('0x32')]=_['keys'](_0x4f36a5[_0x4917('0x32')]);_0x5d2729[_0x4917('0x33')]=_[_0x4917('0x34')](_0x5d2729['model'],_0x5d2729['query']);_0x156575[_0x4917('0x35')]=_[_0x4917('0x34')](_0x5d2729[_0x4917('0x30')],qs[_0x4917('0x36')](_0x4f36a5[_0x4917('0x32')][_0x4917('0x36')]));_0x156575[_0x4917('0x35')]=_0x156575[_0x4917('0x35')][_0x4917('0x37')]?_0x156575[_0x4917('0x35')]:_0x5d2729['model'];_0x156575[_0x4917('0x39')]=qs[_0x4917('0x3a')](_0x4f36a5['query'][_0x4917('0x3a')]);_0x156575[_0x4917('0x3b')]=qs[_0x4917('0x33')](_[_0x4917('0x54')](_0x4f36a5['query'],_0x5d2729[_0x4917('0x33')]));if(_0x4f36a5['query'][_0x4917('0x3c')]){_0x156575['where']=_[_0x4917('0x3d')](_0x156575[_0x4917('0x3b')],{'$or':_['map'](_0x156575[_0x4917('0x35')],function(_0x529083){var _0x4150e3={};_0x4150e3[_0x529083]={'$like':'%'+_0x4f36a5['query'][_0x4917('0x3c')]+'%'};return _0x4150e3;})});}if(_0x4f36a5['query']['$gte']){var _0x5ee30a=_0x4f36a5[_0x4917('0x32')][_0x4917('0x5a')][_0x4917('0x5b')](',');var _0x5df005={};_0x5df005[_0x5ee30a[0x0]]={'$gte':moment(_0x5ee30a[0x1])['format'](_0x4917('0x5c'))};_0x156575['where']=_['merge'](_0x156575[_0x4917('0x3b')],_0x5df005);}_0x156575=_[_0x4917('0x3d')]({},_0x156575,_0x4f36a5[_0x4917('0x3e')]);return _0x47ce18[_0x4917('0x59')](_0x156575);}})[_0x4917('0x27')](function(_0x50b095){if(_0x50b095){_0x17d39b=_0x50b095['length'];if(!_0x4f36a5['query'][_0x4917('0x38')]('nolimit')){_0x156575['limit']=qs[_0x4917('0x1f')](_0x4f36a5['query'][_0x4917('0x1f')]);_0x156575[_0x4917('0x1d')]=qs[_0x4917('0x1d')](_0x4f36a5[_0x4917('0x32')][_0x4917('0x1d')]);}return _0x47ce18['getMessages'](_0x156575);}})['then'](function(_0x53b44d){if(_0x53b44d){return _0x53b44d?{'count':_0x17d39b,'rows':_0x53b44d}:null;}})[_0x4917('0x27')](respondWithResult(_0x155b41,null))[_0x4917('0x43')](handleError(_0x155b41,null));};
\ No newline at end of file
+var _0xc631=['update','destroy','then','sendStatus','stack','name','send','index','map','ChatGroup','rawAttributes','fieldName','type','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','sort','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','create','body','find','catch','describe','ChatInternalMessage','user','toInteger','ids','omit','getMembers','findOne','User','order','pick','removeMembers','addMessage','ChatGroupId','getMessages','$gte','split','format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./chatGroup.socket','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','reject'];(function(_0x39e84d,_0x11931d){var _0x1991bc=function(_0xc81e32){while(--_0xc81e32){_0x39e84d['push'](_0x39e84d['shift']());}};_0x1991bc(++_0x11931d);}(_0xc631,0x163));var _0x1c63=function(_0x3bc326,_0x3e5ab9){_0x3bc326=_0x3bc326-0x0;var _0x5c6973=_0xc631[_0x3bc326];return _0x5c6973;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x1c63('0x0'));var zipdir=require(_0x1c63('0x1'));var jsonpatch=require(_0x1c63('0x2'));var rp=require(_0x1c63('0x3'));var moment=require(_0x1c63('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x1c63('0x5'));var util=require('util');var path=require(_0x1c63('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x1c63('0x7'));var fs=require('fs');var fs_extra=require(_0x1c63('0x8'));var _=require(_0x1c63('0x9'));var squel=require(_0x1c63('0xa'));var crypto=require(_0x1c63('0xb'));var jsforce=require(_0x1c63('0xc'));var deskjs=require(_0x1c63('0xd'));var toCsv=require(_0x1c63('0xe'));var querystring=require(_0x1c63('0xf'));var Papa=require(_0x1c63('0x10'));var Redis=require('ioredis');var authService=require(_0x1c63('0x11'));var qs=require(_0x1c63('0x12'));var as=require(_0x1c63('0x13'));var hardwareService=require(_0x1c63('0x14'));var logger=require(_0x1c63('0x15'))(_0x1c63('0x16'));var utils=require('../../config/utils');var config=require(_0x1c63('0x17'));var licenseUtil=require(_0x1c63('0x18'));var db=require(_0x1c63('0x19'))['db'];config['redis']=_['defaults'](config[_0x1c63('0x1a')],{'host':_0x1c63('0x1b'),'port':0x18eb});var socket=require(_0x1c63('0x1c'))(new Redis(config[_0x1c63('0x1a')]));require(_0x1c63('0x1d'))['register'](socket);function respondWithStatusCode(_0x3d832d,_0x52e7c5){_0x52e7c5=_0x52e7c5||0xcc;return function(_0x359a52){if(_0x359a52){return _0x3d832d['sendStatus'](_0x52e7c5);}return _0x3d832d[_0x1c63('0x1e')](_0x52e7c5)[_0x1c63('0x1f')]();};}function respondWithResult(_0x4f7aa0,_0x33b3b7){_0x33b3b7=_0x33b3b7||0xc8;return function(_0x893b04){if(_0x893b04){return _0x4f7aa0[_0x1c63('0x1e')](_0x33b3b7)[_0x1c63('0x20')](_0x893b04);}};}function respondWithFilteredResult(_0x5b567b,_0x32d23f){return function(_0xbcf985){if(_0xbcf985){var _0x599a75=typeof _0x32d23f['offset']===_0x1c63('0x21')&&typeof _0x32d23f[_0x1c63('0x22')]===_0x1c63('0x21');var _0x4ce014=_0xbcf985[_0x1c63('0x23')];var _0x53b7ad=_0x599a75?0x0:_0x32d23f[_0x1c63('0x24')];var _0xfa6bcc=_0x599a75?_0xbcf985[_0x1c63('0x23')]:_0x32d23f['offset']+_0x32d23f[_0x1c63('0x22')];var _0x3cda60;if(_0xfa6bcc>=_0x4ce014){_0xfa6bcc=_0x4ce014;_0x3cda60=0xc8;}else{_0x3cda60=0xce;}_0x5b567b['status'](_0x3cda60);return _0x5b567b[_0x1c63('0x25')](_0x1c63('0x26'),_0x53b7ad+'-'+_0xfa6bcc+'/'+_0x4ce014)[_0x1c63('0x20')](_0xbcf985);}return null;};}function patchUpdates(_0x3c1c75){return function(_0x293e16){try{jsonpatch[_0x1c63('0x27')](_0x293e16,_0x3c1c75,!![]);}catch(_0x35671a){return BPromise[_0x1c63('0x28')](_0x35671a);}return _0x293e16['save']();};}function saveUpdates(_0x5d396d,_0x4226f9){return function(_0x8356f6){if(_0x8356f6){return _0x8356f6[_0x1c63('0x29')](_0x5d396d)['then'](function(_0x1b6a74){return _0x1b6a74;});}return null;};}function removeEntity(_0x55d049,_0x1c69a3){return function(_0x1641c2){if(_0x1641c2){return _0x1641c2[_0x1c63('0x2a')]()[_0x1c63('0x2b')](function(){_0x55d049[_0x1c63('0x1e')](0xcc)[_0x1c63('0x1f')]();});}};}function handleEntityNotFound(_0x461aff,_0x285bc6){return function(_0x3c0351){if(!_0x3c0351){_0x461aff[_0x1c63('0x2c')](0x194);}return _0x3c0351;};}function handleError(_0x25a23a,_0x5d3696){_0x5d3696=_0x5d3696||0x1f4;return function(_0x24d824){logger['error'](_0x24d824[_0x1c63('0x2d')]);if(_0x24d824[_0x1c63('0x2e')]){delete _0x24d824[_0x1c63('0x2e')];}_0x25a23a[_0x1c63('0x1e')](_0x5d3696)[_0x1c63('0x2f')](_0x24d824);};}exports[_0x1c63('0x30')]=function(_0xd4f8f9,_0x1fe4be){var _0xa2b2b6={},_0xce5092={},_0x19e344={'count':0x0,'rows':[]};var _0x372d15=_[_0x1c63('0x31')](db[_0x1c63('0x32')][_0x1c63('0x33')],function(_0x310085){return{'name':_0x310085[_0x1c63('0x34')],'type':_0x310085[_0x1c63('0x35')][_0x1c63('0x36')]};});_0xce5092['model']=_['map'](_0x372d15,'name');_0xce5092['query']=_[_0x1c63('0x37')](_0xd4f8f9[_0x1c63('0x38')]);_0xce5092[_0x1c63('0x39')]=_[_0x1c63('0x3a')](_0xce5092[_0x1c63('0x3b')],_0xce5092[_0x1c63('0x38')]);_0xa2b2b6[_0x1c63('0x3c')]=_[_0x1c63('0x3a')](_0xce5092[_0x1c63('0x3b')],qs[_0x1c63('0x3d')](_0xd4f8f9['query']['fields']));_0xa2b2b6[_0x1c63('0x3c')]=_0xa2b2b6[_0x1c63('0x3c')][_0x1c63('0x3e')]?_0xa2b2b6[_0x1c63('0x3c')]:_0xce5092[_0x1c63('0x3b')];if(!_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x3f')](_0x1c63('0x40'))){_0xa2b2b6[_0x1c63('0x22')]=qs[_0x1c63('0x22')](_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x22')]);_0xa2b2b6[_0x1c63('0x24')]=qs[_0x1c63('0x24')](_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x24')]);}_0xa2b2b6['order']=qs['sort'](_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x41')]);_0xa2b2b6['where']=qs[_0x1c63('0x39')](_['pick'](_0xd4f8f9['query'],_0xce5092['filters']),_0x372d15);if(_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x42')]){_0xa2b2b6[_0x1c63('0x43')]=_[_0x1c63('0x44')](_0xa2b2b6[_0x1c63('0x43')],{'$or':_[_0x1c63('0x31')](_0x372d15,function(_0x33355b){if(_0x33355b['type']!==_0x1c63('0x45')){var _0x3e96ce={};_0x3e96ce[_0x33355b[_0x1c63('0x2e')]]={'$like':'%'+_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x42')]+'%'};return _0x3e96ce;}})});}_0xa2b2b6=_['merge']({},_0xa2b2b6,_0xd4f8f9[_0x1c63('0x46')]);var _0x4d4ef2={'where':_0xa2b2b6['where']};return db['ChatGroup']['count'](_0x4d4ef2)['then'](function(_0x10eb4e){_0x19e344[_0x1c63('0x23')]=_0x10eb4e;if(_0xd4f8f9[_0x1c63('0x38')][_0x1c63('0x47')]){_0xa2b2b6[_0x1c63('0x48')]=[{'all':!![]}];}return db[_0x1c63('0x32')][_0x1c63('0x49')](_0xa2b2b6);})['then'](function(_0xceff6e){_0x19e344[_0x1c63('0x4a')]=_0xceff6e;return _0x19e344;})['then'](respondWithFilteredResult(_0x1fe4be,_0xa2b2b6))['catch'](handleError(_0x1fe4be,null));};exports[_0x1c63('0x4b')]=function(_0x28fc88,_0x137ead){var _0x2a9214={'raw':!![],'where':{'id':_0x28fc88[_0x1c63('0x4c')]['id']}},_0xc7ef66={};_0xc7ef66[_0x1c63('0x3b')]=_['keys'](db[_0x1c63('0x32')][_0x1c63('0x33')]);_0xc7ef66[_0x1c63('0x38')]=_[_0x1c63('0x37')](_0x28fc88['query']);_0xc7ef66['filters']=_[_0x1c63('0x3a')](_0xc7ef66[_0x1c63('0x3b')],_0xc7ef66['query']);_0x2a9214[_0x1c63('0x3c')]=_[_0x1c63('0x3a')](_0xc7ef66['model'],qs['fields'](_0x28fc88[_0x1c63('0x38')][_0x1c63('0x3d')]));_0x2a9214[_0x1c63('0x3c')]=_0x2a9214[_0x1c63('0x3c')][_0x1c63('0x3e')]?_0x2a9214['attributes']:_0xc7ef66['model'];if(_0x28fc88['query'][_0x1c63('0x47')]){_0x2a9214[_0x1c63('0x48')]=[{'all':!![]}];}_0x2a9214=_[_0x1c63('0x44')]({},_0x2a9214,_0x28fc88[_0x1c63('0x46')]);return db[_0x1c63('0x32')]['find'](_0x2a9214)[_0x1c63('0x2b')](handleEntityNotFound(_0x137ead,null))[_0x1c63('0x2b')](respondWithResult(_0x137ead,null))['catch'](handleError(_0x137ead,null));};exports['create']=function(_0x1e2c55,_0x32254c){return db[_0x1c63('0x32')][_0x1c63('0x4d')](_0x1e2c55[_0x1c63('0x4e')],{})['then'](respondWithResult(_0x32254c,0xc9))['catch'](handleError(_0x32254c,null));};exports[_0x1c63('0x29')]=function(_0x19dc79,_0x5e1edf){if(_0x19dc79[_0x1c63('0x4e')]['id']){delete _0x19dc79[_0x1c63('0x4e')]['id'];}return db[_0x1c63('0x32')][_0x1c63('0x4f')]({'where':{'id':_0x19dc79['params']['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x5e1edf,null))[_0x1c63('0x2b')](saveUpdates(_0x19dc79[_0x1c63('0x4e')],null))['then'](respondWithResult(_0x5e1edf,null))[_0x1c63('0x50')](handleError(_0x5e1edf,null));};exports[_0x1c63('0x2a')]=function(_0x814df0,_0x47ba6b){return db[_0x1c63('0x32')][_0x1c63('0x4f')]({'where':{'id':_0x814df0[_0x1c63('0x4c')]['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x47ba6b,null))[_0x1c63('0x2b')](removeEntity(_0x47ba6b,null))['catch'](handleError(_0x47ba6b,null));};exports[_0x1c63('0x51')]=function(_0x4dae2f,_0x2e2af0){return db[_0x1c63('0x32')][_0x1c63('0x51')]()[_0x1c63('0x2b')](respondWithResult(_0x2e2af0,null))[_0x1c63('0x50')](handleError(_0x2e2af0,null));};exports['getUnread']=function(_0x437648,_0x2711d3,_0x4b32a0){return db[_0x1c63('0x52')][_0x1c63('0x23')]({'where':{'ChatGroupId':_0x437648[_0x1c63('0x4c')]['id'],'ToId':_0x437648[_0x1c63('0x53')]['id'],'read':![]}})[_0x1c63('0x2b')](function(_0x368cee){return{'id':_[_0x1c63('0x54')](_0x437648[_0x1c63('0x4c')]['id']),'count':_0x368cee};})[_0x1c63('0x2b')](respondWithResult(_0x2711d3,null))[_0x1c63('0x50')](handleError(_0x2711d3,null));};exports['addMembers']=function(_0x8265eb,_0x235fd9,_0x43e1bc){return db[_0x1c63('0x32')][_0x1c63('0x4f')]({'where':{'id':_0x8265eb[_0x1c63('0x4c')]['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x235fd9,null))['then'](function(_0x82d5cb){if(_0x82d5cb){return _0x82d5cb['addMembers'](_0x8265eb['body'][_0x1c63('0x55')],_[_0x1c63('0x56')](_0x8265eb[_0x1c63('0x4e')],[_0x1c63('0x55'),'id'])||{});}})[_0x1c63('0x2b')](respondWithResult(_0x235fd9,null))[_0x1c63('0x50')](handleError(_0x235fd9,null));};exports[_0x1c63('0x57')]=function(_0x431a41,_0x18e782,_0x3c1530){var _0x344f95={};var _0x338b9e={};var _0x106bad;var _0x525e0f;return db['ChatGroup'][_0x1c63('0x58')]({'where':{'id':_0x431a41[_0x1c63('0x4c')]['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x18e782,null))[_0x1c63('0x2b')](function(_0x2f01bb){if(_0x2f01bb){_0x106bad=_0x2f01bb;_0x338b9e['model']=_['keys'](db[_0x1c63('0x59')][_0x1c63('0x33')]);_0x338b9e[_0x1c63('0x38')]=_[_0x1c63('0x37')](_0x431a41['query']);_0x338b9e['filters']=_[_0x1c63('0x3a')](_0x338b9e[_0x1c63('0x3b')],_0x338b9e['query']);_0x344f95[_0x1c63('0x3c')]=_[_0x1c63('0x3a')](_0x338b9e[_0x1c63('0x3b')],qs[_0x1c63('0x3d')](_0x431a41[_0x1c63('0x38')][_0x1c63('0x3d')]));_0x344f95[_0x1c63('0x3c')]=_0x344f95[_0x1c63('0x3c')][_0x1c63('0x3e')]?_0x344f95[_0x1c63('0x3c')]:_0x338b9e[_0x1c63('0x3b')];_0x344f95[_0x1c63('0x5a')]=qs[_0x1c63('0x41')](_0x431a41[_0x1c63('0x38')][_0x1c63('0x41')]);_0x344f95[_0x1c63('0x43')]=qs[_0x1c63('0x39')](_[_0x1c63('0x5b')](_0x431a41[_0x1c63('0x38')],_0x338b9e[_0x1c63('0x39')]));if(_0x431a41['query']['filter']){_0x344f95[_0x1c63('0x43')]=_[_0x1c63('0x44')](_0x344f95[_0x1c63('0x43')],{'$or':_[_0x1c63('0x31')](_0x344f95[_0x1c63('0x3c')],function(_0x3b19a7){var _0x5ca7c1={};_0x5ca7c1[_0x3b19a7]={'$like':'%'+_0x431a41[_0x1c63('0x38')][_0x1c63('0x42')]+'%'};return _0x5ca7c1;})});}_0x344f95=_['merge']({},_0x344f95,_0x431a41['options']);return _0x106bad[_0x1c63('0x57')](_0x344f95);}})['then'](function(_0x7e0baa){if(_0x7e0baa){_0x525e0f=_0x7e0baa[_0x1c63('0x3e')];if(!_0x431a41[_0x1c63('0x38')][_0x1c63('0x3f')](_0x1c63('0x40'))){_0x344f95[_0x1c63('0x22')]=qs[_0x1c63('0x22')](_0x431a41['query']['limit']);_0x344f95[_0x1c63('0x24')]=qs[_0x1c63('0x24')](_0x431a41[_0x1c63('0x38')][_0x1c63('0x24')]);}return _0x106bad[_0x1c63('0x57')](_0x344f95);}})[_0x1c63('0x2b')](function(_0x23a08e){if(_0x23a08e){return _0x23a08e?{'count':_0x525e0f,'rows':_0x23a08e}:null;}})[_0x1c63('0x2b')](respondWithResult(_0x18e782,null))[_0x1c63('0x50')](handleError(_0x18e782,null));};exports[_0x1c63('0x5c')]=function(_0x4fa46c,_0x5bc2c1,_0x56b14e){return db[_0x1c63('0x32')][_0x1c63('0x4f')]({'where':{'id':_0x4fa46c['params']['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x5bc2c1,null))[_0x1c63('0x2b')](function(_0x4237cf){if(_0x4237cf){return _0x4237cf[_0x1c63('0x5c')](_0x4fa46c[_0x1c63('0x38')][_0x1c63('0x55')]);}})[_0x1c63('0x2b')](respondWithStatusCode(_0x5bc2c1,null))[_0x1c63('0x50')](handleError(_0x5bc2c1,null));};exports[_0x1c63('0x5d')]=function(_0x1ca6c7,_0x50b632,_0x2f5d2d){if(_0x1ca6c7[_0x1c63('0x4e')]['id']){delete _0x1ca6c7[_0x1c63('0x4e')]['id'];}return db[_0x1c63('0x32')][_0x1c63('0x4f')]({'where':{'id':_0x1ca6c7[_0x1c63('0x4c')]['id']}})[_0x1c63('0x2b')](handleEntityNotFound(_0x50b632,null))[_0x1c63('0x2b')](function(_0x3a9693){if(_0x3a9693){_0x1ca6c7['body'][_0x1c63('0x5e')]=_0x3a9693['id'];return db[_0x1c63('0x52')]['create'](_0x1ca6c7['body']);}})[_0x1c63('0x2b')](respondWithResult(_0x50b632,null))[_0x1c63('0x50')](handleError(_0x50b632,null));};exports[_0x1c63('0x5f')]=function(_0x437a84,_0x1d0e94,_0x22cb21){var _0x4d69b2={};var _0x282de9={};var _0x22d759;var _0x9cd1b3;return db[_0x1c63('0x32')][_0x1c63('0x58')]({'where':{'id':_0x437a84[_0x1c63('0x4c')]['id']}})['then'](handleEntityNotFound(_0x1d0e94,null))['then'](function(_0x3fb669){if(_0x3fb669){_0x22d759=_0x3fb669;_0x282de9['model']=_['keys'](db[_0x1c63('0x52')][_0x1c63('0x33')]);_0x282de9[_0x1c63('0x38')]=_['keys'](_0x437a84[_0x1c63('0x38')]);_0x282de9[_0x1c63('0x39')]=_[_0x1c63('0x3a')](_0x282de9[_0x1c63('0x3b')],_0x282de9[_0x1c63('0x38')]);_0x4d69b2['attributes']=_[_0x1c63('0x3a')](_0x282de9[_0x1c63('0x3b')],qs[_0x1c63('0x3d')](_0x437a84['query'][_0x1c63('0x3d')]));_0x4d69b2[_0x1c63('0x3c')]=_0x4d69b2[_0x1c63('0x3c')]['length']?_0x4d69b2[_0x1c63('0x3c')]:_0x282de9[_0x1c63('0x3b')];_0x4d69b2['order']=qs[_0x1c63('0x41')](_0x437a84[_0x1c63('0x38')][_0x1c63('0x41')]);_0x4d69b2['where']=qs[_0x1c63('0x39')](_[_0x1c63('0x5b')](_0x437a84[_0x1c63('0x38')],_0x282de9['filters']));if(_0x437a84[_0x1c63('0x38')]['filter']){_0x4d69b2['where']=_['merge'](_0x4d69b2[_0x1c63('0x43')],{'$or':_[_0x1c63('0x31')](_0x4d69b2[_0x1c63('0x3c')],function(_0x42df26){var _0x378427={};_0x378427[_0x42df26]={'$like':'%'+_0x437a84['query'][_0x1c63('0x42')]+'%'};return _0x378427;})});}if(_0x437a84[_0x1c63('0x38')]['$gte']){var _0x24ab99=_0x437a84[_0x1c63('0x38')][_0x1c63('0x60')][_0x1c63('0x61')](',');var _0x29dca5={};_0x29dca5[_0x24ab99[0x0]]={'$gte':moment(_0x24ab99[0x1])[_0x1c63('0x62')]('YYYY-MM-DD\x20HH:mm:ss')};_0x4d69b2['where']=_['merge'](_0x4d69b2[_0x1c63('0x43')],_0x29dca5);}_0x4d69b2=_[_0x1c63('0x44')]({},_0x4d69b2,_0x437a84[_0x1c63('0x46')]);return _0x22d759[_0x1c63('0x5f')](_0x4d69b2);}})[_0x1c63('0x2b')](function(_0xd59ae8){if(_0xd59ae8){_0x9cd1b3=_0xd59ae8[_0x1c63('0x3e')];if(!_0x437a84[_0x1c63('0x38')][_0x1c63('0x3f')]('nolimit')){_0x4d69b2[_0x1c63('0x22')]=qs[_0x1c63('0x22')](_0x437a84[_0x1c63('0x38')][_0x1c63('0x22')]);_0x4d69b2[_0x1c63('0x24')]=qs[_0x1c63('0x24')](_0x437a84['query'][_0x1c63('0x24')]);}return _0x22d759['getMessages'](_0x4d69b2);}})[_0x1c63('0x2b')](function(_0x1e5e1c){if(_0x1e5e1c){return _0x1e5e1c?{'count':_0x9cd1b3,'rows':_0x1e5e1c}:null;}})['then'](respondWithResult(_0x1d0e94,null))['catch'](handleError(_0x1d0e94,null));};
\ No newline at end of file