更新em tasks update_equip_state_by_next_check_date

This commit is contained in:
caoqianming 2022-01-25 08:55:14 +08:00
parent efc101d2a1
commit c4c6b48164
4 changed files with 26 additions and 3 deletions

View File

@ -2,7 +2,7 @@ from django.db.models import base
from rest_framework import urlpatterns from rest_framework import urlpatterns
from django.urls import path, include from django.urls import path, include
from rest_framework.routers import DefaultRouter from rest_framework.routers import DefaultRouter
from apps.develop.views import CleanDataView, UpdateCuttingView, UpdateFIFOItem, UpdateLastTestResult, UpdateSpg from apps.develop.views import CleanDataView, UpdateCuttingView, UpdateEquipState, UpdateFIFOItem, UpdateLastTestResult, UpdateSpg
urlpatterns = [ urlpatterns = [
path('cleandata/', CleanDataView.as_view()), path('cleandata/', CleanDataView.as_view()),
@ -10,6 +10,7 @@ urlpatterns = [
path('update_last_result/', UpdateLastTestResult.as_view()), path('update_last_result/', UpdateLastTestResult.as_view()),
path('update_last_result/', UpdateLastTestResult.as_view()), path('update_last_result/', UpdateLastTestResult.as_view()),
path('update_fifoitem/', UpdateFIFOItem.as_view()), path('update_fifoitem/', UpdateFIFOItem.as_view()),
path('update_spg/', UpdateSpg.as_view()) path('update_spg/', UpdateSpg.as_view()),
path('update_equip_state/', UpdateEquipState.as_view())
] ]

View File

@ -11,6 +11,7 @@ from apps.sam.models import Order
from apps.wf.models import Ticket from apps.wf.models import Ticket
from apps.wpm.models import Operation, OperationMaterial, WProduct, WproductFlow from apps.wpm.models import Operation, OperationMaterial, WProduct, WproductFlow
from apps.wpm.services import WpmServies from apps.wpm.services import WpmServies
from apps.em.tasks import update_equip_state_by_next_check_date
# Create your views here. # Create your views here.
class CleanDataView(APIView): class CleanDataView(APIView):
@ -91,3 +92,11 @@ class UpdateSpg(APIView):
for i in SubProductionPlan.objects.filter(subproduction__process__id=1): for i in SubProductionPlan.objects.filter(subproduction__process__id=1):
WpmServies.update_subproduction_progress_main(sp=i) WpmServies.update_subproduction_progress_main(sp=i)
return Response() return Response()
class UpdateEquipState(APIView):
permission_classes = [IsAdminUser]
def post(self, request, format=None):
update_equip_state_by_next_check_date()
return Response()

View File

@ -0,0 +1,13 @@
from __future__ import absolute_import, unicode_literals
from celery import shared_task
from django.utils import timezone
from apps.em.models import Equipment
@shared_task
def update_equip_state_by_next_check_date():
Equipment.objects.filter(next_check_date__lt=timezone.now()).update(
state = Equipment.EQUIP_STATE_DISABLE
)

View File

@ -7,4 +7,4 @@ class UserFilter(DynamicFieldsFilterMixin, filters.FilterSet):
name = filters.CharFilter(field_name='name', lookup_expr='contains') name = filters.CharFilter(field_name='name', lookup_expr='contains')
class Meta: class Meta:
model = User model = User
fields = ['name', 'is_active'] fields = ['name', 'is_active', 'is_atwork']