@@ -170,6 +170,7 @@ def eqpt_result(request): |
||
| 170 | 170 |
'fever_num': fever_num, |
| 171 | 171 |
}) |
| 172 | 172 |
|
| 173 |
+ |
|
| 173 | 174 |
def protect_user_privacy(field): |
| 174 | 175 |
if (field.get('key', '') == 'phone'):
|
| 175 | 176 |
phone = list(field.get('value', ''))
|
@@ -182,6 +183,7 @@ def protect_user_privacy(field): |
||
| 182 | 183 |
|
| 183 | 184 |
return field.get('value', '')
|
| 184 | 185 |
|
| 186 |
+ |
|
| 185 | 187 |
def get_screen_data(point=None, point_id=None): |
| 186 | 188 |
if not point: |
| 187 | 189 |
try: |
@@ -200,7 +202,7 @@ def get_screen_data(point=None, point_id=None): |
||
| 200 | 202 |
ipuis = ipuis.exclude(last_submit_at__range=(start_dt, end_dt), temperature__gt=0.0, temperature__lte=settings.FEVER_TEMPERATURE) |
| 201 | 203 |
|
| 202 | 204 |
ipuis = [{**ipui.data, **{
|
| 203 |
- field.get('key', ''): protect_user_privacy(field) for field in ipui.fields }} for ipui in ipuis]
|
|
| 205 |
+ field.get('key', ''): protect_user_privacy(field) for field in ipui.fields}} for ipui in ipuis]
|
|
| 204 | 206 |
reminds = [{
|
| 205 | 207 |
'name': ipui.get('name'),
|
| 206 | 208 |
'room': ipui.get('room'),
|
@@ -220,7 +222,7 @@ def get_screen_data(point=None, point_id=None): |
||
| 220 | 222 |
ipui['status'] = '未使用' |
| 221 | 223 |
ipuis_unused.append(ipui) |
| 222 | 224 |
continue |
| 223 |
- |
|
| 225 |
+ |
|
| 224 | 226 |
last_submit_at = tc.make_naive(last_submit_at) |
| 225 | 227 |
|
| 226 | 228 |
if (start_dt < last_submit_at < end_dt) and temperature > settings.FEVER_TEMPERATURE: |
@@ -230,11 +232,11 @@ def get_screen_data(point=None, point_id=None): |
||
| 230 | 232 |
ipui['temperature'] = '-' |
| 231 | 233 |
ipui['status'] = '未测温' |
| 232 | 234 |
ipuis_not_upload.append(ipui) |
| 233 |
- |
|
| 235 |
+ |
|
| 234 | 236 |
not_upload_temperature_num = len(ipuis_unused) + len(ipuis_not_upload) |
| 235 | 237 |
has_upload_temperature_num = total_active_eqpt_num - not_upload_temperature_num |
| 236 | 238 |
normal_num = has_upload_temperature_num - len(ipuis_fever) |
| 237 |
- |
|
| 239 |
+ |
|
| 238 | 240 |
return {
|
| 239 | 241 |
'eqpts': ipuis_fever + ipuis_unused + ipuis_not_upload, |
| 240 | 242 |
'reminds': reminds, |
@@ -246,7 +248,6 @@ def get_screen_data(point=None, point_id=None): |
||
| 246 | 248 |
'update_time': tc.local_string(), |
| 247 | 249 |
} |
| 248 | 250 |
|
| 249 |
- |
|
| 250 | 251 |
has_upload_temperature_num = len([1 for ipui in ipuis if ipui.get('temperature_has_upload', '') == IsolationPointUserInfo.HAS_YET_UPLOAD])
|
| 251 | 252 |
fever_num = len([1 for ipui in ipuis if ipui.get('temperature', 0) > settings.FEVER_TEMPERATURE and ipui.get('temperature_has_upload') == IsolationPointUserInfo.HAS_YET_UPLOAD])
|
| 252 | 253 |
|
@@ -6,6 +6,7 @@ from django_models_ext import BaseModelMixin, SexModelMixin |
||
| 6 | 6 |
from jsonfield import JSONField |
| 7 | 7 |
from shortuuidfield import ShortUUIDField |
| 8 | 8 |
from TimeConvert import TimeConvert as tc |
| 9 |
+import datetime |
|
| 9 | 10 |
|
| 10 | 11 |
from utils.redis.rqrurl import get_qrcode_url |
| 11 | 12 |
|
@@ -184,6 +185,17 @@ class IsolationPointUserInfo(BaseModelMixin): |
||
| 184 | 185 |
return IsolationPointUserInfo.HAS_NOT_CONNECTED |
| 185 | 186 |
|
| 186 | 187 |
@property |
| 188 |
+ def get_antigen_result(self): |
|
| 189 |
+ today = datetime.date.today() |
|
| 190 |
+ if not self.detect_at: |
|
| 191 |
+ return '-' |
|
| 192 |
+ |
|
| 193 |
+ if today.day == self.detect_at.day and today.month == self.detect_at.month and today.year == self.detect_at.year: |
|
| 194 |
+ return '-' if self.antigen_result == 2 else self.get_antigen_result_display() |
|
| 195 |
+ else: |
|
| 196 |
+ return '-' |
|
| 197 |
+ |
|
| 198 |
+ @property |
|
| 187 | 199 |
def data(self): |
| 188 | 200 |
return {
|
| 189 | 201 |
'pk': self.pk, |
@@ -197,7 +209,7 @@ class IsolationPointUserInfo(BaseModelMixin): |
||
| 197 | 209 |
'last_submit_at': self.last_submit_at, |
| 198 | 210 |
'last_report_time': tc.local_string(utc_dt=self.last_submit_at, format='%m-%d %H:%M') if self.last_submit_at else '', |
| 199 | 211 |
'remark': self.remark or '', |
| 200 |
- 'antigen_result': self.get_antigen_result_display(), |
|
| 212 |
+ 'antigen_result': self.get_antigen_result, |
|
| 201 | 213 |
'detect_at': tc.local_string(utc_dt=self.detect_at, format='%m-%d %H:%M') if self.detect_at else '', |
| 202 | 214 |
} |
| 203 | 215 |
|