95a257c2c5a190e4cda06e6963c2384d2fe39eb2
[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 _0xe773=['filters','attributes','intersection','fields','nolimit','limit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','rawAttributes','length','include','find','create','body','describe','eml-format','rimraf','zip-dir','request-promise','moment','util','path','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','end','undefined','count','offset','Content-Range','json','apply','reject','save','update','then','destroy','sendStatus','name','send','index','OpenchannelTransferReport','fieldName','type','model','map','query','keys'];(function(_0x18b7a2,_0x52ab89){var _0x85272e=function(_0x152254){while(--_0x152254){_0x18b7a2['push'](_0x18b7a2['shift']());}};_0x85272e(++_0x52ab89);}(_0xe773,0x1d6));var _0x3e77=function(_0x6df526,_0x4fe974){_0x6df526=_0x6df526-0x0;var _0x27ac79=_0xe773[_0x6df526];return _0x27ac79;};'use strict';var emlformat=require(_0x3e77('0x0'));var rimraf=require(_0x3e77('0x1'));var zipdir=require(_0x3e77('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3e77('0x3'));var moment=require(_0x3e77('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x3e77('0x5'));var path=require(_0x3e77('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x3e77('0x7'));var fs=require('fs');var fs_extra=require(_0x3e77('0x8'));var _=require(_0x3e77('0x9'));var squel=require(_0x3e77('0xa'));var crypto=require(_0x3e77('0xb'));var jsforce=require(_0x3e77('0xc'));var deskjs=require(_0x3e77('0xd'));var toCsv=require(_0x3e77('0xe'));var querystring=require(_0x3e77('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x3e77('0x10'));var as=require(_0x3e77('0x11'));var hardwareService=require(_0x3e77('0x12'));var logger=require(_0x3e77('0x13'))(_0x3e77('0x14'));var utils=require(_0x3e77('0x15'));var config=require(_0x3e77('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x3e77('0x17'))['db'];function respondWithStatusCode(_0x2633c4,_0x4804cf){_0x4804cf=_0x4804cf||0xcc;return function(_0x293c4a){if(_0x293c4a){return _0x2633c4['sendStatus'](_0x4804cf);}return _0x2633c4[_0x3e77('0x18')](_0x4804cf)[_0x3e77('0x19')]();};}function respondWithResult(_0x225bf2,_0x4cc0e){_0x4cc0e=_0x4cc0e||0xc8;return function(_0x44d081){if(_0x44d081){return _0x225bf2[_0x3e77('0x18')](_0x4cc0e)['json'](_0x44d081);}};}function respondWithFilteredResult(_0x368cca,_0x26df53){return function(_0x1c51aa){if(_0x1c51aa){var _0x1a0187=typeof _0x26df53['offset']===_0x3e77('0x1a')&&typeof _0x26df53['limit']===_0x3e77('0x1a');var _0x32e2cd=_0x1c51aa[_0x3e77('0x1b')];var _0x433bb0=_0x1a0187?0x0:_0x26df53[_0x3e77('0x1c')];var _0x27e6b9=_0x1a0187?_0x1c51aa[_0x3e77('0x1b')]:_0x26df53[_0x3e77('0x1c')]+_0x26df53['limit'];var _0x3bc904;if(_0x27e6b9>=_0x32e2cd){_0x27e6b9=_0x32e2cd;_0x3bc904=0xc8;}else{_0x3bc904=0xce;}_0x368cca[_0x3e77('0x18')](_0x3bc904);return _0x368cca['set'](_0x3e77('0x1d'),_0x433bb0+'-'+_0x27e6b9+'/'+_0x32e2cd)[_0x3e77('0x1e')](_0x1c51aa);}return null;};}function patchUpdates(_0x4b9377){return function(_0x53974d){try{jsonpatch[_0x3e77('0x1f')](_0x53974d,_0x4b9377,!![]);}catch(_0x47620d){return BPromise[_0x3e77('0x20')](_0x47620d);}return _0x53974d[_0x3e77('0x21')]();};}function saveUpdates(_0x1ea799,_0x229ded){return function(_0x5d3ef8){if(_0x5d3ef8){return _0x5d3ef8[_0x3e77('0x22')](_0x1ea799)[_0x3e77('0x23')](function(_0x757796){return _0x757796;});}return null;};}function removeEntity(_0x5a84cb,_0x5f5d27){return function(_0x3c7461){if(_0x3c7461){return _0x3c7461[_0x3e77('0x24')]()['then'](function(){_0x5a84cb[_0x3e77('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x568e5c,_0x321d8a){return function(_0x2ab153){if(!_0x2ab153){_0x568e5c[_0x3e77('0x25')](0x194);}return _0x2ab153;};}function handleError(_0x45ee85,_0x3a80c7){_0x3a80c7=_0x3a80c7||0x1f4;return function(_0x56e4cf){logger['error'](_0x56e4cf['stack']);if(_0x56e4cf[_0x3e77('0x26')]){delete _0x56e4cf[_0x3e77('0x26')];}_0x45ee85[_0x3e77('0x18')](_0x3a80c7)[_0x3e77('0x27')](_0x56e4cf);};}exports[_0x3e77('0x28')]=function(_0x35f732,_0x1a0005){var _0x2cc1e8={},_0x447f9d={},_0xef5327={'count':0x0,'rows':[]};var _0x3181b5=_['map'](db[_0x3e77('0x29')]['rawAttributes'],function(_0x4beb30){return{'name':_0x4beb30[_0x3e77('0x2a')],'type':_0x4beb30[_0x3e77('0x2b')]['key']};});_0x447f9d[_0x3e77('0x2c')]=_[_0x3e77('0x2d')](_0x3181b5,_0x3e77('0x26'));_0x447f9d[_0x3e77('0x2e')]=_[_0x3e77('0x2f')](_0x35f732[_0x3e77('0x2e')]);_0x447f9d[_0x3e77('0x30')]=_['intersection'](_0x447f9d[_0x3e77('0x2c')],_0x447f9d[_0x3e77('0x2e')]);_0x2cc1e8[_0x3e77('0x31')]=_[_0x3e77('0x32')](_0x447f9d['model'],qs[_0x3e77('0x33')](_0x35f732[_0x3e77('0x2e')][_0x3e77('0x33')]));_0x2cc1e8[_0x3e77('0x31')]=_0x2cc1e8[_0x3e77('0x31')]['length']?_0x2cc1e8['attributes']:_0x447f9d[_0x3e77('0x2c')];if(!_0x35f732[_0x3e77('0x2e')]['hasOwnProperty'](_0x3e77('0x34'))){_0x2cc1e8['limit']=qs[_0x3e77('0x35')](_0x35f732['query'][_0x3e77('0x35')]);_0x2cc1e8[_0x3e77('0x1c')]=qs[_0x3e77('0x1c')](_0x35f732[_0x3e77('0x2e')][_0x3e77('0x1c')]);}_0x2cc1e8[_0x3e77('0x36')]=qs[_0x3e77('0x37')](_0x35f732[_0x3e77('0x2e')][_0x3e77('0x37')]);_0x2cc1e8[_0x3e77('0x38')]=qs[_0x3e77('0x30')](_['pick'](_0x35f732[_0x3e77('0x2e')],_0x447f9d[_0x3e77('0x30')]),_0x3181b5);if(_0x35f732['query'][_0x3e77('0x39')]){_0x2cc1e8[_0x3e77('0x38')]=_[_0x3e77('0x3a')](_0x2cc1e8['where'],{'$or':_[_0x3e77('0x2d')](_0x3181b5,function(_0x5a545c){if(_0x5a545c[_0x3e77('0x2b')]!==_0x3e77('0x3b')){var _0x3ccef5={};_0x3ccef5[_0x5a545c[_0x3e77('0x26')]]={'$like':'%'+_0x35f732[_0x3e77('0x2e')][_0x3e77('0x39')]+'%'};return _0x3ccef5;}})});}_0x2cc1e8=_[_0x3e77('0x3a')]({},_0x2cc1e8,_0x35f732[_0x3e77('0x3c')]);var _0x18e42d={'where':_0x2cc1e8[_0x3e77('0x38')]};return db['OpenchannelTransferReport']['count'](_0x18e42d)[_0x3e77('0x23')](function(_0x107b32){_0xef5327[_0x3e77('0x1b')]=_0x107b32;if(_0x35f732[_0x3e77('0x2e')][_0x3e77('0x3d')]){_0x2cc1e8['include']=[{'all':!![]}];}return db['OpenchannelTransferReport'][_0x3e77('0x3e')](_0x2cc1e8);})[_0x3e77('0x23')](function(_0x112aae){_0xef5327[_0x3e77('0x3f')]=_0x112aae;return _0xef5327;})[_0x3e77('0x23')](respondWithFilteredResult(_0x1a0005,_0x2cc1e8))[_0x3e77('0x40')](handleError(_0x1a0005,null));};exports[_0x3e77('0x41')]=function(_0x1ab93f,_0x555673){var _0x4453b5={'raw':!![],'where':{'id':_0x1ab93f[_0x3e77('0x42')]['id']}},_0x32c2fb={};_0x32c2fb[_0x3e77('0x2c')]=_['keys'](db[_0x3e77('0x29')][_0x3e77('0x43')]);_0x32c2fb[_0x3e77('0x2e')]=_['keys'](_0x1ab93f[_0x3e77('0x2e')]);_0x32c2fb[_0x3e77('0x30')]=_['intersection'](_0x32c2fb[_0x3e77('0x2c')],_0x32c2fb[_0x3e77('0x2e')]);_0x4453b5['attributes']=_[_0x3e77('0x32')](_0x32c2fb[_0x3e77('0x2c')],qs[_0x3e77('0x33')](_0x1ab93f[_0x3e77('0x2e')][_0x3e77('0x33')]));_0x4453b5[_0x3e77('0x31')]=_0x4453b5[_0x3e77('0x31')][_0x3e77('0x44')]?_0x4453b5[_0x3e77('0x31')]:_0x32c2fb[_0x3e77('0x2c')];if(_0x1ab93f[_0x3e77('0x2e')]['includeAll']){_0x4453b5[_0x3e77('0x45')]=[{'all':!![]}];}_0x4453b5=_['merge']({},_0x4453b5,_0x1ab93f[_0x3e77('0x3c')]);return db['OpenchannelTransferReport'][_0x3e77('0x46')](_0x4453b5)['then'](handleEntityNotFound(_0x555673,null))[_0x3e77('0x23')](respondWithResult(_0x555673,null))[_0x3e77('0x40')](handleError(_0x555673,null));};exports[_0x3e77('0x47')]=function(_0x1beefa,_0x26ccc5){return db[_0x3e77('0x29')][_0x3e77('0x47')](_0x1beefa['body'],{})[_0x3e77('0x23')](respondWithResult(_0x26ccc5,0xc9))[_0x3e77('0x40')](handleError(_0x26ccc5,null));};exports[_0x3e77('0x22')]=function(_0x3b8a6a,_0x314794){if(_0x3b8a6a[_0x3e77('0x48')]['id']){delete _0x3b8a6a[_0x3e77('0x48')]['id'];}return db[_0x3e77('0x29')]['find']({'where':{'id':_0x3b8a6a[_0x3e77('0x42')]['id']}})[_0x3e77('0x23')](handleEntityNotFound(_0x314794,null))[_0x3e77('0x23')](saveUpdates(_0x3b8a6a[_0x3e77('0x48')],null))[_0x3e77('0x23')](respondWithResult(_0x314794,null))['catch'](handleError(_0x314794,null));};exports['destroy']=function(_0x20cde6,_0x121618){return db['OpenchannelTransferReport'][_0x3e77('0x46')]({'where':{'id':_0x20cde6[_0x3e77('0x42')]['id']}})[_0x3e77('0x23')](handleEntityNotFound(_0x121618,null))[_0x3e77('0x23')](removeEntity(_0x121618,null))[_0x3e77('0x40')](handleError(_0x121618,null));};exports[_0x3e77('0x49')]=function(_0x5db9c8,_0x35337d){return db['OpenchannelTransferReport'][_0x3e77('0x49')]()['then'](respondWithResult(_0x35337d,null))[_0x3e77('0x40')](handleError(_0x35337d,null));};