On sending (posting) item to the server the generated UUID is added to the local item.

This commit is contained in:
2026-02-02 16:13:44 +01:00
parent bedf8084d3
commit 63fe96fb2e
16 changed files with 145 additions and 33 deletions

View File

@ -105,7 +105,7 @@ void GenericCore::saveItems() {
qDebug() << "saving items...";
const QJsonDocument doc = m_mainModel->getAllItemsAsJsonDoc();
const bool successfulSave = FileHandler::saveToFile(doc, ITEM_FILE_NAME);
const bool successfulSave = FileHandler::saveToFile(doc, ITEMS_FILE_NAME);
if (successfulSave) {
m_modelUndoStack->setClean();
emit displayStatusMessage(QString("Items saved."));
@ -118,7 +118,7 @@ void GenericCore::importCSVFile(const QString& filePath) {
qInfo() << "importing items from CSV...";
qDebug() << "filePath:" << filePath;
const QList<ModelItemValues> itemValuesList = FileHandler::getItemValuesFromCSVFile(filePath);
// NEXT inform UI on errors
// TODO inform UI on errors
if (itemValuesList.isEmpty()) {
qDebug() << "No items found. Doing nothing...";
return;
@ -149,7 +149,7 @@ void GenericCore::onSendItemTriggered(const QByteArray& jsonData) {
void GenericCore::onItemsFetched(const QByteArray jsonData) {
emit displayStatusMessage("New items fetched.");
// TODO ? check compability of JSON structure beforehand?
// TODO check if item already exists?
// NEXT check if item already exists ? ;
m_mainModel->appendItems(jsonData);
}
@ -157,8 +157,10 @@ void GenericCore::onItemsFetchFailure(const QString errorString) {
emit displayStatusMessage(QString("Error: %1").arg(errorString));
}
void GenericCore::onPostRequestSuccessful(const QString message) {
// NEXT search local item an set server generated UUID
void GenericCore::onPostRequestSuccessful(const QByteArray responseData) {
// NEXT search local item and set server generated UUID;
const QString message = m_mainModel->updateItemsFromJson(responseData);
emit displayStatusMessage(message);
}
@ -193,7 +195,7 @@ void GenericCore::setupModels() {
*/
void GenericCore::initModelData() {
qInfo() << "Trying to read model data from file...";
const QByteArray jsonDoc = FileHandler::loadJSONDataFromFile(ITEM_FILE_NAME);
const QByteArray jsonDoc = FileHandler::loadJSONDataFromFile(ITEMS_FILE_NAME);
// qDebug() << "jsonDoc:" << jsonDoc;
// TODO decide on lack of file(s) (config, data) if example items should be generated
// (see welcome wizard)
@ -228,7 +230,7 @@ void GenericCore::setupServerConfiguration() {
/// request connections
connect(this, &GenericCore::fetchItemsFromServer, m_serverCommunicator.get(),
&ServerCommunicator::fetchItems);
connect(this, &GenericCore::sendItemToServer, this, &GenericCore::onSendItemTriggered);
connect(this, &GenericCore::postItemToServer, this, &GenericCore::onSendItemTriggered);
/// response connections
connect(m_serverCommunicator.get(), &ServerCommunicator::itemsFetched, this,