增加身体状态

FFIB %!s(int64=2) %!d(string=hace) años
padre
commit
d8ad77bd1a
Se han modificado 3 ficheros con 115 adiciones y 2 borrados
  1. 8 2
      api/point_views.py
  2. 73 0
      equipment/migrations/0029_auto_20221124_2013.py
  3. 34 0
      equipment/models.py

+ 8 - 2
api/point_views.py

@@ -123,14 +123,20 @@ def mp_upload_temperature(request):
123 123
     macid = request.POST.get('macid', '')
124 124
     userid = request.POST.get('user_id', '')
125 125
     temperature = request.POST.get('temperature', '')
126
+    dry_cough_status = request.POST.get('dry_cough_status', False)
127
+    weak_status = request.POST.get('weak_status', False)
128
+    sore_throat_status = request.POST.get('sore_throat_status', False)
129
+    smell_taste_loss_status = request.POST.get('smell_taste_loss_status', False)
130
+    diarrhea_status = request.POST.get('diarrhea_status', False)
131
+    is_filled = request.POST.get('is_filled', False)
126 132
 
127 133
     try:
128 134
         ipui = IsolationPointUserInfo.objects.get(user_id=userid, status=True)
129 135
     except IsolationPointUserInfo.DoesNotExist:
130
-        ThermometerMeasureLogInfo.objects.create(point_id='', macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='')
136
+        ThermometerMeasureLogInfo.objects.create(point_id='', macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status, is_filled=is_filled)
131 137
         return response()
132 138
 
133
-    ThermometerMeasureLogInfo.objects.create(point_id=ipui.point_id, macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='')
139
+    ThermometerMeasureLogInfo.objects.create(point_id=ipui.point_id, macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status, is_filled=is_filled)
134 140
 
135 141
     ipui.observed_ymds = list(set(ipui.observed_ymds + [tc.local_string(format='%Y-%m-%d')]))
136 142
     ipui.observed_days = len(ipui.observed_ymds)

+ 73 - 0
equipment/migrations/0029_auto_20221124_2013.py

@@ -0,0 +1,73 @@
1
+# Generated by Django 3.2.16 on 2022-11-24 12:13
2
+
3
+from django.db import migrations, models
4
+
5
+
6
+class Migration(migrations.Migration):
7
+
8
+    dependencies = [
9
+        ('equipment', '0028_auto_20220817_1425'),
10
+    ]
11
+
12
+    operations = [
13
+        migrations.AddField(
14
+            model_name='isolationpointuserinfo',
15
+            name='diarrhea_status',
16
+            field=models.BooleanField(default=False, help_text='是否腹泻', verbose_name='smell_taste_loss_status'),
17
+        ),
18
+        migrations.AddField(
19
+            model_name='isolationpointuserinfo',
20
+            name='dry_cough_status',
21
+            field=models.BooleanField(default=False, help_text='是否干咳', verbose_name='dry_cough_status'),
22
+        ),
23
+        migrations.AddField(
24
+            model_name='isolationpointuserinfo',
25
+            name='is_filled',
26
+            field=models.BooleanField(default=False, help_text='是否填写身体状态', verbose_name='smell_taste_loss_status'),
27
+        ),
28
+        migrations.AddField(
29
+            model_name='isolationpointuserinfo',
30
+            name='smell_taste_loss_status',
31
+            field=models.BooleanField(default=False, help_text='是否嗅(味)觉减退', verbose_name='smell_taste_loss_status'),
32
+        ),
33
+        migrations.AddField(
34
+            model_name='isolationpointuserinfo',
35
+            name='sore_throat_status',
36
+            field=models.BooleanField(default=False, help_text='是否咽痛', verbose_name='sore_throat_status'),
37
+        ),
38
+        migrations.AddField(
39
+            model_name='isolationpointuserinfo',
40
+            name='weak_status',
41
+            field=models.BooleanField(default=False, help_text='是否乏力', verbose_name='weak_status'),
42
+        ),
43
+        migrations.AddField(
44
+            model_name='thermometermeasureloginfo',
45
+            name='diarrhea_status',
46
+            field=models.BooleanField(default=False, help_text='是否腹泻', verbose_name='diarrhea_status'),
47
+        ),
48
+        migrations.AddField(
49
+            model_name='thermometermeasureloginfo',
50
+            name='dry_cough_status',
51
+            field=models.BooleanField(default=False, help_text='是否干咳', verbose_name='dry_cough_status'),
52
+        ),
53
+        migrations.AddField(
54
+            model_name='thermometermeasureloginfo',
55
+            name='is_filled',
56
+            field=models.BooleanField(default=False, help_text='是否填写身体状态', verbose_name='is_filled'),
57
+        ),
58
+        migrations.AddField(
59
+            model_name='thermometermeasureloginfo',
60
+            name='smell_taste_loss_status',
61
+            field=models.BooleanField(default=False, help_text='是否嗅(味)觉减退', verbose_name='smell_taste_loss_status'),
62
+        ),
63
+        migrations.AddField(
64
+            model_name='thermometermeasureloginfo',
65
+            name='sore_throat_status',
66
+            field=models.BooleanField(default=False, help_text='是否咽痛', verbose_name='sore_throat_status'),
67
+        ),
68
+        migrations.AddField(
69
+            model_name='thermometermeasureloginfo',
70
+            name='weak_status',
71
+            field=models.BooleanField(default=False, help_text='是否乏力', verbose_name='weak_status'),
72
+        ),
73
+    ]

