diff --git a/apps/wpm/views.py b/apps/wpm/views.py index b3bcd1c3..8735274e 100644 --- a/apps/wpm/views.py +++ b/apps/wpm/views.py @@ -961,9 +961,20 @@ class MlogbwViewSet(CustomModelViewSet): @transaction.atomic def perform_update(self, serializer): mlogbw = serializer.save() - Mlogbw.cal_count_notok(mlogbw.mlogb) - mlog = mlogbw.mlogb.mlog - mlog.cal_mlog_count_from_mlogb() + if isinstance(mlogbw, list): + pass + else: + Mlogbw.cal_count_notok(mlogbw.mlogb) + mlog = mlogbw.mlogb.mlog + mlog.cal_mlog_count_from_mlogb() + + def after_bulk_update(self, objs): + mlogbIds = list(set([obj.mlogb for obj in objs])) + for mlogbId in mlogbIds: + mlogbw = Mlogbw.objects.get(id=mlogbId) + Mlogbw.cal_count_notok(mlogbw.mlogb) + mlog = mlogbw.mlogb.mlog + mlog.cal_mlog_count_from_mlogb() @transaction.atomic def perform_destroy(self, instance:Mlogbw):