5eaca9f0e0ef0eb49eb7f26448eb9b4e0db9a716
[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 _0x14a3=['filters','intersection','fields','attributes','length','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','rawAttributes','find','create','body','describe','eml-format','zip-dir','request-promise','moment','mustache','util','path','sox','to-csv','fs-extra','squel','crypto','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','offset','undefined','limit','count','set','Content-Range','json','reject','save','then','destroy','end','stack','name','send','index','map','OpenchannelTransferReport','fieldName','type','key','model','query','keys'];(function(_0x5d9eed,_0x3f68f0){var _0x5a924e=function(_0x5b58a2){while(--_0x5b58a2){_0x5d9eed['push'](_0x5d9eed['shift']());}};_0x5a924e(++_0x3f68f0);}(_0x14a3,0x13e));var _0x314a=function(_0x1ce9ea,_0x32e6f4){_0x1ce9ea=_0x1ce9ea-0x0;var _0x2a95b9=_0x14a3[_0x1ce9ea];return _0x2a95b9;};'use strict';var emlformat=require(_0x314a('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x314a('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x314a('0x2'));var moment=require(_0x314a('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x314a('0x4'));var util=require(_0x314a('0x5'));var path=require(_0x314a('0x6'));var sox=require(_0x314a('0x7'));var csv=require(_0x314a('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x314a('0x9'));var _=require('lodash');var squel=require(_0x314a('0xa'));var crypto=require(_0x314a('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x314a('0xc'));var toCsv=require(_0x314a('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x314a('0xd'));var authService=require(_0x314a('0xe'));var qs=require(_0x314a('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x314a('0x10'));var logger=require(_0x314a('0x11'))(_0x314a('0x12'));var utils=require(_0x314a('0x13'));var config=require(_0x314a('0x14'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4b01f3,_0x33c2af){_0x33c2af=_0x33c2af||0xcc;return function(_0x563b6b){if(_0x563b6b){return _0x4b01f3[_0x314a('0x15')](_0x33c2af);}return _0x4b01f3[_0x314a('0x16')](_0x33c2af)['end']();};}function respondWithResult(_0x10bbf5,_0x51c152){_0x51c152=_0x51c152||0xc8;return function(_0x14b933){if(_0x14b933){return _0x10bbf5[_0x314a('0x16')](_0x51c152)['json'](_0x14b933);}};}function respondWithFilteredResult(_0x54bf98,_0x2ffa25){return function(_0x300555){if(_0x300555){var _0x677dc1=typeof _0x2ffa25[_0x314a('0x17')]===_0x314a('0x18')&&typeof _0x2ffa25[_0x314a('0x19')]===_0x314a('0x18');var _0x526089=_0x300555[_0x314a('0x1a')];var _0x1f605a=_0x677dc1?0x0:_0x2ffa25[_0x314a('0x17')];var _0x599470=_0x677dc1?_0x300555[_0x314a('0x1a')]:_0x2ffa25['offset']+_0x2ffa25['limit'];var _0x15393a;if(_0x599470>=_0x526089){_0x599470=_0x526089;_0x15393a=0xc8;}else{_0x15393a=0xce;}_0x54bf98[_0x314a('0x16')](_0x15393a);return _0x54bf98[_0x314a('0x1b')](_0x314a('0x1c'),_0x1f605a+'-'+_0x599470+'/'+_0x526089)[_0x314a('0x1d')](_0x300555);}return null;};}function patchUpdates(_0xa4889e){return function(_0x2183c6){try{jsonpatch['apply'](_0x2183c6,_0xa4889e,!![]);}catch(_0x28c4d6){return BPromise[_0x314a('0x1e')](_0x28c4d6);}return _0x2183c6[_0x314a('0x1f')]();};}function saveUpdates(_0x2a6321,_0x336eec){return function(_0x97c4b1){if(_0x97c4b1){return _0x97c4b1['update'](_0x2a6321)[_0x314a('0x20')](function(_0x377a75){return _0x377a75;});}return null;};}function removeEntity(_0x304474,_0x933d21){return function(_0x2001e8){if(_0x2001e8){return _0x2001e8[_0x314a('0x21')]()[_0x314a('0x20')](function(){_0x304474[_0x314a('0x16')](0xcc)[_0x314a('0x22')]();});}};}function handleEntityNotFound(_0x905b18,_0x53b691){return function(_0x3073e5){if(!_0x3073e5){_0x905b18[_0x314a('0x15')](0x194);}return _0x3073e5;};}function handleError(_0x59e1be,_0x440220){_0x440220=_0x440220||0x1f4;return function(_0x436fc1){logger['error'](_0x436fc1[_0x314a('0x23')]);if(_0x436fc1[_0x314a('0x24')]){delete _0x436fc1[_0x314a('0x24')];}_0x59e1be[_0x314a('0x16')](_0x440220)[_0x314a('0x25')](_0x436fc1);};}exports[_0x314a('0x26')]=function(_0x38c1b0,_0x25959c){var _0x5e8830={},_0x18a4aa={},_0xd218b4={'count':0x0,'rows':[]};var _0x5541eb=_[_0x314a('0x27')](db[_0x314a('0x28')]['rawAttributes'],function(_0x4d298f){return{'name':_0x4d298f[_0x314a('0x29')],'type':_0x4d298f[_0x314a('0x2a')][_0x314a('0x2b')]};});_0x18a4aa[_0x314a('0x2c')]=_['map'](_0x5541eb,_0x314a('0x24'));_0x18a4aa[_0x314a('0x2d')]=_[_0x314a('0x2e')](_0x38c1b0['query']);_0x18a4aa[_0x314a('0x2f')]=_['intersection'](_0x18a4aa[_0x314a('0x2c')],_0x18a4aa[_0x314a('0x2d')]);_0x5e8830['attributes']=_[_0x314a('0x30')](_0x18a4aa[_0x314a('0x2c')],qs[_0x314a('0x31')](_0x38c1b0[_0x314a('0x2d')][_0x314a('0x31')]));_0x5e8830[_0x314a('0x32')]=_0x5e8830['attributes'][_0x314a('0x33')]?_0x5e8830['attributes']:_0x18a4aa[_0x314a('0x2c')];if(!_0x38c1b0['query']['hasOwnProperty'](_0x314a('0x34'))){_0x5e8830['limit']=qs[_0x314a('0x19')](_0x38c1b0[_0x314a('0x2d')][_0x314a('0x19')]);_0x5e8830['offset']=qs[_0x314a('0x17')](_0x38c1b0[_0x314a('0x2d')][_0x314a('0x17')]);}_0x5e8830[_0x314a('0x35')]=qs['sort'](_0x38c1b0['query'][_0x314a('0x36')]);_0x5e8830[_0x314a('0x37')]=qs[_0x314a('0x2f')](_[_0x314a('0x38')](_0x38c1b0['query'],_0x18a4aa['filters']),_0x5541eb);if(_0x38c1b0[_0x314a('0x2d')][_0x314a('0x39')]){_0x5e8830['where']=_[_0x314a('0x3a')](_0x5e8830[_0x314a('0x37')],{'$or':_['map'](_0x5541eb,function(_0x354fc3){if(_0x354fc3['type']!==_0x314a('0x3b')){var _0x3467a2={};_0x3467a2[_0x354fc3[_0x314a('0x24')]]={'$like':'%'+_0x38c1b0['query']['filter']+'%'};return _0x3467a2;}})});}_0x5e8830=_[_0x314a('0x3a')]({},_0x5e8830,_0x38c1b0[_0x314a('0x3c')]);var _0x627139={'where':_0x5e8830[_0x314a('0x37')]};return db[_0x314a('0x28')][_0x314a('0x1a')](_0x627139)['then'](function(_0xb32cdc){_0xd218b4[_0x314a('0x1a')]=_0xb32cdc;if(_0x38c1b0[_0x314a('0x2d')][_0x314a('0x3d')]){_0x5e8830[_0x314a('0x3e')]=[{'all':!![]}];}return db[_0x314a('0x28')][_0x314a('0x3f')](_0x5e8830);})[_0x314a('0x20')](function(_0x5028f4){_0xd218b4[_0x314a('0x40')]=_0x5028f4;return _0xd218b4;})[_0x314a('0x20')](respondWithFilteredResult(_0x25959c,_0x5e8830))[_0x314a('0x41')](handleError(_0x25959c,null));};exports[_0x314a('0x42')]=function(_0x2ffc0c,_0x3f8392){var _0x1119a7={'raw':!![],'where':{'id':_0x2ffc0c[_0x314a('0x43')]['id']}},_0x519663={};_0x519663[_0x314a('0x2c')]=_[_0x314a('0x2e')](db[_0x314a('0x28')][_0x314a('0x44')]);_0x519663[_0x314a('0x2d')]=_[_0x314a('0x2e')](_0x2ffc0c['query']);_0x519663[_0x314a('0x2f')]=_[_0x314a('0x30')](_0x519663['model'],_0x519663[_0x314a('0x2d')]);_0x1119a7['attributes']=_[_0x314a('0x30')](_0x519663[_0x314a('0x2c')],qs[_0x314a('0x31')](_0x2ffc0c[_0x314a('0x2d')][_0x314a('0x31')]));_0x1119a7['attributes']=_0x1119a7['attributes'][_0x314a('0x33')]?_0x1119a7[_0x314a('0x32')]:_0x519663[_0x314a('0x2c')];if(_0x2ffc0c[_0x314a('0x2d')][_0x314a('0x3d')]){_0x1119a7['include']=[{'all':!![]}];}_0x1119a7=_['merge']({},_0x1119a7,_0x2ffc0c[_0x314a('0x3c')]);return db[_0x314a('0x28')][_0x314a('0x45')](_0x1119a7)[_0x314a('0x20')](handleEntityNotFound(_0x3f8392,null))[_0x314a('0x20')](respondWithResult(_0x3f8392,null))[_0x314a('0x41')](handleError(_0x3f8392,null));};exports['create']=function(_0x488494,_0x52601c){return db[_0x314a('0x28')][_0x314a('0x46')](_0x488494['body'],{})['then'](respondWithResult(_0x52601c,0xc9))['catch'](handleError(_0x52601c,null));};exports['update']=function(_0x3511f2,_0x35bbf5){if(_0x3511f2[_0x314a('0x47')]['id']){delete _0x3511f2[_0x314a('0x47')]['id'];}return db[_0x314a('0x28')][_0x314a('0x45')]({'where':{'id':_0x3511f2[_0x314a('0x43')]['id']}})['then'](handleEntityNotFound(_0x35bbf5,null))[_0x314a('0x20')](saveUpdates(_0x3511f2['body'],null))[_0x314a('0x20')](respondWithResult(_0x35bbf5,null))[_0x314a('0x41')](handleError(_0x35bbf5,null));};exports[_0x314a('0x21')]=function(_0x2d3430,_0x962e03){return db[_0x314a('0x28')]['find']({'where':{'id':_0x2d3430['params']['id']}})[_0x314a('0x20')](handleEntityNotFound(_0x962e03,null))['then'](removeEntity(_0x962e03,null))[_0x314a('0x41')](handleError(_0x962e03,null));};exports[_0x314a('0x48')]=function(_0xc2954b,_0x26d20a){return db[_0x314a('0x28')]['describe']()[_0x314a('0x20')](respondWithResult(_0x26d20a,null))['catch'](handleError(_0x26d20a,null));};