Built motion from commit (unavailable).|2.5.0
[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 _0x40dc=['error','stack','name','send','index','map','VoiceCallReport','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','sort','where','filter','merge','VIRTUAL','options','include','alias','User','findAll','rows','catch','show','params','includeAll','find','create','body','describe','uniqueid','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','to-csv','lodash','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','sendStatus'];(function(_0x4f865f,_0x482fb5){var _0x2d14e6=function(_0x1950de){while(--_0x1950de){_0x4f865f['push'](_0x4f865f['shift']());}};_0x2d14e6(++_0x482fb5);}(_0x40dc,0x19f));var _0xc40d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x40dc[_0x3dd15e];return _0x231fd0;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xc40d('0x0'));var rimraf=require(_0xc40d('0x1'));var zipdir=require(_0xc40d('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xc40d('0x3'));var moment=require(_0xc40d('0x4'));var BPromise=require(_0xc40d('0x5'));var Mustache=require(_0xc40d('0x6'));var util=require(_0xc40d('0x7'));var path=require('path');var sox=require('sox');var csv=require(_0xc40d('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xc40d('0x9'));var squel=require('squel');var crypto=require(_0xc40d('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xc40d('0xb'));var toCsv=require(_0xc40d('0x8'));var querystring=require(_0xc40d('0xc'));var Papa=require(_0xc40d('0xd'));var Redis=require('ioredis');var authService=require(_0xc40d('0xe'));var qs=require(_0xc40d('0xf'));var as=require(_0xc40d('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xc40d('0x11'))('api');var utils=require(_0xc40d('0x12'));var config=require(_0xc40d('0x13'));var db=require(_0xc40d('0x14'))['db'];function respondWithStatusCode(_0x2c1a4b,_0x4153e9){_0x4153e9=_0x4153e9||0xcc;return function(_0x563dd8){if(_0x563dd8){return _0x2c1a4b['sendStatus'](_0x4153e9);}return _0x2c1a4b[_0xc40d('0x15')](_0x4153e9)[_0xc40d('0x16')]();};}function respondWithResult(_0x5b413a,_0x245a23){_0x245a23=_0x245a23||0xc8;return function(_0x12e2f6){if(_0x12e2f6){return _0x5b413a[_0xc40d('0x15')](_0x245a23)[_0xc40d('0x17')](_0x12e2f6);}};}function respondWithFilteredResult(_0x3709fe,_0x2749fc){return function(_0x5699e5){if(_0x5699e5){var _0x2baf83=_0x5699e5[_0xc40d('0x18')],_0x316205=_0x2749fc[_0xc40d('0x19')],_0x31bcde=_0x2749fc[_0xc40d('0x19')]+_0x2749fc[_0xc40d('0x1a')],_0x33b513;if(_0x31bcde>=_0x2baf83){_0x31bcde=_0x2baf83;_0x33b513=0xc8;}else{_0x33b513=0xce;}_0x3709fe[_0xc40d('0x15')](_0x33b513);return _0x3709fe['set'](_0xc40d('0x1b'),_0x316205+'-'+_0x31bcde+'/'+_0x2baf83)['json'](_0x5699e5);}return null;};}function patchUpdates(_0x279410){return function(_0x2b2a2a){try{jsonpatch[_0xc40d('0x1c')](_0x2b2a2a,_0x279410,!![]);}catch(_0x1ddb32){return BPromise[_0xc40d('0x1d')](_0x1ddb32);}return _0x2b2a2a[_0xc40d('0x1e')]();};}function saveUpdates(_0x237aa4,_0x4548b5){return function(_0x42f26e){if(_0x42f26e){return _0x42f26e[_0xc40d('0x1f')](_0x237aa4)[_0xc40d('0x20')](function(_0x3e5961){return _0x3e5961;});}return null;};}function removeEntity(_0x1849ea,_0x142a5b){return function(_0x340163){if(_0x340163){return _0x340163[_0xc40d('0x21')]()['then'](function(){_0x1849ea[_0xc40d('0x15')](0xcc)[_0xc40d('0x16')]();});}};}function handleEntityNotFound(_0x2e7088,_0x3779ee){return function(_0x1da406){if(!_0x1da406){_0x2e7088[_0xc40d('0x22')](0x194);}return _0x1da406;};}function handleError(_0x290585,_0x267046){_0x267046=_0x267046||0x1f4;return function(_0x21928a){logger[_0xc40d('0x23')](_0x21928a[_0xc40d('0x24')]);if(_0x21928a['name']){delete _0x21928a[_0xc40d('0x25')];}_0x290585['status'](_0x267046)[_0xc40d('0x26')](_0x21928a);};}exports[_0xc40d('0x27')]=function(_0x2ef2c0,_0x46ef35){var _0x40df2d={},_0x114877={},_0x37ede4={'count':0x0,'rows':[]};var _0x5e0371=_[_0xc40d('0x28')](db[_0xc40d('0x29')][_0xc40d('0x2a')],function(_0x7c562c){return{'name':_0x7c562c[_0xc40d('0x2b')],'type':_0x7c562c[_0xc40d('0x2c')][_0xc40d('0x2d')]};});_0x114877['model']=_[_0xc40d('0x28')](_0x5e0371,_0xc40d('0x25'));_0x114877[_0xc40d('0x2e')]=_[_0xc40d('0x2f')](_0x2ef2c0[_0xc40d('0x2e')]);_0x114877[_0xc40d('0x30')]=_[_0xc40d('0x31')](_0x114877[_0xc40d('0x32')],_0x114877[_0xc40d('0x2e')]);_0x40df2d['attributes']=_[_0xc40d('0x31')](_0x114877[_0xc40d('0x32')],qs['fields'](_0x2ef2c0[_0xc40d('0x2e')][_0xc40d('0x33')]));_0x40df2d[_0xc40d('0x34')]=_0x40df2d[_0xc40d('0x34')][_0xc40d('0x35')]?_0x40df2d[_0xc40d('0x34')]:_0x114877[_0xc40d('0x32')];if(!_0x2ef2c0[_0xc40d('0x2e')][_0xc40d('0x36')]('nolimit')){_0x40df2d[_0xc40d('0x1a')]=qs['limit'](_0x2ef2c0[_0xc40d('0x2e')]['limit']);_0x40df2d[_0xc40d('0x19')]=qs['offset'](_0x2ef2c0[_0xc40d('0x2e')][_0xc40d('0x19')]);}_0x40df2d['order']=qs[_0xc40d('0x37')](_0x2ef2c0[_0xc40d('0x2e')][_0xc40d('0x37')]);_0x40df2d[_0xc40d('0x38')]=qs[_0xc40d('0x30')](_['pick'](_0x2ef2c0['query'],_0x114877[_0xc40d('0x30')]),_0x5e0371);if(_0x2ef2c0[_0xc40d('0x2e')][_0xc40d('0x39')]){_0x40df2d[_0xc40d('0x38')]=_[_0xc40d('0x3a')](_0x40df2d[_0xc40d('0x38')],{'$or':_[_0xc40d('0x28')](_0x5e0371,function(_0x31eaaf){if(_0x31eaaf[_0xc40d('0x2c')]!==_0xc40d('0x3b')){var _0x23abeb={};_0x23abeb[_0x31eaaf[_0xc40d('0x25')]]={'$like':'%'+_0x2ef2c0['query'][_0xc40d('0x39')]+'%'};return _0x23abeb;}})});}_0x40df2d=_[_0xc40d('0x3a')]({},_0x40df2d,_0x2ef2c0[_0xc40d('0x3c')]);var _0x43425c={'where':_0x40df2d[_0xc40d('0x38')]};return db[_0xc40d('0x29')][_0xc40d('0x18')](_0x43425c)[_0xc40d('0x20')](function(_0x2e83b3){_0x37ede4[_0xc40d('0x18')]=_0x2e83b3;if(_0x2ef2c0['query']['includeAll']){_0x40df2d[_0xc40d('0x3d')]=[{'attributes':['id',_0xc40d('0x25'),'fullname',_0xc40d('0x3e')],'model':db[_0xc40d('0x3f')],'as':_0xc40d('0x3f')}];}return db[_0xc40d('0x29')][_0xc40d('0x40')](_0x40df2d);})['then'](function(_0x58cb97){_0x37ede4[_0xc40d('0x41')]=_0x58cb97;return _0x37ede4;})[_0xc40d('0x20')](respondWithFilteredResult(_0x46ef35,_0x40df2d))[_0xc40d('0x42')](handleError(_0x46ef35,null));};exports[_0xc40d('0x43')]=function(_0x2b90ba,_0x2a42dd){var _0x14a481={'raw':!![],'where':{'id':_0x2b90ba[_0xc40d('0x44')]['id']}},_0x319ee4={};_0x319ee4['model']=_[_0xc40d('0x2f')](db['VoiceCallReport'][_0xc40d('0x2a')]);_0x319ee4['query']=_[_0xc40d('0x2f')](_0x2b90ba['query']);_0x319ee4[_0xc40d('0x30')]=_['intersection'](_0x319ee4[_0xc40d('0x32')],_0x319ee4['query']);_0x14a481[_0xc40d('0x34')]=_[_0xc40d('0x31')](_0x319ee4['model'],qs['fields'](_0x2b90ba[_0xc40d('0x2e')][_0xc40d('0x33')]));_0x14a481[_0xc40d('0x34')]=_0x14a481[_0xc40d('0x34')][_0xc40d('0x35')]?_0x14a481[_0xc40d('0x34')]:_0x319ee4[_0xc40d('0x32')];if(_0x2b90ba['query'][_0xc40d('0x45')]){_0x14a481[_0xc40d('0x3d')]=[{'all':!![]}];}_0x14a481=_['merge']({},_0x14a481,_0x2b90ba[_0xc40d('0x3c')]);return db['VoiceCallReport'][_0xc40d('0x46')](_0x14a481)[_0xc40d('0x20')](handleEntityNotFound(_0x2a42dd,null))[_0xc40d('0x20')](respondWithResult(_0x2a42dd,null))[_0xc40d('0x42')](handleError(_0x2a42dd,null));};exports[_0xc40d('0x47')]=function(_0x1682f7,_0x43513a){return db[_0xc40d('0x29')]['create'](_0x1682f7[_0xc40d('0x48')],{})['then'](respondWithResult(_0x43513a,0xc9))[_0xc40d('0x42')](handleError(_0x43513a,null));};exports[_0xc40d('0x21')]=function(_0x4154eb,_0xc2e9ef){return db[_0xc40d('0x29')][_0xc40d('0x46')]({'where':{'id':_0x4154eb[_0xc40d('0x44')]['id']}})[_0xc40d('0x20')](handleEntityNotFound(_0xc2e9ef,null))[_0xc40d('0x20')](removeEntity(_0xc2e9ef,null))[_0xc40d('0x42')](handleError(_0xc2e9ef,null));};exports[_0xc40d('0x49')]=function(_0x502a1a,_0x4fbff3){return db[_0xc40d('0x29')][_0xc40d('0x49')]()[_0xc40d('0x20')](respondWithResult(_0x4fbff3,null))[_0xc40d('0x42')](handleError(_0x4fbff3,null));};exports[_0xc40d('0x1f')]=function(_0x1bda26,_0x253d1e){if(_0x1bda26[_0xc40d('0x48')][_0xc40d('0x4a')]){delete _0x1bda26[_0xc40d('0x48')][_0xc40d('0x4a')];}return db[_0xc40d('0x29')]['find']({'where':{'uniqueid':_0x1bda26[_0xc40d('0x44')]['id'],'UserId':{'$or':[null,_0x1bda26['user']['id']]}}})[_0xc40d('0x20')](handleEntityNotFound(_0x253d1e,null))[_0xc40d('0x20')](saveUpdates(_0x1bda26[_0xc40d('0x48')],null))['then'](respondWithResult(_0x253d1e,null))[_0xc40d('0x42')](handleError(_0x253d1e,null));};