refector: 初始化检测录入优化
This commit is contained in:
parent
be9011f8f5
commit
13382171de
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.2.12 on 2023-07-25 03:12
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('wpm', '0005_auto_20230724_1118'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='stsflog',
|
||||
name='duration',
|
||||
field=models.FloatField(blank=True, null=True, verbose_name='停机时长(h)'),
|
||||
),
|
||||
]
|
||||
|
|
@ -19,4 +19,11 @@ def make_sflogs(mgroup: Mgroup, start_date: datetime.date, end_date: datetime.da
|
|||
"end_time": end_time,
|
||||
"work_hour": round((end_time-start_time).total_seconds/3600)
|
||||
})
|
||||
current_date = current_date + datetime.timedelta(days=1)
|
||||
current_date = current_date + datetime.timedelta(days=1)
|
||||
|
||||
|
||||
def cal_shut_hour():
|
||||
"""
|
||||
计算班的停机时间
|
||||
"""
|
||||
pass
|
||||
|
|
@ -75,14 +75,9 @@ class SfLogViewSet(UpdateModelMixin, ListModelMixin, DestroyModelMixin, CustomGe
|
|||
for material in test_materials:
|
||||
testitems = TestItem.objects.filter(id__in=material.testitems).order_by('sort', '-create_time')
|
||||
for testitem in testitems:
|
||||
end_time_local = localtime(obj.end_time)
|
||||
params = {'type': 'sflog', 'material': material, 'testitem': testitem, 'sflog': obj}
|
||||
params_default = params.update({'year_s': end_time_local.year, 'month_s': end_time_local.month, 'day_s': end_time_local.day})
|
||||
ins, _ = QuaStat.objects.get_or_create(**params, defaults=params_default)
|
||||
if ins.create_by is None:
|
||||
ins.create_by = request.user
|
||||
ins.belong_dept = obj.mgroup.belong_dept
|
||||
ins.save()
|
||||
params = {'material': material, 'testitem': testitem, 'sflog': obj}
|
||||
params_default = params.update({'create_by': request.user, 'belong_dept': obj.mgroup.belong_dept})
|
||||
QuaStat.objects.get_or_create(**params, defaults=params_default)
|
||||
qs = QuaStat.objects.filter(type='sflog', sflog=obj).order_by('material__sort', 'material__create_time', 'testitem__sort', 'testitem__create_time')
|
||||
sr = QuaStatSerializer(instance=qs, many=True)
|
||||
return Response(sr.data)
|
||||
|
|
|
|||
Loading…
Reference in New Issue