From a30bffd2448179c1c447716d4210965a45fcc7b2 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Tue, 11 Jul 2023 13:48:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20cal=5Fmpointstat=5Fmanual=20=E4=BB=A5?= =?UTF-8?q?=E7=8F=AD=E6=89=8B=E5=8A=A8=E5=BD=95=E5=85=A5=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/enm/tasks.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/apps/enm/tasks.py b/apps/enm/tasks.py index bfbeff3f..e465adec 100644 --- a/apps/enm/tasks.py +++ b/apps/enm/tasks.py @@ -143,19 +143,18 @@ def cal_mpointstats(is_now=1): cal_mpointstat_hour.delay(mpoint.id, pre.year, pre.month, pre.day, pre.hour) -def cal_mpointstat_manual(mpointId: str, mgroupId: str, year_s: int, month_s: int, day_s=None): +def cal_mpointstat_manual(mpointId: str, mgroupId: str, year_s: int, month_s: int, day_s: int): """ 手动录入的测点数据进行往上统计,一级一级往上 """ mpoint = Mpoint.objects.get(id=mpointId) mgroup = Mgroup.objects.get(id=mgroupId) if mpoint.material: - if day_s is not None: - sum_dict_day_s = MpointStat.objects.filter(type='sflog', mpoint=mpoint, year_s=year_s, month_s=month_s, day_s=day_s, mgroup=mgroup).aggregate(sum=Sum('val')) - params_day_s = {'type':'day_s', 'mpoint': mpoint, 'year_s': year_s, 'month_s': month_s, 'day_s': day_s, 'mgroup': mgroup} - ms_day_s, _ = MpointStat.objects.get_or_create(**params_day_s, defaults=params_day_s) - ms_day_s.val = sum_dict_day_s['sum'] - ms_day_s.save() + sum_dict_day_s = MpointStat.objects.filter(type='sflog', mpoint=mpoint, year_s=year_s, month_s=month_s, day_s=day_s, mgroup=mgroup).aggregate(sum=Sum('val')) + params_day_s = {'type':'day_s', 'mpoint': mpoint, 'year_s': year_s, 'month_s': month_s, 'day_s': day_s, 'mgroup': mgroup} + ms_day_s, _ = MpointStat.objects.get_or_create(**params_day_s, defaults=params_day_s) + ms_day_s.val = sum_dict_day_s['sum'] + ms_day_s.save() sum_dict_month_s = MpointStat.objects.filter(type='day_s', mpoint=mpoint, year_s=year_s, month_s=month_s, mgroup=mgroup).aggregate(sum=Sum('val')) params_month_s = {'type':'month_s', 'mpoint': mpoint, 'year_s': year_s, 'month_s': month_s, 'mgroup': mgroup}