Built motion from commit (unavailable).|2.5.5
[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 _0x0cd6=['save','update','then','error','stack','name','send','index','map','rawAttributes','fieldName','key','query','filters','intersection','attributes','model','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','type','VIRTUAL','options','VoiceCallReport','include','fullname','alias','User','findAll','catch','show','keys','find','create','destroy','params','uniqueid','body','html-pdf','eml-format','zip-dir','fast-json-patch','moment','bluebird','path','sox','to-csv','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','json','count','offset','limit','status','set','Content-Range','apply'];(function(_0x5ddb1c,_0x5ea4df){var _0x354adc=function(_0x2dfb1f){while(--_0x2dfb1f){_0x5ddb1c['push'](_0x5ddb1c['shift']());}};_0x354adc(++_0x5ea4df);}(_0x0cd6,0x113));var _0x60cd=function(_0x49e584,_0x2886f8){_0x49e584=_0x49e584-0x0;var _0x58b1be=_0x0cd6[_0x49e584];return _0x58b1be;};'use strict';var pdf=require(_0x60cd('0x0'));var emlformat=require(_0x60cd('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x60cd('0x2'));var jsonpatch=require(_0x60cd('0x3'));var rp=require('request-promise');var moment=require(_0x60cd('0x4'));var BPromise=require(_0x60cd('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0x60cd('0x6'));var sox=require(_0x60cd('0x7'));var csv=require(_0x60cd('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x60cd('0x9'));var squel=require('squel');var crypto=require(_0x60cd('0xa'));var jsforce=require(_0x60cd('0xb'));var deskjs=require(_0x60cd('0xc'));var toCsv=require(_0x60cd('0x8'));var querystring=require(_0x60cd('0xd'));var Papa=require(_0x60cd('0xe'));var Redis=require(_0x60cd('0xf'));var authService=require(_0x60cd('0x10'));var qs=require(_0x60cd('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x60cd('0x12'));var logger=require(_0x60cd('0x13'))('api');var utils=require(_0x60cd('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x60cd('0x15'));var db=require(_0x60cd('0x16'))['db'];function respondWithStatusCode(_0x526b5b,_0x89aed4){_0x89aed4=_0x89aed4||0xcc;return function(_0x295f32){if(_0x295f32){return _0x526b5b[_0x60cd('0x17')](_0x89aed4);}return _0x526b5b['status'](_0x89aed4)[_0x60cd('0x18')]();};}function respondWithResult(_0x23db86,_0x53e158){_0x53e158=_0x53e158||0xc8;return function(_0x42e723){if(_0x42e723){return _0x23db86['status'](_0x53e158)[_0x60cd('0x19')](_0x42e723);}};}function respondWithFilteredResult(_0x41cc6b,_0x4b4aad){return function(_0x501940){if(_0x501940){var _0x3c4446=_0x501940[_0x60cd('0x1a')],_0x209dde=_0x4b4aad[_0x60cd('0x1b')],_0x1ca4fb=_0x4b4aad[_0x60cd('0x1b')]+_0x4b4aad[_0x60cd('0x1c')],_0x5d0125;if(_0x1ca4fb>=_0x3c4446){_0x1ca4fb=_0x3c4446;_0x5d0125=0xc8;}else{_0x5d0125=0xce;}_0x41cc6b[_0x60cd('0x1d')](_0x5d0125);return _0x41cc6b[_0x60cd('0x1e')](_0x60cd('0x1f'),_0x209dde+'-'+_0x1ca4fb+'/'+_0x3c4446)[_0x60cd('0x19')](_0x501940);}return null;};}function patchUpdates(_0x3677b2){return function(_0x585ad8){try{jsonpatch[_0x60cd('0x20')](_0x585ad8,_0x3677b2,!![]);}catch(_0x557814){return BPromise['reject'](_0x557814);}return _0x585ad8[_0x60cd('0x21')]();};}function saveUpdates(_0x3d9434,_0x5b757c){return function(_0x45e390){if(_0x45e390){return _0x45e390[_0x60cd('0x22')](_0x3d9434)['then'](function(_0x41642b){return _0x41642b;});}return null;};}function removeEntity(_0x4b0f8a,_0x323459){return function(_0x41c290){if(_0x41c290){return _0x41c290['destroy']()[_0x60cd('0x23')](function(){_0x4b0f8a['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x267c8c,_0x5354d1){return function(_0x204ddb){if(!_0x204ddb){_0x267c8c[_0x60cd('0x17')](0x194);}return _0x204ddb;};}function handleError(_0x5f49dc,_0x4e3025){_0x4e3025=_0x4e3025||0x1f4;return function(_0x3fee65){logger[_0x60cd('0x24')](_0x3fee65[_0x60cd('0x25')]);if(_0x3fee65['name']){delete _0x3fee65[_0x60cd('0x26')];}_0x5f49dc[_0x60cd('0x1d')](_0x4e3025)[_0x60cd('0x27')](_0x3fee65);};}exports[_0x60cd('0x28')]=function(_0x547932,_0x31be62){var _0xbe52e0={},_0xd8051a={},_0x16f93f={'count':0x0,'rows':[]};var _0x446673=_[_0x60cd('0x29')](db['VoiceCallReport'][_0x60cd('0x2a')],function(_0x215b8d){return{'name':_0x215b8d[_0x60cd('0x2b')],'type':_0x215b8d['type'][_0x60cd('0x2c')]};});_0xd8051a['model']=_[_0x60cd('0x29')](_0x446673,_0x60cd('0x26'));_0xd8051a['query']=_['keys'](_0x547932[_0x60cd('0x2d')]);_0xd8051a[_0x60cd('0x2e')]=_[_0x60cd('0x2f')](_0xd8051a['model'],_0xd8051a[_0x60cd('0x2d')]);_0xbe52e0[_0x60cd('0x30')]=_[_0x60cd('0x2f')](_0xd8051a[_0x60cd('0x31')],qs[_0x60cd('0x32')](_0x547932[_0x60cd('0x2d')][_0x60cd('0x32')]));_0xbe52e0['attributes']=_0xbe52e0[_0x60cd('0x30')][_0x60cd('0x33')]?_0xbe52e0[_0x60cd('0x30')]:_0xd8051a[_0x60cd('0x31')];if(!_0x547932[_0x60cd('0x2d')][_0x60cd('0x34')]('nolimit')){_0xbe52e0['limit']=qs['limit'](_0x547932[_0x60cd('0x2d')][_0x60cd('0x1c')]);_0xbe52e0[_0x60cd('0x1b')]=qs[_0x60cd('0x1b')](_0x547932[_0x60cd('0x2d')][_0x60cd('0x1b')]);}_0xbe52e0[_0x60cd('0x35')]=qs['sort'](_0x547932[_0x60cd('0x2d')][_0x60cd('0x36')]);_0xbe52e0[_0x60cd('0x37')]=qs[_0x60cd('0x2e')](_[_0x60cd('0x38')](_0x547932[_0x60cd('0x2d')],_0xd8051a[_0x60cd('0x2e')]),_0x446673);if(_0x547932[_0x60cd('0x2d')][_0x60cd('0x39')]){_0xbe52e0['where']=_[_0x60cd('0x3a')](_0xbe52e0[_0x60cd('0x37')],{'$or':_['map'](_0x446673,function(_0x5e505a){if(_0x5e505a[_0x60cd('0x3b')]!==_0x60cd('0x3c')){var _0x31352e={};_0x31352e[_0x5e505a[_0x60cd('0x26')]]={'$like':'%'+_0x547932[_0x60cd('0x2d')]['filter']+'%'};return _0x31352e;}})});}_0xbe52e0=_[_0x60cd('0x3a')]({},_0xbe52e0,_0x547932[_0x60cd('0x3d')]);var _0x59442e={'where':_0xbe52e0['where']};return db[_0x60cd('0x3e')][_0x60cd('0x1a')](_0x59442e)[_0x60cd('0x23')](function(_0x1a419f){_0x16f93f[_0x60cd('0x1a')]=_0x1a419f;if(_0x547932[_0x60cd('0x2d')]['includeAll']){_0xbe52e0[_0x60cd('0x3f')]=[{'attributes':['id',_0x60cd('0x26'),_0x60cd('0x40'),_0x60cd('0x41')],'model':db[_0x60cd('0x42')],'as':_0x60cd('0x42')}];}return db[_0x60cd('0x3e')][_0x60cd('0x43')](_0xbe52e0);})[_0x60cd('0x23')](function(_0x5dcec5){_0x16f93f['rows']=_0x5dcec5;return _0x16f93f;})['then'](respondWithFilteredResult(_0x31be62,_0xbe52e0))[_0x60cd('0x44')](handleError(_0x31be62,null));};exports[_0x60cd('0x45')]=function(_0x42fd24,_0x5b0292){var _0x4f832b={'raw':!![],'where':{'id':_0x42fd24['params']['id']}},_0x4792b9={};_0x4792b9[_0x60cd('0x31')]=_[_0x60cd('0x46')](db['VoiceCallReport']['rawAttributes']);_0x4792b9['query']=_[_0x60cd('0x46')](_0x42fd24[_0x60cd('0x2d')]);_0x4792b9[_0x60cd('0x2e')]=_[_0x60cd('0x2f')](_0x4792b9['model'],_0x4792b9[_0x60cd('0x2d')]);_0x4f832b[_0x60cd('0x30')]=_['intersection'](_0x4792b9[_0x60cd('0x31')],qs[_0x60cd('0x32')](_0x42fd24[_0x60cd('0x2d')][_0x60cd('0x32')]));_0x4f832b[_0x60cd('0x30')]=_0x4f832b['attributes'][_0x60cd('0x33')]?_0x4f832b['attributes']:_0x4792b9[_0x60cd('0x31')];if(_0x42fd24[_0x60cd('0x2d')]['includeAll']){_0x4f832b['include']=[{'all':!![]}];}_0x4f832b=_[_0x60cd('0x3a')]({},_0x4f832b,_0x42fd24[_0x60cd('0x3d')]);return db[_0x60cd('0x3e')][_0x60cd('0x47')](_0x4f832b)[_0x60cd('0x23')](handleEntityNotFound(_0x5b0292,null))[_0x60cd('0x23')](respondWithResult(_0x5b0292,null))[_0x60cd('0x44')](handleError(_0x5b0292,null));};exports[_0x60cd('0x48')]=function(_0x42894f,_0x2249c6){return db[_0x60cd('0x3e')]['create'](_0x42894f['body'],{})['then'](respondWithResult(_0x2249c6,0xc9))[_0x60cd('0x44')](handleError(_0x2249c6,null));};exports[_0x60cd('0x49')]=function(_0x268597,_0x36489b){return db[_0x60cd('0x3e')][_0x60cd('0x47')]({'where':{'id':_0x268597[_0x60cd('0x4a')]['id']}})[_0x60cd('0x23')](handleEntityNotFound(_0x36489b,null))[_0x60cd('0x23')](removeEntity(_0x36489b,null))[_0x60cd('0x44')](handleError(_0x36489b,null));};exports['describe']=function(_0x439b8a,_0x3db1e5){return db[_0x60cd('0x3e')]['describe']()[_0x60cd('0x23')](respondWithResult(_0x3db1e5,null))[_0x60cd('0x44')](handleError(_0x3db1e5,null));};exports[_0x60cd('0x22')]=function(_0x3e37c2,_0xf474bc){if(_0x3e37c2['body']['uniqueid']){delete _0x3e37c2['body'][_0x60cd('0x4b')];}return db['VoiceCallReport']['find']({'where':{'uniqueid':_0x3e37c2[_0x60cd('0x4a')]['id'],'UserId':{'$or':[null,_0x3e37c2['user']['id']]}}})[_0x60cd('0x23')](handleEntityNotFound(_0xf474bc,null))[_0x60cd('0x23')](saveUpdates(_0x3e37c2[_0x60cd('0x4c')],null))[_0x60cd('0x23')](respondWithResult(_0xf474bc,null))[_0x60cd('0x44')](handleError(_0xf474bc,null));};