You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
4.8 KiB
Python
145 lines
4.8 KiB
Python
2 years ago
|
import json
|
||
|
|
||
|
from PyQt5.QtWidgets import *
|
||
|
|
||
|
from DcsUi.useCaseGroupManagement.myTableView import tableView
|
||
|
from utils.ClientModels import Usecase, UsecaseGroup
|
||
|
from xps.ExploreTable import *
|
||
|
|
||
|
|
||
|
class NewRules(QWidget):
|
||
|
my_Signal = QtCore.pyqtSignal(str)
|
||
|
|
||
|
def __init__(self):
|
||
|
super().__init__()
|
||
|
self.sec = 0
|
||
|
self.setWindowTitle('用例组管理')
|
||
|
self.resize(800, 500)
|
||
|
self.setFixedSize(self.width(), self.height())
|
||
|
self.setWindowModality(Qt.ApplicationModal)
|
||
|
self.setWindowFlags(QtCore.Qt.WindowCloseButtonHint)
|
||
|
|
||
|
self.dic = {
|
||
|
'header': ['编号', '名称'],
|
||
|
'data': []
|
||
|
}
|
||
|
|
||
|
self.createTable()
|
||
|
|
||
|
def createTable(self):
|
||
|
h1 = QHBoxLayout()
|
||
|
self.label1 = QLabel('用例组名称:')
|
||
|
# self.label2 = QLabel('【提示:用例组可上下拖拽调整顺序!】')
|
||
|
self.label3 = QLabel('用例组编号:')
|
||
|
self.line = QLineEdit(self)
|
||
|
self.number_line = QLineEdit(self)
|
||
|
h1.addWidget(self.label1)
|
||
|
h1.addWidget(self.line)
|
||
|
# h1.addWidget(self.label2)
|
||
|
# h1.addWidget(QSplitter())
|
||
|
|
||
|
h3 = QHBoxLayout()
|
||
|
h3.addWidget(self.label3)
|
||
|
h3.addWidget(self.number_line)
|
||
|
# h3.addWidget(QSplitter())
|
||
|
# h3.addWidget(self.label2)
|
||
|
|
||
|
h2 = QHBoxLayout()
|
||
|
self.btn1 = QPushButton('全选')
|
||
|
self.btn2 = QPushButton('全不选')
|
||
|
self.btn3 = QPushButton('创建用例组')
|
||
|
|
||
|
self.btn1.clicked.connect(self.selectAll)
|
||
|
self.btn2.clicked.connect(self.noSelectAll)
|
||
|
self.btn3.clicked.connect(self.newRulesGroup)
|
||
|
|
||
|
h2.addWidget(QSplitter())
|
||
|
h2.addWidget(self.btn1)
|
||
|
h2.addWidget(self.btn2)
|
||
|
h2.addWidget(self.btn3)
|
||
|
h2.addWidget(QSplitter())
|
||
|
|
||
|
self.selectSql()
|
||
|
self.table = MyModel(self.dic['header'], self.dic['data'])
|
||
|
self.tableview = tableView()
|
||
|
self.tableview.setModel(self.table)
|
||
|
|
||
|
mainLayout = QVBoxLayout(self)
|
||
|
mainLayout.addLayout(h1)
|
||
|
mainLayout.addLayout(h3)
|
||
|
mainLayout.addWidget(self.tableview)
|
||
|
mainLayout.addLayout(h2)
|
||
|
|
||
|
def selectSql(self):
|
||
|
pass
|
||
|
# gops = Usecase.select()
|
||
|
# for i in gops:
|
||
|
# self.dic['data'].append([i.number, i.name])
|
||
|
|
||
|
def selectAll(self):
|
||
|
pass
|
||
|
# isOn = True
|
||
|
# self.table.headerClick(isOn)
|
||
|
|
||
|
def noSelectAll(self):
|
||
|
pass
|
||
|
# isOn = False
|
||
|
# self.table.headerClick(isOn)
|
||
|
|
||
|
def newRulesGroup(self):
|
||
|
pass
|
||
|
# text = self.line.text()
|
||
|
# text_number = self.number_line.text()
|
||
|
# row = 0
|
||
|
# lis = []
|
||
|
# if 'Checked' not in self.table.checkList:
|
||
|
# QMessageBox.information(self,
|
||
|
# "Message",
|
||
|
# "请至少选择一个用例!",
|
||
|
# QMessageBox.Yes | QMessageBox.No)
|
||
|
# elif text == "" or text_number == "":
|
||
|
# QMessageBox.information(self,
|
||
|
# "Message",
|
||
|
# "请完整填写用例组名称及用例编号!",
|
||
|
# QMessageBox.Yes | QMessageBox.No)
|
||
|
# else:
|
||
|
# for i in self.table.checkList:
|
||
|
# if i == 'Checked':
|
||
|
# lis.append(self.table.datas[row][1])
|
||
|
# row += 1
|
||
|
# usecasegroup = UsecaseGroup()
|
||
|
# usecasegroup.name = text # 自己填写的用例组的名称
|
||
|
# usecasegroup.usecase = json.dumps(lis)
|
||
|
# usecasegroup.usecase_group_number = text_number
|
||
|
# check_usecasegroup = None
|
||
|
# try:
|
||
|
# check_usecasegroup = UsecaseGroup.get(UsecaseGroup.name == text)
|
||
|
# except:
|
||
|
# pass
|
||
|
# if check_usecasegroup:
|
||
|
# UsecaseGroup.delete_obj(check_usecasegroup.id)
|
||
|
# usecasegroup.save()
|
||
|
# QMessageBox.information(self,
|
||
|
# "消息框标题",
|
||
|
# "用例组创建成功",
|
||
|
# QMessageBox.Yes | QMessageBox.No)
|
||
|
# self.my_Signal.emit('用例组创建成功')
|
||
|
# self.close()
|
||
|
# else:
|
||
|
# usecasegroup.save()
|
||
|
# QMessageBox.information(self,
|
||
|
# "消息框标题",
|
||
|
# "用例组创建成功",
|
||
|
# QMessageBox.Yes | QMessageBox.No)
|
||
|
# self.my_Signal.emit('用例组创建成功')
|
||
|
# self.close()
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
import sys
|
||
|
|
||
|
app = QApplication(sys.argv)
|
||
|
win = NewRules()
|
||
|
win.show()
|
||
|
sys.exit(app.exec_())
|