feat: envdata生成模拟数据
This commit is contained in:
parent
68fc7f4217
commit
76f5d12b34
|
@ -2,12 +2,57 @@
|
|||
from __future__ import absolute_import, unicode_literals
|
||||
from datetime import timedelta
|
||||
from apps.utils.tasks import CustomTask
|
||||
from django.utils import timezone
|
||||
from celery import shared_task
|
||||
from .models import DrainEquip, EnvData
|
||||
from apps.em.models import Equipment
|
||||
import random
|
||||
|
||||
|
||||
@shared_task(base=CustomTask)
|
||||
def generate_envdata():
|
||||
pass
|
||||
"""生成模拟数据
|
||||
"""
|
||||
now = timezone.now()
|
||||
eIds = DrainEquip.objects.values_list('equipment__id', flat=True)
|
||||
equips = Equipment.objects.filter(id__in=eIds)|Equipment.objects.filter(cate__code='aqms')
|
||||
save_list = []
|
||||
for equip in equips:
|
||||
default_dict = {"equipment": equip, "time": now, "is_online": 1, "running_state": 10}
|
||||
if equip.cate and equip.cate.code in ["cems", "aqms", "tsp"]:
|
||||
if equip.cate.code == "cems":
|
||||
dust_rtd = random.uniform(0.1, 0.3)
|
||||
default_dict["dust_rtd"] = dust_rtd
|
||||
default_dict["dust_zs"] = dust_rtd
|
||||
so2_rtd = random.uniform(0.1, 2)
|
||||
default_dict["so2_rtd"] = so2_rtd
|
||||
default_dict["so2_zs"] = so2_rtd
|
||||
nox_rtd = random.uniform(0.1, 2)
|
||||
default_dict["nox_rtd"] = nox_rtd
|
||||
default_dict["nox_zs"] = nox_rtd
|
||||
default_dict["temperature"] = random.uniform(12, 30)
|
||||
default_dict["pressure"] = random.uniform(-0.06, 0.1)
|
||||
default_dict["speed"] = random.uniform(8, 13)
|
||||
default_dict["humidity"] = random.uniform(1, 1.2)
|
||||
default_dict["flux"] = random.uniform(2000, 3000)
|
||||
elif equip.cate.code == "tsp":
|
||||
default_dict["tsp"] = random.uniform(0.01, 0.04)
|
||||
default_dict["temperature"] = random.uniform(12, 30)
|
||||
default_dict["humidity"] = random.uniform(30, 40)
|
||||
elif equip.cate.code == 'aqms':
|
||||
default_dict['pm25'] = random.uniform(8, 12)
|
||||
default_dict["pm10"] = random.uniform(26, 35)
|
||||
default_dict["temperature"] = random.uniform(12, 30)
|
||||
default_dict["humidity"] = random.uniform(30, 40)
|
||||
default_dict["wind_speed"] = random.uniform(0.1, 1)
|
||||
default_dict["wind_direction"] = 1
|
||||
equip.is_online = 1
|
||||
equip.running_state = 10
|
||||
equip.save()
|
||||
save_list.append(EnvData(**default_dict))
|
||||
EnvData.objects.bulk_create(save_list)
|
||||
|
||||
|
||||
|
||||
|
||||
@shared_task(base=CustomTask)
|
||||
|
|
Loading…
Reference in New Issue