1026更新

main
“zcw” 2 years ago
parent b89f9db9ec
commit 92754d3622

@ -1 +1 @@
0n-Av3orXZphU_Uu7yiyQz5T6O1iz1eeNiilL97c9KttfzVkv8hMHawibbh7WDGUTC8Qie26UKf6govwsY0NXQ==
bzz1xqqO5MZvQYYyXqwqI0i12cMGpU4IRYFBabSvKdLfJgAZxyiCOmY7d_JZsr63b4SKQOB_ptyDV1X1MmsxDw==

@ -806,3 +806,52 @@ QListView#trendListView::item{
margin-bottom: 10px;
}
QMessageBox {
background-color: #f0f0f0;
color: black;
font-size: 14px;
border: 1px solid #cccccc;
border-radius: 5px;
padding: 5px;
}
QMessageBox QLabel {
color: black;
font-size: 14px;
}
QMessageBox QPushButton {
background-color: #e0e0e0;
color: black;
font-size: 14px;
border: 1px solid #cccccc;
border-radius: 5px;
padding: 5px;
min-width: 5em;
}
QMessageBox QPushButton:hover {
background-color: #f5f5f5;
}
QMessageBox QPushButton:pressed {
background-color: #e5e5e5;
}

File diff suppressed because it is too large Load Diff

@ -153,7 +153,7 @@ class MainWindow(QMainWindow):
self.leftWidget.createProject.clicked.connect(lambda: self.exButtonClicked(0))
self.leftWidget.varMag.clicked.connect(self.varShow)
self.leftWidget.trendMag.clicked.connect(lambda: self.exButtonClicked(2))
self.leftWidget.trendMag.clicked.connect(self.reFreshTrendWidget)
self.leftWidget.userMag.clicked.connect(lambda: self.exButtonClicked(3))
self.leftWidget.protocolMag.clicked.connect(self.showSetting)
@ -185,7 +185,7 @@ class MainWindow(QMainWindow):
self.setWindowFlag(Qt.FramelessWindowHint)
def exButtonClicked(self, index):
self.rightWidget.setCurrentIndex(index)
print(index)
# print(index)
Globals.setValue('SearchWidget', index)
@ -203,7 +203,7 @@ class MainWindow(QMainWindow):
def varShow(self):
proType = Globals.getValue('currentProType')
print(type(proType))
# print(type(proType))
if proType == -1:
return
elif proType in ['0', '1', '2', '3']:
@ -228,7 +228,12 @@ class MainWindow(QMainWindow):
elif proType in ['9']:
self.rightWidget.setCurrentIndex(11)
Globals.setValue('SearchWidget', 11)
#枚举参数
#枚举参数
def reFreshTrendWidget(self):
self.trendWidget.getMems()
self.exButtonClicked(2)
def enum(self,**enums):
return type('Enum', (), enums)

@ -114,6 +114,8 @@ class TrendWidgets(QWidget):
Globals.setValue('HistoryWidget', self)
def deleteMem(self):
if not self.memLsit:
return
self.historyDB.mem = self.memLsit[self.timeBox.currentIndex()]
self.historyDB.deleteMem()
InfluxMem.deleteMem(self.historyDB.mem)
@ -173,16 +175,15 @@ class TrendWidgets(QWidget):
def exchangeProject(self):
self.timeBox.clear()
self.memLsit = []
self.getMems()
self.refreshList(0)
self.trendWebView.setHtml('')
def getMems(self):
# 获取所有的趋势表
mems = InfluxMem.get_all()
self.proName = Globals.getValue('currentPro')
# self.timeBox.clear()
self.timeBox.clear()
if mems is 'Error':
return
for x in mems:
@ -195,14 +196,16 @@ class TrendWidgets(QWidget):
def refreshList(self, index):
# 更新变量列表
self.getMems()
self.model.clear()
if self.memLsit == []:
return
self.historyDB.mem = self.memLsit[index]
# self.historyDB.startTime = int(float(self.memLsit[index]))
# print(self.memLsit[index])
tagSet = self.historyDB.queryVarName()
self.model.clear()
# if not tagSet:
# QMessageBox.information(self, '提示', '当前工程历史趋势已损坏')
# return
for tag in tagSet:
item = QStandardItem(str(tag))
item.setCheckable(True)

