fix: wpr change_or_new时根据number获取最后一个
This commit is contained in:
parent
a0ed107491
commit
76cdd08e9a
|
@ -28,6 +28,7 @@ class Wpr(BaseModel):
|
|||
wm = models.ForeignKey("wpm.wmaterial", verbose_name="车间物料", on_delete=models.CASCADE, null=True, blank=True)
|
||||
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)
|
||||
|
||||
@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):
|
||||
|
@ -43,7 +44,7 @@ class Wpr(BaseModel):
|
|||
wpr.delete()
|
||||
return
|
||||
elif number:
|
||||
ins_x = cls.objects.filter(number=number).order_by("-version").first()
|
||||
ins_x = cls.objects.filter(number=number).order_by("-update_time").first()
|
||||
if ins_x:
|
||||
if ins_x.wm is None and ins_x.mb is None:
|
||||
if ins_x.version > 1: # 说明被复用了
|
||||
|
|
|
@ -29,7 +29,7 @@ class WprViewSet(CustomListModelMixin, RetrieveModelMixin, CustomGenericViewSet)
|
|||
}
|
||||
ordering = ["number", "create_time"]
|
||||
ordering_fields = ["number", "create_time", "update_time"]
|
||||
search_fields = ["number", "material__name", "material__model", "material__specification"]
|
||||
search_fields = ["number", "material__name", "material__model", "material__specification", "number_out"]
|
||||
|
||||
def filter_queryset(self, queryset):
|
||||
qs = super().filter_queryset(queryset)
|
||||
|
|
Loading…
Reference in New Issue