From 95605be52f34554cc02fae7a30f9edc423d87825 Mon Sep 17 00:00:00 2001 From: shijing Date: Thu, 28 May 2026 11:20:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20pre=5Finfo=E5=8F=AF=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/models.py | 1 - .../wpmw/migrations/0011_alter_wpr_pre_info.py | 18 ++++++++++++++++++ apps/wpmw/models.py | 2 +- apps/wpmw/views.py | 2 +- 4 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 apps/wpmw/migrations/0011_alter_wpr_pre_info.py diff --git a/apps/wpm/models.py b/apps/wpm/models.py index 684c812b..21e02f4a 100644 --- a/apps/wpm/models.py +++ b/apps/wpm/models.py @@ -614,7 +614,6 @@ class Mlogbw(BaseModel): mlogbw_from = models.ForeignKey("self", verbose_name='来源个', on_delete=models.CASCADE, null=True, blank=True, related_name="w_mlogbw_from") wpr = models.ForeignKey("wpmw.wpr", verbose_name='关联产品', on_delete=models.SET_NULL , related_name='wpr_mlogbw', null=True, blank=True) - pre_info = models.JSONField('预处理信息', default=dict, blank=True) equip = models.ForeignKey(Equipment, verbose_name='设备', on_delete=models.SET_NULL, null=True, blank=True, related_name='mlogbw_equip') tooling = models.ForeignKey(Equipment, verbose_name='工装', on_delete=models.SET_NULL, null=True, blank=True, related_name='mlogbw_tooling') work_start_time = models.DateTimeField('开始加工时间', null=True, blank=True) diff --git a/apps/wpmw/migrations/0011_alter_wpr_pre_info.py b/apps/wpmw/migrations/0011_alter_wpr_pre_info.py new file mode 100644 index 00000000..ef3502f7 --- /dev/null +++ b/apps/wpmw/migrations/0011_alter_wpr_pre_info.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.27 on 2026-05-28 03:20 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('wpmw', '0010_wpr_pre_info'), + ] + + operations = [ + migrations.AlterField( + model_name='wpr', + name='pre_info', + field=models.JSONField(blank=True, default=dict, null=True, verbose_name='预处理信息'), + ), + ] diff --git a/apps/wpmw/models.py b/apps/wpmw/models.py index fed78385..7d8078f9 100644 --- a/apps/wpmw/models.py +++ b/apps/wpmw/models.py @@ -30,7 +30,7 @@ class Wpr(BaseModel): oinfo = models.JSONField(verbose_name="其他信息", default=dict, blank=True) wpr_from = models.ForeignKey("self", verbose_name="来源于", on_delete=models.CASCADE, null=True, blank=True) data = models.JSONField(verbose_name="数据", default=dict, blank=True) - pre_info = models.JSONField(verbose_name="预处理信息", default=dict, blank=True) + pre_info = models.JSONField(verbose_name="预处理信息", default=dict, blank=True, null=True) @classmethod def change_or_new(cls, wpr=None, number=None, mb=None, wm=None, old_mb=None, old_wm=None, ftest=None, wpr_from=None, add_version=True, number_out=None): diff --git a/apps/wpmw/views.py b/apps/wpmw/views.py index 8d5bdbae..e0cae489 100644 --- a/apps/wpmw/views.py +++ b/apps/wpmw/views.py @@ -157,7 +157,7 @@ class WprViewSet(BulkUpdateModelMixin, CustomListModelMixin, CustomRetrieveModel sr.is_valid(raise_exception=True) raw_info = sr.validated_data from apps.utils.tools import update_dict - wpr.pre_info = update_dict(wpr.pre_info, raw_info) + wpr.pre_info = update_dict(wpr.pre_info or {}, raw_info) wpr.save(update_fields=["pre_info"]) return Response({"pre_info": wpr.pre_info})