66 lines
1.9 KiB
C++
66 lines
1.9 KiB
C++
|
|
#include "projectManager.h"
|
||
|
|
#include "dataBase.h"
|
||
|
|
#include <QMessageBox>
|
||
|
|
|
||
|
|
ProjectManager& ProjectManager::instance()
|
||
|
|
{
|
||
|
|
//采用静态局部变量的方式,静态局部变量的初始化是在第一次访问时,以后的调用不会多次初始化,并且生命周期和程序一致
|
||
|
|
static ProjectManager instance;
|
||
|
|
return instance;
|
||
|
|
}
|
||
|
|
|
||
|
|
ProjectManager::ProjectManager(QObject *parent)
|
||
|
|
: QObject(parent)
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
ProjectManager::~ProjectManager()
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
void ProjectManager::saveEditorDataToDB(QUuid uid,const QString& name,const QString& tag,QByteArray byte)
|
||
|
|
{
|
||
|
|
bool val = DataBase::GetInstance()->ifEditorProjectExist(name);
|
||
|
|
if(val)
|
||
|
|
{
|
||
|
|
bool res = DataBase::GetInstance()->updateEditorProject(name,byte);
|
||
|
|
if(res){
|
||
|
|
emit editorSaved(name,uid);
|
||
|
|
QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"更新成功"));
|
||
|
|
}
|
||
|
|
else
|
||
|
|
QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"更新失败"));
|
||
|
|
}
|
||
|
|
else{
|
||
|
|
bool res = DataBase::GetInstance()->insertEditorProject(uid,name,tag,byte);
|
||
|
|
if(res){
|
||
|
|
emit editorSaved(name,uid);
|
||
|
|
QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"保存成功"));
|
||
|
|
}
|
||
|
|
else
|
||
|
|
QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"保存失败"));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
QByteArray ProjectManager::getEditorDataByName(const QString& name)
|
||
|
|
{
|
||
|
|
return DataBase::GetInstance()->getEditorProjectByName(name);
|
||
|
|
}
|
||
|
|
|
||
|
|
void ProjectManager::createEditor(const QString& name)
|
||
|
|
{
|
||
|
|
if(!_wizardInfo.contains(name)){
|
||
|
|
QUuid uid = QUuid::createUuid();
|
||
|
|
_wizardInfo[name].sName = name;
|
||
|
|
_wizardInfo[name].uid = uid;
|
||
|
|
emit createNewEditor(name,uid);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ProjectManager::saveEditor(const QString& name)
|
||
|
|
{
|
||
|
|
emit prepareSaveEditor(name);
|
||
|
|
}
|