1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- #ifndef __COMPAREITEMDATA_H__
- #define __COMPAREITEMDATA_H__
- #include "GlobalVariable.h"
- #include "spdlog/spdlog.h"
- /* 对比项数据,管理对比项所有的数据 */
- #define CIData CompareItemDataManager::instance()
- class CompareItemDataManager
- {
- CompareItemDataManager() = default;
- CompareItemDataManager(const CompareItemDataManager&) = delete;
- CompareItemDataManager& operator=(const CompareItemDataManager&) = delete;
- public:
- ~CompareItemDataManager() = default;
- static CompareItemDataManager& instance()
- {
- static CompareItemDataManager instance;
- return instance;
- }
- /* 初始化 */
- bool init();
- /* 添加一个对比项 */
- bool addCompareItem(const CompareItemInfo_t& item);
- /* 根据对比项ID删除一个对比项 */
- bool removeCompareItem(int nID);
- /* 通过一个ID查找一个对比项 */
- CompareItemInfo_t findCompareItemByID(int nID) const;
- /* 通过一个ID判断该对比项是否存在 */
- bool isCompareItemExist(int nID) const;
- /* 修改一个对比项 */
- bool modifyCompareItem(const CompareItemInfo_t& item);
- /* 获取一个未使用的对比项ID */
- int getUnusedCompareItemID() const;
- /* 获取表格需要的对比项数据 */
- QList<CompareItemTableItem_t> getCompareItemTableData() const;
- /* 获取未修改过的对比项列表 */
- const QList<CompareItemInfo_t>& getSrcCompareItemList() const { return m_listSrcCompareItems; }
- /* 获取当前对比项列表 */
- const QList<CompareItemInfo_t>& getCompareItemList() const { return m_listCompareItems; }
- /* 设置对比项列表 */
- void setCompareItemList(const QList<CompareItemInfo_t>& listItems);
- private:
- std::shared_ptr<spdlog::logger> m_logger = nullptr;
- /* 对比项列表 */
- QList<CompareItemInfo_t> m_listCompareItems;
- /* 对比项未修改的数据 */
- QList<CompareItemInfo_t> m_listSrcCompareItems; // 用于对比修改前后的数据
-
- };
- #endif // __COMPAREITEMDATA_H__
|