#pragma once #include "Model/Workflow/Value.hpp" #include "Model/Workflow/Values/Basic.hpp" #include "cplt_fwd.hpp" class DatabaseRowIdValue : public BaseValue { private: TableKind mTable; int64_t mRowId; public: static bool IsInstance(const BaseValue* value); DatabaseRowIdValue(); TableKind GetTable() const; int64_t GetRowId() const; }; class SaleDatabaseRowValue : public BaseObjectValue { private: int mCustomerId; TextValue mCustomerName; DateTimeValue mDeadline; DateTimeValue mDeliveryTime; public: static bool IsInstance(const BaseValue* value); SaleDatabaseRowValue(); virtual const BaseValue* GetProperty(int idx) const; virtual bool SetProperty(int idx, std::unique_ptr value); }; class PurchaseDatabaseRowValue : public BaseObjectValue { private: int mFactoryId; TextValue mFactoryName; DateTimeValue mOrderTime; DateTimeValue mDeliveryTime; public: static bool IsInstance(const BaseValue* value); PurchaseDatabaseRowValue(); virtual const BaseValue* GetProperty(int idx) const; virtual bool SetProperty(int idx, std::unique_ptr value); };