@@ -324,17 +324,18 @@ def mqtt_upload_temperature(payload): |
||
324 | 324 |
if temperature > 37 and get_charging_delta_stamp(macid) < 1800: |
325 | 325 |
ignore_temperature = True |
326 | 326 |
# 过去10分钟连续大于37.3度再取最高温度 |
327 |
- if temperature > settings.FEVER_TEMPERATURE: |
|
327 |
+ ignore_fever_temperature = True |
|
328 |
+ if not ignore_temperature and temperature > settings.FEVER_TEMPERATURE: |
|
328 | 329 |
delta_stamp = get_fever_delta_stamp(macid) |
329 | 330 |
# 首次超过37.3 |
330 | 331 |
if not delta_stamp: |
331 | 332 |
set_fever_stamp(macid) |
332 |
- ignore_temperature = True |
|
333 |
+ ignore_fever_temperature = True |
|
333 | 334 |
# 连续10分钟超过37.3 |
334 | 335 |
elif delta_stamp > 600: |
335 | 336 |
pass |
336 | 337 |
else: |
337 |
- ignore_temperature = True |
|
338 |
+ ignore_fever_temperature = True |
|
338 | 339 |
else: |
339 | 340 |
del_fever_stamp(macid) |
340 | 341 |
|
@@ -352,7 +353,7 @@ def mqtt_upload_temperature(payload): |
||
352 | 353 |
except IsolationPointInfo.DoesNotExist: |
353 | 354 |
return |
354 | 355 |
|
355 |
- ThermometerMeasureLogInfo.objects.create(point_id=eqpt.point_id, macid=macid, start_stamp=start_stamp, end_stamp=end_stamp, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MQTT, chg_sta=chg_sta, ignore_temperature=ignore_temperature, upload_temperature_info=payload) |
|
356 |
+ ThermometerMeasureLogInfo.objects.create(point_id=eqpt.point_id, macid=macid, start_stamp=start_stamp, end_stamp=end_stamp, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MQTT, chg_sta=chg_sta, ignore_temperature=ignore_temperature, ignore_fever_temperature=ignore_fever_temperature, upload_temperature_info=payload) |
|
356 | 357 |
|
357 | 358 |
try: |
358 | 359 |
ipui = IsolationPointUserInfo.objects.get(pk=eqpt.ipui_pk) |
@@ -365,6 +366,7 @@ def mqtt_upload_temperature(payload): |
||
365 | 366 |
macid=macid, |
366 | 367 |
chg_sta=False, |
367 | 368 |
ignore_temperature=False, |
369 |
+ ignore_fever_temperature=False, |
|
368 | 370 |
created_at__gte=tc.utc_datetime(hours=-1), |
369 | 371 |
).aggregate(Max('temperature')).get('temperature__max') or 0 |
370 | 372 |
ipui.observed_ymds = list(set(ipui.observed_ymds + [tc.local_string(format='%Y-%m-%d')])) |
@@ -25,8 +25,8 @@ class ThermometerEquipmentInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin): |
||
25 | 25 |
|
26 | 26 |
|
27 | 27 |
class ThermometerMeasureLogInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin): |
28 |
- list_display = ('point_id', 'macid', 'sn', 'start_stamp', 'end_stamp', 'temperature_src', 'temperature', 'chg_sta', 'ignore_temperature', 'status', 'updated_at', 'created_at') |
|
29 |
- list_filter = ('point_id', 'temperature_src', 'status') |
|
28 |
+ list_display = ('point_id', 'macid', 'sn', 'start_stamp', 'end_stamp', 'temperature_src', 'temperature', 'chg_sta', 'ignore_temperature', 'ignore_fever_temperature', 'status', 'updated_at', 'created_at') |
|
29 |
+ list_filter = ('point_id', 'temperature_src', 'chg_sta', 'ignore_temperature', 'ignore_fever_temperature', 'status') |
|
30 | 30 |
|
31 | 31 |
|
32 | 32 |
admin.site.register(IsolationPointFieldPoolInfo, IsolationPointFieldPoolInfoAdmin) |
@@ -0,0 +1,18 @@ |
||
1 |
+# Generated by Django 3.2.6 on 2021-08-23 05:47 |
|
2 |
+ |
|
3 |
+from django.db import migrations, models |
|
4 |
+ |
|
5 |
+ |
|
6 |
+class Migration(migrations.Migration): |
|
7 |
+ |
|
8 |
+ dependencies = [ |
|
9 |
+ ('equipment', '0021_auto_20210821_2258'), |
|
10 |
+ ] |
|
11 |
+ |
|
12 |
+ operations = [ |
|
13 |
+ migrations.AddField( |
|
14 |
+ model_name='thermometermeasureloginfo', |
|
15 |
+ name='ignore_fever_temperature', |
|
16 |
+ field=models.BooleanField(default=False, help_text='是否忽略高度', verbose_name='ignore_fever_temperature'), |
|
17 |
+ ), |
|
18 |
+ ] |
@@ -213,6 +213,7 @@ class ThermometerMeasureLogInfo(BaseModelMixin): |
||
213 | 213 |
|
214 | 214 |
chg_sta = models.BooleanField(_(u'chg_sta'), default=False, help_text='充电状态,true 充电,false 未充电') |
215 | 215 |
ignore_temperature = models.BooleanField(_(u'ignore_temperature'), default=False, help_text='是否忽略温度') |
216 |
+ ignore_fever_temperature = models.BooleanField(_(u'ignore_fever_temperature'), default=False, help_text='是否忽略高度') |
|
216 | 217 |
|
217 | 218 |
upload_temperature_info = models.TextField(_('upload_temperature_info'), blank=True, null=True, help_text='测温结果上传信息') |
218 | 219 |
|