Implement serialization/deserialization and persistent storage across services
- Add serialize/deserialize support for core models - Add file-based load/save functions in management services - Introduce FileManager, Config, Utility and helper utilities - Persist observer IDs for notification services - Resolve object relationships during load (services, bookings, invoices, job cards) - Add controller-level loadSystemData/saveSystemData - Load data at app startup and save on shutdown
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
#include <string>
|
||||
#include "Map.h"
|
||||
#include "Vector.h"
|
||||
#include "Enums.h"
|
||||
|
||||
class InventoryItem;
|
||||
@@ -11,14 +12,17 @@ private:
|
||||
static int m_uid;
|
||||
std::string m_id;
|
||||
std::string m_name;
|
||||
util::Vector<std::string> m_requiredInventoryItemIDs;
|
||||
util::Map<std::string, InventoryItem*> m_requiredInventoryItems;
|
||||
double m_laborCost;
|
||||
util::State m_status;
|
||||
public:
|
||||
Service();
|
||||
Service(const std::string& name, const util::Map<std::string, InventoryItem*>& requiredInventoryItems, double laborCost);
|
||||
Service(const std::string& id, const std::string& name, const util::Vector<std::string>& requiredInventoryItemIDs, double laborCost, util::State state);
|
||||
const std::string& getId() const;
|
||||
const std::string& getName() const;
|
||||
const util::Vector<std::string>& getRequiredInventoryItemIDs() const;
|
||||
const util::Map<std::string, InventoryItem*>& getRequiredInventoryItems() const;
|
||||
double getLaborCost() const;
|
||||
util::State getState() const;
|
||||
@@ -27,4 +31,7 @@ public:
|
||||
void setRequiredInventoryItems(const util::Map<std::string, InventoryItem*>& requiredInventoryItems);
|
||||
void setLaborCost(double laborCost);
|
||||
void setState(util::State status);
|
||||
std::string serialize() const;
|
||||
static Service* deserialize(const std::string&);
|
||||
static std::string getHeaders();
|
||||
};
|
||||
Reference in New Issue
Block a user