Skip to content

Commit

Permalink
save log shell function
Browse files Browse the repository at this point in the history
  • Loading branch information
lauracosta committed Mar 10, 2023
1 parent f04c3e4 commit 2bc65d3
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 0 deletions.
27 changes: 27 additions & 0 deletions pragaProject/pragaProject.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3468,3 +3468,30 @@ bool PragaProject::computeClimaFromXMLSaveOnDB(QString xmlName)
return true;
}
}

bool PragaProject::saveLogProceduresGrid(QString nameProc, QDate date)
{

// check meteo grid
if (! meteoGridLoaded)
{
logError("No meteo grid");
return false;
}

// check dates
if (date.isNull() || !date.isValid())
{
logError("Wrong date");
return false;
}

QString myError;
logInfoGUI("Saving procedure last date");
if (! meteoGridDbHandler->saveLogProcedures(&myError, nameProc, date))
{
logError(myError);
return false;
}
return true;
}
1 change: 1 addition & 0 deletions pragaProject/pragaProject.h
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@
std::vector<QString> &users, std::vector<QString> &notes);
bool removeGriddingTask(QDateTime dateCreation, QString user, QDate dateStart, QDate dateEnd);
bool computeClimaFromXMLSaveOnDB(QString xmlName);
bool saveLogProceduresGrid(QString nameProc, QDate date);

#ifdef NETCDF
bool exportMeteoGridToNetCDF(QString fileName, QString title, QString variableName, std::string variableUnit, Crit3DDate myDate, int nDays, int refYearStart, int refYearEnd);
Expand Down
26 changes: 26 additions & 0 deletions pragaProject/pragaShell.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ QList<QString> getPragaCommandList()
cmdList.append("ComputeClimate | ComputeClimaFromXMLSaveOnDB");
cmdList.append("Drought | ComputeDroughtIndexGrid");
cmdList.append("DroughtPoint | ComputeDroughtIndexPoint");
cmdList.append("SaveLogProc | SaveLogProceduresGrid");

return cmdList;
}
Expand Down Expand Up @@ -124,6 +125,11 @@ int PragaProject::executePragaCommand(QList<QString> argumentList, bool* isComma
*isCommandFound = true;
return cmdDroughtIndexPoint(this, argumentList);
}
else if (command == "SAVELOGPROC" || command == "SAVELOGPROCEDURESGRID")
{
*isCommandFound = true;
return cmdSaveLogDataProceduresGrid(this, argumentList);
}
else
{
// other specific Praga commands
Expand Down Expand Up @@ -931,3 +937,23 @@ int pragaShell(PragaProject* myProject)

return PRAGA_OK;
}

int cmdSaveLogDataProceduresGrid(PragaProject* myProject, QList<QString> argumentList)
{
if (argumentList.size() < 3)
{
myProject->logError("Missing procedure name or date to save");
return PRAGA_INVALID_COMMAND;
}

QString nameProc = argumentList.at(1);
QString dateStr = argumentList.at(2);
QDate date = QDate::fromString(dateStr, "dd/MM/yyyy");

if (!myProject->saveLogProceduresGrid(nameProc, date))
{
return PRAGA_ERROR;
}

return PRAGA_OK;
}
1 change: 1 addition & 0 deletions pragaProject/pragaShell.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
int cmdMonthlyIntegrationVariablesGrid(PragaProject* myProject, QList<QString> argumentList);
int cmdComputeClimaFromXMLSaveOnDB(PragaProject* myProject, QList<QString> argumentList);
int cmdDroughtIndexPoint(PragaProject* myProject, QList<QString> argumentList);
int cmdSaveLogDataProceduresGrid(PragaProject* myProject, QList<QString> argumentList);
//bool cmdLoadForecast(PragaProject* myProject, QList<QString> argumentList);

#ifdef NETCDF
Expand Down

0 comments on commit 2bc65d3

Please sign in to comment.