Built motion from commit (unavailable).|2.4.12
[motion2.git] / server / api / cdr / cdr.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 _0x80ed=['html-pdf','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','update','then','destroy','end','error','stack','send','Cdr','model','keys','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','key','field','options','includeAll','include','rows','catch','rawAttributes','create','body','params','find','describe'];(function(_0x599098,_0x20a2d6){var _0x97a1f5=function(_0x533396){while(--_0x533396){_0x599098['push'](_0x599098['shift']());}};_0x97a1f5(++_0x20a2d6);}(_0x80ed,0x11c));var _0xd80e=function(_0x2085bc,_0x978182){_0x2085bc=_0x2085bc-0x0;var _0x1ab799=_0x80ed[_0x2085bc];return _0x1ab799;};'use strict';var pdf=require(_0xd80e('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xd80e('0x1'));var zipdir=require(_0xd80e('0x2'));var jsonpatch=require(_0xd80e('0x3'));var rp=require('request-promise');var moment=require(_0xd80e('0x4'));var BPromise=require(_0xd80e('0x5'));var Mustache=require(_0xd80e('0x6'));var util=require(_0xd80e('0x7'));var path=require('path');var sox=require(_0xd80e('0x8'));var csv=require(_0xd80e('0x9'));var ejs=require(_0xd80e('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0xd80e('0xb'));var crypto=require(_0xd80e('0xc'));var jsforce=require(_0xd80e('0xd'));var deskjs=require(_0xd80e('0xe'));var toCsv=require(_0xd80e('0x9'));var querystring=require(_0xd80e('0xf'));var Papa=require(_0xd80e('0x10'));var Redis=require(_0xd80e('0x11'));var authService=require(_0xd80e('0x12'));var qs=require(_0xd80e('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xd80e('0x14'))(_0xd80e('0x15'));var utils=require(_0xd80e('0x16'));var config=require(_0xd80e('0x17'));var db=require(_0xd80e('0x18'))['db'];function respondWithStatusCode(_0x14ccda,_0x1a9024){_0x1a9024=_0x1a9024||0xcc;return function(_0x118f53){if(_0x118f53){return _0x14ccda[_0xd80e('0x19')](_0x1a9024);}return _0x14ccda['status'](_0x1a9024)['end']();};}function respondWithResult(_0x5eb3b2,_0x57fefb){_0x57fefb=_0x57fefb||0xc8;return function(_0x145766){if(_0x145766){return _0x5eb3b2[_0xd80e('0x1a')](_0x57fefb)[_0xd80e('0x1b')](_0x145766);}};}function respondWithFilteredResult(_0x1e8b63,_0x449c60){return function(_0x58a17e){if(_0x58a17e){var _0x595683=_0x58a17e[_0xd80e('0x1c')],_0x2c8c61=_0x449c60[_0xd80e('0x1d')],_0x3124e8=_0x449c60[_0xd80e('0x1d')]+_0x449c60[_0xd80e('0x1e')],_0x3b48ae;if(_0x3124e8>=_0x595683){_0x3124e8=_0x595683;_0x3b48ae=0xc8;}else{_0x3b48ae=0xce;}_0x1e8b63['status'](_0x3b48ae);return _0x1e8b63[_0xd80e('0x1f')](_0xd80e('0x20'),_0x2c8c61+'-'+_0x3124e8+'/'+_0x595683)[_0xd80e('0x1b')](_0x58a17e);}return null;};}function patchUpdates(_0x34e239){return function(_0x593af6){try{jsonpatch[_0xd80e('0x21')](_0x593af6,_0x34e239,!![]);}catch(_0x175c67){return BPromise[_0xd80e('0x22')](_0x175c67);}return _0x593af6['save']();};}function saveUpdates(_0x41417d,_0x2ef8a1){return function(_0x2765ea){if(_0x2765ea){return _0x2765ea[_0xd80e('0x23')](_0x41417d)[_0xd80e('0x24')](function(_0x5509d4){return _0x5509d4;});}return null;};}function removeEntity(_0x4b6b8a,_0x35a1bc){return function(_0x3fa159){if(_0x3fa159){return _0x3fa159[_0xd80e('0x25')]()[_0xd80e('0x24')](function(){_0x4b6b8a[_0xd80e('0x1a')](0xcc)[_0xd80e('0x26')]();});}};}function handleEntityNotFound(_0x43152c,_0x5430b6){return function(_0x1fbf8a){if(!_0x1fbf8a){_0x43152c[_0xd80e('0x19')](0x194);}return _0x1fbf8a;};}function handleError(_0x170109,_0x5b0d6d){_0x5b0d6d=_0x5b0d6d||0x1f4;return function(_0x635ce0){logger[_0xd80e('0x27')](_0x635ce0[_0xd80e('0x28')]);if(_0x635ce0['name']){delete _0x635ce0['name'];}_0x170109['status'](_0x5b0d6d)[_0xd80e('0x29')](_0x635ce0);};}exports['index']=function(_0x9f9287,_0x1044cc){var _0x4e8ed9={},_0x24bafb={},_0xe1c04a={'count':0x0,'rows':[]};var _0x30d6fc=db[_0xd80e('0x2a')]['rawAttributes'];_0x24bafb[_0xd80e('0x2b')]=_[_0xd80e('0x2c')](_0x30d6fc);_0x24bafb[_0xd80e('0x2d')]=_[_0xd80e('0x2c')](_0x9f9287[_0xd80e('0x2d')]);_0x24bafb[_0xd80e('0x2e')]=_[_0xd80e('0x2f')](_0x24bafb[_0xd80e('0x2b')],_0x24bafb['query']);_0x4e8ed9['attributes']=_[_0xd80e('0x2f')](_0x24bafb[_0xd80e('0x2b')],qs[_0xd80e('0x30')](_0x9f9287[_0xd80e('0x2d')][_0xd80e('0x30')]));_0x4e8ed9[_0xd80e('0x31')]=_0x4e8ed9['attributes']['length']?_0x4e8ed9[_0xd80e('0x31')]:_0x24bafb[_0xd80e('0x2b')];if(!_0x9f9287[_0xd80e('0x2d')][_0xd80e('0x32')](_0xd80e('0x33'))){_0x4e8ed9[_0xd80e('0x1e')]=qs[_0xd80e('0x1e')](_0x9f9287[_0xd80e('0x2d')]['limit']);_0x4e8ed9['offset']=qs[_0xd80e('0x1d')](_0x9f9287[_0xd80e('0x2d')][_0xd80e('0x1d')]);}_0x4e8ed9[_0xd80e('0x34')]=qs[_0xd80e('0x35')](_0x9f9287[_0xd80e('0x2d')][_0xd80e('0x35')]);_0x4e8ed9[_0xd80e('0x36')]=qs[_0xd80e('0x2e')](_[_0xd80e('0x37')](_0x9f9287['query'],_0x24bafb[_0xd80e('0x2e')]));if(_0x9f9287['query'][_0xd80e('0x38')]){_0x4e8ed9[_0xd80e('0x36')]=_[_0xd80e('0x39')](_0x4e8ed9[_0xd80e('0x36')],{'$or':_['map'](_0x30d6fc,function(_0x3e44d7){if(_0x3e44d7['type'][_0xd80e('0x3a')]!=='VIRTUAL'){var _0xfb551a={};_0xfb551a[_0x3e44d7[_0xd80e('0x3b')]]={'$like':'%'+_0x9f9287['query'][_0xd80e('0x38')]+'%'};return _0xfb551a;}})});}_0x4e8ed9=_[_0xd80e('0x39')]({},_0x4e8ed9,_0x9f9287[_0xd80e('0x3c')]);var _0x490768={'where':_0x4e8ed9[_0xd80e('0x36')]};return db[_0xd80e('0x2a')][_0xd80e('0x1c')](_0x490768)[_0xd80e('0x24')](function(_0x3c6f5f){_0xe1c04a[_0xd80e('0x1c')]=_0x3c6f5f;if(_0x9f9287[_0xd80e('0x2d')][_0xd80e('0x3d')]){_0x4e8ed9[_0xd80e('0x3e')]=[{'all':!![]}];}return db['Cdr']['findAll'](_0x4e8ed9);})['then'](function(_0x161455){_0xe1c04a[_0xd80e('0x3f')]=_0x161455;return _0xe1c04a;})['then'](respondWithFilteredResult(_0x1044cc,_0x4e8ed9))[_0xd80e('0x40')](handleError(_0x1044cc,null));};exports['show']=function(_0x45c446,_0x5ade19){var _0x7bc136={'raw':!![],'where':{'id':_0x45c446['params']['id']}},_0xae1514={};_0xae1514['model']=_[_0xd80e('0x2c')](db[_0xd80e('0x2a')][_0xd80e('0x41')]);_0xae1514[_0xd80e('0x2d')]=_[_0xd80e('0x2c')](_0x45c446[_0xd80e('0x2d')]);_0xae1514[_0xd80e('0x2e')]=_[_0xd80e('0x2f')](_0xae1514[_0xd80e('0x2b')],_0xae1514[_0xd80e('0x2d')]);_0x7bc136[_0xd80e('0x31')]=_[_0xd80e('0x2f')](_0xae1514[_0xd80e('0x2b')],qs[_0xd80e('0x30')](_0x45c446[_0xd80e('0x2d')][_0xd80e('0x30')]));_0x7bc136['attributes']=_0x7bc136['attributes']['length']?_0x7bc136[_0xd80e('0x31')]:_0xae1514['model'];if(_0x45c446[_0xd80e('0x2d')][_0xd80e('0x3d')]){_0x7bc136[_0xd80e('0x3e')]=[{'all':!![]}];}_0x7bc136=_[_0xd80e('0x39')]({},_0x7bc136,_0x45c446[_0xd80e('0x3c')]);return db[_0xd80e('0x2a')]['find'](_0x7bc136)['then'](handleEntityNotFound(_0x5ade19,null))['then'](respondWithResult(_0x5ade19,null))[_0xd80e('0x40')](handleError(_0x5ade19,null));};exports['create']=function(_0x25d537,_0x3f866d){return db[_0xd80e('0x2a')][_0xd80e('0x42')](_0x25d537[_0xd80e('0x43')],{})['then'](respondWithResult(_0x3f866d,0xc9))[_0xd80e('0x40')](handleError(_0x3f866d,null));};exports[_0xd80e('0x23')]=function(_0x3217c7,_0x5ba71d){if(_0x3217c7[_0xd80e('0x43')]['id']){delete _0x3217c7[_0xd80e('0x43')]['id'];}return db[_0xd80e('0x2a')]['find']({'where':{'id':_0x3217c7[_0xd80e('0x44')]['id']}})[_0xd80e('0x24')](handleEntityNotFound(_0x5ba71d,null))[_0xd80e('0x24')](saveUpdates(_0x3217c7[_0xd80e('0x43')],null))[_0xd80e('0x24')](respondWithResult(_0x5ba71d,null))[_0xd80e('0x40')](handleError(_0x5ba71d,null));};exports['destroy']=function(_0x5aad1b,_0x275985){return db[_0xd80e('0x2a')][_0xd80e('0x45')]({'where':{'id':_0x5aad1b['params']['id']}})['then'](handleEntityNotFound(_0x275985,null))[_0xd80e('0x24')](removeEntity(_0x275985,null))[_0xd80e('0x40')](handleError(_0x275985,null));};exports[_0xd80e('0x46')]=function(_0x1c0da8,_0x1b996b){return db['Cdr'][_0xd80e('0x46')]()['then'](respondWithResult(_0x1b996b,null))[_0xd80e('0x40')](handleError(_0x1b996b,null));};