+ 34 - 0
equipment/models.py

@@ -153,6 +153,14 @@ class IsolationPointUserInfo(BaseModelMixin):
153 153
     antigen_result = models.IntegerField(_('antigen_result'), choices=ANTIGEN_RESULT_TYPE, default=UNKNOWN, help_text='抗原检测结果')
154 154
     detect_at = models.DateTimeField(_('detect_at'), blank=True, null=True, help_text='检测时间')
155 155
 
156
+    # 身体状态
157
+    dry_cough_status = models.BooleanField(_(u'dry_cough_status'), default=False, help_text='是否干咳')
158
+    weak_status = models.BooleanField(_(u'weak_status'), default=False, help_text='是否乏力')
159
+    sore_throat_status = models.BooleanField(_(u'sore_throat_status'), default=False, help_text='是否咽痛')
160
+    smell_taste_loss_status = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否嗅(味)觉减退')
161
+    diarrhea_status = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否腹泻')
162
+    is_filled = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否填写身体状态')
163
+
156 164
     class Meta:
157 165
         verbose_name = _('隔离点用户录入信息')
158 166
         verbose_name_plural = _('隔离点用户录入信息')
@@ -207,6 +215,12 @@ class IsolationPointUserInfo(BaseModelMixin):
207 215
             'temperature_has_upload': self.temperature_has_upload,
208 216
             'user_status': self.user_status,
209 217
             'temperature': self.temperature,
218
+            'dry_cough_status': self.dry_cough_status,
219
+            'weak_status': self.weak_status,
220
+            'sore_throat_status': self.sore_throat_status,
221
+            'smell_taste_loss_status': self.smell_taste_loss_status,
222
+            'diarrhea_status': self.diarrhea_status,
223
+            'is_filled': self.is_filled,
210 224
             'last_submit_at': self.last_submit_at,
211 225
             'last_report_time': tc.local_string(utc_dt=self.last_submit_at, format='%m-%d %H:%M') if self.last_submit_at else '',
212 226
             'remark': self.remark or '',
@@ -313,6 +327,14 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
313 327
 
314 328
     upload_temperature_info = models.TextField(_('upload_temperature_info'), blank=True, null=True, help_text='测温结果上传信息')
315 329
 
330
+    # 身体状态
331
+    dry_cough_status = models.BooleanField(_(u'dry_cough_status'), default=False, help_text='是否干咳')
332
+    weak_status = models.BooleanField(_(u'weak_status'), default=False, help_text='是否乏力')
333
+    sore_throat_status = models.BooleanField(_(u'sore_throat_status'), default=False, help_text='是否咽痛')
334
+    smell_taste_loss_status = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否嗅(味)觉减退')
335
+    diarrhea_status = models.BooleanField(_(u'diarrhea_status'), default=False, help_text='是否腹泻')
336
+    is_filled = models.BooleanField(_(u'is_filled'), default=False, help_text='是否填写身体状态')
337
+
316 338
     class Meta:
317 339
         verbose_name = _('测温记录信息')
318 340
         verbose_name_plural = _('测温记录信息')
@@ -328,6 +350,12 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
328 350
             'sn': self.sn,
329 351
             'user_id': self.user_id,
330 352
             'temperature': self.temperature,
353
+            'dry_cough_status': self.dry_cough_status,
354
+            'weak_status': self.weak_status,
355
+            'sore_throat_status': self.sore_throat_status,
356
+            'smell_taste_loss_status': self.smell_taste_loss_status,
357
+            'diarrhea_status': self.diarrhea_status,
358
+            'is_filled': self.is_filled,
331 359
             'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d'),
332 360
         }
333 361
 
@@ -337,6 +365,12 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
337 365
             'macid': self.macid,
338 366
             'sn': self.sn,
339 367
             'temperature': self.temperature,
368
+            'dry_cough_status': self.dry_cough_status,
369
+            'weak_status': self.weak_status,
370
+            'sore_throat_status': self.sore_throat_status,
371
+            'smell_taste_loss_status': self.smell_taste_loss_status,
372
+            'diarrhea_status': self.diarrhea_status,
373
+            'is_filled': self.is_filled,
340 374
             'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d %H:%M'),
341 375
         }
342 376