33 lines
1.6 KiB
Python
33 lines
1.6 KiB
Python
from django.db import models
|
|
from apps.system.models import CommonAModel
|
|
from apps.utils.models import CommonBDModel
|
|
from apps.mtm.models import Material, Shift
|
|
from apps.wpm.models import SfLog
|
|
|
|
class TestItem(CommonAModel):
|
|
"""
|
|
检验项目
|
|
"""
|
|
name = models.CharField('名称', max_length=100)
|
|
sort = models.PositiveSmallIntegerField('排序', default=1)
|
|
|
|
class Meta:
|
|
ordering = ['sort', '-create_time']
|
|
|
|
# Create your models here.
|
|
class QuaStat(CommonBDModel):
|
|
"""
|
|
质量数据统计表 需要有belong_dept
|
|
"""
|
|
type = models.CharField('统计维度', max_length=50, default='day', help_text='year_s/month_s/day_s/shift/sflog')
|
|
year_s = models.PositiveSmallIntegerField('班年', null=True, blank=True)
|
|
month_s = models.PositiveSmallIntegerField('班月', null=True, blank=True)
|
|
day_s = models.PositiveSmallIntegerField('班日', null=True, blank=True)
|
|
material = models.ForeignKey(Material, verbose_name='关联产物', on_delete=models.CASCADE)
|
|
sflog = models.ForeignKey(SfLog, verbose_name='关联值班记录', on_delete=models.CASCADE, null=True, blank=True)
|
|
shift = models.ForeignKey(Shift, verbose_name='关联班组', on_delete=models.CASCADE, null=True, blank=True)
|
|
testitem = models.ForeignKey(TestItem, verbose_name='质检项目', on_delete=models.CASCADE)
|
|
val_avg = models.FloatField('平均值', null=True, blank=True)
|
|
num_test = models.PositiveSmallIntegerField('检测次数', null=True, blank=True)
|
|
num_ok = models.PositiveSmallIntegerField('合格次数', null=True, blank=True)
|
|
rate_pass = models.FloatField('合格率', null=True, blank=True) |