167 lines
3.9 KiB
C
167 lines
3.9 KiB
C
|
#pragma once
|
|||
|
#include <iostream>
|
|||
|
#include "CommonDataPublic.h"
|
|||
|
#include <list>
|
|||
|
//#include <string>
|
|||
|
#include <vector>
|
|||
|
#include <map>
|
|||
|
|
|||
|
using namespace std;
|
|||
|
//using namespace DBPlatformSpace;
|
|||
|
|
|||
|
namespace DBPlatformSpace
|
|||
|
{
|
|||
|
class Mapper;
|
|||
|
class InstanceDataManager;
|
|||
|
|
|||
|
#define COMMIT_T_IMMEDIATELY 0
|
|||
|
#define COMMIT_T_GROUP 1
|
|||
|
|
|||
|
#define DAO_T_BASE 0
|
|||
|
#define DAO_T_TOTAL 1
|
|||
|
#define DAO_T_SUBDB 2
|
|||
|
#define DAO_T_BASEMETA 3
|
|||
|
#define DAO_T_DPS 4
|
|||
|
|
|||
|
///<2F><><EFBFBD><EFBFBD>DAO<41>Ļ<EFBFBD><C4BB><EFBFBD>
|
|||
|
class DAO
|
|||
|
{
|
|||
|
public:
|
|||
|
int _ID; ///<DAO<41><4F>Ψһ<CEA8><D2BB>ʶ
|
|||
|
string _name; ///<<3C><><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
int _daoType; ///<(<28><><EFBFBD><EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2><EFBFBD>)
|
|||
|
|
|||
|
ODI DAO();
|
|||
|
virtual ODI ~DAO();
|
|||
|
|
|||
|
|
|||
|
virtual ODI ResultMsg save(int commitType = COMMIT_T_IMMEDIATELY);
|
|||
|
|
|||
|
virtual ODI ResultMsg delself(int commitType = COMMIT_T_IMMEDIATELY);
|
|||
|
|
|||
|
virtual ODI ResultMsg delAll(int commitType = COMMIT_T_IMMEDIATELY);
|
|||
|
|
|||
|
virtual ODI Mapper* createMapper();
|
|||
|
|
|||
|
virtual ODI InstanceDataManager* getIDM();
|
|||
|
|
|||
|
ODI static vector<int> returnMsgToVId(string rMsg);
|
|||
|
|
|||
|
ODI static ResultMsg CreateInstancePtr(string daoName, DAO*& pdao);
|
|||
|
|
|||
|
|
|||
|
// [9/13/2023 wwu]
|
|||
|
///DAO<41><4F><EFBFBD><EFBFBD>תΪmap<string,string>
|
|||
|
///@param mapdao ת<><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>map<61><70><EFBFBD><EFBFBD>
|
|||
|
virtual ODI ResultMsg toMapData(map<string, string>& mapdao);
|
|||
|
|
|||
|
///<2F><>map<string,string>ת<><D7AA>ΪDAO<41><4F><EFBFBD><EFBFBD>
|
|||
|
///@param mapdao ת<><D7AA><EFBFBD><EFBFBD>map<61><70><EFBFBD><EFBFBD>Դ
|
|||
|
virtual ODI ResultMsg transfromMapData(map<string, string>& mapdao, DAO* &pResultDao);
|
|||
|
|
|||
|
///<2F><><EFBFBD>ص<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// note: <20><>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
virtual ODI string GetDAOClassName();
|
|||
|
|
|||
|
//------------------
|
|||
|
|
|||
|
};
|
|||
|
|
|||
|
//////////////////////////////////////////////////////////////////////////
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>й<EFBFBD><D0B9>̹<EFBFBD><CCB9><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>
|
|||
|
class totalDAO :public DAO
|
|||
|
{
|
|||
|
public:
|
|||
|
ODI totalDAO(void);
|
|||
|
ODI ~totalDAO(void);
|
|||
|
|
|||
|
//// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>캯<EFBFBD><ECBAAF>
|
|||
|
//ODI totalDAO(const totalDAO& C);
|
|||
|
//ODI const totalDAO& operator=(const totalDAO& refdao);
|
|||
|
|
|||
|
virtual ODI InstanceDataManager* getIDM() ;
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//////////////////////////////////////////////////////////////////////////
|
|||
|
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>
|
|||
|
///@note <09>̳<EFBFBD><CCB3>ڸ<EFBFBD><DAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>࣬<EFBFBD>ڴ<EFBFBD>ȡ<EFBFBD>ӿ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>Ҫִ<D2AA><D6B4> DBPlatform::SetCurrentProject(int prjectId) <20><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ID<49><44>
|
|||
|
class subDBDAO :public DAO
|
|||
|
{
|
|||
|
public:
|
|||
|
///
|
|||
|
//int _taskID; ///<<3C><><EFBFBD><EFBFBD>ID (<28>ڲ<EFBFBD><DAB2><EFBFBD>)
|
|||
|
ODI subDBDAO(void);
|
|||
|
ODI ~subDBDAO(void);
|
|||
|
|
|||
|
|
|||
|
//// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>캯<EFBFBD><ECBAAF>
|
|||
|
//ODI subDBDAO(const subDBDAO& C);
|
|||
|
//ODI const subDBDAO& operator=(const subDBDAO& refdao);
|
|||
|
|
|||
|
|
|||
|
//virtual ODI int save();
|
|||
|
|
|||
|
virtual ODI InstanceDataManager* getIDM();
|
|||
|
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
//////////////////////////////////////////////////////////////////////////
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>ڲ<EFBFBD><DAB2>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>
|
|||
|
class dataDictionaryDAO :public DAO
|
|||
|
{
|
|||
|
public:
|
|||
|
ODI dataDictionaryDAO(void);
|
|||
|
ODI ~dataDictionaryDAO(void);
|
|||
|
|
|||
|
|
|||
|
virtual ODI InstanceDataManager* getIDM();
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
struct IOrderClause;
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8>ʱ<EFBFBD>ڲ<EFBFBD><DAB2>ã<EFBFBD>
|
|||
|
class DAOFinder
|
|||
|
{
|
|||
|
public:
|
|||
|
ODI ResultMsg findByID(string daoName, int id, DAO* &pdaofind);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
ODI ResultMsg findAll(string daoName, list<DAO*>& pdaolist, IOrderClause * pOderbyClause = NULL);
|
|||
|
|
|||
|
ODI ResultMsg findByOneAttr(string daoName, string attrName, string operation, string attrValue, list<DAO*>& pdaolist, IOrderClause* pOderbyClause = NULL);
|
|||
|
|
|||
|
ODI ResultMsg findByManyAndAttr( string daoName, vector<string> v_attrName, vector<string> v_operation, vector<string> v_attrValue, list<DAO*>& pdaolist, IOrderClause* pOderbyClause = NULL);
|
|||
|
|
|||
|
ODI ResultMsg findByManyOrAttr(string daoName, vector<string> v_attrName, vector<string> v_operation, vector<string> v_attrValue, list<DAO*>& pdaolist, IOrderClause* pOderbyClause = NULL);
|
|||
|
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
class SectionChildDAO : public subDBDAO
|
|||
|
{
|
|||
|
public:
|
|||
|
int _sectionID; ///<<3C><><EFBFBD><EFBFBD>id
|
|||
|
virtual ODI ResultMsg delAllBySectionID(int sectionId, int commitType = COMMIT_T_IMMEDIATELY);
|
|||
|
|
|||
|
SectionChildDAO();
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
//class TransBulkheadChildDAO : public subDBDAO
|
|||
|
//{
|
|||
|
//public:
|
|||
|
// int _sectionID; ///<<3C><><EFBFBD><EFBFBD>id
|
|||
|
// ResultMsg delAllByTransBulkheadID(int transBulkheadId, int commitType = COMMIT_T_IMMEDIATELY);
|
|||
|
//};
|
|||
|
|
|||
|
|
|||
|
}
|