4f0f208564f2dfe535c201e4a2270ac1969aaa8e
[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 _0x58cc=['name','send','render','body','contact','message','agent','interaction','account','index','OpenchannelTransferReport','rawAttributes','fieldName','model','map','keys','filters','intersection','attributes','fields','query','length','order','sort','where','pick','merge','type','VIRTUAL','filter','includeAll','findAll','catch','show','options','find','create','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','ejs','fs-extra','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack'];(function(_0x5111d3,_0x28a95b){var _0x3a1ebd=function(_0x1c2d6e){while(--_0x1c2d6e){_0x5111d3['push'](_0x5111d3['shift']());}};_0x3a1ebd(++_0x28a95b);}(_0x58cc,0x167));var _0xc58c=function(_0x12d033,_0x25fa2f){_0x12d033=_0x12d033-0x0;var _0x3b4e80=_0x58cc[_0x12d033];return _0x3b4e80;};'use strict';var emlformat=require(_0xc58c('0x0'));var rimraf=require(_0xc58c('0x1'));var zipdir=require(_0xc58c('0x2'));var jsonpatch=require(_0xc58c('0x3'));var rp=require(_0xc58c('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xc58c('0x5'));var util=require(_0xc58c('0x6'));var path=require(_0xc58c('0x7'));var sox=require(_0xc58c('0x8'));var csv=require('to-csv');var ejs=require(_0xc58c('0x9'));var fs=require('fs');var fs_extra=require(_0xc58c('0xa'));var _=require('lodash');var squel=require(_0xc58c('0xb'));var crypto=require(_0xc58c('0xc'));var jsforce=require(_0xc58c('0xd'));var deskjs=require(_0xc58c('0xe'));var toCsv=require(_0xc58c('0xf'));var querystring=require(_0xc58c('0x10'));var Papa=require(_0xc58c('0x11'));var Redis=require(_0xc58c('0x12'));var authService=require(_0xc58c('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc58c('0x14'));var logger=require(_0xc58c('0x15'))('api');var utils=require(_0xc58c('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xc58c('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4162c8,_0x14d3b1){_0x14d3b1=_0x14d3b1||0xcc;return function(_0x2187e2){if(_0x2187e2){return _0x4162c8[_0xc58c('0x18')](_0x14d3b1);}return _0x4162c8[_0xc58c('0x19')](_0x14d3b1)['end']();};}function respondWithResult(_0x36d966,_0x8686a3){_0x8686a3=_0x8686a3||0xc8;return function(_0x5a8c43){if(_0x5a8c43){return _0x36d966[_0xc58c('0x19')](_0x8686a3)[_0xc58c('0x1a')](_0x5a8c43);}};}function respondWithFilteredResult(_0x2f565b,_0x4c8784){return function(_0xf123d7){if(_0xf123d7){var _0x389890=typeof _0x4c8784[_0xc58c('0x1b')]===_0xc58c('0x1c')&&typeof _0x4c8784[_0xc58c('0x1d')]===_0xc58c('0x1c');var _0x20a8cd=_0xf123d7[_0xc58c('0x1e')];var _0x55205b=_0x389890?0x0:_0x4c8784[_0xc58c('0x1b')];var _0x2b2246=_0x389890?_0xf123d7['count']:_0x4c8784[_0xc58c('0x1b')]+_0x4c8784[_0xc58c('0x1d')];var _0x18748c;if(_0x2b2246>=_0x20a8cd){_0x2b2246=_0x20a8cd;_0x18748c=0xc8;}else{_0x18748c=0xce;}_0x2f565b['status'](_0x18748c);return _0x2f565b[_0xc58c('0x1f')](_0xc58c('0x20'),_0x55205b+'-'+_0x2b2246+'/'+_0x20a8cd)[_0xc58c('0x1a')](_0xf123d7);}return null;};}function patchUpdates(_0x186093){return function(_0x5f241f){try{jsonpatch[_0xc58c('0x21')](_0x5f241f,_0x186093,!![]);}catch(_0x47439d){return BPromise[_0xc58c('0x22')](_0x47439d);}return _0x5f241f[_0xc58c('0x23')]();};}function saveUpdates(_0x912b40,_0x5a2fc4){return function(_0x48d374){if(_0x48d374){return _0x48d374[_0xc58c('0x24')](_0x912b40)[_0xc58c('0x25')](function(_0x5c6daa){return _0x5c6daa;});}return null;};}function removeEntity(_0x169109,_0x14fa76){return function(_0x3634d2){if(_0x3634d2){return _0x3634d2[_0xc58c('0x26')]()[_0xc58c('0x25')](function(){_0x169109[_0xc58c('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x21cb38,_0xc46c61){return function(_0x79457e){if(!_0x79457e){_0x21cb38[_0xc58c('0x18')](0x194);}return _0x79457e;};}function handleError(_0x731f77,_0x788207){_0x788207=_0x788207||0x1f4;return function(_0x39b873){logger[_0xc58c('0x27')](_0x39b873[_0xc58c('0x28')]);if(_0x39b873['name']){delete _0x39b873[_0xc58c('0x29')];}_0x731f77['status'](_0x788207)[_0xc58c('0x2a')](_0x39b873);};}function getMustacheRender(_0x165c4b,_0x4244ae){return Mustache[_0xc58c('0x2b')](_0x165c4b,_['merge'](_0x4244ae[_0xc58c('0x2c')],{'contact':_0x4244ae[_0xc58c('0x2d')],'message':_0x4244ae[_0xc58c('0x2e')],'agent':_0x4244ae[_0xc58c('0x2f')],'interaction':_0x4244ae[_0xc58c('0x30')],'account':_0x4244ae[_0xc58c('0x31')]}))||'';}exports[_0xc58c('0x32')]=function(_0x465ca2,_0x5de6e1){var _0xcab827={},_0x1bf50b={},_0x237966={'count':0x0,'rows':[]};var _0x472144=_['map'](db[_0xc58c('0x33')][_0xc58c('0x34')],function(_0x4e0501){return{'name':_0x4e0501[_0xc58c('0x35')],'type':_0x4e0501['type']['key']};});_0x1bf50b[_0xc58c('0x36')]=_[_0xc58c('0x37')](_0x472144,'name');_0x1bf50b['query']=_[_0xc58c('0x38')](_0x465ca2['query']);_0x1bf50b[_0xc58c('0x39')]=_[_0xc58c('0x3a')](_0x1bf50b[_0xc58c('0x36')],_0x1bf50b['query']);_0xcab827[_0xc58c('0x3b')]=_['intersection'](_0x1bf50b[_0xc58c('0x36')],qs[_0xc58c('0x3c')](_0x465ca2[_0xc58c('0x3d')][_0xc58c('0x3c')]));_0xcab827[_0xc58c('0x3b')]=_0xcab827['attributes'][_0xc58c('0x3e')]?_0xcab827['attributes']:_0x1bf50b[_0xc58c('0x36')];if(!_0x465ca2[_0xc58c('0x3d')]['hasOwnProperty']('nolimit')){_0xcab827[_0xc58c('0x1d')]=qs[_0xc58c('0x1d')](_0x465ca2['query'][_0xc58c('0x1d')]);_0xcab827['offset']=qs[_0xc58c('0x1b')](_0x465ca2['query'][_0xc58c('0x1b')]);}_0xcab827[_0xc58c('0x3f')]=qs[_0xc58c('0x40')](_0x465ca2['query'][_0xc58c('0x40')]);_0xcab827[_0xc58c('0x41')]=qs[_0xc58c('0x39')](_[_0xc58c('0x42')](_0x465ca2[_0xc58c('0x3d')],_0x1bf50b['filters']),_0x472144);if(_0x465ca2[_0xc58c('0x3d')]['filter']){_0xcab827[_0xc58c('0x41')]=_[_0xc58c('0x43')](_0xcab827[_0xc58c('0x41')],{'$or':_[_0xc58c('0x37')](_0x472144,function(_0x402cc3){if(_0x402cc3[_0xc58c('0x44')]!==_0xc58c('0x45')){var _0x103926={};_0x103926[_0x402cc3['name']]={'$like':'%'+_0x465ca2[_0xc58c('0x3d')][_0xc58c('0x46')]+'%'};return _0x103926;}})});}_0xcab827=_['merge']({},_0xcab827,_0x465ca2['options']);var _0xe8133c={'where':_0xcab827[_0xc58c('0x41')]};return db[_0xc58c('0x33')][_0xc58c('0x1e')](_0xe8133c)['then'](function(_0x54ecb1){_0x237966[_0xc58c('0x1e')]=_0x54ecb1;if(_0x465ca2[_0xc58c('0x3d')][_0xc58c('0x47')]){_0xcab827['include']=[{'all':!![]}];}return db[_0xc58c('0x33')][_0xc58c('0x48')](_0xcab827);})[_0xc58c('0x25')](function(_0x24ca20){_0x237966['rows']=_0x24ca20;return _0x237966;})[_0xc58c('0x25')](respondWithFilteredResult(_0x5de6e1,_0xcab827))[_0xc58c('0x49')](handleError(_0x5de6e1,null));};exports[_0xc58c('0x4a')]=function(_0x4ab567,_0x2b0f24){var _0x44c374={'raw':!![],'where':{'id':_0x4ab567['params']['id']}},_0x4cdcd4={};_0x4cdcd4['model']=_[_0xc58c('0x38')](db[_0xc58c('0x33')][_0xc58c('0x34')]);_0x4cdcd4[_0xc58c('0x3d')]=_[_0xc58c('0x38')](_0x4ab567[_0xc58c('0x3d')]);_0x4cdcd4[_0xc58c('0x39')]=_['intersection'](_0x4cdcd4['model'],_0x4cdcd4['query']);_0x44c374[_0xc58c('0x3b')]=_[_0xc58c('0x3a')](_0x4cdcd4[_0xc58c('0x36')],qs[_0xc58c('0x3c')](_0x4ab567[_0xc58c('0x3d')][_0xc58c('0x3c')]));_0x44c374[_0xc58c('0x3b')]=_0x44c374[_0xc58c('0x3b')][_0xc58c('0x3e')]?_0x44c374['attributes']:_0x4cdcd4[_0xc58c('0x36')];if(_0x4ab567[_0xc58c('0x3d')][_0xc58c('0x47')]){_0x44c374['include']=[{'all':!![]}];}_0x44c374=_['merge']({},_0x44c374,_0x4ab567[_0xc58c('0x4b')]);return db[_0xc58c('0x33')][_0xc58c('0x4c')](_0x44c374)[_0xc58c('0x25')](handleEntityNotFound(_0x2b0f24,null))['then'](respondWithResult(_0x2b0f24,null))[_0xc58c('0x49')](handleError(_0x2b0f24,null));};exports[_0xc58c('0x4d')]=function(_0x30e8b7,_0x158047){return db[_0xc58c('0x33')]['create'](_0x30e8b7[_0xc58c('0x2c')],{})[_0xc58c('0x25')](respondWithResult(_0x158047,0xc9))[_0xc58c('0x49')](handleError(_0x158047,null));};exports[_0xc58c('0x24')]=function(_0x5b1f1a,_0x4e11c4){if(_0x5b1f1a[_0xc58c('0x2c')]['id']){delete _0x5b1f1a['body']['id'];}return db['OpenchannelTransferReport'][_0xc58c('0x4c')]({'where':{'id':_0x5b1f1a['params']['id']}})[_0xc58c('0x25')](handleEntityNotFound(_0x4e11c4,null))['then'](saveUpdates(_0x5b1f1a[_0xc58c('0x2c')],null))['then'](respondWithResult(_0x4e11c4,null))[_0xc58c('0x49')](handleError(_0x4e11c4,null));};exports[_0xc58c('0x26')]=function(_0x59940c,_0x13eef9){return db[_0xc58c('0x33')][_0xc58c('0x4c')]({'where':{'id':_0x59940c[_0xc58c('0x4e')]['id']}})[_0xc58c('0x25')](handleEntityNotFound(_0x13eef9,null))[_0xc58c('0x25')](removeEntity(_0x13eef9,null))[_0xc58c('0x49')](handleError(_0x13eef9,null));};exports[_0xc58c('0x4f')]=function(_0x55b844,_0x361812){return db[_0xc58c('0x33')][_0xc58c('0x4f')]()[_0xc58c('0x25')](respondWithResult(_0x361812,null))[_0xc58c('0x49')](handleError(_0x361812,null));};