feat: ✨ 首页控制台接口优化
parent
88e150ea1e
commit
8d9fa89687
|
@ -70,7 +70,7 @@ class DataVViewSet(GenericViewSet):
|
||||||
"""
|
"""
|
||||||
count = FileList.objects.all().count()
|
count = FileList.objects.all().count()
|
||||||
data = FileList.objects.aggregate(sum_size=Sum('size'))
|
data = FileList.objects.aggregate(sum_size=Sum('size'))
|
||||||
return DetailResponse(data={"count": count, "occupy_space": format_bytes(data.get('sum_size'))}, msg="获取成功")
|
return DetailResponse(data={"count": count, "occupy_space": format_bytes(data.get('sum_size') or 0)}, msg="获取成功")
|
||||||
|
|
||||||
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
||||||
def database_total(self, request):
|
def database_total(self, request):
|
||||||
|
@ -101,7 +101,7 @@ class DataVViewSet(GenericViewSet):
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(e)
|
print(e)
|
||||||
space = '无权限'
|
space = '无权限'
|
||||||
return DetailResponse(data={"count": count, "space": format_bytes(space)}, msg="获取成功")
|
return DetailResponse(data={"count": count, "space": format_bytes(space or 0)}, msg="获取成功")
|
||||||
|
|
||||||
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
||||||
def registered_user(self, request):
|
def registered_user(self, request):
|
||||||
|
@ -141,12 +141,13 @@ class DataVViewSet(GenericViewSet):
|
||||||
seven_days_ago = today - datetime.timedelta(days=day)
|
seven_days_ago = today - datetime.timedelta(days=day)
|
||||||
users = Users.objects.filter(create_datetime__gte=seven_days_ago).annotate(
|
users = Users.objects.filter(create_datetime__gte=seven_days_ago).annotate(
|
||||||
day=TruncDay('create_datetime')).values(
|
day=TruncDay('create_datetime')).values(
|
||||||
'day').annotate(count=Count('id'))
|
'day').annotate(count=Count('id')).order_by('-day')
|
||||||
result = []
|
result = []
|
||||||
data_dict = {ele.get('day').strftime('%Y-%m-%d'): ele.get('count') for ele in users}
|
data_dict = {ele.get('day').strftime('%Y-%m-%d'): ele.get('count') for ele in users}
|
||||||
for i in range(day):
|
for i in range(day):
|
||||||
date = (today - datetime.timedelta(days=i)).strftime('%Y-%m-%d')
|
date = (today - datetime.timedelta(days=i)).strftime('%Y-%m-%d')
|
||||||
result.append({'day': date, 'count': data_dict[date] if date in data_dict else 0})
|
result.append({'day': date, 'count': data_dict[date] if date in data_dict else 0})
|
||||||
|
result = sorted(result, key=lambda x: x['day'])
|
||||||
return DetailResponse(data={"registered_user_list": result}, msg="获取成功")
|
return DetailResponse(data={"registered_user_list": result}, msg="获取成功")
|
||||||
|
|
||||||
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
||||||
|
@ -161,12 +162,13 @@ class DataVViewSet(GenericViewSet):
|
||||||
seven_days_ago = today - datetime.timedelta(days=day)
|
seven_days_ago = today - datetime.timedelta(days=day)
|
||||||
users = LoginLog.objects.filter(create_datetime__gte=seven_days_ago).annotate(
|
users = LoginLog.objects.filter(create_datetime__gte=seven_days_ago).annotate(
|
||||||
day=TruncDay('create_datetime')).values(
|
day=TruncDay('create_datetime')).values(
|
||||||
'day').annotate(count=Count('id'))
|
'day').annotate(count=Count('id')).order_by('-day')
|
||||||
result = []
|
result = []
|
||||||
data_dict = {ele.get('day').strftime('%Y-%m-%d'): ele.get('count') for ele in users}
|
data_dict = {ele.get('day').strftime('%Y-%m-%d'): ele.get('count') for ele in users}
|
||||||
for i in range(day):
|
for i in range(day):
|
||||||
date = (today - datetime.timedelta(days=i)).strftime('%Y-%m-%d')
|
date = (today - datetime.timedelta(days=i)).strftime('%Y-%m-%d')
|
||||||
result.append({'day': date, 'count': data_dict[date] if date in data_dict else 0})
|
result.append({'day': date, 'count': data_dict[date] if date in data_dict else 0})
|
||||||
|
result = sorted(result, key=lambda x: x['day'])
|
||||||
return DetailResponse(data={"login_user": result}, msg="获取成功")
|
return DetailResponse(data={"login_user": result}, msg="获取成功")
|
||||||
|
|
||||||
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
@action(methods=["GET"], detail=False, permission_classes=[IsAuthenticated])
|
||||||
|
@ -252,7 +254,7 @@ class DataVViewSet(GenericViewSet):
|
||||||
province_dict = {p: 0 for p in provinces}
|
province_dict = {p: 0 for p in provinces}
|
||||||
for ele in province_data:
|
for ele in province_data:
|
||||||
if ele.get('province') in province_dict:
|
if ele.get('province') in province_dict:
|
||||||
province_dict[ele.get('province')] += 1
|
province_dict[ele.get('province')] += ele.get('count')
|
||||||
else:
|
else:
|
||||||
province_dict['未知区域'] += ele.get('count')
|
province_dict['未知区域'] += ele.get('count')
|
||||||
data = [{'region': key, 'count': val} for key, val in province_dict.items()]
|
data = [{'region': key, 'count': val} for key, val in province_dict.items()]
|
||||||
|
|
Loading…
Reference in New Issue