feat: 模拟车辆出入厂数据

This commit is contained in:
caoqianming 2024-02-23 13:47:11 +08:00
parent dcaf7b1ca1
commit a00a02bde6
4 changed files with 24 additions and 3 deletions

View File

@ -26,7 +26,7 @@ class Migration(migrations.Migration):
default=1, help_text='1: 进厂, 2: 出厂', verbose_name='出入类型')), default=1, help_text='1: 进厂, 2: 出厂', verbose_name='出入类型')),
('vehicle_number', models.CharField( ('vehicle_number', models.CharField(
max_length=10, verbose_name='车牌号')), max_length=10, verbose_name='车牌号')),
('acess_time', models.DateTimeField( ('access_time', models.DateTimeField(
blank=True, null=True, verbose_name='出入时间')), blank=True, null=True, verbose_name='出入时间')),
('emission_standard', models.CharField(blank=True, ('emission_standard', models.CharField(blank=True,
max_length=10, null=True, verbose_name='排放标准')), max_length=10, null=True, verbose_name='排放标准')),

View File

@ -1,6 +1,6 @@
import random import random
from django.utils import timezone from django.utils import timezone
from .models import CarWash from .models import CarWash, VehicleAccess
from apps.em.models import Equipment from apps.em.models import Equipment
from apps.utils.snowflake import idWorker from apps.utils.snowflake import idWorker
@ -28,3 +28,23 @@ def generate_carwash_data(num_objects):
pressure=pressures[i], pressure=pressures[i],
flux=fluxes[i] flux=fluxes[i]
) )
def generate_vehicleaccess_data(num_objects):
vehicle_numbers = ['ABC123', 'DEF456', 'GHI789', 'JKL012', 'MNO345']
emission_standards = ['国五', '国六']
types = [1, 2]
access_times = [timezone.now() - timezone.timedelta(minutes=n)
for n in range(10, 61, 10)]
door_name = '大门'
for i in range(num_objects):
access_time = access_times[i % len(access_times)]
VehicleAccess.objects.create(
id=idWorker.get_id(),
type=types[i % len(types)],
vehicle_number=vehicle_numbers[i % len(vehicle_numbers)],
emission_standard=emission_standards[i % len(emission_standards)],
door_name=door_name,
access_time=access_time,
create_time=access_time
)

View File

@ -121,7 +121,7 @@ class VehicleAccess(BaseModel):
type = models.PositiveSmallIntegerField( type = models.PositiveSmallIntegerField(
'出入类型', default=1, help_text='1: 进厂, 2: 出厂') '出入类型', default=1, help_text='1: 进厂, 2: 出厂')
vehicle_number = models.CharField('车牌号', max_length=10) vehicle_number = models.CharField('车牌号', max_length=10)
acess_time = models.DateTimeField('出入时间', null=True, blank=True) access_time = models.DateTimeField('出入时间', null=True, blank=True)
emission_standard = models.CharField( emission_standard = models.CharField(
'排放标准', max_length=10, null=True, blank=True) '排放标准', max_length=10, null=True, blank=True)
door_name = models.CharField('门禁名称', max_length=10, null=True, blank=True) door_name = models.CharField('门禁名称', max_length=10, null=True, blank=True)

View File

@ -75,6 +75,7 @@ class VehicleAccessViewSet(ListModelMixin, CustomGenericViewSet):
"vehicle_number": ['icontains'], "vehicle_number": ['icontains'],
"emission_standard": ['exact', 'in'], "emission_standard": ['exact', 'in'],
"type": ['exact', 'in'], "type": ['exact', 'in'],
"acess_time": ['gte', 'lte', 'year', 'month', 'day', 'quarter', 'week']
} }