38 lines
1.5 KiB
Python
38 lines
1.5 KiB
Python
from django.db import models
|
|
from django.db.models.base import Model
|
|
import django.utils.timezone as timezone
|
|
from django.db.models.query import QuerySet
|
|
from apps.system.models import CommonAModel, CommonBModel, Organization, User, Dict, File
|
|
from utils.model import SoftModel, BaseModel
|
|
from simple_history.models import HistoricalRecords
|
|
from apps.mtm.models import Material, Step, RecordForm
|
|
|
|
class Product(CommonAModel):
|
|
"""
|
|
产品(所有生产过程中出现过的)
|
|
"""
|
|
act_state_choices=(
|
|
(0, '待执行'),
|
|
(1, '进行中'),
|
|
(2, '已完成')
|
|
)
|
|
number = models.CharField('物品编号', primary_key=True, null=True, blank=True, max_length=50)
|
|
m_state = models.ForeignKey(Material, verbose_name='所属物料状态', on_delete=models.CASCADE)
|
|
p_state = models.ForeignKey(Step, verbose_name='所在步骤', on_delete=models.CASCADE, null=True, blank=True)
|
|
act_state = models.IntegerField('进行状态', default=0)
|
|
parent = models.ForeignKey('self', verbose_name='上一级', on_delete=models.CASCADE, db_constraint=False)
|
|
remark = models.CharField('备注', max_length=200, null=True, blank=True)
|
|
|
|
class ProductForm(CommonAModel):
|
|
"""
|
|
记录表格
|
|
"""
|
|
record_form = models.ForeignKey(RecordForm, verbose_name='所用表格', on_delete=models.CASCADE)
|
|
data = models.JSONField('记录的数据', default=dict, blank=True)
|
|
|
|
|
|
class ProductFlow(BaseModel):
|
|
"""
|
|
产品流转日志
|
|
"""
|
|
product = models.ForeignKey(Product, verbose_name='产品', on_delete=models.CASCADE) |