@@ -455,14 +455,26 @@ void CFrmHistory::slotImport()
455455 QString filename = QFileDialog::getOpenFileName (
456456 this , tr (" Import histories" ),
457457 RabbitCommon::CDir::Instance ()->GetDirUserDocument (),
458- tr (" CSV file (*.csv);; All files (*.*)" ));
458+ tr (" JSON (*.json);; CSV file (*.csv);; All files (*.*)" ));
459459
460460 if (!filename.isEmpty ()) {
461- if (m_pModelHistory->importFromCSV (filename)) {
462- slotRefresh ();
463- QMessageBox::information (this , tr (" Success" ), tr (" Histories import from csv file successfully" ));
464- } else {
465- QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to import histories from csv file" ));
461+ QFileInfo fi (filename);
462+ if (0 == fi.suffix ().compare (" json" , Qt::CaseInsensitive)) {
463+ if (m_pModelHistory->importFromJson (filename)) {
464+ slotRefresh ();
465+ QMessageBox::information (this , tr (" Success" ), tr (" Histories import from json file successfully" ));
466+ } else {
467+ QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to import histories from json file" ));
468+ }
469+ return ;
470+ }
471+ if (0 == fi.suffix ().compare (" csv" , Qt::CaseInsensitive)) {
472+ if (m_pModelHistory->importFromCSV (filename)) {
473+ slotRefresh ();
474+ QMessageBox::information (this , tr (" Success" ), tr (" Histories import from csv file successfully" ));
475+ } else {
476+ QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to import histories from csv file" ));
477+ }
466478 }
467479 }
468480}
@@ -472,13 +484,24 @@ void CFrmHistory::slotExport()
472484 QString filename = QFileDialog::getSaveFileName (
473485 this , tr (" Export histories" ),
474486 RabbitCommon::CDir::Instance ()->GetDirUserDocument (),
475- tr (" CSV (*.csv);; All files (*.*)" ));
487+ tr (" JSON (*.json);; CSV (*.csv);; All files (*.*)" ));
476488
477489 if (!filename.isEmpty ()) {
478- if (m_pModelHistory->exportToCSV (filename)) {
479- QMessageBox::information (this , tr (" Success" ), tr (" Histories exported to csv file successfully" ));
480- } else {
481- QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to export histories to csv file" ));
490+ QFileInfo fi (filename);
491+ if (0 == fi.suffix ().compare (" json" , Qt::CaseInsensitive)) {
492+ if (m_pModelHistory->exportToJson (filename)) {
493+ QMessageBox::information (this , tr (" Success" ), tr (" Histories exported to json file successfully" ));
494+ } else {
495+ QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to export histories to json file" ));
496+ }
497+ return ;
498+ }
499+ if (0 == fi.suffix ().compare (" csv" , Qt::CaseInsensitive)) {
500+ if (m_pModelHistory->exportToCSV (filename)) {
501+ QMessageBox::information (this , tr (" Success" ), tr (" Histories exported to csv file successfully" ));
502+ } else {
503+ QMessageBox::warning (this , tr (" Failure" ), tr (" Failed to export histories to csv file" ));
504+ }
482505 }
483506 }
484507}
0 commit comments