feat: 完善equip_last_mlog5

This commit is contained in:
caoqianming 2024-09-09 15:03:38 +08:00
parent 1b6e947492
commit 9a26529e0a
1 changed files with 18 additions and 3 deletions

View File

@ -1,7 +1,7 @@
from apps.utils.viewsets import GenericViewSet
from rest_framework.decorators import action
from apps.em.models import Equipment
from apps.wpm.models import Mlog, Mlogb
from apps.wpm.models import Mlog, Handover
from apps.mtm.models import Mgroup
from django.utils import timezone
from django.db.models import Sum
@ -35,7 +35,7 @@ class AnaViewSet(GenericViewSet):
equip_qs_v = equip_qs.values('id', 'name', 'number', 'state').order_by('number')
equip_qs_l = list(equip_qs_v)
# 设备最后生产日志
mlog_qs = Mlog.objects.filter(equipment__in=equip_qs)
mlog_qs = Mlog.objects.filter(equipment__in=equip_qs, mgroup=mgroup)
mlog_qs = mlog_qs | Mlog.objects.filter(work_start_time__lte=now, work_end_time__isnull=True)
mlog_qs = mlog_qs | Mlog.objects.filter(work_start_time__lte=now, work_end_time__gte=now)
mlog_qs = mlog_qs.annotate(t_count_use=Sum('b_mlog__count_use'))
@ -76,4 +76,19 @@ class AnaViewSet(GenericViewSet):
ret['now'] = timezone.localtime(now).strftime('%Y-%m-%d %H:%M:%S')
ret["rows"] = equip_qs_l
return Response(ret)
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=Serializer)
def put_prod(self, request):
"""
投产分析
"""
tomorrow = datetime.now() + timedelta(days=1)
for i in range(8):
timex = tomorrow - timedelta(days=i)
mgroup: Mgroup = Mgroup.objects.get(name='退火')
# 子状态
mstate_json = mgroup.process.mstate_json
# 生产记录
handover_qs = Handover.objects.filter(material__process=mgroup.process, send_mgroup=mgroup, type=Handover.H_NORMAL)
pass