2a3d3e09f7803e58169193fb9afe1cc0a49bed00
[motion2.git] / server / api / memberReport / memberReport.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 _0x8f26=['where','filters','filter','merge','map','VIRTUAL','includeAll','include','findAll','rows','catch','show','params','find','create','body','describe','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','json','count','offset','set','Content-Range','apply','save','then','error','stack','send','index','MemberReport','rawAttributes','fieldName','type','model','name','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit','sort'];(function(_0x4e4798,_0x565daf){var _0x217662=function(_0x386bb3){while(--_0x386bb3){_0x4e4798['push'](_0x4e4798['shift']());}};_0x217662(++_0x565daf);}(_0x8f26,0xa1));var _0x68f2=function(_0xe1a616,_0x1dd04c){_0xe1a616=_0xe1a616-0x0;var _0x4052be=_0x8f26[_0xe1a616];return _0x4052be;};'use strict';var pdf=require(_0x68f2('0x0'));var emlformat=require(_0x68f2('0x1'));var rimraf=require(_0x68f2('0x2'));var zipdir=require(_0x68f2('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x68f2('0x4'));var moment=require('moment');var BPromise=require(_0x68f2('0x5'));var Mustache=require(_0x68f2('0x6'));var util=require(_0x68f2('0x7'));var path=require(_0x68f2('0x8'));var sox=require(_0x68f2('0x9'));var csv=require(_0x68f2('0xa'));var ejs=require(_0x68f2('0xb'));var fs=require('fs');var _=require(_0x68f2('0xc'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x68f2('0xd'));var deskjs=require(_0x68f2('0xe'));var toCsv=require('to-csv');var querystring=require(_0x68f2('0xf'));var Papa=require(_0x68f2('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x68f2('0x11'));var as=require(_0x68f2('0x12'));var hardwareService=require(_0x68f2('0x13'));var logger=require('../../config/logger')(_0x68f2('0x14'));var utils=require(_0x68f2('0x15'));var config=require(_0x68f2('0x16'));var db=require(_0x68f2('0x17'))['db'];function respondWithStatusCode(_0x58917c,_0x1e99ba){_0x1e99ba=_0x1e99ba||0xcc;return function(_0x212dcb){if(_0x212dcb){return _0x58917c[_0x68f2('0x18')](_0x1e99ba);}return _0x58917c['status'](_0x1e99ba)[_0x68f2('0x19')]();};}function respondWithResult(_0x4b1e08,_0x56deba){_0x56deba=_0x56deba||0xc8;return function(_0xfd8d2a){if(_0xfd8d2a){return _0x4b1e08[_0x68f2('0x1a')](_0x56deba)[_0x68f2('0x1b')](_0xfd8d2a);}};}function respondWithFilteredResult(_0x4dc449,_0x46a8bf){return function(_0x1f09f7){if(_0x1f09f7){var _0x4cca28=_0x1f09f7[_0x68f2('0x1c')],_0xa72a76=_0x46a8bf[_0x68f2('0x1d')],_0x2df19e=_0x46a8bf['offset']+_0x46a8bf['limit'],_0x10a21c;if(_0x2df19e>=_0x4cca28){_0x2df19e=_0x4cca28;_0x10a21c=0xc8;}else{_0x10a21c=0xce;}_0x4dc449[_0x68f2('0x1a')](_0x10a21c);return _0x4dc449[_0x68f2('0x1e')](_0x68f2('0x1f'),_0xa72a76+'-'+_0x2df19e+'/'+_0x4cca28)[_0x68f2('0x1b')](_0x1f09f7);}return null;};}function patchUpdates(_0x38def3){return function(_0x1b2105){try{jsonpatch[_0x68f2('0x20')](_0x1b2105,_0x38def3,!![]);}catch(_0x5f2be2){return BPromise['reject'](_0x5f2be2);}return _0x1b2105[_0x68f2('0x21')]();};}function saveUpdates(_0x253abe,_0x3290ee){return function(_0x1d0dfa){if(_0x1d0dfa){return _0x1d0dfa['update'](_0x253abe)[_0x68f2('0x22')](function(_0x36bedf){return _0x36bedf;});}return null;};}function removeEntity(_0xf789a2,_0xcc785c){return function(_0x4cd4e3){if(_0x4cd4e3){return _0x4cd4e3['destroy']()[_0x68f2('0x22')](function(){_0xf789a2['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x1f8205,_0x2088fa){return function(_0x9df170){if(!_0x9df170){_0x1f8205[_0x68f2('0x18')](0x194);}return _0x9df170;};}function handleError(_0x2ec1c1,_0x3669a5){_0x3669a5=_0x3669a5||0x1f4;return function(_0x5690e0){logger[_0x68f2('0x23')](_0x5690e0[_0x68f2('0x24')]);if(_0x5690e0['name']){delete _0x5690e0['name'];}_0x2ec1c1[_0x68f2('0x1a')](_0x3669a5)[_0x68f2('0x25')](_0x5690e0);};}exports[_0x68f2('0x26')]=function(_0x1fc576,_0x4b2895){var _0x28461f={},_0x18fc4d={},_0x5db8e6={'count':0x0,'rows':[]};var _0x27fa2b=_['map'](db[_0x68f2('0x27')][_0x68f2('0x28')],function(_0x530210){return{'name':_0x530210[_0x68f2('0x29')],'type':_0x530210[_0x68f2('0x2a')]['key']};});_0x18fc4d[_0x68f2('0x2b')]=_['map'](_0x27fa2b,_0x68f2('0x2c'));_0x18fc4d[_0x68f2('0x2d')]=_[_0x68f2('0x2e')](_0x1fc576[_0x68f2('0x2d')]);_0x18fc4d['filters']=_['intersection'](_0x18fc4d['model'],_0x18fc4d[_0x68f2('0x2d')]);_0x28461f[_0x68f2('0x2f')]=_[_0x68f2('0x30')](_0x18fc4d[_0x68f2('0x2b')],qs[_0x68f2('0x31')](_0x1fc576[_0x68f2('0x2d')][_0x68f2('0x31')]));_0x28461f['attributes']=_0x28461f[_0x68f2('0x2f')][_0x68f2('0x32')]?_0x28461f[_0x68f2('0x2f')]:_0x18fc4d['model'];if(!_0x1fc576['query'][_0x68f2('0x33')](_0x68f2('0x34'))){_0x28461f[_0x68f2('0x35')]=qs[_0x68f2('0x35')](_0x1fc576[_0x68f2('0x2d')][_0x68f2('0x35')]);_0x28461f[_0x68f2('0x1d')]=qs[_0x68f2('0x1d')](_0x1fc576[_0x68f2('0x2d')][_0x68f2('0x1d')]);}_0x28461f['order']=qs[_0x68f2('0x36')](_0x1fc576[_0x68f2('0x2d')][_0x68f2('0x36')]);_0x28461f[_0x68f2('0x37')]=qs[_0x68f2('0x38')](_['pick'](_0x1fc576['query'],_0x18fc4d[_0x68f2('0x38')]),_0x27fa2b);if(_0x1fc576['query'][_0x68f2('0x39')]){_0x28461f['where']=_[_0x68f2('0x3a')](_0x28461f[_0x68f2('0x37')],{'$or':_[_0x68f2('0x3b')](_0x27fa2b,function(_0x26ccd8){if(_0x26ccd8[_0x68f2('0x2a')]!==_0x68f2('0x3c')){var _0x10ac0d={};_0x10ac0d[_0x26ccd8[_0x68f2('0x2c')]]={'$like':'%'+_0x1fc576['query'][_0x68f2('0x39')]+'%'};return _0x10ac0d;}})});}_0x28461f=_[_0x68f2('0x3a')]({},_0x28461f,_0x1fc576['options']);var _0xd2d2a1={'where':_0x28461f[_0x68f2('0x37')]};return db[_0x68f2('0x27')][_0x68f2('0x1c')](_0xd2d2a1)[_0x68f2('0x22')](function(_0x4e4fcb){_0x5db8e6[_0x68f2('0x1c')]=_0x4e4fcb;if(_0x1fc576[_0x68f2('0x2d')][_0x68f2('0x3d')]){_0x28461f[_0x68f2('0x3e')]=[{'all':!![]}];}return db[_0x68f2('0x27')][_0x68f2('0x3f')](_0x28461f);})[_0x68f2('0x22')](function(_0x47bce5){_0x5db8e6[_0x68f2('0x40')]=_0x47bce5;return _0x5db8e6;})['then'](respondWithFilteredResult(_0x4b2895,_0x28461f))[_0x68f2('0x41')](handleError(_0x4b2895,null));};exports[_0x68f2('0x42')]=function(_0x17f06b,_0x192a2e){var _0x23ceb5={'raw':!![],'where':{'id':_0x17f06b[_0x68f2('0x43')]['id']}},_0x28f949={};_0x28f949[_0x68f2('0x2b')]=_['keys'](db[_0x68f2('0x27')][_0x68f2('0x28')]);_0x28f949['query']=_['keys'](_0x17f06b[_0x68f2('0x2d')]);_0x28f949[_0x68f2('0x38')]=_['intersection'](_0x28f949[_0x68f2('0x2b')],_0x28f949[_0x68f2('0x2d')]);_0x23ceb5['attributes']=_[_0x68f2('0x30')](_0x28f949[_0x68f2('0x2b')],qs['fields'](_0x17f06b['query'][_0x68f2('0x31')]));_0x23ceb5[_0x68f2('0x2f')]=_0x23ceb5[_0x68f2('0x2f')][_0x68f2('0x32')]?_0x23ceb5['attributes']:_0x28f949['model'];if(_0x17f06b[_0x68f2('0x2d')][_0x68f2('0x3d')]){_0x23ceb5[_0x68f2('0x3e')]=[{'all':!![]}];}_0x23ceb5=_[_0x68f2('0x3a')]({},_0x23ceb5,_0x17f06b['options']);return db[_0x68f2('0x27')][_0x68f2('0x44')](_0x23ceb5)[_0x68f2('0x22')](handleEntityNotFound(_0x192a2e,null))[_0x68f2('0x22')](respondWithResult(_0x192a2e,null))[_0x68f2('0x41')](handleError(_0x192a2e,null));};exports[_0x68f2('0x45')]=function(_0x490b16,_0x516ab0){return db[_0x68f2('0x27')][_0x68f2('0x45')](_0x490b16[_0x68f2('0x46')],{})[_0x68f2('0x22')](respondWithResult(_0x516ab0,0xc9))['catch'](handleError(_0x516ab0,null));};exports['update']=function(_0x5967fb,_0x355a22){if(_0x5967fb[_0x68f2('0x46')]['id']){delete _0x5967fb[_0x68f2('0x46')]['id'];}return db[_0x68f2('0x27')][_0x68f2('0x44')]({'where':{'id':_0x5967fb['params']['id']}})[_0x68f2('0x22')](handleEntityNotFound(_0x355a22,null))['then'](saveUpdates(_0x5967fb[_0x68f2('0x46')],null))['then'](respondWithResult(_0x355a22,null))[_0x68f2('0x41')](handleError(_0x355a22,null));};exports['destroy']=function(_0xbca0e7,_0x439286){return db[_0x68f2('0x27')]['find']({'where':{'id':_0xbca0e7[_0x68f2('0x43')]['id']}})[_0x68f2('0x22')](handleEntityNotFound(_0x439286,null))['then'](removeEntity(_0x439286,null))['catch'](handleError(_0x439286,null));};exports['describe']=function(_0x2dc8af,_0x2c9e80){return db[_0x68f2('0x27')][_0x68f2('0x47')]()['then'](respondWithResult(_0x2c9e80,null))[_0x68f2('0x41')](handleError(_0x2c9e80,null));};