@ -390,23 +390,26 @@ class VarButtonDelegate(QItemDelegate):
else:
varMes = model.datas[sender.index[0]]
name, des, varType, slaveID, address, min, max, order = str(varMes[3]), str(varMes[4]), str(varMes[5]), str(varMes[6]), str(varMes[7]), str(varMes[8]), str(varMes[9]), str(varMes[-1])
print(name, des, varType, slaveID, address, min, max, order)
# print(name, des, varType, slaveID, address, min, max, order)
if not name or not varType:
reply = QMessageBox.question(self.parent(),
'警告',
"有字段为空",
QMessageBox.Yes)
return
sender.isEdit = True
checkbox.setEnabled(False)
model.editableList.remove(sender.index[0])
if sender.oldName:
ModbusVarManage.editVar(name = sender.oldName, Nname = name, des = des, varType = varType, slaveID = slaveID, address = address, min = min, max = max, order = order)
if sender.oldName and ModBusVar.getByName(sender.oldName):
if sender.oldName == name or [varMes[3] for varMes in model.datas].count(name) < 2:
ModbusVarManage.editVar(name = sender.oldName, Nname = name, des = des, varType = varType, slaveID = slaveID, address = address, min = min, max = max, order = order)
else:
QMessageBox.information(self.parent(), '提示', '已有同名变量')
return
else:
ModbusVarManage.createVar(varName = name, varType = varType, des = des, address = address, slaveID = slaveID, min = min, max = max, order = order)
res = ModbusVarManage.createVar(varName = name, varType = varType, des = des, address = address, slaveID = slaveID, min = min, max = max, order = order)
if res:
QMessageBox.information(self.parent(), '提示', '已有同名变量')
return
sender.setIcon(qtawesome.icon('fa.pencil', color='#4c8cf2'))
rowIndex = sender.index[0]
varMes = ModbusVarManage.getByName(name)
@ -415,6 +418,10 @@ class VarButtonDelegate(QItemDelegate):
varMes.insert(2, '')
model.insert_data(varMes, rowIndex)
model.remove_row(rowIndex + 1)
sender.isEdit = True
checkbox.setEnabled(False)
model.editableList.remove(sender.index[0])
def delete_action(self):

@ -107,7 +107,7 @@ class register:
# str = str
k = des(self.Des_Key, CBC, self.Des_IV, pad=None, padmode=PAD_PKCS5)
EncryptStr = k.encrypt(str)
print(type(EncryptStr))
# print(type(EncryptStr))
return base64.b64encode(EncryptStr) # 转base64编码返回
# 获取注册码,验证
@ -123,7 +123,7 @@ class register:
key_decrypted = str(self.DesDecrypt())
if content != 0 and key_decrypted != 0:
if content != key_decrypted:
print("wrong register code, please check and input your register code again:")
# print("wrong register code, please check and input your register code again:")
self.regist()
elif content == key_decrypted:
return True

@ -95,7 +95,11 @@ class HistoryDBManage():
|> range(start: {})\
|> filter(fn:(r) => r._measurement == "{}")\
|> filter(fn:(r) => r._field == "value")'.format(self.bucket, self.startTime, self.mem)
results = self.queryApi.query(query, org = self.org)
try:
results = self.queryApi.query(query, org = self.org)
except Exception as e:
BucketsApi(self.client).create_bucket(bucket_name = self.bucket, org = self.org)
return tagSet
for result in results:
for record in result.records:
tagSet.add(record['varName'])

@ -109,7 +109,7 @@ class ProjectManage(object):
# 删除工程
name = str(name)
# print(name)
print(Globals.getValue('currentPro'))
# print(Globals.getValue('currentPro'))
Client.initDB()
if name == Globals.getValue('currentPro'):
Globals.getValue('currentProDB').close()

@ -44,7 +44,7 @@ class ModbusVarManage(object):
maxIndex = index
# print(IDIndex, slaveIndex, nameIndex, desIndex, typeIndex, addrIndex, minIndex, maxIndex)
if IDIndex == None or slaveIndex == None or nameIndex == None or desIndex == None or typeIndex == None or addrIndex == None or minIndex == None or maxIndex == None:
print('表头错误')
# print('表头错误')
return '表头错误'
for index, row in enumerate(list(ws.iter_rows())[1:]):
@ -96,7 +96,7 @@ class ModbusVarManage(object):
max = str(max)
order = order
if ModBusVar.getByName(name):
print('已有同名变量')
return 1
else:
varModel = ModBusVar()
varModel.createVar(varName = varName, varType = varType, des = des, address = address, slaveID = slaveID, min = min, max = max, order = order)

@ -94,7 +94,7 @@ def setValue(self, name, varType, slaveID, address, value, order): # 写入变
slaveID = int(slaveID)
address = int(address) - self.offset
varType = str(varType)
print(address, 555555555555555555)
# print(address, 555555555555555555)
if varType == '4':
self.TcpModbus.writeSingleRegister(slaveId = slaveID, address = address, outputValue = value, order = order)
elif varType == '0':

@ -15,12 +15,12 @@ class HartProtocol(object):
for index, address in enumerate(self.addressList):
value = self.rtuMaster.readHoldingRegisters(slaveId = 1, startAddress = address, varNums = 2, order = 'ABCD')
valueList.append(value)
print(self.addressList, valueList)
# print(self.addressList, valueList)
return valueList
def writeValue(self, devIndex, elemIndex, value):
address = self.addressList[devIndex * 5 + elemIndex]
print(address)
# print(address)
self.rtuMaster.writeSingleRegister(slaveId = 1, address = address, outputValue = value, order = 'DCBA')
if __name__ == '__main__':

Loading…
Cancel
Save