fix: base 添加wpmw app以追踪到个

This commit is contained in:
caoqianming 2025-01-02 09:37:37 +08:00
parent 796d6e248f
commit 73b1d58b8a
8 changed files with 68 additions and 0 deletions

View File

@ -0,0 +1,30 @@
# Generated by Django 3.2.12 on 2025-01-02 00:58
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('qm', '0032_defect_note'),
('inm', '0022_mioitemw'),
]
operations = [
migrations.AddField(
model_name='materialbatch',
name='defect',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='qm.defect', verbose_name='缺陷'),
),
migrations.AddField(
model_name='materialbatch',
name='state',
field=models.PositiveSmallIntegerField(choices=[(10, '合格'), (20, '不合格'), (30, '返修'), (40, '检验'), (50, '报废')], default=10, verbose_name='状态'),
),
migrations.AlterField(
model_name='mioitem',
name='is_testok',
field=models.BooleanField(blank=True, null=True, verbose_name='检验是否合格'),
),
]

0
apps/wpmw/__init__.py Normal file
View File

3
apps/wpmw/admin.py Normal file
View File

@ -0,0 +1,3 @@
from django.contrib import admin
# Register your models here.

6
apps/wpmw/apps.py Normal file
View File

@ -0,0 +1,6 @@
from django.apps import AppConfig
class WpmwConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'apps.wpmw'

View File

23
apps/wpmw/models.py Normal file
View File

@ -0,0 +1,23 @@
from django.db import models
from apps.utils.models import BaseModel
from apps.mtm.models import Material
# Create your models here.
class Wp(BaseModel):
"""
动态半成品表
"""
number = models.CharField("编号", max_length=50, unique=True, null=True, blank=True)
state = models.PositiveSmallIntegerField('状态', default=10, choices=((10, '合格'), (20, '不合格'), (30, '返修'), (40, '检验'), (50, '报废')))
material = models.ForeignKey(Material, verbose_name="当前物料形态", on_delete=models.CASCADE)
defects = models.ManyToManyField("qm.defect", through="wpmw.wpdefect", verbose_name="缺陷项")
mb = models.ForeignKey("inm.materialbatch", verbose_name="仓库物料", on_delete=models.CASCADE, null=True, blank=True)
wm = models.ForeignKey("wpm.wmaterial", verbose_name="车间物料", on_delete=models.CASCADE, null=True, blank=True)
class WpDefect(BaseModel):
wp = models.ForeignKey(Wp, verbose_name="关联产物", on_delete=models.CASCADE)
defect = models.ForeignKey("qm.defect", verbose_name="关联缺陷项", on_delete=models.CASCADE)
is_main = models.BooleanField("是否主要缺陷", default=False)

3
apps/wpmw/tests.py Normal file
View File

@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.

3
apps/wpmw/views.py Normal file
View File

@ -0,0 +1,3 @@
from django.shortcuts import render
# Create your views here.