|
|
|
@ -111,13 +111,16 @@ class ProjectManage(object):
|
|
|
|
|
# print(name)
|
|
|
|
|
# print(Globals.getValue('currentPro'))
|
|
|
|
|
Client.initDB()
|
|
|
|
|
if name == Globals.getValue('currentPro'):
|
|
|
|
|
Globals.getValue('currentProDB').close()
|
|
|
|
|
|
|
|
|
|
if not Project.getByName(name):
|
|
|
|
|
print('不存在的工程', Project.getByName(name))
|
|
|
|
|
return
|
|
|
|
|
try:
|
|
|
|
|
shutil.rmtree(os.path.join('project', name))
|
|
|
|
|
if name == Globals.getValue('currentPro'):
|
|
|
|
|
self.closePopen()
|
|
|
|
|
Globals.getValue('currentProDB').close()
|
|
|
|
|
Globals.setValue('currentPro', None)
|
|
|
|
|
QTimer.singleShot(1000, lambda:shutil.rmtree(os.path.join('project', name)))
|
|
|
|
|
except OSError as e:
|
|
|
|
|
print(e)
|
|
|
|
|
Project.deleteProject(name = name)
|
|
|
|
@ -150,6 +153,8 @@ class ProjectManage(object):
|
|
|
|
|
if proType == '7':
|
|
|
|
|
Globals.getValue('FFThread').start()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# initDB
|
|
|
|
|
@classmethod
|
|
|
|
|
def closePopen(self):
|
|
|
|
@ -260,20 +265,46 @@ class ProjectManage(object):
|
|
|
|
|
return historyDB
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def editProject(self, name, Nname, des):
|
|
|
|
|
def editProject(self, name, Nname, des, proType):
|
|
|
|
|
# 修改工程信息
|
|
|
|
|
name = str(name)
|
|
|
|
|
Nname = str(Nname)
|
|
|
|
|
des = str(des)
|
|
|
|
|
Client.initDB()
|
|
|
|
|
if Project.getByName(Nname):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if name == Nname:
|
|
|
|
|
if name == Globals.getValue('currentPro'):
|
|
|
|
|
self.editCurProject(name, Nname, proType, des)
|
|
|
|
|
return
|
|
|
|
|
Project.update(projectName = Nname, description = des).where(Project.projectName == name).execute()
|
|
|
|
|
QTimer.singleShot(1000, lambda:os.rename(os.path.join('project', name), os.path.join('project', Nname)))
|
|
|
|
|
elif Project.getByName(Nname):
|
|
|
|
|
return '已有同名工程'
|
|
|
|
|
elif not Project.getByName(name):
|
|
|
|
|
print('不存在的工程')
|
|
|
|
|
return
|
|
|
|
|
else:
|
|
|
|
|
if name == Globals.getValue('currentPro'):
|
|
|
|
|
self.editCurProject(name, Nname, proType, des)
|
|
|
|
|
return
|
|
|
|
|
Project.update(projectName = Nname, description = des).where(Project.projectName == name).execute()
|
|
|
|
|
os.rename(os.path.join('project', name), os.path.join('project', Nname))
|
|
|
|
|
QTimer.singleShot(1000, lambda:os.rename(os.path.join('project', name), os.path.join('project', Nname)))
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def editCurProject(self, name, Nname, proType, des):
|
|
|
|
|
self.closePopen()
|
|
|
|
|
Globals.getValue('currentProDB').close()
|
|
|
|
|
Project.update(projectName = Nname, description = des).where(Project.projectName == name).execute()
|
|
|
|
|
QTimer.singleShot(1000, lambda:self.reNameCurProDir(name, Nname, proType))
|
|
|
|
|
Globals.getValue('MainWindow').varWidget.initIcon()
|
|
|
|
|
Globals.setValue('currentPro', Nname)
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def reNameCurProDir(self, name, Nname, proType):
|
|
|
|
|
os.rename(os.path.join('project', name), os.path.join('project', Nname))
|
|
|
|
|
self.switchProject(Nname, proType)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
|
def getAllProject(self):
|
|
|
|
|