50 lines
1.9 KiB
Python
50 lines
1.9 KiB
Python
from django.db import models
|
|
from apps.utils.models import CommonBDModel, BaseModel
|
|
|
|
class Mgroup(CommonBDModel):
|
|
"""测点集
|
|
"""
|
|
name = models.CharField('名称', max_length=50)
|
|
|
|
|
|
class Team(CommonBDModel):
|
|
"""班组
|
|
"""
|
|
name = models.CharField('名称', max_length=50)
|
|
members = models.ManyToManyField('system.user', verbose_name='关联成员', through='enm.teammember')
|
|
|
|
|
|
class TeamMember(BaseModel):
|
|
"""班组成员
|
|
"""
|
|
team = models.ForeignKey('enm.team', verbose_name='关联班组', on_delete=models.CASCADE)
|
|
is_main = models.BooleanField('是否班长', default=False)
|
|
member = models.ForeignKey('system.user', verbose_name='关联用户', on_delete=models.CASCADE)
|
|
|
|
|
|
class Mpoint(CommonBDModel):
|
|
"""测点
|
|
"""
|
|
name = models.CharField('测点名称', max_length=50)
|
|
code = models.CharField('测点编号', max_length=50)
|
|
unit = models.CharField('单位', max_length=50)
|
|
|
|
ep_monitored = models.ForeignKey('em.equipment', verbose_name='监测哪个设备', related_name='mp_ep_monitored', on_delete=models.SET_NULL, null=True, blank=True)
|
|
ep_belong = models.ForeignKey('em.equipment', verbose_name='属于哪个设备', related_name='mp_ep_belong', on_delete=models.SET_NULL, null=True, blank=True)
|
|
mgroup = models.ForeignKey('enm.mgroup', verbose_name='所在集合', on_delete=models.SET_NULL, null=True, blank=True)
|
|
|
|
|
|
class Mrecord(BaseModel):
|
|
"""测点原始记录
|
|
"""
|
|
mpoint = models.ForeignKey(Mpoint, verbose_name='关联测点', on_delete=models.SET_NULL, null=True, blank=True)
|
|
tag_id = models.BigIntegerField('记录ID')
|
|
tag_code = models.CharField('测点编号', max_length=50)
|
|
tag_update = models.DateTimeField('更新时间')
|
|
tag_val = models.FloatField('当前值')
|
|
|
|
|
|
class Drecord(BaseModel):
|
|
"""值班记录
|
|
"""
|
|
team = models.ForeignKey(Team, verbose_name='班组', on_delete=models.CASCADE) |