Built motion from commit (unavailable).|2.5.29
[motion2.git] / server / api / voiceCallReport / voiceCallReport.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 _0x00b3=['offset','limit','undefined','count','set','update','then','destroy','error','stack','name','rawAttributes','fieldName','type','key','map','query','keys','filters','intersection','model','fields','attributes','length','nolimit','sort','pick','where','merge','VIRTUAL','options','includeAll','alias','User','VoiceCallReport','findAll','catch','show','params','include','find','describe','uniqueid','body','user','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json'];(function(_0x246d62,_0x4153ad){var _0x51cd38=function(_0x4ebe75){while(--_0x4ebe75){_0x246d62['push'](_0x246d62['shift']());}};_0x51cd38(++_0x4153ad);}(_0x00b3,0x15d));var _0x300b=function(_0xb0c3df,_0x5ddba0){_0xb0c3df=_0xb0c3df-0x0;var _0x57a471=_0x00b3[_0xb0c3df];return _0x57a471;};'use strict';var emlformat=require(_0x300b('0x0'));var rimraf=require(_0x300b('0x1'));var zipdir=require(_0x300b('0x2'));var jsonpatch=require(_0x300b('0x3'));var rp=require(_0x300b('0x4'));var moment=require(_0x300b('0x5'));var BPromise=require(_0x300b('0x6'));var Mustache=require(_0x300b('0x7'));var util=require(_0x300b('0x8'));var path=require(_0x300b('0x9'));var sox=require('sox');var csv=require(_0x300b('0xa'));var ejs=require(_0x300b('0xb'));var fs=require('fs');var fs_extra=require(_0x300b('0xc'));var _=require(_0x300b('0xd'));var squel=require(_0x300b('0xe'));var crypto=require(_0x300b('0xf'));var jsforce=require('jsforce');var deskjs=require(_0x300b('0x10'));var toCsv=require(_0x300b('0xa'));var querystring=require('querystring');var Papa=require(_0x300b('0x11'));var Redis=require('ioredis');var authService=require(_0x300b('0x12'));var qs=require(_0x300b('0x13'));var as=require(_0x300b('0x14'));var hardwareService=require(_0x300b('0x15'));var logger=require(_0x300b('0x16'))(_0x300b('0x17'));var utils=require(_0x300b('0x18'));var config=require(_0x300b('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0x300b('0x1a'))['db'];function respondWithStatusCode(_0x39e10c,_0x222eeb){_0x222eeb=_0x222eeb||0xcc;return function(_0x31a577){if(_0x31a577){return _0x39e10c[_0x300b('0x1b')](_0x222eeb);}return _0x39e10c[_0x300b('0x1c')](_0x222eeb)[_0x300b('0x1d')]();};}function respondWithResult(_0xb352ee,_0x46c390){_0x46c390=_0x46c390||0xc8;return function(_0x34a408){if(_0x34a408){return _0xb352ee[_0x300b('0x1c')](_0x46c390)[_0x300b('0x1e')](_0x34a408);}};}function respondWithFilteredResult(_0x23344d,_0x3f1c9c){return function(_0x4a0a36){if(_0x4a0a36){var _0x2bc59f=typeof _0x3f1c9c[_0x300b('0x1f')]==='undefined'&&typeof _0x3f1c9c[_0x300b('0x20')]===_0x300b('0x21');var _0x29051b=_0x4a0a36[_0x300b('0x22')];var _0xf899d8=_0x2bc59f?0x0:_0x3f1c9c[_0x300b('0x1f')];var _0x53306c=_0x2bc59f?_0x4a0a36[_0x300b('0x22')]:_0x3f1c9c[_0x300b('0x1f')]+_0x3f1c9c[_0x300b('0x20')];var _0x1703af;if(_0x53306c>=_0x29051b){_0x53306c=_0x29051b;_0x1703af=0xc8;}else{_0x1703af=0xce;}_0x23344d[_0x300b('0x1c')](_0x1703af);return _0x23344d[_0x300b('0x23')]('Content-Range',_0xf899d8+'-'+_0x53306c+'/'+_0x29051b)[_0x300b('0x1e')](_0x4a0a36);}return null;};}function patchUpdates(_0x322897){return function(_0x25ebbf){try{jsonpatch['apply'](_0x25ebbf,_0x322897,!![]);}catch(_0x1044bf){return BPromise['reject'](_0x1044bf);}return _0x25ebbf['save']();};}function saveUpdates(_0xb3708a,_0x2b3882){return function(_0x15da4f){if(_0x15da4f){return _0x15da4f[_0x300b('0x24')](_0xb3708a)[_0x300b('0x25')](function(_0x4a4dbd){return _0x4a4dbd;});}return null;};}function removeEntity(_0x199ca6,_0x35e429){return function(_0x5a224a){if(_0x5a224a){return _0x5a224a[_0x300b('0x26')]()[_0x300b('0x25')](function(){_0x199ca6[_0x300b('0x1c')](0xcc)[_0x300b('0x1d')]();});}};}function handleEntityNotFound(_0x4cbc81,_0x2d068b){return function(_0x4a782b){if(!_0x4a782b){_0x4cbc81[_0x300b('0x1b')](0x194);}return _0x4a782b;};}function handleError(_0x1f3c9f,_0x3025bd){_0x3025bd=_0x3025bd||0x1f4;return function(_0x28fdc2){logger[_0x300b('0x27')](_0x28fdc2[_0x300b('0x28')]);if(_0x28fdc2[_0x300b('0x29')]){delete _0x28fdc2[_0x300b('0x29')];}_0x1f3c9f[_0x300b('0x1c')](_0x3025bd)['send'](_0x28fdc2);};}exports['index']=function(_0x2f7a2a,_0x51dd22){var _0x5424ff={},_0x325af8={},_0x4c829b={'count':0x0,'rows':[]};var _0x4546ba=_['map'](db['VoiceCallReport'][_0x300b('0x2a')],function(_0x30dbe4){return{'name':_0x30dbe4[_0x300b('0x2b')],'type':_0x30dbe4[_0x300b('0x2c')][_0x300b('0x2d')]};});_0x325af8['model']=_[_0x300b('0x2e')](_0x4546ba,'name');_0x325af8[_0x300b('0x2f')]=_[_0x300b('0x30')](_0x2f7a2a['query']);_0x325af8[_0x300b('0x31')]=_[_0x300b('0x32')](_0x325af8[_0x300b('0x33')],_0x325af8['query']);_0x5424ff['attributes']=_[_0x300b('0x32')](_0x325af8[_0x300b('0x33')],qs[_0x300b('0x34')](_0x2f7a2a['query'][_0x300b('0x34')]));_0x5424ff[_0x300b('0x35')]=_0x5424ff[_0x300b('0x35')][_0x300b('0x36')]?_0x5424ff[_0x300b('0x35')]:_0x325af8[_0x300b('0x33')];if(!_0x2f7a2a['query']['hasOwnProperty'](_0x300b('0x37'))){_0x5424ff[_0x300b('0x20')]=qs[_0x300b('0x20')](_0x2f7a2a[_0x300b('0x2f')][_0x300b('0x20')]);_0x5424ff[_0x300b('0x1f')]=qs['offset'](_0x2f7a2a[_0x300b('0x2f')][_0x300b('0x1f')]);}_0x5424ff['order']=qs[_0x300b('0x38')](_0x2f7a2a[_0x300b('0x2f')][_0x300b('0x38')]);_0x5424ff['where']=qs['filters'](_[_0x300b('0x39')](_0x2f7a2a[_0x300b('0x2f')],_0x325af8[_0x300b('0x31')]),_0x4546ba);if(_0x2f7a2a[_0x300b('0x2f')]['filter']){_0x5424ff[_0x300b('0x3a')]=_[_0x300b('0x3b')](_0x5424ff['where'],{'$or':_[_0x300b('0x2e')](_0x4546ba,function(_0x31db56){if(_0x31db56[_0x300b('0x2c')]!==_0x300b('0x3c')){var _0x575af5={};_0x575af5[_0x31db56[_0x300b('0x29')]]={'$like':'%'+_0x2f7a2a[_0x300b('0x2f')]['filter']+'%'};return _0x575af5;}})});}_0x5424ff=_['merge']({},_0x5424ff,_0x2f7a2a[_0x300b('0x3d')]);var _0x5f0fc3={'where':_0x5424ff[_0x300b('0x3a')]};return db['VoiceCallReport']['count'](_0x5f0fc3)['then'](function(_0xbe5d7c){_0x4c829b[_0x300b('0x22')]=_0xbe5d7c;if(_0x2f7a2a[_0x300b('0x2f')][_0x300b('0x3e')]){_0x5424ff['include']=[{'attributes':['id',_0x300b('0x29'),'fullname',_0x300b('0x3f')],'model':db[_0x300b('0x40')],'as':_0x300b('0x40')}];}return db[_0x300b('0x41')][_0x300b('0x42')](_0x5424ff);})[_0x300b('0x25')](function(_0x367ef4){_0x4c829b['rows']=_0x367ef4;return _0x4c829b;})[_0x300b('0x25')](respondWithFilteredResult(_0x51dd22,_0x5424ff))[_0x300b('0x43')](handleError(_0x51dd22,null));};exports[_0x300b('0x44')]=function(_0x4f7bc9,_0x1c73b5){var _0x3fca15={'raw':!![],'where':{'id':_0x4f7bc9[_0x300b('0x45')]['id']}},_0x2fdca7={};_0x2fdca7[_0x300b('0x33')]=_['keys'](db[_0x300b('0x41')][_0x300b('0x2a')]);_0x2fdca7[_0x300b('0x2f')]=_[_0x300b('0x30')](_0x4f7bc9['query']);_0x2fdca7[_0x300b('0x31')]=_['intersection'](_0x2fdca7[_0x300b('0x33')],_0x2fdca7[_0x300b('0x2f')]);_0x3fca15[_0x300b('0x35')]=_[_0x300b('0x32')](_0x2fdca7['model'],qs[_0x300b('0x34')](_0x4f7bc9[_0x300b('0x2f')][_0x300b('0x34')]));_0x3fca15[_0x300b('0x35')]=_0x3fca15[_0x300b('0x35')][_0x300b('0x36')]?_0x3fca15[_0x300b('0x35')]:_0x2fdca7[_0x300b('0x33')];if(_0x4f7bc9[_0x300b('0x2f')]['includeAll']){_0x3fca15[_0x300b('0x46')]=[{'all':!![]}];}_0x3fca15=_[_0x300b('0x3b')]({},_0x3fca15,_0x4f7bc9[_0x300b('0x3d')]);return db[_0x300b('0x41')][_0x300b('0x47')](_0x3fca15)[_0x300b('0x25')](handleEntityNotFound(_0x1c73b5,null))['then'](respondWithResult(_0x1c73b5,null))[_0x300b('0x43')](handleError(_0x1c73b5,null));};exports['create']=function(_0x207e78,_0x337d2e){return db[_0x300b('0x41')]['create'](_0x207e78['body'],{})['then'](respondWithResult(_0x337d2e,0xc9))[_0x300b('0x43')](handleError(_0x337d2e,null));};exports['destroy']=function(_0x4b7ed9,_0x480ff0){return db['VoiceCallReport'][_0x300b('0x47')]({'where':{'id':_0x4b7ed9[_0x300b('0x45')]['id']}})[_0x300b('0x25')](handleEntityNotFound(_0x480ff0,null))[_0x300b('0x25')](removeEntity(_0x480ff0,null))[_0x300b('0x43')](handleError(_0x480ff0,null));};exports['describe']=function(_0x2276d5,_0x421632){return db[_0x300b('0x41')][_0x300b('0x48')]()[_0x300b('0x25')](respondWithResult(_0x421632,null))[_0x300b('0x43')](handleError(_0x421632,null));};exports[_0x300b('0x24')]=function(_0x388af0,_0x47f6f){if(_0x388af0['body'][_0x300b('0x49')]){delete _0x388af0[_0x300b('0x4a')]['uniqueid'];}return db[_0x300b('0x41')][_0x300b('0x47')]({'where':{'uniqueid':_0x388af0[_0x300b('0x45')]['id'],'UserId':{'$or':[null,_0x388af0[_0x300b('0x4b')]['id']]}}})['then'](handleEntityNotFound(_0x47f6f,null))[_0x300b('0x25')](saveUpdates(_0x388af0[_0x300b('0x4a')],null))[_0x300b('0x25')](respondWithResult(_0x47f6f,null))[_0x300b('0x43')](handleError(_0x47f6f,null));};