|
|
|
import sys
|
|
|
|
import datetime
|
|
|
|
from numpy import var
|
|
|
|
from peewee import *
|
|
|
|
|
|
|
|
sys.path.append('../')
|
|
|
|
sys.path.append('../../../')
|
|
|
|
from utils.DBModels.ProjectBaseModel import BaseModel
|
|
|
|
|
|
|
|
|
|
|
|
class TCPSetting(BaseModel):
|
|
|
|
host = CharField()
|
|
|
|
port = IntegerField()
|
|
|
|
frequency = CharField()
|
|
|
|
offset = IntegerField()
|
|
|
|
tcpType = CharField()
|
|
|
|
|
|
|
|
def setSetting(self, host, port, frequency, offset, tcpType):
|
|
|
|
self.host = host
|
|
|
|
self.port = port
|
|
|
|
self.frequency = frequency
|
|
|
|
self.offset = offset
|
|
|
|
self.tcpType = tcpType
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initSetting(self, tcpType):
|
|
|
|
self.host = '127.0.0.1'
|
|
|
|
self.port = 502
|
|
|
|
self.frequency = 1
|
|
|
|
self.offset = 1
|
|
|
|
self.tcpType = tcpType
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
|
|
|
|
class RTUSetting(BaseModel):
|
|
|
|
port = CharField()
|
|
|
|
byteSize = IntegerField()
|
|
|
|
baudrate = IntegerField()
|
|
|
|
stopbits = IntegerField()
|
|
|
|
parity = CharField()
|
|
|
|
frequency = CharField()
|
|
|
|
offset = IntegerField()
|
|
|
|
tcpType = CharField()
|
|
|
|
|
|
|
|
def setSetting(self, port, byteSize, baudrate, parity, stopbits, frequency, offset):
|
|
|
|
self.port = port
|
|
|
|
self.byteSize = byteSize
|
|
|
|
self.baudrate = baudrate
|
|
|
|
self.parity = baudrate
|
|
|
|
self.stopbits = stopbits
|
|
|
|
self.frequency = frequency
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initSetting(self, tcpType):
|
|
|
|
self.port = 'COM1'
|
|
|
|
self.byteSize = 8
|
|
|
|
self.baudrate = 9600
|
|
|
|
self.parity = 'N 无'
|
|
|
|
self.stopbits = 1
|
|
|
|
self.frequency = 1
|
|
|
|
self.offset = 1
|
|
|
|
self.tcpType = tcpType
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
|
|
|
|
class ModBusVar(BaseModel):
|
|
|
|
varName = CharField()
|
|
|
|
varType = IntegerField()
|
|
|
|
createTime = CharField()
|
|
|
|
description = CharField()
|
|
|
|
address = CharField()
|
|
|
|
slaveID = CharField()
|
|
|
|
min = CharField()
|
|
|
|
max = CharField()
|
|
|
|
order = CharField()
|
|
|
|
varModel = IntegerField()
|
|
|
|
|
|
|
|
|
|
|
|
# 查询变量是否存在
|
|
|
|
@classmethod
|
|
|
|
def getByName(cls, varName):
|
|
|
|
try:
|
|
|
|
return cls.get(cls.varName == str(varName))
|
|
|
|
except:
|
|
|
|
return False
|
|
|
|
|
|
|
|
# 删除变量
|
|
|
|
@classmethod
|
|
|
|
def deleteVar(cls, name):
|
|
|
|
query = cls.delete().where(cls.varName == name)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
# 创建变量
|
|
|
|
def createVar(self, varName, varType, des, address, slaveID, min, max, order, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.varType = varType
|
|
|
|
self.description = des
|
|
|
|
self.address = address
|
|
|
|
self.slaveID = slaveID
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.min = min
|
|
|
|
self.max = max
|
|
|
|
self.order = order
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
class ModbusTcpMasterVar(ModBusVar):
|
|
|
|
pass
|
|
|
|
|
|
|
|
class ModbusTcpSlaveVar(ModBusVar):
|
|
|
|
pass
|
|
|
|
|
|
|
|
class ModbusRtuMasterVar(ModBusVar):
|
|
|
|
pass
|
|
|
|
|
|
|
|
class ModbusRtuSlaveVar(ModBusVar):
|
|
|
|
pass
|
|
|
|
|
|
|
|
class InfluxMem(BaseModel):
|
|
|
|
mem = CharField()
|
|
|
|
|
|
|
|
def createMem(self, mem):
|
|
|
|
self.mem = mem
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def deleteMem(cls, mem):
|
|
|
|
query = cls.delete().where(cls.mem == mem)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
|
|
|
|
class HartVar(BaseModel):
|
|
|
|
varName = CharField()
|
|
|
|
createTime = CharField()
|
|
|
|
description = CharField()
|
|
|
|
varModel = IntegerField()
|
|
|
|
|
|
|
|
# 查询变量是否存在
|
|
|
|
@classmethod
|
|
|
|
def getByName(cls, varName):
|
|
|
|
try:
|
|
|
|
return cls.get(cls.varName == str(varName))
|
|
|
|
except:
|
|
|
|
return False
|
|
|
|
|
|
|
|
# 删除变量
|
|
|
|
@classmethod
|
|
|
|
def deleteVar(cls, name):
|
|
|
|
query = cls.delete().where(cls.varName == name)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
# 创建变量
|
|
|
|
def createVar(self, varName, des, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initVar(self, varName, des, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.varModel = varModel
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
|
|
|
|
class TcRtdVar(BaseModel):
|
|
|
|
varName = CharField()
|
|
|
|
createTime = CharField()
|
|
|
|
description = CharField()
|
|
|
|
varType = IntegerField()
|
|
|
|
min = CharField()
|
|
|
|
max = CharField()
|
|
|
|
compensationVar = CharField()
|
|
|
|
varModel = IntegerField()
|
|
|
|
|
|
|
|
|
|
|
|
# 查询变量是否存在
|
|
|
|
@classmethod
|
|
|
|
def getByName(cls, varName):
|
|
|
|
try:
|
|
|
|
return cls.get(cls.varName == str(varName))
|
|
|
|
except:
|
|
|
|
return False
|
|
|
|
|
|
|
|
# 删除变量
|
|
|
|
@classmethod
|
|
|
|
def deleteVar(cls, name):
|
|
|
|
query = cls.delete().where(cls.varName == name)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
# 创建变量
|
|
|
|
def createVar(self, varName, des, varType, min, max, compensationVar, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.varType = varType
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.min = min
|
|
|
|
self.max = max
|
|
|
|
self.compensationVar = compensationVar
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initVar(self, varName, des, varType, min, max, compensationVar, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.varType = varType
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.min = min
|
|
|
|
self.max = max
|
|
|
|
self.compensationVar = compensationVar
|
|
|
|
self.varModel = varModel
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
class AnalogVar(BaseModel):
|
|
|
|
varName = CharField()
|
|
|
|
createTime = CharField()
|
|
|
|
description = CharField()
|
|
|
|
varType = IntegerField()
|
|
|
|
min = CharField()
|
|
|
|
max = CharField()
|
|
|
|
varModel = IntegerField()
|
|
|
|
|
|
|
|
# 查询变量是否存在
|
|
|
|
@classmethod
|
|
|
|
def getByName(cls, varName):
|
|
|
|
try:
|
|
|
|
return cls.get(cls.varName == str(varName))
|
|
|
|
except:
|
|
|
|
return False
|
|
|
|
|
|
|
|
# 删除变量
|
|
|
|
@classmethod
|
|
|
|
def deleteVar(cls, name):
|
|
|
|
query = cls.delete().where(cls.varName == name)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
# 创建变量
|
|
|
|
def createVar(self, varName, des, varType, min, max, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.varType = varType
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.min = min
|
|
|
|
self.max = max
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initVar(self, varName, des, varType, min, max, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.varType = varType
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.min = min
|
|
|
|
self.max = max
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class HartSimulateVar(BaseModel):
|
|
|
|
varName = CharField()
|
|
|
|
createTime = CharField()
|
|
|
|
description = CharField()
|
|
|
|
varModel = IntegerField()
|
|
|
|
|
|
|
|
# 查询变量是否存在
|
|
|
|
@classmethod
|
|
|
|
def getByName(cls, varName):
|
|
|
|
try:
|
|
|
|
return cls.get(cls.varName == str(varName))
|
|
|
|
except:
|
|
|
|
return False
|
|
|
|
|
|
|
|
# 删除变量
|
|
|
|
@classmethod
|
|
|
|
def deleteVar(cls, name):
|
|
|
|
query = cls.delete().where(cls.varName == name)
|
|
|
|
query.execute()
|
|
|
|
|
|
|
|
# 创建变量
|
|
|
|
def createVar(self, varName, des, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.varModel = varModel
|
|
|
|
# print(self.createTime)
|
|
|
|
self.save()
|
|
|
|
|
|
|
|
def initVar(self, varName, des, varModel):
|
|
|
|
self.varName = varName
|
|
|
|
self.description = des
|
|
|
|
self.createTime = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')
|
|
|
|
self.varModel = varModel
|
|
|
|
self.save()
|