feat: material list 如需获取库存数据需指定传参

This commit is contained in:
caoqianming 2025-11-28 15:33:20 +08:00
parent 2fcfae518d
commit a51494aea9
1 changed files with 3 additions and 3 deletions

View File

@ -44,15 +44,15 @@ class MaterialViewSet(CustomModelViewSet):
def get_queryset(self): def get_queryset(self):
qs = super().get_queryset() qs = super().get_queryset()
if self.action in ["list", "retrieve"]: if self.action in ["list", "retrieve"] and self.request.query_params.get('wiith_count', None) == 'yes':
return qs.annotate( return qs.annotate(
count_mb=Coalesce( count_mb=Coalesce(
Sum('mb_m__count', filter=Q(mb_m__state=10)), Sum('mb_m__count', filter=Q(mb_m__state=10, mb_m__count___gt=0)),
Value(0), Value(0),
output_field=DecimalField() output_field=DecimalField()
), ),
count_wm=Coalesce( count_wm=Coalesce(
Sum('wm_m__count', filter=Q(wm_m__state=10)), Sum('wm_m__count', filter=Q(wm_m__state=10, wm_m__count___gt=0)),
Value(0), Value(0),
output_field=DecimalField() output_field=DecimalField()
) )