diff --git a/appStore/api/router.py b/appStore/api/router.py index 7eaf21bf73267754e30611861e0ea61bcaa068b8..5c4ea88c0678485185d5ac8d2ea98323eb1e5033 100644 --- a/appStore/api/router.py +++ b/appStore/api/router.py @@ -1,6 +1,6 @@ """ * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. - * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. * See LICENSE file for more details. * Author: wangqingzheng * Date: Fri Feb 23 11:19:26 2024 +0800 @@ -48,6 +48,7 @@ urlpatterns = [ url(r'', include(router.urls)), url('^apply_use_machine/', TestMachineViewSet.as_view({'post': 'apply_use_machine'}), name='apply_use_machine'), url('^cancel_apply_use_machine/', TestMachineViewSet.as_view({'post': 'cancel_apply_use_machine'}), name='cancel_apply_use_machine'), + url('^finished_using/', TestMachineViewSet.as_view({'post': 'finished_using'}), name='finished_using'), url('^modify_server/', TestMachineViewSet.as_view({'post': 'modify_server'}), name='modify_server'), 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'), diff --git a/appStore/testMachine/models.py b/appStore/testMachine/models.py index 0e71842e692e8dfb853b539c6c4cf889424bca31..80d67e44b3d1afa799a3f82fad554543f2bdc0c3 100644 --- a/appStore/testMachine/models.py +++ b/appStore/testMachine/models.py @@ -29,7 +29,7 @@ class TestMachine(models.Model): BMC_password = models.CharField(max_length=50, verbose_name='BMC密码') create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') - owner = models.CharField(max_length=50, verbose_name='当前操作系统负责人', default=None) + owner = models.CharField(max_length=50, verbose_name='当前操作系统负责人', null=True, blank=True) server_IP = models.CharField(max_length=50, verbose_name='server_IP', null=True, blank=True) server_user_name = models.CharField(max_length=50, verbose_name='服务器用户名', null=True, blank=True) server_password = models.CharField(max_length=50, verbose_name='服务器密码', null=True, blank=True) diff --git a/appStore/testMachine/views.py b/appStore/testMachine/views.py index 7334c108bfd043161b2e4a0fe009e80088cc20f8..71f7667a6bb926f51f83f2262420225a4b9853cf 100644 --- a/appStore/testMachine/views.py +++ b/appStore/testMachine/views.py @@ -5,6 +5,7 @@ * Author: wangqingzheng * Date: Fri Mar 1 10:09:12 2024 +0800 """ +# Create your views here. from appStore.testMachine.models import TestMachine from appStore.testMachine.serializers import TestMachineSerializer from rest_framework import status, viewsets @@ -96,6 +97,25 @@ class TestMachineViewSet(viewsets.ModelViewSet): machine_data.save() return json_response({}, status.HTTP_200_OK, '修改成功') + def finished_using(self, request, *args, **kwargs): + machine_id = request.data.get('id') + machine_data = TestMachine.objects.get(id=machine_id) + if not machine_id or not machine_data: + return json_response({}, status.HTTP_205_RESET_CONTENT, '没有该数据') + if machine_data.owner == request.user.chinese_name: + machine_data.owner = None + machine_data.server_IP = None + machine_data.server_user_name = None + machine_data.server_password = None + machine_data.os_version = None + machine_data.link_status = None + machine_data.task_status = None + machine_data.save() + return json_response({}, status.HTTP_200_OK, '使用完成状态修改成功') + else: + return json_response({}, status.HTTP_200_OK, '不可取消别人的使用状态') + + def delete(self, request, *args, **kwargs): id = request.data.get('id', None) if not id or not TestMachine.objects.filter(id=id): diff --git a/templates/front-project/src/api/api.js b/templates/front-project/src/api/api.js index 8cb593f1450463176bed504f307c0bcbe8c90115..f87af8c46d76388cddce6b6d27316ff93cc2267c 100644 --- a/templates/front-project/src/api/api.js +++ b/templates/front-project/src/api/api.js @@ -1,6 +1,6 @@ /* * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. - * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. * See LICENSE file for more details. * Author: wqz * Date: Mon May 20 11:10:24 2024 +0800 @@ -226,6 +226,24 @@ export function machine_list(type, paramsOrData) { return service(commonConfig); } +//修改服务器系统信息 +export function modify_server(data) { + return service({ + method: 'post', + url: '/modify_server/', + data + }) +} + +//机器使用完成 +export function finished_using(data) { + return service({ + method: 'post', + url: '/finished_using/', + data + }) +} + //申请使用设备 export function apply_use_machine(data) { return service({ @@ -243,12 +261,7 @@ export function cancel_apply_use_machine(data) { }) } -//修改服务器系统信息 -export function modify_server(data) { - return service({ - method: 'post', - url: '/modify_server/', - data - }) -} + + + diff --git a/templates/front-project/src/views/machineViews/ServerList.vue b/templates/front-project/src/views/machineViews/ServerList.vue index 63f06205ef19e103dca9354001390a04c9cc9168..ab1b7b096548ddd73323b547545f5d08c88aaf10 100644 --- a/templates/front-project/src/views/machineViews/ServerList.vue +++ b/templates/front-project/src/views/machineViews/ServerList.vue @@ -33,6 +33,7 @@ @@ -67,7 +68,7 @@