Built motion from commit (unavailable).|2.5.11
[motion2.git] / server / components / export / csv.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 _0x17ba=['then','sequelize','query','SELECT','num','Empty','length','%s\x20limit\x20%d\x20OFFSET\x20%d','QueryTypes','dirname','basename','.csv','split','existsSync','join','each','push','csv','%s.%s','writeFileSync','zip','Extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format\x20completed','Completed','catch','Error\x20during\x20extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format','inspect','Failed','util','path','to-csv','bluebird','zip-dir','rimraf','../../mysqldb','dbH','../../config/logger','analytics','argv','savename','AnalyticExtractedReport','update','info','format','Start\x20extraction\x20report\x20with\x20id\x20%d\x20in\x20%s\x20format','CSV','Setting','find','splitSizeCsv'];(function(_0x1a3243,_0x201872){var _0x33f2ca=function(_0x59d32e){while(--_0x59d32e){_0x1a3243['push'](_0x1a3243['shift']());}};_0x33f2ca(++_0x201872);}(_0x17ba,0xab));var _0xa17b=function(_0x2f552,_0x4033f1){_0x2f552=_0x2f552-0x0;var _0x1bc126=_0x17ba[_0x2f552];return _0x1bc126;};'use strict';var util=require(_0xa17b('0x0'));var path=require(_0xa17b('0x1'));var _=require('lodash');var csv=require(_0xa17b('0x2'));var fs=require('fs');var BPromise=require(_0xa17b('0x3'));var zipdir=require(_0xa17b('0x4'));var rimraf=require(_0xa17b('0x5'));var db=require(_0xa17b('0x6'))['db'];var dbH=require(_0xa17b('0x6'))[_0xa17b('0x7')];var logger=require(_0xa17b('0x8'))(_0xa17b('0x9'));var EXTRACTED_REPORT_ID=Number(process[_0xa17b('0xa')][0x2]);var QUERY=process[_0xa17b('0xa')][0x3];var PATH=process[_0xa17b('0xa')][0x4];function analyticExtractedReport(_0x1957be,_0x57f9cd){var _0x2ca4d3={'status':_0x1957be};var _0x17d1d2={'where':{'id':EXTRACTED_REPORT_ID}};if(_0x57f9cd){_0x2ca4d3[_0xa17b('0xb')]=_0x57f9cd;}return db[_0xa17b('0xc')][_0xa17b('0xd')](_0x2ca4d3,_0x17d1d2);}function main(){var _0x578799=0x1388;var _0x2556c4;logger[_0xa17b('0xe')](util[_0xa17b('0xf')](_0xa17b('0x10'),EXTRACTED_REPORT_ID,_0xa17b('0x11')));return db[_0xa17b('0x12')][_0xa17b('0x13')]({'where':{'id':0x1},'raw':!![],'attributes':['id','split',_0xa17b('0x14')]})[_0xa17b('0x15')](function(_0x3c3a8a){if(_0x3c3a8a){_0x2556c4=_0x3c3a8a;_0x578799=_0x2556c4['splitSizeCsv']||0x1388;}})[_0xa17b('0x15')](function(){return dbH[_0xa17b('0x16')][_0xa17b('0x17')](util[_0xa17b('0xf')]('SELECT\x20count(*)\x20as\x20num\x20FROM\x20(%s)\x20t',QUERY),{'type':dbH[_0xa17b('0x16')]['QueryTypes'][_0xa17b('0x18')]});})[_0xa17b('0x15')](function(_0x5de138){if(!_0x5de138[0x0][_0xa17b('0x19')]){return analyticExtractedReport(_0xa17b('0x1a'));}var _0x1c0578=[];var _0x1f8141=0x0;var _0x4870fb=!![];if(_0x5de138&&_0x5de138[_0xa17b('0x1b')]){var _0x5e21c2=_0x5de138[0x0]['num']%(_0x1f8141+_0x578799);if(_0x2556c4['split']){for(;_0x4870fb;_0x1f8141+=_0x578799,_0x5e21c2=_0x5de138[0x0][_0xa17b('0x19')]%(_0x1f8141+_0x578799)){if(_0x5e21c2==0x0||_0x5e21c2==_0x5de138[0x0][_0xa17b('0x19')]){_0x4870fb=![];}_0x1c0578['push'](dbH[_0xa17b('0x16')][_0xa17b('0x17')](util[_0xa17b('0xf')](_0xa17b('0x1c'),QUERY,_0x578799,_0x1f8141),{'type':dbH[_0xa17b('0x16')][_0xa17b('0x1d')][_0xa17b('0x18')]}));}}else{_0x1c0578['push'](dbH[_0xa17b('0x16')][_0xa17b('0x17')](QUERY,{'type':dbH[_0xa17b('0x16')]['QueryTypes'][_0xa17b('0x18')]}));}}var _0x1a6471=path[_0xa17b('0x1e')](PATH);var _0xbbbb62=path[_0xa17b('0x1f')](PATH,_0xa17b('0x20'));var _0x52309c=_0x2556c4[_0xa17b('0x21')]&&_0x1c0578['length']>0x1;var _0xa34739=[];if(!fs[_0xa17b('0x22')](path['join'](_0x1a6471,_0xbbbb62))&&_0x52309c){fs['mkdirSync'](path[_0xa17b('0x23')](_0x1a6471,_0xbbbb62));}return BPromise[_0xa17b('0x24')](_0x1c0578,function(_0x4216ca){_0xa34739[_0xa17b('0x25')](_0x4216ca);})[_0xa17b('0x15')](function(){for(var _0x3a64f5=0x0;_0x3a64f5<_0xa34739['length'];_0x3a64f5+=0x1){var _0x47aff8;var _0x5c98fe=_0xa34739[_0x3a64f5];if(_0x52309c){_0x47aff8=path['join'](_0x1a6471,_0xbbbb62,util[_0xa17b('0xf')]('%s%d.%s',_0xbbbb62,_0x3a64f5,_0xa17b('0x26')));}else{_0x47aff8=path['join'](_0x1a6471,util[_0xa17b('0xf')](_0xa17b('0x27'),_0xbbbb62,_0xa17b('0x26')));}fs[_0xa17b('0x28')](_0x47aff8,csv(_0x5c98fe));}})[_0xa17b('0x15')](function(){if(_0x52309c){zipdir(path[_0xa17b('0x23')](_0x1a6471,_0xbbbb62),{'saveTo':path[_0xa17b('0x23')](_0x1a6471,util[_0xa17b('0xf')](_0xa17b('0x27'),_0xbbbb62,_0xa17b('0x29')))},function(_0xe84db5,_0x573585){});rimraf(path['join'](_0x1a6471,_0xbbbb62),function(){});}})['then'](function(){logger[_0xa17b('0xe')](util[_0xa17b('0xf')](_0xa17b('0x2a'),EXTRACTED_REPORT_ID,_0xa17b('0x11')));return analyticExtractedReport(_0xa17b('0x2b'),_0x52309c?util[_0xa17b('0xf')](_0xa17b('0x27'),_0xbbbb62,_0x52309c?_0xa17b('0x29'):'csv'):null);});})[_0xa17b('0x2c')](function(_0x4da126){logger[_0xa17b('0xe')](util[_0xa17b('0xf')](_0xa17b('0x2d'),EXTRACTED_REPORT_ID,_0xa17b('0x11')),util[_0xa17b('0x2e')](_0x4da126,{'showHidden':![],'depth':null}));return analyticExtractedReport(_0xa17b('0x2f'));});}main();