448 lines
11 KiB
C++
448 lines
11 KiB
C++
|
#pragma execution_character_set("utf-8")
|
|||
|
|
|||
|
#include <QDateTime>
|
|||
|
#include <QCoreApplication>
|
|||
|
#include <QFileDialog>
|
|||
|
#include "DataModelEventModule.h"
|
|||
|
#include "DataModelData.h"
|
|||
|
#include "DataManager.h"
|
|||
|
#include "ProjectData.h"
|
|||
|
|
|||
|
#include "DataAccessModule.h"
|
|||
|
|
|||
|
|
|||
|
DataModelEventModule::DataModelEventModule(QObject* /*parent*/, DataManager* manager)
|
|||
|
:BaseEventModule(manager, "DataModelListView")
|
|||
|
{
|
|||
|
addShareEventModule(new DataAccessModule(manager));
|
|||
|
}
|
|||
|
|
|||
|
DataModelEventModule::~DataModelEventModule()
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
bool DataModelEventModule::onMessage(const std::string& eventName, json& parameter)
|
|||
|
{
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("DataModelEventModule receive message.......");
|
|||
|
LOG(INFO) << eventName;
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
TRY{
|
|||
|
if (eventName == "get-project") {
|
|||
|
//<2F><>ȡ<EFBFBD><C8A1>Ŀ<EFBFBD><C4BF>Ϣ
|
|||
|
return getProject(parameter);
|
|||
|
}
|
|||
|
//else if (eventName == "get-project-datamodel")
|
|||
|
//{
|
|||
|
// return getAllDataModel(parameter);
|
|||
|
//}
|
|||
|
else if (eventName == "get-datamodel-by-identification")
|
|||
|
{
|
|||
|
return getDataModelByIdentification(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "add-datamodel")
|
|||
|
{
|
|||
|
//<2F>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
return addDataModel(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "has-datamodel-child")
|
|||
|
{
|
|||
|
return hasDatamodelChild(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "save-datamodel")
|
|||
|
{
|
|||
|
//<2F><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
return upateDataModel(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "delete-datamodel")
|
|||
|
{
|
|||
|
//ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
return deleteDataModel(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "copy-datamodel")
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
return copyDataModel(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "add-datamodel-version")
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
return upgradeVersion(parameter);
|
|||
|
}
|
|||
|
else if (eventName == "create-instance")
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>ļ<EFBFBD>
|
|||
|
return generateInstanceFile(parameter);
|
|||
|
}
|
|||
|
}
|
|||
|
CATCH(parameter);
|
|||
|
|
|||
|
return EventModule::onMessage(eventName, parameter);
|
|||
|
}
|
|||
|
|
|||
|
//////////////////////////////////////////////////////////////////////////
|
|||
|
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>Ϣ<EFBFBD><CFA2>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>
|
|||
|
bool DataModelEventModule::getProject(json& parameter)
|
|||
|
{
|
|||
|
//<2F><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0>Ŀid
|
|||
|
auto data = parameter["data"];
|
|||
|
int projectId = data["id"];
|
|||
|
DPData* pData = pDataManager->findObjectById(DataManager::DataType::project, projectId);
|
|||
|
ProjectData* pProject = dynamic_cast<ProjectData*>(pData);
|
|||
|
if (pProject)
|
|||
|
{
|
|||
|
pProject->setCurrentProject();
|
|||
|
json project;
|
|||
|
pProject->toJson(project);
|
|||
|
|
|||
|
parameter["response"] = project;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
parameter["error"] = "<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ";
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("getProject Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
///*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
|
|||
|
//bool DataModelEventModule::getAllDataModel(json& parameter)
|
|||
|
//{
|
|||
|
// //<2F><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0>Ŀid
|
|||
|
// auto data = parameter["data"];
|
|||
|
// int projectId = data["id"];
|
|||
|
//
|
|||
|
// DPData* pData = pDataManager->findObjectById(DataManager::DataType::project, projectId);
|
|||
|
// ProjectData* pProject = dynamic_cast<ProjectData*>(pData);
|
|||
|
//
|
|||
|
// if (pProject)
|
|||
|
// {
|
|||
|
// //<2F>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|||
|
// if (!pProject->_initChildren)
|
|||
|
// {
|
|||
|
// pProject->getAllChildren(pDataManager);
|
|||
|
// pProject->_initChildren = true;
|
|||
|
// }
|
|||
|
//
|
|||
|
// if (pProject->_childrenMap.isEmpty())
|
|||
|
// {
|
|||
|
// parameter["error"] = "<22><><EFBFBD><EFBFBD>Ŀû<C4BF><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>";
|
|||
|
// LOG(INFO) << CommonHelper::utf8ToStdString("getAllDataModel Sendto web.......");
|
|||
|
// LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
// return true;
|
|||
|
// }
|
|||
|
// //<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD>parameter<65><72><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
// QMap<unsigned int, DPData*>::iterator it = pProject->_childrenMap.begin();
|
|||
|
// while (it != pProject->_childrenMap.end())
|
|||
|
// {
|
|||
|
// DataModelData* pData = dynamic_cast<DataModelData*>(*it);
|
|||
|
// //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣתjson
|
|||
|
// if (pData) {
|
|||
|
// json j;
|
|||
|
// pData->toJson(j);
|
|||
|
// parameter["response"].push_back(j);
|
|||
|
// }
|
|||
|
// it++;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// else
|
|||
|
// {
|
|||
|
// parameter["error"] = "<22>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ";
|
|||
|
// }
|
|||
|
//
|
|||
|
// LOG(INFO) << CommonHelper::utf8ToStdString("getAllDataModel Sendto web.......");
|
|||
|
// LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
//
|
|||
|
// return true;
|
|||
|
//}
|
|||
|
|
|||
|
/*<2A>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
|
|||
|
bool DataModelEventModule::addDataModel(json& parameter)
|
|||
|
{
|
|||
|
|
|||
|
//<2F><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD><C7B0>Ŀid
|
|||
|
auto data = parameter["data"];
|
|||
|
auto projectId = data["parentid"];
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ,<2C>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
DPData* pCurrentProject = pDataManager->findObjectById(DataManager::DataType::project, projectId);
|
|||
|
if (!pCurrentProject) {
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("addDataModel Sendto web.......");
|
|||
|
parameter["error"] = "<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>͵ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ";
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
//<2F>½<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>name type description
|
|||
|
DataModelData* pNewData = new DataModelData();
|
|||
|
//<2F><><EFBFBD><EFBFBD>name type des updateTime createTime
|
|||
|
pNewData->setNewData(parameter);
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
pNewData->_parent = pCurrentProject;
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
if (pCurrentProject->addChild(pNewData))
|
|||
|
{
|
|||
|
//<2F><><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>map
|
|||
|
pDataManager->insertDataMap(DataManager::DataType::dataModel, pNewData->_id, pNewData);
|
|||
|
//<2F><><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>ͳɹ<CDB3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>ظ<EFBFBD>web<65><62>
|
|||
|
pNewData->toJson(data);
|
|||
|
parameter["response"] = data;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//ʧ<><CAA7>
|
|||
|
delete pNewData;
|
|||
|
pNewData = nullptr;
|
|||
|
parameter["error"] = "<EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("addDataModel Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>²<EFBFBD><C2B2><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
bool DataModelEventModule::hasDatamodelChild(json& parameter)
|
|||
|
{
|
|||
|
auto data = parameter["data"];
|
|||
|
auto dataModelId = data["id"];
|
|||
|
DPData* pData = pDataManager->findObjectById(DataManager::DataType::dataModel, dataModelId);
|
|||
|
if (!pData) {
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("hasDatamodelChild Sendto web.......");
|
|||
|
parameter["error"] = "<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>";
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
if (pData->_childrenMap.size() > 0)
|
|||
|
{
|
|||
|
parameter["response"]["status"] = true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
parameter["response"]["status"] = false;
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("hasDatamodelChild Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
|
|||
|
bool DataModelEventModule::upateDataModel(json& parameter)
|
|||
|
{
|
|||
|
QVariantMap valueMap;
|
|||
|
//<2F><EFBFBD>name type desciption
|
|||
|
auto data = parameter["data"];
|
|||
|
auto dataModelId = data["id"];
|
|||
|
//<2F><><EFBFBD>ҵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
DataModelData* pDataModel = (DataModelData*)pDataManager->findObjectById(DataManager::DataType::dataModel, dataModelId);
|
|||
|
if (!pDataModel) {
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("upateDataModel Sendto web.......");
|
|||
|
parameter["error"] = "<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>";
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
if (pDataModel->_isVerLocked)
|
|||
|
{
|
|||
|
parameter["error"] = "<EFBFBD>ð汾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
pDataModel->setEditData(parameter);
|
|||
|
if (pDataModel->saveSelf())
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳɹ<DDB3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>web<65>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
|||
|
data["updateTime"] = CommonHelper::qstringToUtf8(pDataModel->getUpdateTime());
|
|||
|
parameter["response"] = data;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
parameter["error"] = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("upateDataModel Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/*ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
|
|||
|
bool DataModelEventModule::deleteDataModel(json& parameter)
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD>id
|
|||
|
auto data = parameter["data"];
|
|||
|
auto dataModelId = data["id"];
|
|||
|
|
|||
|
DPData* pData = pDataManager->findObjectById(DataManager::DataType::dataModel, dataModelId);
|
|||
|
if (!pData) {
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("deleteDataModel Sendto web.......");
|
|||
|
parameter["error"] = "<EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>";
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
if (pData->deleteSelf())
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
pDataManager->deleteInDataMap(DataManager::DataType::dataModel, dataModelId);
|
|||
|
delete pData;
|
|||
|
pData = nullptr;
|
|||
|
//ɾ<><C9BE><EFBFBD>ɹ<EFBFBD>
|
|||
|
parameter["response"]["deleted"] = true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
parameter["response"]["deleted"] = false;
|
|||
|
}
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("deleteDataModel Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
|
|||
|
bool DataModelEventModule::copyDataModel(json& parameter)
|
|||
|
{
|
|||
|
auto data = parameter["data"];
|
|||
|
int srcDataModelId = data["id"];
|
|||
|
//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
DataModelData* pData = (DataModelData*)pDataManager->findObjectById(DataManager::DataType::dataModel, srcDataModelId);
|
|||
|
if (pData)
|
|||
|
{
|
|||
|
DataModelData* pNewModel = new DataModelData();
|
|||
|
if (pData->copyData(pNewModel, parameter))
|
|||
|
{
|
|||
|
pNewModel->_parent = pData->_parent;
|
|||
|
pDataManager->insertDataMap(DataManager::DataType::dataModel, pNewModel->_id, pNewModel);
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>ͷ<EFBFBD><CDB7>ظ<EFBFBD>web<65><62>
|
|||
|
json j;
|
|||
|
pNewModel->toJson(j);
|
|||
|
parameter["response"] = j;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//ʧ<><CAA7>
|
|||
|
delete pNewModel;
|
|||
|
pNewModel = nullptr;
|
|||
|
parameter["error"] = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("copyDataModel Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>ļ<EFBFBD>*/
|
|||
|
bool DataModelEventModule::generateInstanceFile(json& parameter)
|
|||
|
{
|
|||
|
auto data = parameter["data"];
|
|||
|
int srcDataModelId = data["id"];
|
|||
|
//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
DataModelData* pData = (DataModelData*)pDataManager->findObjectById(DataManager::DataType::dataModel, srcDataModelId);
|
|||
|
QString msg;
|
|||
|
try
|
|||
|
{
|
|||
|
if (pData)
|
|||
|
{
|
|||
|
if (!pData->createInstance(msg))
|
|||
|
{
|
|||
|
if (msg != "δѡ<EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><EFBFBD>")
|
|||
|
{
|
|||
|
parameter["error"] = CommonHelper::qstringToUtf8(msg);
|
|||
|
parameter["response"]["status"] = false;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
parameter["response"]["status"] = true;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//δ<>ҵ<EFBFBD><D2B5><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
parameter["error"] = "δ<EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>";
|
|||
|
parameter["response"]["status"] = false;
|
|||
|
}
|
|||
|
}
|
|||
|
catch (exception& e)
|
|||
|
{
|
|||
|
parameter["error"] = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
|
|||
|
|
|||
|
LOG(ERROR) << e.what();
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("generateInstanceFile Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
bool DataModelEventModule::upgradeVersion(json& parameter)
|
|||
|
{
|
|||
|
auto data = parameter["data"];
|
|||
|
int srcDataModelId = data["id"];
|
|||
|
//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
DataModelData* pData = qobject_cast<DataModelData*>(pDataManager->findObjectById(DataManager::DataType::dataModel, srcDataModelId));
|
|||
|
if (pData)
|
|||
|
{
|
|||
|
DataModelData* pNewModel = new DataModelData();
|
|||
|
if (pData->upgradeVersion(pNewModel))
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|||
|
pNewModel->_parent = pData->_parent;
|
|||
|
pData->_parent->_childrenMap.insert(pNewModel->_id, pNewModel);
|
|||
|
pDataManager->insertDataMap(DataManager::DataType::dataModel, pNewModel->_id, pNewModel);
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>ͷ<EFBFBD><CDB7>ظ<EFBFBD>web<65><62>
|
|||
|
json j;
|
|||
|
pNewModel->toJson(j);
|
|||
|
parameter["response"] = j;
|
|||
|
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>
|
|||
|
parameter["error"] = "<EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//δ<>ҵ<EFBFBD><D2B5><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
parameter["error"] = "δ<EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>";
|
|||
|
}
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("upgradeVersion Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|
|||
|
|
|||
|
bool DataModelEventModule::getDataModelByIdentification(json& parameter)
|
|||
|
{
|
|||
|
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>Ʊ<EFBFBD>ʶ<EFBFBD><CAB6>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
auto data = parameter["data"];
|
|||
|
int projectId = data["id"];
|
|||
|
ProjectData* pProject = qobject_cast<ProjectData*>(pDataManager->findObjectById(DataManager::DataType::project, projectId));
|
|||
|
if (!pProject) {
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("getDataModelByIdentification Sendto web.......");
|
|||
|
|
|||
|
parameter["error"] = "δ<EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ";
|
|||
|
return true;
|
|||
|
}
|
|||
|
QString name = CommonHelper::utf8ToQString(data["identification"]);
|
|||
|
QList<DPData*> modelList;
|
|||
|
pProject->findDatamodelByName(name, modelList);
|
|||
|
parameter["response"] = json::array();
|
|||
|
for (int i = 0; i < modelList.size(); i++)
|
|||
|
{
|
|||
|
json j;
|
|||
|
qobject_cast<DataModelData*>(modelList.at(i))->toJson(j);
|
|||
|
parameter["response"].push_back(j);
|
|||
|
}
|
|||
|
LOG(INFO) << CommonHelper::utf8ToStdString("getDataModelByIdentification Sendto web.......");
|
|||
|
LOG(INFO) << CommonHelper::jsonToString(parameter);
|
|||
|
return true;
|
|||
|
}
|