fix: 设备出厂编号可为空

This commit is contained in:
caoqianming 2023-10-31 11:16:50 +08:00
parent ebb35740fd
commit c376cfb24a
2 changed files with 46 additions and 17 deletions

View File

@ -0,0 +1,18 @@
# Generated by Django 3.2.12 on 2023-10-31 03:16
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('em', '0005_auto_20230906_1431'),
]
operations = [
migrations.AlterField(
model_name='equipment',
name='number_factory',
field=models.CharField(blank=True, default='', max_length=50, verbose_name='出厂编号'),
),
]

View File

@ -3,6 +3,8 @@ from apps.utils.models import CommonBModel, CommonADModel, CommonAModel
from apps.system.models import User
# Create your models here.
class Equipment(CommonBModel):
"""
设备台账信息
@ -14,12 +16,12 @@ class Equipment(CommonBModel):
EQUIP_STATE_DISABLE = 40
EQUIP_STATE_SCRAP = 50
state_choices = (
(EQUIP_STATE_OK, '完好'),
(EQUIP_STATE_LIMIT, '限用'),
(EQUIP_STATE_FIX, '在修'),
(EQUIP_STATE_DISABLE, '禁用'),
(EQUIP_STATE_SCRAP, '报废')
(EQUIP_STATE_OK, '完好'),
(EQUIP_STATE_LIMIT, '限用'),
(EQUIP_STATE_FIX, '在修'),
(EQUIP_STATE_DISABLE, '禁用'),
(EQUIP_STATE_SCRAP, '报废')
)
EQUIP_TYPE_PRO = 10
EQUIP_TYPE_MEA = 20
@ -35,25 +37,29 @@ class Equipment(CommonBModel):
# way_choices = (
# (1, '外检'),
# (2, '自检'),
# )
# usetype_choices = (
# (1, '专用'),
# (2, '公用'),
# )
type = models.PositiveSmallIntegerField('类型', choices=type_choices, default=10)
type = models.PositiveSmallIntegerField(
'类型', choices=type_choices, default=10)
name = models.CharField('设备名称', max_length=50)
number_factory = models.CharField('出厂编号', max_length=50)
number_factory = models.CharField(
'出厂编号', max_length=50, default='', blank=True)
number = models.CharField('设备编号', max_length=50, unique=True)
model = models.CharField('规格型号', max_length=60, default='', blank=True)
factory = models.CharField('生产厂', max_length=50, default='', blank=True)
production_date = models.DateField('生产日期', null=True, blank=True)
buy_date = models.DateField('购置日期', null=True, blank=True)
state = models.PositiveIntegerField('设备状态', choices=state_choices, default=EQUIP_STATE_OK)
state = models.PositiveIntegerField(
'设备状态', choices=state_choices, default=EQUIP_STATE_OK)
parameter = models.TextField('技术参数', default='', blank=True)
place = models.CharField('安装/存放位置', max_length=50, default='', blank=True)
count = models.PositiveIntegerField('数量', default=1)
keeper = models.ForeignKey(User, verbose_name='责任人', on_delete=models.CASCADE, null=True, blank=True)
keeper = models.ForeignKey(
User, verbose_name='责任人', on_delete=models.CASCADE, null=True, blank=True)
description = models.CharField('描述', max_length=200, default='', null=True)
# 以下是计量检测设备单独字段
@ -61,13 +67,16 @@ class Equipment(CommonBModel):
# usetype = models.IntegerField('使用类别', choices=usetype_choices, default=1)
# way = models.IntegerField('校准或检定方式', choices=way_choices, default=1)
# standard = models.CharField('溯源标准或依据', max_length=200, default='', blank=True)
meter_type = models.CharField('仪表类型', max_length=100, null=True, blank=True)
meter_type = models.CharField(
'仪表类型', max_length=100, null=True, blank=True)
management_level = models.CharField('管理等级', max_length=10, default='A')
measurement_range = models.CharField('量程范围', max_length=100, default='', blank=True)
measurement_range = models.CharField(
'量程范围', max_length=100, default='', blank=True)
use_date = models.DateField('启用日期', null=True, blank=True)
cycle = models.PositiveSmallIntegerField('校准或检定周期(月)', null=True, blank=True)
cycle = models.PositiveSmallIntegerField(
'校准或检定周期(月)', null=True, blank=True)
check_date = models.DateField('最近校准检查日期', blank=True, null=True)
next_check_date = models.DateField('预计下次校准检查日期',blank=True, null=True)
next_check_date = models.DateField('预计下次校准检查日期', blank=True, null=True)
power_kw = models.PositiveSmallIntegerField('功率', null=True, blank=True)
class Meta:
@ -86,8 +95,10 @@ class EcheckRecord(CommonADModel):
(10, '正常'),
(20, '异常')
)
equipment = models.ForeignKey(Equipment, verbose_name='关联设备', on_delete=models.CASCADE)
equipment = models.ForeignKey(
Equipment, verbose_name='关联设备', on_delete=models.CASCADE)
check_organization = models.CharField('校准/检定机构', max_length=10)
check_date = models.DateField('校准/检定日期')
note = models.TextField('备注', null=True, blank=True)
result = models.PositiveSmallIntegerField('结果', default=10, choices=CHECK_CHOICES, help_text=str(CHECK_CHOICES))
result = models.PositiveSmallIntegerField(
'结果', default=10, choices=CHECK_CHOICES, help_text=str(CHECK_CHOICES))