From e3f453933390516003c38a2af8f9b02ac368293b Mon Sep 17 00:00:00 2001 From: qz_cx Date: Fri, 10 Oct 2025 17:35:07 +0800 Subject: [PATCH] Add methods for querying and modifying Syream data --- appStore/api/router.py | 1 + appStore/project/views.py | 3 +- appStore/stream/views.py | 20 +++++++++++-- templates/front-project/src/api/api.js | 29 ++++++++++++------- .../src/views/dataViews/StreamTable.vue | 2 +- 5 files changed, 39 insertions(+), 16 deletions(-) diff --git a/appStore/api/router.py b/appStore/api/router.py index 2e34ec7..a01664d 100644 --- a/appStore/api/router.py +++ b/appStore/api/router.py @@ -47,6 +47,7 @@ urlpatterns = [ url('^get_filter_name/', ProjectViewSet.as_view({'get': 'get_filter_name'}), name='get_filter_name'), url('^merge_data/', ProjectViewSet.as_view({'post': 'merge_data'}), name='merge_data'), url('^download_excel/', ProjectViewSet.as_view({'get': 'download_excel'}), name='download_excel'), + url('^get_modify_stream/', StreamViewSet.as_view({'get': 'get_modify_stream'}), name='get_modify_stream'), url('^change_password/', UserProfileViewSet.as_view({'put': 'change_password'}), name='change_password'), url('^do_test_case/', TestCaseViewSet.as_view({'post': 'do_test_case'}), name='do_test_case'), url('^down_message/', TestCaseViewSet.as_view({'get': 'down_message'}), name='down_message'), diff --git a/appStore/project/views.py b/appStore/project/views.py index 581568b..c35da5d 100644 --- a/appStore/project/views.py +++ b/appStore/project/views.py @@ -370,8 +370,7 @@ class ProjectViewSet(viewsets.ModelViewSet): else: data_project['message'] = None data_project['project_name'] = request.__dict__['data_project']['project_name'] - data_project['user_name'] = UserProfile.objects.filter( - username = request.__dict__['data_project']['user_name']).first().chinese_name + data_project['user_name'] = request.__dict__['data_project']['chinese_name'] data_project['os_version'] = request.__dict__['data_project']['envinfo']['swinfo']['os']['osversion'] data_project['cpu_module_name'] = request.__dict__['data_project']['envinfo']['hwinfo']['cpu']['model_name'] data_project['ip'] = \ diff --git a/appStore/stream/views.py b/appStore/stream/views.py index dfc2f9f..af34cf7 100644 --- a/appStore/stream/views.py +++ b/appStore/stream/views.py @@ -166,6 +166,21 @@ class StreamViewSet(viewsets.ModelViewSet): datas, title_index, column_index, base_column_index = self.get_data(comparsion_queryset, datas, title_index, column_index, base_column_index) return json_response(datas, status.HTTP_200_OK, '列表') + def get_modify_stream(self, request, *args, **kwargs): + """ + 返回列表 + :param request: + :param args: + :param kwargs: + :return: + """ + env_id = request.GET.get('env_id') + queryset = Stream.objects.filter(env_id=env_id).all() + if not queryset: + return json_response({}, status.HTTP_200_OK, '列表') + serializer = self.get_serializer(queryset, many=True) + return json_response(serializer.data, status.HTTP_200_OK, '列表') + def create(self, request, *args, **kwargs): serializer_stream_errors = [] error_message = [] @@ -206,8 +221,9 @@ class StreamViewSet(viewsets.ModelViewSet): id = request.data.get('id') if not id or not Stream.objects.filter(id=id): return json_response({}, status.HTTP_205_RESET_CONTENT, '请传递正确的测试id') - user_name = Stream.objects.filter(id=id).first().user_name - if request.user.is_superuser or request.user.username == user_name: + env_id = Stream.objects.filter(id=id).first().env_id + user_name = Project.objects.filter(env_id=env_id).first().user_name + if request.user.is_superuser or request.user.chinese_name == user_name: stream_data = Stream.objects.get(id=id) if not stream_data: return json_response({}, status.HTTP_205_RESET_CONTENT, '没有该数据') diff --git a/templates/front-project/src/api/api.js b/templates/front-project/src/api/api.js index 0003f4e..11a914a 100644 --- a/templates/front-project/src/api/api.js +++ b/templates/front-project/src/api/api.js @@ -100,24 +100,31 @@ export function env(params) { }) } -// stream -export function stream(params) { +//修改stream数据 +export function get_modify_stream(params) { return service({ method: 'get', - url: '/stream/', - params + url: '/get_modify_stream/', + params, }) } -// stream -export function streamNew(params) { - return service({ - method: 'get', - url: '/streamNew/', - params - }) + +//修改stream数据 +export function stream(type, paramsOrData) { + const commonConfig = { + method: type, + url: '/stream/', + }; + if (type === 'get') { + commonConfig.params = paramsOrData; + } else { + commonConfig.data = paramsOrData; + } + return service(commonConfig); } + // lmbench export function lmbench(params) { return service({ diff --git a/templates/front-project/src/views/dataViews/StreamTable.vue b/templates/front-project/src/views/dataViews/StreamTable.vue index ba261b1..bee4b27 100644 --- a/templates/front-project/src/views/dataViews/StreamTable.vue +++ b/templates/front-project/src/views/dataViews/StreamTable.vue @@ -62,7 +62,7 @@ export default { computed: {}, methods: { getData() { - stream(this.paramsData).then((response) => { + stream('get', this.paramsData).then((response) => { this.tableDatas = response.data.data; this.showAllData = false; // 默认显示全部数据 const keysToHide = Object.keys(this.tableDatas[0]).filter(key => { -- Gitee