2025-06-23 10:41:33 +08:00
|
|
|
|
#pragma once
|
|
|
|
|
#include "M_ObjectDAO.h"
|
|
|
|
|
|
|
|
|
|
namespace DBPlatformSpace
|
|
|
|
|
{
|
|
|
|
|
class M_EntityModelDAO;
|
|
|
|
|
|
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
/// M_项目
|
2025-06-23 10:41:33 +08:00
|
|
|
|
class M_ProjectDAO : public M_ObjectDAO
|
|
|
|
|
{
|
|
|
|
|
private:
|
2025-06-23 18:01:09 +08:00
|
|
|
|
static int _sCurrProjectID; ///<当前项目ID
|
2025-06-23 10:41:33 +08:00
|
|
|
|
public:
|
2025-06-23 18:01:09 +08:00
|
|
|
|
string _author; ///<项目创建者
|
|
|
|
|
string _createTime; ///<项目创建时间
|
|
|
|
|
int _focus; ///<是否关注
|
|
|
|
|
string _openTime; ///<项目最后打开时间
|
|
|
|
|
int _type; ///<项目类型(baseDao的type属性)
|
|
|
|
|
string _uID; ///<项目id (2023.09.04 由int改为string,做GUID的作用)
|
|
|
|
|
string _updateTime; ///<项目修改时间
|
2025-06-23 10:41:33 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ODI M_ProjectDAO();
|
|
|
|
|
virtual ODI ~M_ProjectDAO();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ODI virtual Mapper* createMapper();
|
|
|
|
|
ODI static DAO* createObject();
|
|
|
|
|
|
|
|
|
|
// [7/29/2022 wwu]
|
2025-06-23 18:01:09 +08:00
|
|
|
|
static ODI void setCurrProjectID(int projectID); //在项目打开时,需要上层应用进行设置
|
2025-06-23 10:41:33 +08:00
|
|
|
|
static ODI int getCurrProjectID();
|
|
|
|
|
|
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
/// 此自删除接口,会将下属的数据模型一同删除
|
2025-06-23 10:41:33 +08:00
|
|
|
|
virtual ODI ResultMsg delself(int commitType = COMMIT_T_IMMEDIATELY);
|
|
|
|
|
|
|
|
|
|
// [9/4/2023 wwu]
|
2025-06-23 18:01:09 +08:00
|
|
|
|
///自保存接口,当insert时,会自动生成GUID并保存
|
2025-06-23 10:41:33 +08:00
|
|
|
|
virtual ODI ResultMsg save(int commitType = COMMIT_T_IMMEDIATELY);
|
|
|
|
|
|
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
///与数据模型的关系
|
2025-06-23 10:41:33 +08:00
|
|
|
|
ODI ResultMsg addEntityModel(M_EntityModelDAO* pEntityModel, int commitType = COMMIT_T_IMMEDIATELY);
|
|
|
|
|
ODI ResultMsg removeEntityModel(M_EntityModelDAO* pEntityModel, int commitType = COMMIT_T_IMMEDIATELY);
|
|
|
|
|
ODI ResultMsg getEntityModelList(list< M_EntityModelDAO*> & emlist);
|
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
/// 导入导出 // [8/2/2022 wwu]
|
2025-06-23 10:41:33 +08:00
|
|
|
|
static ODI ResultMsg exportProject(list<int> exportProjectIds, string exportPath);
|
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
static ODI ResultMsg getImportProjectList(list<M_ProjectDAO*>& PList, string importFilePath);//获取导入项目文件项目列表
|
2025-06-23 10:41:33 +08:00
|
|
|
|
|
2025-06-23 18:01:09 +08:00
|
|
|
|
static ODI ResultMsg importProject(string importFilePath, list<int> importProjectIds);//导入选中的项目"
|
2025-06-23 10:41:33 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static ODI ResultMsg FindAll(list<M_ProjectDAO*> & pnewlist);
|
|
|
|
|
|
|
|
|
|
static ODI ResultMsg FindByID(int id, M_ProjectDAO * &pnewdao);
|
|
|
|
|
|
|
|
|
|
static ResultMsg ODI FindByAuthor(string author, list<M_ProjectDAO*>&newlist);
|
|
|
|
|
|
|
|
|
|
static ResultMsg ODI FindByFocus(int focus, list<M_ProjectDAO*>&newlist);
|
|
|
|
|
|
|
|
|
|
static ResultMsg ODI FindByName(string name, list<M_ProjectDAO*>&newlist);
|
|
|
|
|
|
|
|
|
|
static ResultMsg ODI FindByUID(string uID, list<M_ProjectDAO*>&newlist);
|
|
|
|
|
|
|
|
|
|
static ResultMsg ODI FindByType(int typeCode, list<M_ProjectDAO*>& newlist);
|
|
|
|
|
};
|
|
|
|
|
}
|