0934adbb90c71da18af9680459cb5b555a5b44cd
[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 _0x28bf=['count','offset','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','map','fieldName','type','key','model','query','keys','intersection','attributes','fields','limit','order','sort','where','filters','filter','VIRTUAL','merge','options','MemberReport','includeAll','include','findAll','rows','catch','show','params','rawAttributes','create','body','find','describe','html-pdf','rimraf','zip-dir','fast-json-patch','moment','mustache','util','sox','to-csv','ejs','lodash','crypto','jsforce','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status'];(function(_0x2c7b86,_0x59ef3c){var _0x256735=function(_0x352e33){while(--_0x352e33){_0x2c7b86['push'](_0x2c7b86['shift']());}};_0x256735(++_0x59ef3c);}(_0x28bf,0x106));var _0xf28b=function(_0x371a1d,_0x3591f3){_0x371a1d=_0x371a1d-0x0;var _0x4ba340=_0x28bf[_0x371a1d];return _0x4ba340;};'use strict';var pdf=require(_0xf28b('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xf28b('0x1'));var zipdir=require(_0xf28b('0x2'));var jsonpatch=require(_0xf28b('0x3'));var rp=require('request-promise');var moment=require(_0xf28b('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xf28b('0x5'));var util=require(_0xf28b('0x6'));var path=require('path');var sox=require(_0xf28b('0x7'));var csv=require(_0xf28b('0x8'));var ejs=require(_0xf28b('0x9'));var fs=require('fs');var _=require(_0xf28b('0xa'));var squel=require('squel');var crypto=require(_0xf28b('0xb'));var jsforce=require(_0xf28b('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xf28b('0xd'));var Redis=require('ioredis');var authService=require(_0xf28b('0xe'));var qs=require(_0xf28b('0xf'));var as=require(_0xf28b('0x10'));var hardwareService=require(_0xf28b('0x11'));var logger=require(_0xf28b('0x12'))(_0xf28b('0x13'));var utils=require(_0xf28b('0x14'));var config=require(_0xf28b('0x15'));var licenseUtil=require(_0xf28b('0x16'));var db=require(_0xf28b('0x17'))['db'];function respondWithStatusCode(_0xd5375b,_0x5215dc){_0x5215dc=_0x5215dc||0xcc;return function(_0x1af0da){if(_0x1af0da){return _0xd5375b['sendStatus'](_0x5215dc);}return _0xd5375b['status'](_0x5215dc)[_0xf28b('0x18')]();};}function respondWithResult(_0x2f801e,_0x4c7282){_0x4c7282=_0x4c7282||0xc8;return function(_0x2f5430){if(_0x2f5430){return _0x2f801e[_0xf28b('0x19')](_0x4c7282)['json'](_0x2f5430);}};}function respondWithFilteredResult(_0xed8b03,_0x17deb0){return function(_0x502bc1){if(_0x502bc1){var _0x53d5ac=_0x502bc1[_0xf28b('0x1a')],_0x3131cf=_0x17deb0[_0xf28b('0x1b')],_0x4da6dd=_0x17deb0[_0xf28b('0x1b')]+_0x17deb0['limit'],_0x17a2e0;if(_0x4da6dd>=_0x53d5ac){_0x4da6dd=_0x53d5ac;_0x17a2e0=0xc8;}else{_0x17a2e0=0xce;}_0xed8b03[_0xf28b('0x19')](_0x17a2e0);return _0xed8b03[_0xf28b('0x1c')](_0xf28b('0x1d'),_0x3131cf+'-'+_0x4da6dd+'/'+_0x53d5ac)['json'](_0x502bc1);}return null;};}function patchUpdates(_0x88c1b0){return function(_0x4c6c85){try{jsonpatch[_0xf28b('0x1e')](_0x4c6c85,_0x88c1b0,!![]);}catch(_0x26eacf){return BPromise[_0xf28b('0x1f')](_0x26eacf);}return _0x4c6c85[_0xf28b('0x20')]();};}function saveUpdates(_0x3aa3da,_0x2bb5b2){return function(_0x543467){if(_0x543467){return _0x543467[_0xf28b('0x21')](_0x3aa3da)[_0xf28b('0x22')](function(_0x22deb8){return _0x22deb8;});}return null;};}function removeEntity(_0x4868a6,_0x129a47){return function(_0x56c1f7){if(_0x56c1f7){return _0x56c1f7[_0xf28b('0x23')]()[_0xf28b('0x22')](function(){_0x4868a6[_0xf28b('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x338803,_0x3246cb){return function(_0x2906d0){if(!_0x2906d0){_0x338803[_0xf28b('0x24')](0x194);}return _0x2906d0;};}function handleError(_0xa57fb7,_0x22e93d){_0x22e93d=_0x22e93d||0x1f4;return function(_0x900f86){logger['error'](_0x900f86[_0xf28b('0x25')]);if(_0x900f86[_0xf28b('0x26')]){delete _0x900f86[_0xf28b('0x26')];}_0xa57fb7['status'](_0x22e93d)[_0xf28b('0x27')](_0x900f86);};}exports['index']=function(_0x15984e,_0x152b04){var _0x55e572={},_0x14234d={},_0x57db2e={'count':0x0,'rows':[]};var _0x52a0dd=_[_0xf28b('0x28')](db['MemberReport']['rawAttributes'],function(_0x58adbd){return{'name':_0x58adbd[_0xf28b('0x29')],'type':_0x58adbd[_0xf28b('0x2a')][_0xf28b('0x2b')]};});_0x14234d[_0xf28b('0x2c')]=_[_0xf28b('0x28')](_0x52a0dd,_0xf28b('0x26'));_0x14234d[_0xf28b('0x2d')]=_[_0xf28b('0x2e')](_0x15984e[_0xf28b('0x2d')]);_0x14234d['filters']=_[_0xf28b('0x2f')](_0x14234d[_0xf28b('0x2c')],_0x14234d[_0xf28b('0x2d')]);_0x55e572[_0xf28b('0x30')]=_[_0xf28b('0x2f')](_0x14234d[_0xf28b('0x2c')],qs[_0xf28b('0x31')](_0x15984e[_0xf28b('0x2d')][_0xf28b('0x31')]));_0x55e572[_0xf28b('0x30')]=_0x55e572[_0xf28b('0x30')]['length']?_0x55e572['attributes']:_0x14234d['model'];if(!_0x15984e[_0xf28b('0x2d')]['hasOwnProperty']('nolimit')){_0x55e572[_0xf28b('0x32')]=qs[_0xf28b('0x32')](_0x15984e[_0xf28b('0x2d')][_0xf28b('0x32')]);_0x55e572[_0xf28b('0x1b')]=qs[_0xf28b('0x1b')](_0x15984e[_0xf28b('0x2d')][_0xf28b('0x1b')]);}_0x55e572[_0xf28b('0x33')]=qs[_0xf28b('0x34')](_0x15984e[_0xf28b('0x2d')][_0xf28b('0x34')]);_0x55e572[_0xf28b('0x35')]=qs[_0xf28b('0x36')](_['pick'](_0x15984e[_0xf28b('0x2d')],_0x14234d[_0xf28b('0x36')]),_0x52a0dd);if(_0x15984e[_0xf28b('0x2d')][_0xf28b('0x37')]){_0x55e572[_0xf28b('0x35')]=_['merge'](_0x55e572[_0xf28b('0x35')],{'$or':_[_0xf28b('0x28')](_0x52a0dd,function(_0x3bde0a){if(_0x3bde0a[_0xf28b('0x2a')]!==_0xf28b('0x38')){var _0x493457={};_0x493457[_0x3bde0a[_0xf28b('0x26')]]={'$like':'%'+_0x15984e[_0xf28b('0x2d')][_0xf28b('0x37')]+'%'};return _0x493457;}})});}_0x55e572=_[_0xf28b('0x39')]({},_0x55e572,_0x15984e[_0xf28b('0x3a')]);var _0x2f1262={'where':_0x55e572[_0xf28b('0x35')]};return db[_0xf28b('0x3b')][_0xf28b('0x1a')](_0x2f1262)[_0xf28b('0x22')](function(_0x56eaad){_0x57db2e[_0xf28b('0x1a')]=_0x56eaad;if(_0x15984e['query'][_0xf28b('0x3c')]){_0x55e572[_0xf28b('0x3d')]=[{'all':!![]}];}return db['MemberReport'][_0xf28b('0x3e')](_0x55e572);})[_0xf28b('0x22')](function(_0xbf0c44){_0x57db2e[_0xf28b('0x3f')]=_0xbf0c44;return _0x57db2e;})[_0xf28b('0x22')](respondWithFilteredResult(_0x152b04,_0x55e572))[_0xf28b('0x40')](handleError(_0x152b04,null));};exports[_0xf28b('0x41')]=function(_0xfaa948,_0xdc1d93){var _0x5e9a0b={'raw':!![],'where':{'id':_0xfaa948[_0xf28b('0x42')]['id']}},_0x277b4c={};_0x277b4c[_0xf28b('0x2c')]=_[_0xf28b('0x2e')](db[_0xf28b('0x3b')][_0xf28b('0x43')]);_0x277b4c[_0xf28b('0x2d')]=_[_0xf28b('0x2e')](_0xfaa948[_0xf28b('0x2d')]);_0x277b4c[_0xf28b('0x36')]=_[_0xf28b('0x2f')](_0x277b4c['model'],_0x277b4c[_0xf28b('0x2d')]);_0x5e9a0b[_0xf28b('0x30')]=_[_0xf28b('0x2f')](_0x277b4c[_0xf28b('0x2c')],qs['fields'](_0xfaa948[_0xf28b('0x2d')][_0xf28b('0x31')]));_0x5e9a0b[_0xf28b('0x30')]=_0x5e9a0b[_0xf28b('0x30')]['length']?_0x5e9a0b[_0xf28b('0x30')]:_0x277b4c[_0xf28b('0x2c')];if(_0xfaa948[_0xf28b('0x2d')][_0xf28b('0x3c')]){_0x5e9a0b[_0xf28b('0x3d')]=[{'all':!![]}];}_0x5e9a0b=_[_0xf28b('0x39')]({},_0x5e9a0b,_0xfaa948[_0xf28b('0x3a')]);return db[_0xf28b('0x3b')]['find'](_0x5e9a0b)[_0xf28b('0x22')](handleEntityNotFound(_0xdc1d93,null))[_0xf28b('0x22')](respondWithResult(_0xdc1d93,null))[_0xf28b('0x40')](handleError(_0xdc1d93,null));};exports[_0xf28b('0x44')]=function(_0x5ceec9,_0x3787d7){return db[_0xf28b('0x3b')][_0xf28b('0x44')](_0x5ceec9[_0xf28b('0x45')],{})['then'](respondWithResult(_0x3787d7,0xc9))[_0xf28b('0x40')](handleError(_0x3787d7,null));};exports[_0xf28b('0x21')]=function(_0x2683af,_0x47d690){if(_0x2683af[_0xf28b('0x45')]['id']){delete _0x2683af[_0xf28b('0x45')]['id'];}return db['MemberReport'][_0xf28b('0x46')]({'where':{'id':_0x2683af[_0xf28b('0x42')]['id']}})[_0xf28b('0x22')](handleEntityNotFound(_0x47d690,null))['then'](saveUpdates(_0x2683af[_0xf28b('0x45')],null))[_0xf28b('0x22')](respondWithResult(_0x47d690,null))[_0xf28b('0x40')](handleError(_0x47d690,null));};exports['destroy']=function(_0x351cf8,_0x386235){return db[_0xf28b('0x3b')]['find']({'where':{'id':_0x351cf8[_0xf28b('0x42')]['id']}})[_0xf28b('0x22')](handleEntityNotFound(_0x386235,null))[_0xf28b('0x22')](removeEntity(_0x386235,null))[_0xf28b('0x40')](handleError(_0x386235,null));};exports[_0xf28b('0x47')]=function(_0x3c8da0,_0x5d6a83){return db[_0xf28b('0x3b')][_0xf28b('0x47')]()[_0xf28b('0x22')](respondWithResult(_0x5d6a83,null))[_0xf28b('0x40')](handleError(_0x5d6a83,null));};