1207dbc2ebaf421b8b2d213c7136174e725e3875
[motion2.git] / server / api / voiceDialReport / voiceDialReport.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 _0x865c=['attributes','fields','length','hasOwnProperty','nolimit','order','sort','filter','where','merge','VIRTUAL','options','VoiceDialReport','includeAll','findAll','catch','show','include','find','create','body','update','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','lodash','crypto','jsforce','desk.js','to-csv','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','json','undefined','count','offset','limit','Content-Range','apply','reject','save','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection'];(function(_0x486876,_0x5dfa23){var _0x13523e=function(_0x2f05fb){while(--_0x2f05fb){_0x486876['push'](_0x486876['shift']());}};_0x13523e(++_0x5dfa23);}(_0x865c,0x194));var _0xc865=function(_0x38a7ff,_0x5239a4){_0x38a7ff=_0x38a7ff-0x0;var _0x1a0a57=_0x865c[_0x38a7ff];return _0x1a0a57;};'use strict';var emlformat=require(_0xc865('0x0'));var rimraf=require(_0xc865('0x1'));var zipdir=require(_0xc865('0x2'));var jsonpatch=require(_0xc865('0x3'));var rp=require(_0xc865('0x4'));var moment=require(_0xc865('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xc865('0x6'));var util=require('util');var path=require(_0xc865('0x7'));var sox=require(_0xc865('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc865('0x9'));var squel=require('squel');var crypto=require(_0xc865('0xa'));var jsforce=require(_0xc865('0xb'));var deskjs=require(_0xc865('0xc'));var toCsv=require(_0xc865('0xd'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xc865('0xe'));var authService=require(_0xc865('0xf'));var qs=require(_0xc865('0x10'));var as=require(_0xc865('0x11'));var hardwareService=require(_0xc865('0x12'));var logger=require(_0xc865('0x13'))(_0xc865('0x14'));var utils=require(_0xc865('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0xc865('0x16'));var db=require(_0xc865('0x17'))['db'];function respondWithStatusCode(_0x235404,_0x4387bd){_0x4387bd=_0x4387bd||0xcc;return function(_0x117e1b){if(_0x117e1b){return _0x235404[_0xc865('0x18')](_0x4387bd);}return _0x235404[_0xc865('0x19')](_0x4387bd)['end']();};}function respondWithResult(_0x4d9706,_0x15d216){_0x15d216=_0x15d216||0xc8;return function(_0x4d309f){if(_0x4d309f){return _0x4d9706[_0xc865('0x19')](_0x15d216)[_0xc865('0x1a')](_0x4d309f);}};}function respondWithFilteredResult(_0x14c7b4,_0x37b5c7){return function(_0x10e0bf){if(_0x10e0bf){var _0x49f08a=typeof _0x37b5c7['offset']==='undefined'&&typeof _0x37b5c7['limit']===_0xc865('0x1b');var _0x14e93c=_0x10e0bf[_0xc865('0x1c')];var _0x3b05e0=_0x49f08a?0x0:_0x37b5c7[_0xc865('0x1d')];var _0x171efc=_0x49f08a?_0x10e0bf['count']:_0x37b5c7[_0xc865('0x1d')]+_0x37b5c7[_0xc865('0x1e')];var _0x3b3027;if(_0x171efc>=_0x14e93c){_0x171efc=_0x14e93c;_0x3b3027=0xc8;}else{_0x3b3027=0xce;}_0x14c7b4[_0xc865('0x19')](_0x3b3027);return _0x14c7b4['set'](_0xc865('0x1f'),_0x3b05e0+'-'+_0x171efc+'/'+_0x14e93c)[_0xc865('0x1a')](_0x10e0bf);}return null;};}function patchUpdates(_0x17952e){return function(_0xc85b4c){try{jsonpatch[_0xc865('0x20')](_0xc85b4c,_0x17952e,!![]);}catch(_0x567a6b){return BPromise[_0xc865('0x21')](_0x567a6b);}return _0xc85b4c[_0xc865('0x22')]();};}function saveUpdates(_0x326da9,_0x370170){return function(_0xcaab0c){if(_0xcaab0c){return _0xcaab0c['update'](_0x326da9)[_0xc865('0x23')](function(_0x5bc09c){return _0x5bc09c;});}return null;};}function removeEntity(_0xb45c52,_0x2a16b5){return function(_0x3f0ee2){if(_0x3f0ee2){return _0x3f0ee2[_0xc865('0x24')]()[_0xc865('0x23')](function(){_0xb45c52['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x532919,_0x1dcc2e){return function(_0x5f43bf){if(!_0x5f43bf){_0x532919[_0xc865('0x18')](0x194);}return _0x5f43bf;};}function handleError(_0x5babc6,_0x2adc6e){_0x2adc6e=_0x2adc6e||0x1f4;return function(_0x311772){logger[_0xc865('0x25')](_0x311772[_0xc865('0x26')]);if(_0x311772[_0xc865('0x27')]){delete _0x311772[_0xc865('0x27')];}_0x5babc6['status'](_0x2adc6e)[_0xc865('0x28')](_0x311772);};}exports[_0xc865('0x29')]=function(_0x3a7740,_0xc1e228){var _0x138107={},_0x3a3ad1={},_0x26b262={'count':0x0,'rows':[]};var _0x5cea70=_[_0xc865('0x2a')](db['VoiceDialReport'][_0xc865('0x2b')],function(_0x5d4d24){return{'name':_0x5d4d24[_0xc865('0x2c')],'type':_0x5d4d24[_0xc865('0x2d')][_0xc865('0x2e')]};});_0x3a3ad1[_0xc865('0x2f')]=_[_0xc865('0x2a')](_0x5cea70,_0xc865('0x27'));_0x3a3ad1[_0xc865('0x30')]=_[_0xc865('0x31')](_0x3a7740[_0xc865('0x30')]);_0x3a3ad1[_0xc865('0x32')]=_[_0xc865('0x33')](_0x3a3ad1[_0xc865('0x2f')],_0x3a3ad1[_0xc865('0x30')]);_0x138107[_0xc865('0x34')]=_[_0xc865('0x33')](_0x3a3ad1[_0xc865('0x2f')],qs[_0xc865('0x35')](_0x3a7740['query']['fields']));_0x138107[_0xc865('0x34')]=_0x138107['attributes'][_0xc865('0x36')]?_0x138107[_0xc865('0x34')]:_0x3a3ad1[_0xc865('0x2f')];if(!_0x3a7740[_0xc865('0x30')][_0xc865('0x37')](_0xc865('0x38'))){_0x138107[_0xc865('0x1e')]=qs[_0xc865('0x1e')](_0x3a7740[_0xc865('0x30')][_0xc865('0x1e')]);_0x138107[_0xc865('0x1d')]=qs[_0xc865('0x1d')](_0x3a7740[_0xc865('0x30')][_0xc865('0x1d')]);}_0x138107[_0xc865('0x39')]=qs[_0xc865('0x3a')](_0x3a7740[_0xc865('0x30')][_0xc865('0x3a')]);_0x138107['where']=qs[_0xc865('0x32')](_['pick'](_0x3a7740[_0xc865('0x30')],_0x3a3ad1['filters']),_0x5cea70);if(_0x3a7740[_0xc865('0x30')][_0xc865('0x3b')]){_0x138107[_0xc865('0x3c')]=_[_0xc865('0x3d')](_0x138107['where'],{'$or':_[_0xc865('0x2a')](_0x5cea70,function(_0x5dc275){if(_0x5dc275[_0xc865('0x2d')]!==_0xc865('0x3e')){var _0x52db8b={};_0x52db8b[_0x5dc275['name']]={'$like':'%'+_0x3a7740[_0xc865('0x30')][_0xc865('0x3b')]+'%'};return _0x52db8b;}})});}_0x138107=_[_0xc865('0x3d')]({},_0x138107,_0x3a7740[_0xc865('0x3f')]);var _0xad2b5e={'where':_0x138107[_0xc865('0x3c')]};return db[_0xc865('0x40')]['count'](_0xad2b5e)['then'](function(_0xf631f){_0x26b262[_0xc865('0x1c')]=_0xf631f;if(_0x3a7740[_0xc865('0x30')][_0xc865('0x41')]){_0x138107['include']=[{'all':!![]}];}return db[_0xc865('0x40')][_0xc865('0x42')](_0x138107);})[_0xc865('0x23')](function(_0x1bf5bd){_0x26b262['rows']=_0x1bf5bd;return _0x26b262;})[_0xc865('0x23')](respondWithFilteredResult(_0xc1e228,_0x138107))[_0xc865('0x43')](handleError(_0xc1e228,null));};exports[_0xc865('0x44')]=function(_0x5bf116,_0x371dc9){var _0x469306={'raw':!![],'where':{'id':_0x5bf116['params']['id']}},_0x114600={};_0x114600[_0xc865('0x2f')]=_[_0xc865('0x31')](db['VoiceDialReport']['rawAttributes']);_0x114600[_0xc865('0x30')]=_['keys'](_0x5bf116['query']);_0x114600['filters']=_[_0xc865('0x33')](_0x114600[_0xc865('0x2f')],_0x114600[_0xc865('0x30')]);_0x469306[_0xc865('0x34')]=_[_0xc865('0x33')](_0x114600[_0xc865('0x2f')],qs['fields'](_0x5bf116['query']['fields']));_0x469306[_0xc865('0x34')]=_0x469306[_0xc865('0x34')][_0xc865('0x36')]?_0x469306['attributes']:_0x114600[_0xc865('0x2f')];if(_0x5bf116[_0xc865('0x30')][_0xc865('0x41')]){_0x469306[_0xc865('0x45')]=[{'all':!![]}];}_0x469306=_[_0xc865('0x3d')]({},_0x469306,_0x5bf116['options']);return db[_0xc865('0x40')][_0xc865('0x46')](_0x469306)[_0xc865('0x23')](handleEntityNotFound(_0x371dc9,null))[_0xc865('0x23')](respondWithResult(_0x371dc9,null))[_0xc865('0x43')](handleError(_0x371dc9,null));};exports[_0xc865('0x47')]=function(_0x4cbb70,_0x3043ea){return db[_0xc865('0x40')]['create'](_0x4cbb70[_0xc865('0x48')],{})[_0xc865('0x23')](respondWithResult(_0x3043ea,0xc9))[_0xc865('0x43')](handleError(_0x3043ea,null));};exports[_0xc865('0x49')]=function(_0x2d288,_0x2ef7bd){if(_0x2d288['body']['id']){delete _0x2d288[_0xc865('0x48')]['id'];}return db['VoiceDialReport']['find']({'where':{'id':_0x2d288[_0xc865('0x4a')]['id']}})[_0xc865('0x23')](handleEntityNotFound(_0x2ef7bd,null))[_0xc865('0x23')](saveUpdates(_0x2d288['body'],null))[_0xc865('0x23')](respondWithResult(_0x2ef7bd,null))[_0xc865('0x43')](handleError(_0x2ef7bd,null));};exports[_0xc865('0x24')]=function(_0x1fa97d,_0x22f2a2){return db[_0xc865('0x40')][_0xc865('0x46')]({'where':{'id':_0x1fa97d['params']['id']}})[_0xc865('0x23')](handleEntityNotFound(_0x22f2a2,null))[_0xc865('0x23')](removeEntity(_0x22f2a2,null))[_0xc865('0x43')](handleError(_0x22f2a2,null));};exports[_0xc865('0x4b')]=function(_0x3b0c2c,_0xed111f){return db['VoiceDialReport'][_0xc865('0x4b')]()[_0xc865('0x23')](respondWithResult(_0xed111f,null))['catch'](handleError(_0xed111f,null));};