factory/apps/enm/models.py

69 lines
2.4 KiB
Python

from django.db import models
from apps.utils.models import CommonBDModel, BaseModel, CommonADModel, CommonAModel, CommonBModel
class Product(CommonAModel):
"""
产品
"""
name = models.CharField('名称', max_length=50)
code = models.CharField('编号', max_length=50, null=True, blank=True)
class Meta:
verbose_name = '产品'
class Shift(CommonAModel):
"""班次
"""
name = models.CharField('名称', max_length=50)
start_time_o = models.TimeField('开始时间')
end_time_o = models.TimeField('结束时间')
class Meta:
verbose_name = '班次'
class Mgroup(CommonBDModel):
"""测点集
"""
name = models.CharField('名称', max_length=50)
class Meta:
verbose_name = '测点集'
class Team(CommonBModel):
"""班组
"""
name = models.CharField('名称', max_length=50)
leader = 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(CommonADModel):
"""值班记录
"""
team = models.ForeignKey(Team, verbose_name='班组', on_delete=models.CASCADE)
shit = models.ForeignKey(Shift, verbose_name='当班班次', on_delete=models.CASCADE)
leader = models.ForeignKey('system.user', verbose_name='班长', on_delete=models.CASCADE)
start_time = models.DateTimeField('值班开始')
end_time = models.DateTimeField('值班结束')