feat: mlogbdefect添加字段floor
This commit is contained in:
parent
6ad6670a90
commit
bbed6fa646
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.2.12 on 2025-03-03 06:49
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('wpm', '0089_mlogbdefect'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='mlogbdefect',
|
||||||
|
name='floor',
|
||||||
|
field=models.IntegerField(blank=True, null=True, verbose_name='层数'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -367,6 +367,7 @@ class Mlogb(BaseModel):
|
||||||
class MlogbDefect(BaseModel):
|
class MlogbDefect(BaseModel):
|
||||||
mlogb = models.ForeignKey(Mlogb, verbose_name='生产记录', on_delete=models.CASCADE)
|
mlogb = models.ForeignKey(Mlogb, verbose_name='生产记录', on_delete=models.CASCADE)
|
||||||
defect = models.ForeignKey("qm.Defect", verbose_name='缺陷', on_delete=models.CASCADE)
|
defect = models.ForeignKey("qm.Defect", verbose_name='缺陷', on_delete=models.CASCADE)
|
||||||
|
floor = models.IntegerField("层数", null=True, blank=True)
|
||||||
count = models.PositiveIntegerField('数量', default=0)
|
count = models.PositiveIntegerField('数量', default=0)
|
||||||
|
|
||||||
class Mlogbw(BaseModel):
|
class Mlogbw(BaseModel):
|
||||||
|
|
|
@ -265,7 +265,8 @@ class MlogbDefectSerializer(CustomModelSerializer):
|
||||||
defect_name = serializers.CharField(source="defect.name", read_only=True)
|
defect_name = serializers.CharField(source="defect.name", read_only=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
model = MlogbDefect
|
model = MlogbDefect
|
||||||
fields = ["id", "defect_name", "count", "mlogb", "defect"]
|
fields = ["id", "defect_name", "count", "mlogb", "defect", "floor"]
|
||||||
|
read_only_fields = EXCLUDE_FIELDS_BASE + ["mlogb"]
|
||||||
|
|
||||||
|
|
||||||
class MlogbDetailSerializer(CustomModelSerializer):
|
class MlogbDetailSerializer(CustomModelSerializer):
|
||||||
|
@ -716,7 +717,7 @@ class MlogbOutUpdateSerializer(CustomModelSerializer):
|
||||||
mlogbdefect_new = [item for item in mlogbdefect if item["count"] > 0]
|
mlogbdefect_new = [item for item in mlogbdefect if item["count"] > 0]
|
||||||
for item in mlogbdefect_new:
|
for item in mlogbdefect_new:
|
||||||
defect:Defect = item["defect"]
|
defect:Defect = item["defect"]
|
||||||
Mlogb.objects.create(mlogb=ins, defect=defect, count=item["count"])
|
MlogbDefect.objects.create(mlogb=ins, **item)
|
||||||
if defect.cate == Defect.DEFECT_NOTOK:
|
if defect.cate == Defect.DEFECT_NOTOK:
|
||||||
count_notok +=1
|
count_notok +=1
|
||||||
ins.count_notok = count_notok
|
ins.count_notok = count_notok
|
||||||
|
@ -736,7 +737,7 @@ class MlogbOutUpdateSerializer(CustomModelSerializer):
|
||||||
md_ids = []
|
md_ids = []
|
||||||
for item in mlogbdefect:
|
for item in mlogbdefect:
|
||||||
defect = item["defect"]
|
defect = item["defect"]
|
||||||
insb, _ = MlogbDefect.objects.get_or_create(mlogb=ins, defect=defect)
|
insb, _ = MlogbDefect.objects.get_or_create(mlogb=ins, defect=defect, floor=item.get('floor', None))
|
||||||
insb.count = item["count"]
|
insb.count = item["count"]
|
||||||
insb.save(update_fields=["count"])
|
insb.save(update_fields=["count"])
|
||||||
if defect.cate == Defect.DEFECT_NOTOK:
|
if defect.cate == Defect.DEFECT_NOTOK:
|
||||||
|
|
Loading…
Reference in New Issue