feat: enstat list返回数据打平
This commit is contained in:
parent
ccfeb9d901
commit
584e5dc5c3
|
@ -69,6 +69,32 @@ class EnStatViewSet(ListModelMixin, CustomGenericViewSet):
|
|||
filterset_class = EnStatFilter
|
||||
ordering = ['mgroup__sort', 'year_s', 'month_s', 'day_s', 'hour']
|
||||
|
||||
def handle_data(self, data):
|
||||
for i in data:
|
||||
# imaterial_data = i['imaterial_data']
|
||||
# other_cost_data = i['other_cost_data']
|
||||
qua_data = i['qua_data']
|
||||
equip_elec_data = i['equip_elec_data']
|
||||
if qua_data:
|
||||
for item in qua_data:
|
||||
i[f'{item["material_name"]}_{item["testitem_name"]}_rate_pass'] = item['rate_pass']
|
||||
if equip_elec_data:
|
||||
for item in equip_elec_data:
|
||||
i[f'{item["equipment_name"]}_consume_unit'] = item.get('consume_unit', None)
|
||||
return data
|
||||
|
||||
def list(self, request, *args, **kwargs):
|
||||
queryset = self.filter_queryset(self.get_queryset())
|
||||
|
||||
page = self.paginate_queryset(queryset)
|
||||
if page is not None:
|
||||
serializer = self.get_serializer(page, many=True)
|
||||
data = self.handle_data(serializer.data)
|
||||
return self.get_paginated_response(data)
|
||||
|
||||
serializer = self.get_serializer(queryset, many=True)
|
||||
data = self.handle_data(serializer.data)
|
||||
return Response(data)
|
||||
|
||||
class EnStat2ViewSet(ListModelMixin, CustomGenericViewSet):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue