28ef2277e5db4266e96230317e7ee13c0d337e37
[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 _0x0a95=['json','apply','reject','save','update','then','destroy','end','sendStatus','error','stack','send','map','OpenchannelTransferReport','type','key','model','name','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','params','create','body','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','offset','undefined','limit','count','set','Content-Range'];(function(_0x761922,_0x12e835){var _0x116614=function(_0x220080){while(--_0x220080){_0x761922['push'](_0x761922['shift']());}};_0x116614(++_0x12e835);}(_0x0a95,0x159));var _0x50a9=function(_0x13b02f,_0x462a53){_0x13b02f=_0x13b02f-0x0;var _0x12e9a6=_0x0a95[_0x13b02f];return _0x12e9a6;};'use strict';var emlformat=require(_0x50a9('0x0'));var rimraf=require(_0x50a9('0x1'));var zipdir=require(_0x50a9('0x2'));var jsonpatch=require(_0x50a9('0x3'));var rp=require(_0x50a9('0x4'));var moment=require(_0x50a9('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x50a9('0x6'));var util=require('util');var path=require(_0x50a9('0x7'));var sox=require(_0x50a9('0x8'));var csv=require(_0x50a9('0x9'));var ejs=require(_0x50a9('0xa'));var fs=require('fs');var fs_extra=require(_0x50a9('0xb'));var _=require('lodash');var squel=require(_0x50a9('0xc'));var crypto=require(_0x50a9('0xd'));var jsforce=require(_0x50a9('0xe'));var deskjs=require(_0x50a9('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x50a9('0x10'));var Redis=require('ioredis');var authService=require(_0x50a9('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x50a9('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0x50a9('0x13'));var config=require(_0x50a9('0x14'));var licenseUtil=require(_0x50a9('0x15'));var db=require(_0x50a9('0x16'))['db'];function respondWithStatusCode(_0x4cbd09,_0x5e7d2b){_0x5e7d2b=_0x5e7d2b||0xcc;return function(_0x2e5adc){if(_0x2e5adc){return _0x4cbd09['sendStatus'](_0x5e7d2b);}return _0x4cbd09[_0x50a9('0x17')](_0x5e7d2b)['end']();};}function respondWithResult(_0x55ce13,_0x2c6071){_0x2c6071=_0x2c6071||0xc8;return function(_0x276a21){if(_0x276a21){return _0x55ce13[_0x50a9('0x17')](_0x2c6071)['json'](_0x276a21);}};}function respondWithFilteredResult(_0x181dc5,_0x321b4d){return function(_0x53bf84){if(_0x53bf84){var _0x55246f=typeof _0x321b4d[_0x50a9('0x18')]===_0x50a9('0x19')&&typeof _0x321b4d[_0x50a9('0x1a')]===_0x50a9('0x19');var _0x70b55e=_0x53bf84[_0x50a9('0x1b')];var _0x23f2a7=_0x55246f?0x0:_0x321b4d[_0x50a9('0x18')];var _0x23b49e=_0x55246f?_0x53bf84['count']:_0x321b4d[_0x50a9('0x18')]+_0x321b4d[_0x50a9('0x1a')];var _0x5d12ee;if(_0x23b49e>=_0x70b55e){_0x23b49e=_0x70b55e;_0x5d12ee=0xc8;}else{_0x5d12ee=0xce;}_0x181dc5[_0x50a9('0x17')](_0x5d12ee);return _0x181dc5[_0x50a9('0x1c')](_0x50a9('0x1d'),_0x23f2a7+'-'+_0x23b49e+'/'+_0x70b55e)[_0x50a9('0x1e')](_0x53bf84);}return null;};}function patchUpdates(_0x15b34c){return function(_0x195178){try{jsonpatch[_0x50a9('0x1f')](_0x195178,_0x15b34c,!![]);}catch(_0x3ff7b7){return BPromise[_0x50a9('0x20')](_0x3ff7b7);}return _0x195178[_0x50a9('0x21')]();};}function saveUpdates(_0x3ce0a6,_0x29228f){return function(_0x20d39e){if(_0x20d39e){return _0x20d39e[_0x50a9('0x22')](_0x3ce0a6)[_0x50a9('0x23')](function(_0x3bfa83){return _0x3bfa83;});}return null;};}function removeEntity(_0x4f549c,_0x517409){return function(_0x5a35bc){if(_0x5a35bc){return _0x5a35bc[_0x50a9('0x24')]()['then'](function(){_0x4f549c[_0x50a9('0x17')](0xcc)[_0x50a9('0x25')]();});}};}function handleEntityNotFound(_0x31b45d,_0x198c62){return function(_0x40d7e2){if(!_0x40d7e2){_0x31b45d[_0x50a9('0x26')](0x194);}return _0x40d7e2;};}function handleError(_0x1deffc,_0x39f3bd){_0x39f3bd=_0x39f3bd||0x1f4;return function(_0x300ed9){logger[_0x50a9('0x27')](_0x300ed9[_0x50a9('0x28')]);if(_0x300ed9['name']){delete _0x300ed9['name'];}_0x1deffc[_0x50a9('0x17')](_0x39f3bd)[_0x50a9('0x29')](_0x300ed9);};}exports['index']=function(_0x1d34f5,_0x198ebb){var _0x262771={},_0x5059e9={},_0x55e1c3={'count':0x0,'rows':[]};var _0x2068b8=_[_0x50a9('0x2a')](db[_0x50a9('0x2b')]['rawAttributes'],function(_0x4fb223){return{'name':_0x4fb223['fieldName'],'type':_0x4fb223[_0x50a9('0x2c')][_0x50a9('0x2d')]};});_0x5059e9[_0x50a9('0x2e')]=_[_0x50a9('0x2a')](_0x2068b8,_0x50a9('0x2f'));_0x5059e9[_0x50a9('0x30')]=_[_0x50a9('0x31')](_0x1d34f5[_0x50a9('0x30')]);_0x5059e9[_0x50a9('0x32')]=_[_0x50a9('0x33')](_0x5059e9[_0x50a9('0x2e')],_0x5059e9[_0x50a9('0x30')]);_0x262771[_0x50a9('0x34')]=_['intersection'](_0x5059e9[_0x50a9('0x2e')],qs['fields'](_0x1d34f5[_0x50a9('0x30')][_0x50a9('0x35')]));_0x262771[_0x50a9('0x34')]=_0x262771[_0x50a9('0x34')][_0x50a9('0x36')]?_0x262771[_0x50a9('0x34')]:_0x5059e9['model'];if(!_0x1d34f5[_0x50a9('0x30')]['hasOwnProperty'](_0x50a9('0x37'))){_0x262771['limit']=qs['limit'](_0x1d34f5[_0x50a9('0x30')][_0x50a9('0x1a')]);_0x262771[_0x50a9('0x18')]=qs[_0x50a9('0x18')](_0x1d34f5[_0x50a9('0x30')][_0x50a9('0x18')]);}_0x262771[_0x50a9('0x38')]=qs[_0x50a9('0x39')](_0x1d34f5[_0x50a9('0x30')][_0x50a9('0x39')]);_0x262771['where']=qs[_0x50a9('0x32')](_[_0x50a9('0x3a')](_0x1d34f5['query'],_0x5059e9[_0x50a9('0x32')]),_0x2068b8);if(_0x1d34f5['query']['filter']){_0x262771[_0x50a9('0x3b')]=_[_0x50a9('0x3c')](_0x262771[_0x50a9('0x3b')],{'$or':_[_0x50a9('0x2a')](_0x2068b8,function(_0x42811f){if(_0x42811f[_0x50a9('0x2c')]!==_0x50a9('0x3d')){var _0x546c54={};_0x546c54[_0x42811f[_0x50a9('0x2f')]]={'$like':'%'+_0x1d34f5['query'][_0x50a9('0x3e')]+'%'};return _0x546c54;}})});}_0x262771=_[_0x50a9('0x3c')]({},_0x262771,_0x1d34f5[_0x50a9('0x3f')]);var _0x35896e={'where':_0x262771[_0x50a9('0x3b')]};return db[_0x50a9('0x2b')][_0x50a9('0x1b')](_0x35896e)['then'](function(_0x852ebb){_0x55e1c3['count']=_0x852ebb;if(_0x1d34f5[_0x50a9('0x30')][_0x50a9('0x40')]){_0x262771[_0x50a9('0x41')]=[{'all':!![]}];}return db[_0x50a9('0x2b')][_0x50a9('0x42')](_0x262771);})[_0x50a9('0x23')](function(_0x2c17cf){_0x55e1c3[_0x50a9('0x43')]=_0x2c17cf;return _0x55e1c3;})[_0x50a9('0x23')](respondWithFilteredResult(_0x198ebb,_0x262771))[_0x50a9('0x44')](handleError(_0x198ebb,null));};exports[_0x50a9('0x45')]=function(_0x3c2243,_0x385268){var _0xe6942c={'raw':!![],'where':{'id':_0x3c2243[_0x50a9('0x46')]['id']}},_0x268a0a={};_0x268a0a['model']=_['keys'](db[_0x50a9('0x2b')]['rawAttributes']);_0x268a0a[_0x50a9('0x30')]=_[_0x50a9('0x31')](_0x3c2243[_0x50a9('0x30')]);_0x268a0a[_0x50a9('0x32')]=_['intersection'](_0x268a0a[_0x50a9('0x2e')],_0x268a0a['query']);_0xe6942c[_0x50a9('0x34')]=_[_0x50a9('0x33')](_0x268a0a[_0x50a9('0x2e')],qs[_0x50a9('0x35')](_0x3c2243[_0x50a9('0x30')][_0x50a9('0x35')]));_0xe6942c[_0x50a9('0x34')]=_0xe6942c[_0x50a9('0x34')]['length']?_0xe6942c[_0x50a9('0x34')]:_0x268a0a[_0x50a9('0x2e')];if(_0x3c2243[_0x50a9('0x30')][_0x50a9('0x40')]){_0xe6942c[_0x50a9('0x41')]=[{'all':!![]}];}_0xe6942c=_['merge']({},_0xe6942c,_0x3c2243[_0x50a9('0x3f')]);return db[_0x50a9('0x2b')]['find'](_0xe6942c)[_0x50a9('0x23')](handleEntityNotFound(_0x385268,null))[_0x50a9('0x23')](respondWithResult(_0x385268,null))[_0x50a9('0x44')](handleError(_0x385268,null));};exports[_0x50a9('0x47')]=function(_0x4283d5,_0x54babe){return db['OpenchannelTransferReport'][_0x50a9('0x47')](_0x4283d5['body'],{})[_0x50a9('0x23')](respondWithResult(_0x54babe,0xc9))[_0x50a9('0x44')](handleError(_0x54babe,null));};exports[_0x50a9('0x22')]=function(_0xbfae61,_0x42776b){if(_0xbfae61[_0x50a9('0x48')]['id']){delete _0xbfae61[_0x50a9('0x48')]['id'];}return db[_0x50a9('0x2b')][_0x50a9('0x49')]({'where':{'id':_0xbfae61[_0x50a9('0x46')]['id']}})[_0x50a9('0x23')](handleEntityNotFound(_0x42776b,null))['then'](saveUpdates(_0xbfae61[_0x50a9('0x48')],null))[_0x50a9('0x23')](respondWithResult(_0x42776b,null))[_0x50a9('0x44')](handleError(_0x42776b,null));};exports[_0x50a9('0x24')]=function(_0x32df53,_0x2a0e38){return db['OpenchannelTransferReport'][_0x50a9('0x49')]({'where':{'id':_0x32df53[_0x50a9('0x46')]['id']}})[_0x50a9('0x23')](handleEntityNotFound(_0x2a0e38,null))[_0x50a9('0x23')](removeEntity(_0x2a0e38,null))[_0x50a9('0x44')](handleError(_0x2a0e38,null));};exports[_0x50a9('0x4a')]=function(_0x22ad57,_0x5b2916){return db[_0x50a9('0x2b')][_0x50a9('0x4a')]()[_0x50a9('0x23')](respondWithResult(_0x5b2916,null))['catch'](handleError(_0x5b2916,null));};