7d6640f189c5dd7984b22b821d5be9fcf1a92bc4
[motion2.git] / server / api / openchannelTransferReport / openchannelTransferReport.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 _0xbbc8=['Content-Range','apply','reject','save','then','destroy','error','name','send','index','rawAttributes','fieldName','type','model','query','keys','intersection','fields','attributes','length','nolimit','order','sort','where','filters','pick','filter','map','VIRTUAL','OpenchannelTransferReport','count','includeAll','include','findAll','catch','show','params','options','find','create','update','body','describe','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','squel','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','offset','undefined','limit','set'];(function(_0x59b233,_0x504a2a){var _0x2e6c3d=function(_0x5ab7e3){while(--_0x5ab7e3){_0x59b233['push'](_0x59b233['shift']());}};_0x2e6c3d(++_0x504a2a);}(_0xbbc8,0x106));var _0x8bbc=function(_0x2350d5,_0x2a4799){_0x2350d5=_0x2350d5-0x0;var _0x5af183=_0xbbc8[_0x2350d5];return _0x5af183;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x8bbc('0x0'));var zipdir=require(_0x8bbc('0x1'));var jsonpatch=require(_0x8bbc('0x2'));var rp=require('request-promise');var moment=require(_0x8bbc('0x3'));var BPromise=require(_0x8bbc('0x4'));var Mustache=require(_0x8bbc('0x5'));var util=require(_0x8bbc('0x6'));var path=require(_0x8bbc('0x7'));var sox=require('sox');var csv=require(_0x8bbc('0x8'));var ejs=require(_0x8bbc('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x8bbc('0xa'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x8bbc('0xb'));var toCsv=require(_0x8bbc('0x8'));var querystring=require(_0x8bbc('0xc'));var Papa=require(_0x8bbc('0xd'));var Redis=require(_0x8bbc('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x8bbc('0xf'));var as=require(_0x8bbc('0x10'));var hardwareService=require(_0x8bbc('0x11'));var logger=require(_0x8bbc('0x12'))(_0x8bbc('0x13'));var utils=require(_0x8bbc('0x14'));var config=require(_0x8bbc('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x8bbc('0x16'))['db'];function respondWithStatusCode(_0x1f7046,_0x2cfafc){_0x2cfafc=_0x2cfafc||0xcc;return function(_0x28bc17){if(_0x28bc17){return _0x1f7046[_0x8bbc('0x17')](_0x2cfafc);}return _0x1f7046[_0x8bbc('0x18')](_0x2cfafc)['end']();};}function respondWithResult(_0x498858,_0x812df5){_0x812df5=_0x812df5||0xc8;return function(_0x2e0d72){if(_0x2e0d72){return _0x498858['status'](_0x812df5)[_0x8bbc('0x19')](_0x2e0d72);}};}function respondWithFilteredResult(_0x16c16b,_0x13749e){return function(_0x1d25ab){if(_0x1d25ab){var _0x231d04=typeof _0x13749e[_0x8bbc('0x1a')]===_0x8bbc('0x1b')&&typeof _0x13749e['limit']==='undefined';var _0x2fc5a6=_0x1d25ab['count'];var _0x41b176=_0x231d04?0x0:_0x13749e[_0x8bbc('0x1a')];var _0x19ce1a=_0x231d04?_0x1d25ab['count']:_0x13749e[_0x8bbc('0x1a')]+_0x13749e[_0x8bbc('0x1c')];var _0x35cf9d;if(_0x19ce1a>=_0x2fc5a6){_0x19ce1a=_0x2fc5a6;_0x35cf9d=0xc8;}else{_0x35cf9d=0xce;}_0x16c16b[_0x8bbc('0x18')](_0x35cf9d);return _0x16c16b[_0x8bbc('0x1d')](_0x8bbc('0x1e'),_0x41b176+'-'+_0x19ce1a+'/'+_0x2fc5a6)['json'](_0x1d25ab);}return null;};}function patchUpdates(_0x2ef556){return function(_0x124c04){try{jsonpatch[_0x8bbc('0x1f')](_0x124c04,_0x2ef556,!![]);}catch(_0x89903c){return BPromise[_0x8bbc('0x20')](_0x89903c);}return _0x124c04[_0x8bbc('0x21')]();};}function saveUpdates(_0x2c9af6,_0x1729bc){return function(_0x1c9265){if(_0x1c9265){return _0x1c9265['update'](_0x2c9af6)[_0x8bbc('0x22')](function(_0x4daea8){return _0x4daea8;});}return null;};}function removeEntity(_0x38a075,_0x1f1b8d){return function(_0x47a576){if(_0x47a576){return _0x47a576[_0x8bbc('0x23')]()[_0x8bbc('0x22')](function(){_0x38a075['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x162d25,_0xe4c563){return function(_0x12dff5){if(!_0x12dff5){_0x162d25['sendStatus'](0x194);}return _0x12dff5;};}function handleError(_0x61ba2f,_0x1db690){_0x1db690=_0x1db690||0x1f4;return function(_0x10521a){logger[_0x8bbc('0x24')](_0x10521a['stack']);if(_0x10521a[_0x8bbc('0x25')]){delete _0x10521a[_0x8bbc('0x25')];}_0x61ba2f['status'](_0x1db690)[_0x8bbc('0x26')](_0x10521a);};}exports[_0x8bbc('0x27')]=function(_0x11cda0,_0x56bb36){var _0x1c6e4b={},_0x5dd3ed={},_0x32f087={'count':0x0,'rows':[]};var _0xea4e43=_['map'](db['OpenchannelTransferReport'][_0x8bbc('0x28')],function(_0x4046a1){return{'name':_0x4046a1[_0x8bbc('0x29')],'type':_0x4046a1[_0x8bbc('0x2a')]['key']};});_0x5dd3ed[_0x8bbc('0x2b')]=_['map'](_0xea4e43,_0x8bbc('0x25'));_0x5dd3ed[_0x8bbc('0x2c')]=_[_0x8bbc('0x2d')](_0x11cda0[_0x8bbc('0x2c')]);_0x5dd3ed['filters']=_[_0x8bbc('0x2e')](_0x5dd3ed[_0x8bbc('0x2b')],_0x5dd3ed[_0x8bbc('0x2c')]);_0x1c6e4b['attributes']=_['intersection'](_0x5dd3ed[_0x8bbc('0x2b')],qs[_0x8bbc('0x2f')](_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x2f')]));_0x1c6e4b[_0x8bbc('0x30')]=_0x1c6e4b['attributes'][_0x8bbc('0x31')]?_0x1c6e4b[_0x8bbc('0x30')]:_0x5dd3ed[_0x8bbc('0x2b')];if(!_0x11cda0['query']['hasOwnProperty'](_0x8bbc('0x32'))){_0x1c6e4b[_0x8bbc('0x1c')]=qs[_0x8bbc('0x1c')](_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x1c')]);_0x1c6e4b[_0x8bbc('0x1a')]=qs[_0x8bbc('0x1a')](_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x1a')]);}_0x1c6e4b[_0x8bbc('0x33')]=qs[_0x8bbc('0x34')](_0x11cda0[_0x8bbc('0x2c')]['sort']);_0x1c6e4b[_0x8bbc('0x35')]=qs[_0x8bbc('0x36')](_[_0x8bbc('0x37')](_0x11cda0[_0x8bbc('0x2c')],_0x5dd3ed['filters']),_0xea4e43);if(_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x38')]){_0x1c6e4b[_0x8bbc('0x35')]=_['merge'](_0x1c6e4b['where'],{'$or':_[_0x8bbc('0x39')](_0xea4e43,function(_0x171c43){if(_0x171c43[_0x8bbc('0x2a')]!==_0x8bbc('0x3a')){var _0x132449={};_0x132449[_0x171c43[_0x8bbc('0x25')]]={'$like':'%'+_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x38')]+'%'};return _0x132449;}})});}_0x1c6e4b=_['merge']({},_0x1c6e4b,_0x11cda0['options']);var _0x14c7f8={'where':_0x1c6e4b[_0x8bbc('0x35')]};return db[_0x8bbc('0x3b')][_0x8bbc('0x3c')](_0x14c7f8)[_0x8bbc('0x22')](function(_0x20eb21){_0x32f087[_0x8bbc('0x3c')]=_0x20eb21;if(_0x11cda0[_0x8bbc('0x2c')][_0x8bbc('0x3d')]){_0x1c6e4b[_0x8bbc('0x3e')]=[{'all':!![]}];}return db[_0x8bbc('0x3b')][_0x8bbc('0x3f')](_0x1c6e4b);})['then'](function(_0x431e28){_0x32f087['rows']=_0x431e28;return _0x32f087;})[_0x8bbc('0x22')](respondWithFilteredResult(_0x56bb36,_0x1c6e4b))[_0x8bbc('0x40')](handleError(_0x56bb36,null));};exports[_0x8bbc('0x41')]=function(_0x18eff0,_0x2ab511){var _0x3dda24={'raw':!![],'where':{'id':_0x18eff0[_0x8bbc('0x42')]['id']}},_0x112519={};_0x112519[_0x8bbc('0x2b')]=_[_0x8bbc('0x2d')](db[_0x8bbc('0x3b')][_0x8bbc('0x28')]);_0x112519[_0x8bbc('0x2c')]=_[_0x8bbc('0x2d')](_0x18eff0[_0x8bbc('0x2c')]);_0x112519[_0x8bbc('0x36')]=_[_0x8bbc('0x2e')](_0x112519[_0x8bbc('0x2b')],_0x112519[_0x8bbc('0x2c')]);_0x3dda24[_0x8bbc('0x30')]=_[_0x8bbc('0x2e')](_0x112519[_0x8bbc('0x2b')],qs['fields'](_0x18eff0['query']['fields']));_0x3dda24[_0x8bbc('0x30')]=_0x3dda24[_0x8bbc('0x30')][_0x8bbc('0x31')]?_0x3dda24[_0x8bbc('0x30')]:_0x112519['model'];if(_0x18eff0[_0x8bbc('0x2c')][_0x8bbc('0x3d')]){_0x3dda24['include']=[{'all':!![]}];}_0x3dda24=_['merge']({},_0x3dda24,_0x18eff0[_0x8bbc('0x43')]);return db[_0x8bbc('0x3b')][_0x8bbc('0x44')](_0x3dda24)[_0x8bbc('0x22')](handleEntityNotFound(_0x2ab511,null))['then'](respondWithResult(_0x2ab511,null))[_0x8bbc('0x40')](handleError(_0x2ab511,null));};exports[_0x8bbc('0x45')]=function(_0x522a0a,_0x40e15e){return db[_0x8bbc('0x3b')][_0x8bbc('0x45')](_0x522a0a['body'],{})[_0x8bbc('0x22')](respondWithResult(_0x40e15e,0xc9))['catch'](handleError(_0x40e15e,null));};exports[_0x8bbc('0x46')]=function(_0x540eee,_0x5f3da7){if(_0x540eee[_0x8bbc('0x47')]['id']){delete _0x540eee[_0x8bbc('0x47')]['id'];}return db[_0x8bbc('0x3b')][_0x8bbc('0x44')]({'where':{'id':_0x540eee[_0x8bbc('0x42')]['id']}})[_0x8bbc('0x22')](handleEntityNotFound(_0x5f3da7,null))[_0x8bbc('0x22')](saveUpdates(_0x540eee['body'],null))['then'](respondWithResult(_0x5f3da7,null))[_0x8bbc('0x40')](handleError(_0x5f3da7,null));};exports['destroy']=function(_0x1963dc,_0xf1f7db){return db[_0x8bbc('0x3b')]['find']({'where':{'id':_0x1963dc[_0x8bbc('0x42')]['id']}})[_0x8bbc('0x22')](handleEntityNotFound(_0xf1f7db,null))[_0x8bbc('0x22')](removeEntity(_0xf1f7db,null))['catch'](handleError(_0xf1f7db,null));};exports[_0x8bbc('0x48')]=function(_0x4b38aa,_0x2d0a3c){return db[_0x8bbc('0x3b')]['describe']()[_0x8bbc('0x22')](respondWithResult(_0x2d0a3c,null))[_0x8bbc('0x40')](handleError(_0x2d0a3c,null));};