Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / api / analyticTreeReport / analyticTreeReport.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 _0xc110=['sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','params','keys','options','catch','create','body','update','find','destroy','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','util','path','ejs','crypto','jsforce','desk.js','to-csv','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','count','offset','limit','set','Content-Range','apply','reject','save','then','stack','name','send','map','AnalyticTreeReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order'];(function(_0x27fedd,_0x181aee){var _0xdcc11d=function(_0x318864){while(--_0x318864){_0x27fedd['push'](_0x27fedd['shift']());}};_0xdcc11d(++_0x181aee);}(_0xc110,0x17b));var _0x0c11=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xc110[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require(_0x0c11('0x0'));var emlformat=require(_0x0c11('0x1'));var rimraf=require(_0x0c11('0x2'));var zipdir=require(_0x0c11('0x3'));var jsonpatch=require(_0x0c11('0x4'));var rp=require(_0x0c11('0x5'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x0c11('0x6'));var path=require(_0x0c11('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x0c11('0x8'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x0c11('0x9'));var jsforce=require(_0x0c11('0xa'));var deskjs=require(_0x0c11('0xb'));var toCsv=require(_0x0c11('0xc'));var querystring=require(_0x0c11('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x0c11('0xe'));var qs=require(_0x0c11('0xf'));var as=require(_0x0c11('0x10'));var hardwareService=require(_0x0c11('0x11'));var logger=require('../../config/logger')(_0x0c11('0x12'));var utils=require(_0x0c11('0x13'));var config=require(_0x0c11('0x14'));var db=require(_0x0c11('0x15'))['db'];function respondWithStatusCode(_0x38e7d6,_0xcd718c){_0xcd718c=_0xcd718c||0xcc;return function(_0x5d4359){if(_0x5d4359){return _0x38e7d6[_0x0c11('0x16')](_0xcd718c);}return _0x38e7d6['status'](_0xcd718c)[_0x0c11('0x17')]();};}function respondWithResult(_0x6a6bd1,_0x293bad){_0x293bad=_0x293bad||0xc8;return function(_0x32f230){if(_0x32f230){return _0x6a6bd1[_0x0c11('0x18')](_0x293bad)['json'](_0x32f230);}};}function respondWithFilteredResult(_0xcd22d2,_0x3e6fea){return function(_0x437281){if(_0x437281){var _0x46e480=_0x437281[_0x0c11('0x19')],_0x305ffb=_0x3e6fea[_0x0c11('0x1a')],_0x5026f4=_0x3e6fea[_0x0c11('0x1a')]+_0x3e6fea[_0x0c11('0x1b')],_0x181109;if(_0x5026f4>=_0x46e480){_0x5026f4=_0x46e480;_0x181109=0xc8;}else{_0x181109=0xce;}_0xcd22d2[_0x0c11('0x18')](_0x181109);return _0xcd22d2[_0x0c11('0x1c')](_0x0c11('0x1d'),_0x305ffb+'-'+_0x5026f4+'/'+_0x46e480)['json'](_0x437281);}return null;};}function patchUpdates(_0x130922){return function(_0x2bd1e0){try{jsonpatch[_0x0c11('0x1e')](_0x2bd1e0,_0x130922,!![]);}catch(_0x43a714){return BPromise[_0x0c11('0x1f')](_0x43a714);}return _0x2bd1e0[_0x0c11('0x20')]();};}function saveUpdates(_0x161a22,_0x3e9b90){return function(_0x4d4dbf){if(_0x4d4dbf){return _0x4d4dbf['update'](_0x161a22)['then'](function(_0x14f213){return _0x14f213;});}return null;};}function removeEntity(_0x457239,_0x12f64a){return function(_0x5de8fe){if(_0x5de8fe){return _0x5de8fe['destroy']()[_0x0c11('0x21')](function(){_0x457239['status'](0xcc)[_0x0c11('0x17')]();});}};}function handleEntityNotFound(_0x13dcbf,_0x26a628){return function(_0x5f5a72){if(!_0x5f5a72){_0x13dcbf[_0x0c11('0x16')](0x194);}return _0x5f5a72;};}function handleError(_0x2334c3,_0x2c0eef){_0x2c0eef=_0x2c0eef||0x1f4;return function(_0x35b53a){logger['error'](_0x35b53a[_0x0c11('0x22')]);if(_0x35b53a[_0x0c11('0x23')]){delete _0x35b53a['name'];}_0x2334c3['status'](_0x2c0eef)[_0x0c11('0x24')](_0x35b53a);};}exports['index']=function(_0x3787cc,_0x5a7a34){var _0x5601f5={},_0x52e668={},_0x21441e={'count':0x0,'rows':[]};var _0x4bd0e5=_[_0x0c11('0x25')](db[_0x0c11('0x26')][_0x0c11('0x27')],function(_0x10753d){return{'name':_0x10753d[_0x0c11('0x28')],'type':_0x10753d[_0x0c11('0x29')][_0x0c11('0x2a')]};});_0x52e668[_0x0c11('0x2b')]=_[_0x0c11('0x25')](_0x4bd0e5,_0x0c11('0x23'));_0x52e668['query']=_['keys'](_0x3787cc[_0x0c11('0x2c')]);_0x52e668[_0x0c11('0x2d')]=_[_0x0c11('0x2e')](_0x52e668[_0x0c11('0x2b')],_0x52e668['query']);_0x5601f5[_0x0c11('0x2f')]=_[_0x0c11('0x2e')](_0x52e668['model'],qs[_0x0c11('0x30')](_0x3787cc['query'][_0x0c11('0x30')]));_0x5601f5[_0x0c11('0x2f')]=_0x5601f5[_0x0c11('0x2f')][_0x0c11('0x31')]?_0x5601f5[_0x0c11('0x2f')]:_0x52e668['model'];if(!_0x3787cc[_0x0c11('0x2c')][_0x0c11('0x32')](_0x0c11('0x33'))){_0x5601f5[_0x0c11('0x1b')]=qs[_0x0c11('0x1b')](_0x3787cc['query'][_0x0c11('0x1b')]);_0x5601f5[_0x0c11('0x1a')]=qs[_0x0c11('0x1a')](_0x3787cc[_0x0c11('0x2c')][_0x0c11('0x1a')]);}_0x5601f5[_0x0c11('0x34')]=qs[_0x0c11('0x35')](_0x3787cc[_0x0c11('0x2c')]['sort']);_0x5601f5[_0x0c11('0x36')]=qs[_0x0c11('0x2d')](_[_0x0c11('0x37')](_0x3787cc[_0x0c11('0x2c')],_0x52e668[_0x0c11('0x2d')]),_0x4bd0e5);if(_0x3787cc['query'][_0x0c11('0x38')]){_0x5601f5[_0x0c11('0x36')]=_[_0x0c11('0x39')](_0x5601f5[_0x0c11('0x36')],{'$or':_[_0x0c11('0x25')](_0x4bd0e5,function(_0x90f10c){if(_0x90f10c[_0x0c11('0x29')]!==_0x0c11('0x3a')){var _0x5bda15={};_0x5bda15[_0x90f10c['name']]={'$like':'%'+_0x3787cc['query']['filter']+'%'};return _0x5bda15;}})});}_0x5601f5=_[_0x0c11('0x39')]({},_0x5601f5,_0x3787cc['options']);var _0x43c952={'where':_0x5601f5[_0x0c11('0x36')]};return db['AnalyticTreeReport']['count'](_0x43c952)[_0x0c11('0x21')](function(_0x56c5e2){_0x21441e[_0x0c11('0x19')]=_0x56c5e2;if(_0x3787cc[_0x0c11('0x2c')][_0x0c11('0x3b')]){_0x5601f5[_0x0c11('0x3c')]=[{'all':!![]}];}return db[_0x0c11('0x26')][_0x0c11('0x3d')](_0x5601f5);})['then'](function(_0x3e8fe3){_0x21441e[_0x0c11('0x3e')]=_0x3e8fe3;return _0x21441e;})[_0x0c11('0x21')](respondWithFilteredResult(_0x5a7a34,_0x5601f5))['catch'](handleError(_0x5a7a34,null));};exports['show']=function(_0x20fbee,_0xf295c2){var _0x3c12e2={'raw':!![],'where':{'id':_0x20fbee[_0x0c11('0x3f')]['id']}},_0x3c10bc={};_0x3c10bc[_0x0c11('0x2b')]=_['keys'](db[_0x0c11('0x26')]['rawAttributes']);_0x3c10bc[_0x0c11('0x2c')]=_[_0x0c11('0x40')](_0x20fbee[_0x0c11('0x2c')]);_0x3c10bc[_0x0c11('0x2d')]=_[_0x0c11('0x2e')](_0x3c10bc[_0x0c11('0x2b')],_0x3c10bc['query']);_0x3c12e2['attributes']=_[_0x0c11('0x2e')](_0x3c10bc[_0x0c11('0x2b')],qs['fields'](_0x20fbee[_0x0c11('0x2c')][_0x0c11('0x30')]));_0x3c12e2[_0x0c11('0x2f')]=_0x3c12e2[_0x0c11('0x2f')][_0x0c11('0x31')]?_0x3c12e2[_0x0c11('0x2f')]:_0x3c10bc['model'];if(_0x20fbee[_0x0c11('0x2c')][_0x0c11('0x3b')]){_0x3c12e2[_0x0c11('0x3c')]=[{'all':!![]}];}_0x3c12e2=_[_0x0c11('0x39')]({},_0x3c12e2,_0x20fbee[_0x0c11('0x41')]);return db['AnalyticTreeReport']['find'](_0x3c12e2)[_0x0c11('0x21')](handleEntityNotFound(_0xf295c2,null))[_0x0c11('0x21')](respondWithResult(_0xf295c2,null))[_0x0c11('0x42')](handleError(_0xf295c2,null));};exports[_0x0c11('0x43')]=function(_0x46c191,_0x58d111){return db[_0x0c11('0x26')][_0x0c11('0x43')](_0x46c191[_0x0c11('0x44')],{})[_0x0c11('0x21')](respondWithResult(_0x58d111,0xc9))[_0x0c11('0x42')](handleError(_0x58d111,null));};exports[_0x0c11('0x45')]=function(_0x5e286b,_0x5e7f17){if(_0x5e286b[_0x0c11('0x44')]['id']){delete _0x5e286b[_0x0c11('0x44')]['id'];}return db[_0x0c11('0x26')][_0x0c11('0x46')]({'where':{'id':_0x5e286b[_0x0c11('0x3f')]['id']}})[_0x0c11('0x21')](handleEntityNotFound(_0x5e7f17,null))[_0x0c11('0x21')](saveUpdates(_0x5e286b['body'],null))['then'](respondWithResult(_0x5e7f17,null))[_0x0c11('0x42')](handleError(_0x5e7f17,null));};exports[_0x0c11('0x47')]=function(_0x153fa3,_0x5852a3){return db[_0x0c11('0x26')][_0x0c11('0x46')]({'where':{'id':_0x153fa3[_0x0c11('0x3f')]['id']}})['then'](handleEntityNotFound(_0x5852a3,null))[_0x0c11('0x21')](removeEntity(_0x5852a3,null))[_0x0c11('0x42')](handleError(_0x5852a3,null));};