feat: enm/view 修改correct 增加不能校正当日或当月数据

This commit is contained in:
zty 2025-01-21 12:45:51 +08:00
parent fa18fee720
commit 4254e226d3
1 changed files with 13 additions and 0 deletions

View File

@ -1,4 +1,5 @@
from django.conf import settings
from rest_framework.exceptions import ParseError
from apps.enm.models import Mpoint, MpointStat, EnStat, EnStat2, MpLogx, Xscript
from apps.utils.viewsets import CustomModelViewSet, CustomGenericViewSet
from apps.utils.mixins import BulkCreateModelMixin, BulkDestroyModelMixin, CustomListModelMixin, BulkUpdateModelMixin
@ -186,9 +187,21 @@ class MpointStatViewSet(BulkCreateModelMixin, BulkDestroyModelMixin, CustomListM
修正测点统计记录及统计值
"""
instance_id = kwargs.get("pk")
if not instance_id:
return Response({"detail": "ID not provided in the URL"}, status=400)
instance: MpointStat = self.get_object()
sr = MpointStatCorrectSerializer(data=request.data)
sr.is_valid(raise_exception=True)
last_record = MpointStat.objects.filter(mpoint=instance.mpoint,
type=instance.type,
mgroup=instance.mgroup,
year_s=instance.year_s,
month_s=instance.month_s,
).order_by(instance.type).values("id").last()
last_id = last_record["id"] if last_record else None
if str(last_id) == str(instance_id):
raise ParseError("不能修正当日或当月数据")
vdata = sr.validated_data
val_correct = vdata["val_correct"]
instance.val_correct = val_correct