Built motion from commit (unavailable).|2.5.11
[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 _0xcbd3=['mustache','util','path','sox','to-csv','ejs','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','count','offset','Content-Range','json','apply','save','update','then','destroy','name','index','map','MemberReport','fieldName','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','filter','merge','VIRTUAL','options','include','findAll','rows','catch','params','keys','rawAttributes','includeAll','find','create','body','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird'];(function(_0x25bea7,_0x49ab45){var _0x175952=function(_0x56a0b5){while(--_0x56a0b5){_0x25bea7['push'](_0x25bea7['shift']());}};_0x175952(++_0x49ab45);}(_0xcbd3,0x1e2));var _0x3cbd=function(_0x4a5f20,_0x13dbc7){_0x4a5f20=_0x4a5f20-0x0;var _0x4e076b=_0xcbd3[_0x4a5f20];return _0x4e076b;};'use strict';var pdf=require(_0x3cbd('0x0'));var emlformat=require(_0x3cbd('0x1'));var rimraf=require(_0x3cbd('0x2'));var zipdir=require(_0x3cbd('0x3'));var jsonpatch=require(_0x3cbd('0x4'));var rp=require(_0x3cbd('0x5'));var moment=require(_0x3cbd('0x6'));var BPromise=require(_0x3cbd('0x7'));var Mustache=require(_0x3cbd('0x8'));var util=require(_0x3cbd('0x9'));var path=require(_0x3cbd('0xa'));var sox=require(_0x3cbd('0xb'));var csv=require(_0x3cbd('0xc'));var ejs=require(_0x3cbd('0xd'));var fs=require('fs');var _=require('lodash');var squel=require(_0x3cbd('0xe'));var crypto=require('crypto');var jsforce=require(_0x3cbd('0xf'));var deskjs=require(_0x3cbd('0x10'));var toCsv=require(_0x3cbd('0xc'));var querystring=require(_0x3cbd('0x11'));var Papa=require(_0x3cbd('0x12'));var Redis=require(_0x3cbd('0x13'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x3cbd('0x14'))('api');var utils=require('../../config/utils');var config=require(_0x3cbd('0x15'));var licenseUtil=require(_0x3cbd('0x16'));var db=require(_0x3cbd('0x17'))['db'];function respondWithStatusCode(_0x1fc971,_0x388b87){_0x388b87=_0x388b87||0xcc;return function(_0x87f3d7){if(_0x87f3d7){return _0x1fc971[_0x3cbd('0x18')](_0x388b87);}return _0x1fc971['status'](_0x388b87)[_0x3cbd('0x19')]();};}function respondWithResult(_0x1fcf89,_0x49f3ea){_0x49f3ea=_0x49f3ea||0xc8;return function(_0x38a24d){if(_0x38a24d){return _0x1fcf89['status'](_0x49f3ea)['json'](_0x38a24d);}};}function respondWithFilteredResult(_0x19a939,_0x18911e){return function(_0x237629){if(_0x237629){var _0x28ba3a=_0x237629[_0x3cbd('0x1a')],_0x1b9c4f=_0x18911e[_0x3cbd('0x1b')],_0x467066=_0x18911e[_0x3cbd('0x1b')]+_0x18911e['limit'],_0x5be208;if(_0x467066>=_0x28ba3a){_0x467066=_0x28ba3a;_0x5be208=0xc8;}else{_0x5be208=0xce;}_0x19a939['status'](_0x5be208);return _0x19a939['set'](_0x3cbd('0x1c'),_0x1b9c4f+'-'+_0x467066+'/'+_0x28ba3a)[_0x3cbd('0x1d')](_0x237629);}return null;};}function patchUpdates(_0x43996e){return function(_0x20a763){try{jsonpatch[_0x3cbd('0x1e')](_0x20a763,_0x43996e,!![]);}catch(_0x20d31c){return BPromise['reject'](_0x20d31c);}return _0x20a763[_0x3cbd('0x1f')]();};}function saveUpdates(_0x450108,_0x547ce1){return function(_0x5f41a4){if(_0x5f41a4){return _0x5f41a4[_0x3cbd('0x20')](_0x450108)[_0x3cbd('0x21')](function(_0x24a9db){return _0x24a9db;});}return null;};}function removeEntity(_0x70111b,_0x4eb146){return function(_0xcf6897){if(_0xcf6897){return _0xcf6897[_0x3cbd('0x22')]()['then'](function(){_0x70111b['status'](0xcc)[_0x3cbd('0x19')]();});}};}function handleEntityNotFound(_0x55b8dd,_0xeaff4d){return function(_0x2e3e07){if(!_0x2e3e07){_0x55b8dd['sendStatus'](0x194);}return _0x2e3e07;};}function handleError(_0x2a198d,_0x47cbf6){_0x47cbf6=_0x47cbf6||0x1f4;return function(_0x352ca9){logger['error'](_0x352ca9['stack']);if(_0x352ca9[_0x3cbd('0x23')]){delete _0x352ca9[_0x3cbd('0x23')];}_0x2a198d['status'](_0x47cbf6)['send'](_0x352ca9);};}exports[_0x3cbd('0x24')]=function(_0x4432ce,_0x2c9a8b){var _0x49681a={},_0x466806={},_0x15ed97={'count':0x0,'rows':[]};var _0x289af3=_[_0x3cbd('0x25')](db[_0x3cbd('0x26')]['rawAttributes'],function(_0x276424){return{'name':_0x276424[_0x3cbd('0x27')],'type':_0x276424[_0x3cbd('0x28')]['key']};});_0x466806[_0x3cbd('0x29')]=_[_0x3cbd('0x25')](_0x289af3,_0x3cbd('0x23'));_0x466806[_0x3cbd('0x2a')]=_['keys'](_0x4432ce[_0x3cbd('0x2a')]);_0x466806[_0x3cbd('0x2b')]=_[_0x3cbd('0x2c')](_0x466806['model'],_0x466806[_0x3cbd('0x2a')]);_0x49681a[_0x3cbd('0x2d')]=_['intersection'](_0x466806['model'],qs[_0x3cbd('0x2e')](_0x4432ce[_0x3cbd('0x2a')]['fields']));_0x49681a[_0x3cbd('0x2d')]=_0x49681a[_0x3cbd('0x2d')][_0x3cbd('0x2f')]?_0x49681a[_0x3cbd('0x2d')]:_0x466806[_0x3cbd('0x29')];if(!_0x4432ce['query'][_0x3cbd('0x30')](_0x3cbd('0x31'))){_0x49681a['limit']=qs[_0x3cbd('0x32')](_0x4432ce[_0x3cbd('0x2a')][_0x3cbd('0x32')]);_0x49681a[_0x3cbd('0x1b')]=qs[_0x3cbd('0x1b')](_0x4432ce['query'][_0x3cbd('0x1b')]);}_0x49681a[_0x3cbd('0x33')]=qs['sort'](_0x4432ce['query'][_0x3cbd('0x34')]);_0x49681a[_0x3cbd('0x35')]=qs['filters'](_['pick'](_0x4432ce[_0x3cbd('0x2a')],_0x466806['filters']),_0x289af3);if(_0x4432ce[_0x3cbd('0x2a')][_0x3cbd('0x36')]){_0x49681a[_0x3cbd('0x35')]=_[_0x3cbd('0x37')](_0x49681a[_0x3cbd('0x35')],{'$or':_[_0x3cbd('0x25')](_0x289af3,function(_0x2318aa){if(_0x2318aa['type']!==_0x3cbd('0x38')){var _0x252856={};_0x252856[_0x2318aa[_0x3cbd('0x23')]]={'$like':'%'+_0x4432ce['query'][_0x3cbd('0x36')]+'%'};return _0x252856;}})});}_0x49681a=_['merge']({},_0x49681a,_0x4432ce[_0x3cbd('0x39')]);var _0x1209b0={'where':_0x49681a[_0x3cbd('0x35')]};return db[_0x3cbd('0x26')][_0x3cbd('0x1a')](_0x1209b0)[_0x3cbd('0x21')](function(_0x240b12){_0x15ed97[_0x3cbd('0x1a')]=_0x240b12;if(_0x4432ce[_0x3cbd('0x2a')]['includeAll']){_0x49681a[_0x3cbd('0x3a')]=[{'all':!![]}];}return db[_0x3cbd('0x26')][_0x3cbd('0x3b')](_0x49681a);})[_0x3cbd('0x21')](function(_0x5b7f66){_0x15ed97[_0x3cbd('0x3c')]=_0x5b7f66;return _0x15ed97;})[_0x3cbd('0x21')](respondWithFilteredResult(_0x2c9a8b,_0x49681a))[_0x3cbd('0x3d')](handleError(_0x2c9a8b,null));};exports['show']=function(_0x53db3f,_0x1dbdc6){var _0x2fe969={'raw':!![],'where':{'id':_0x53db3f[_0x3cbd('0x3e')]['id']}},_0x25e1bc={};_0x25e1bc[_0x3cbd('0x29')]=_[_0x3cbd('0x3f')](db['MemberReport'][_0x3cbd('0x40')]);_0x25e1bc[_0x3cbd('0x2a')]=_[_0x3cbd('0x3f')](_0x53db3f[_0x3cbd('0x2a')]);_0x25e1bc[_0x3cbd('0x2b')]=_[_0x3cbd('0x2c')](_0x25e1bc[_0x3cbd('0x29')],_0x25e1bc[_0x3cbd('0x2a')]);_0x2fe969[_0x3cbd('0x2d')]=_[_0x3cbd('0x2c')](_0x25e1bc[_0x3cbd('0x29')],qs['fields'](_0x53db3f[_0x3cbd('0x2a')][_0x3cbd('0x2e')]));_0x2fe969['attributes']=_0x2fe969['attributes'][_0x3cbd('0x2f')]?_0x2fe969[_0x3cbd('0x2d')]:_0x25e1bc['model'];if(_0x53db3f['query'][_0x3cbd('0x41')]){_0x2fe969[_0x3cbd('0x3a')]=[{'all':!![]}];}_0x2fe969=_[_0x3cbd('0x37')]({},_0x2fe969,_0x53db3f[_0x3cbd('0x39')]);return db['MemberReport'][_0x3cbd('0x42')](_0x2fe969)[_0x3cbd('0x21')](handleEntityNotFound(_0x1dbdc6,null))[_0x3cbd('0x21')](respondWithResult(_0x1dbdc6,null))[_0x3cbd('0x3d')](handleError(_0x1dbdc6,null));};exports[_0x3cbd('0x43')]=function(_0xd1c6be,_0x339b02){return db[_0x3cbd('0x26')]['create'](_0xd1c6be[_0x3cbd('0x44')],{})[_0x3cbd('0x21')](respondWithResult(_0x339b02,0xc9))[_0x3cbd('0x3d')](handleError(_0x339b02,null));};exports[_0x3cbd('0x20')]=function(_0x5ceb0b,_0x3565d6){if(_0x5ceb0b['body']['id']){delete _0x5ceb0b['body']['id'];}return db[_0x3cbd('0x26')][_0x3cbd('0x42')]({'where':{'id':_0x5ceb0b['params']['id']}})['then'](handleEntityNotFound(_0x3565d6,null))[_0x3cbd('0x21')](saveUpdates(_0x5ceb0b[_0x3cbd('0x44')],null))[_0x3cbd('0x21')](respondWithResult(_0x3565d6,null))[_0x3cbd('0x3d')](handleError(_0x3565d6,null));};exports[_0x3cbd('0x22')]=function(_0x3109fb,_0x19b6e8){return db[_0x3cbd('0x26')][_0x3cbd('0x42')]({'where':{'id':_0x3109fb[_0x3cbd('0x3e')]['id']}})[_0x3cbd('0x21')](handleEntityNotFound(_0x19b6e8,null))[_0x3cbd('0x21')](removeEntity(_0x19b6e8,null))[_0x3cbd('0x3d')](handleError(_0x19b6e8,null));};exports[_0x3cbd('0x45')]=function(_0x32e62b,_0x1bf588){return db[_0x3cbd('0x26')][_0x3cbd('0x45')]()[_0x3cbd('0x21')](respondWithResult(_0x1bf588,null))['catch'](handleError(_0x1bf588,null));};