Built motion from commit (unavailable).|2.0.74
[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 _0x3ec4=['body','describe','fast-json-patch','request-promise','moment','mustache','util','to-csv','ejs','crypto','jsforce','api','../../config/utils','../../config/environment','../../mysqldb','end','status','json','offset','limit','set','Content-Range','apply','save','update','destroy','sendStatus','error','stack','name','send','index','VoiceDialReport','rawAttributes','model','keys','query','dateStart','dateEnd','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','add','day','merge','filter','options','count','then','includeAll','include','findAll','rows','catch','show','params','find','create'];(function(_0x343c76,_0x1cac3a){var _0x1bb83=function(_0x23874a){while(--_0x23874a){_0x343c76['push'](_0x343c76['shift']());}};_0x1bb83(++_0x1cac3a);}(_0x3ec4,0x14c));var _0x43ec=function(_0x2e2013,_0x1d6093){_0x2e2013=_0x2e2013-0x0;var _0x3d3b57=_0x3ec4[_0x2e2013];return _0x3d3b57;};'use strict';var jsonpatch=require(_0x43ec('0x0'));var rp=require(_0x43ec('0x1'));var moment=require(_0x43ec('0x2'));var BPromise=require('bluebird');var Mustache=require(_0x43ec('0x3'));var util=require(_0x43ec('0x4'));var path=require('path');var sox=require('sox');var csv=require(_0x43ec('0x5'));var ejs=require(_0x43ec('0x6'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x43ec('0x7'));var jsforce=require(_0x43ec('0x8'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')(_0x43ec('0x9'));var utils=require(_0x43ec('0xa'));var config=require(_0x43ec('0xb'));var db=require(_0x43ec('0xc'))['db'];function respondWithStatusCode(_0xced3c1,_0x56e753){_0x56e753=_0x56e753||0xcc;return function(_0x231c2b){if(_0x231c2b){return _0xced3c1['sendStatus'](_0x56e753);}return _0xced3c1['status'](_0x56e753)[_0x43ec('0xd')]();};}function respondWithResult(_0x472021,_0x397ba0){_0x397ba0=_0x397ba0||0xc8;return function(_0x352a19){if(_0x352a19){return _0x472021[_0x43ec('0xe')](_0x397ba0)[_0x43ec('0xf')](_0x352a19);}};}function respondWithFilteredResult(_0x570024,_0x4265ad){return function(_0x1fde52){if(_0x1fde52){var _0x172efb=_0x1fde52['count'],_0x4df581=_0x4265ad[_0x43ec('0x10')],_0x482340=_0x4265ad[_0x43ec('0x10')]+_0x4265ad[_0x43ec('0x11')],_0xcd1ca4;if(_0x482340>=_0x172efb){_0x482340=_0x172efb;_0xcd1ca4=0xc8;}else{_0xcd1ca4=0xce;}_0x570024[_0x43ec('0xe')](_0xcd1ca4);return _0x570024[_0x43ec('0x12')](_0x43ec('0x13'),_0x4df581+'-'+_0x482340+'/'+_0x172efb)[_0x43ec('0xf')](_0x1fde52);}return null;};}function patchUpdates(_0x4d6988){return function(_0x61acde){try{jsonpatch[_0x43ec('0x14')](_0x61acde,_0x4d6988,!![]);}catch(_0x4e8fa5){return BPromise['reject'](_0x4e8fa5);}return _0x61acde[_0x43ec('0x15')]();};}function saveUpdates(_0x607216,_0x2a277f){return function(_0x1a8b10){if(_0x1a8b10){return _0x1a8b10[_0x43ec('0x16')](_0x607216)['then'](function(_0x47003f){return _0x47003f;});}return null;};}function removeEntity(_0x2e2be9,_0x2e4f3b){return function(_0x48cd99){if(_0x48cd99){return _0x48cd99[_0x43ec('0x17')]()['then'](function(){_0x2e2be9['status'](0xcc)[_0x43ec('0xd')]();});}};}function handleEntityNotFound(_0x32ce0d,_0x1f80fb){return function(_0x3e0fcd){if(!_0x3e0fcd){_0x32ce0d[_0x43ec('0x18')](0x194);}return _0x3e0fcd;};}function handleError(_0x1241ea,_0x37467a){_0x37467a=_0x37467a||0x1f4;return function(_0x47049a){logger[_0x43ec('0x19')](_0x47049a[_0x43ec('0x1a')]);if(_0x47049a[_0x43ec('0x1b')]){delete _0x47049a['name'];}_0x1241ea[_0x43ec('0xe')](_0x37467a)[_0x43ec('0x1c')](_0x47049a);};}exports[_0x43ec('0x1d')]=function(_0x5acf07,_0x2ce05f){var _0x54547a={},_0x33d71a={},_0x3a66ae={'count':0x0,'rows':[]};var _0x5ae45c=db[_0x43ec('0x1e')][_0x43ec('0x1f')];_0x33d71a[_0x43ec('0x20')]=_[_0x43ec('0x21')](_0x5ae45c);var _0x58945a={'dateStart':_0x5acf07[_0x43ec('0x22')][_0x43ec('0x23')],'dateEnd':_0x5acf07['query'][_0x43ec('0x24')]};delete _0x5acf07[_0x43ec('0x22')][_0x43ec('0x23')];delete _0x5acf07[_0x43ec('0x22')][_0x43ec('0x24')];_0x33d71a[_0x43ec('0x22')]=_[_0x43ec('0x21')](_0x5acf07['query']);_0x33d71a['filters']=_[_0x43ec('0x25')](_0x33d71a[_0x43ec('0x20')],_0x33d71a[_0x43ec('0x22')]);_0x54547a[_0x43ec('0x26')]=_[_0x43ec('0x25')](_0x33d71a[_0x43ec('0x20')],qs['fields'](_0x5acf07[_0x43ec('0x22')][_0x43ec('0x27')]));_0x54547a['attributes']=_0x54547a[_0x43ec('0x26')][_0x43ec('0x28')]?_0x54547a[_0x43ec('0x26')]:_0x33d71a['model'];if(!_0x5acf07[_0x43ec('0x22')][_0x43ec('0x29')](_0x43ec('0x2a'))){_0x54547a[_0x43ec('0x11')]=qs[_0x43ec('0x11')](_0x5acf07[_0x43ec('0x22')][_0x43ec('0x11')]);_0x54547a[_0x43ec('0x10')]=qs[_0x43ec('0x10')](_0x5acf07[_0x43ec('0x22')][_0x43ec('0x10')]);}_0x54547a[_0x43ec('0x2b')]=qs[_0x43ec('0x2c')](_0x5acf07[_0x43ec('0x22')]['sort']);_0x54547a[_0x43ec('0x2d')]=qs[_0x43ec('0x2e')](_[_0x43ec('0x2f')](_0x5acf07[_0x43ec('0x22')],_0x33d71a[_0x43ec('0x2e')]));if(_0x58945a['dateStart']){if(_0x58945a['dateEnd']){_0x58945a[_0x43ec('0x24')]=moment(_0x58945a[_0x43ec('0x24')])[_0x43ec('0x30')](0x1,_0x43ec('0x31'));}else{_0x58945a[_0x43ec('0x24')]=moment(_0x58945a[_0x43ec('0x23')])[_0x43ec('0x30')](0x1,_0x43ec('0x31'));}_[_0x43ec('0x32')](_0x54547a['where'],{'createdAt':{'$gte':_0x58945a[_0x43ec('0x23')],'$lte':_0x58945a[_0x43ec('0x24')]}});}if(_0x5acf07[_0x43ec('0x22')][_0x43ec('0x33')]){_0x54547a[_0x43ec('0x2d')]=_['merge'](_0x54547a[_0x43ec('0x2d')],{'$or':_['map'](_0x54547a['attributes'],function(_0x563837){var _0x1e96cf={};_0x1e96cf[_0x563837]={'$like':'%'+_0x5acf07[_0x43ec('0x22')][_0x43ec('0x33')]+'%'};return _0x1e96cf;})});}_0x54547a=_[_0x43ec('0x32')]({},_0x54547a,_0x5acf07[_0x43ec('0x34')]);var _0x3f562b={'where':_0x54547a[_0x43ec('0x2d')]};return db[_0x43ec('0x1e')][_0x43ec('0x35')](_0x3f562b)[_0x43ec('0x36')](function(_0x3fe83c){_0x3a66ae[_0x43ec('0x35')]=_0x3fe83c;if(_0x5acf07[_0x43ec('0x22')][_0x43ec('0x37')]){_0x54547a[_0x43ec('0x38')]=[{'all':!![]}];}return db['VoiceDialReport'][_0x43ec('0x39')](_0x54547a);})[_0x43ec('0x36')](function(_0x346b63){_0x3a66ae[_0x43ec('0x3a')]=_0x346b63;return _0x3a66ae;})['then'](respondWithFilteredResult(_0x2ce05f,_0x54547a))[_0x43ec('0x3b')](handleError(_0x2ce05f,null));};exports[_0x43ec('0x3c')]=function(_0x2588c1,_0x456ea9){var _0x1b6bc6={'raw':!![],'where':{'id':_0x2588c1[_0x43ec('0x3d')]['id']}},_0x36027f={};_0x36027f[_0x43ec('0x20')]=_[_0x43ec('0x21')](db[_0x43ec('0x1e')][_0x43ec('0x1f')]);_0x36027f['query']=_[_0x43ec('0x21')](_0x2588c1[_0x43ec('0x22')]);_0x36027f[_0x43ec('0x2e')]=_[_0x43ec('0x25')](_0x36027f[_0x43ec('0x20')],_0x36027f[_0x43ec('0x22')]);_0x1b6bc6['attributes']=_['intersection'](_0x36027f[_0x43ec('0x20')],qs['fields'](_0x2588c1['query'][_0x43ec('0x27')]));_0x1b6bc6[_0x43ec('0x26')]=_0x1b6bc6[_0x43ec('0x26')][_0x43ec('0x28')]?_0x1b6bc6['attributes']:_0x36027f['model'];if(_0x2588c1[_0x43ec('0x22')]['includeAll']){_0x1b6bc6[_0x43ec('0x38')]=[{'all':!![]}];}_0x1b6bc6=_[_0x43ec('0x32')]({},_0x1b6bc6,_0x2588c1[_0x43ec('0x34')]);return db['VoiceDialReport'][_0x43ec('0x3e')](_0x1b6bc6)[_0x43ec('0x36')](handleEntityNotFound(_0x456ea9,null))[_0x43ec('0x36')](respondWithResult(_0x456ea9,null))['catch'](handleError(_0x456ea9,null));};exports[_0x43ec('0x3f')]=function(_0x1d9fab,_0x460133){return db['VoiceDialReport']['create'](_0x1d9fab[_0x43ec('0x40')],{})['then'](respondWithResult(_0x460133,0xc9))[_0x43ec('0x3b')](handleError(_0x460133,null));};exports['update']=function(_0x19f539,_0x3cb13a){if(_0x19f539[_0x43ec('0x40')]['id']){delete _0x19f539[_0x43ec('0x40')]['id'];}return db['VoiceDialReport'][_0x43ec('0x3e')]({'where':{'id':_0x19f539[_0x43ec('0x3d')]['id']}})['then'](handleEntityNotFound(_0x3cb13a,null))['then'](saveUpdates(_0x19f539['body'],null))[_0x43ec('0x36')](respondWithResult(_0x3cb13a,null))[_0x43ec('0x3b')](handleError(_0x3cb13a,null));};exports['destroy']=function(_0x1232c3,_0x371f54){return db[_0x43ec('0x1e')][_0x43ec('0x3e')]({'where':{'id':_0x1232c3[_0x43ec('0x3d')]['id']}})[_0x43ec('0x36')](handleEntityNotFound(_0x371f54,null))[_0x43ec('0x36')](removeEntity(_0x371f54,null))[_0x43ec('0x3b')](handleError(_0x371f54,null));};exports['describe']=function(_0x19a7a4,_0x532cd9){return db[_0x43ec('0x1e')][_0x43ec('0x41')]()[_0x43ec('0x36')](respondWithResult(_0x532cd9,null))[_0x43ec('0x3b')](handleError(_0x532cd9,null));};