feat: wm,handover,mlog增加检索条件

This commit is contained in:
caoqianming 2024-06-28 15:29:39 +08:00
parent 9572614b02
commit 3c52125440
2 changed files with 10 additions and 3 deletions

View File

@ -41,7 +41,7 @@ class WMaterialFilter(filters.FilterSet):
"material__process__name": ["exact", "contains", "in"],
"belong_dept": ["exact"],
"belong_dept__name": ["exact", "in"],
"batch": ["exact"],
"batch": ["exact", "in"],
"count": ["gte", "lte", "exact"]
}
@ -67,6 +67,8 @@ class HandoverFilter(filters.FilterSet):
class Meta:
model = Handover
fields = {
"batch": ["exact", "contains"],
"material": ["exact", "in"],
"send_user": ["exact"],
"send_dept": ["exact"],
"send_dept__name": ["exact"],

View File

@ -108,7 +108,7 @@ class WMaterialViewSet(ListModelMixin, CustomGenericViewSet):
serializer_class = WMaterialSerializer
select_related_fields = ['material', 'belong_dept', 'material__process']
search_fields = ['material__name',
'material__number', 'material__specification']
'material__number', 'material__specification', 'batch', 'material__model']
filterset_class = WMaterialFilter
@action(methods=['post'], detail=False, perms_map={'post': '*'}, serializer_class=DeptBatchSerializer)
@ -135,10 +135,13 @@ class MlogViewSet(CustomModelViewSet):
queryset = Mlog.objects.all()
serializer_class = MlogSerializer
select_related_fields = ['create_by', 'update_by', 'mtask',
'handle_user', 'handle_user_2', 'equipment', 'equipment_2']
'handle_user', 'handle_user_2', 'equipment', 'equipment_2', 'material_in', 'material_out']
prefetch_related_fields = ['handle_users',
'material_outs', 'b_mlog', 'equipments']
filterset_class = MlogFilter
search_fields = ['material_in__name',
'material_in__number', 'material_in__specification', 'batch', 'material_in__model',
'material_out__name', 'material_out__number', 'material_out__specification', 'material_out__model',]
@transaction.atomic
def perform_create(self, serializer):
@ -285,6 +288,8 @@ class HandoverViewSet(CustomModelViewSet):
select_related_fields = ['send_user',
'send_dept', 'recive_user', 'recive_dept']
filterset_class = HandoverFilter
search_fields = ['material__name',
'material__number', 'material__specification', 'batch', 'material__model']
def perform_destroy(self, instance):
user = self.request.user