diff --git a/apps/application/serializers/application_serializers.py b/apps/application/serializers/application_serializers.py index 60126ada5..96f1319b5 100644 --- a/apps/application/serializers/application_serializers.py +++ b/apps/application/serializers/application_serializers.py @@ -133,6 +133,7 @@ class ApplicationSerializer(serializers.Serializer): prologue = serializers.CharField(required=False) example = serializers.ListSerializer(required=False, child=serializers.CharField(required=True)) dataset_id_list = serializers.ListSerializer(required=False, child=serializers.UUIDField(required=True)) + status = serializers.BooleanField(required=False) def is_valid(self, *, user_id=None, raise_exception=False): super().is_valid(raise_exception=True) @@ -285,7 +286,7 @@ class ApplicationSerializer(serializers.Serializer): model = QuerySet(Model).get(id=instance.get('model_id') if 'model_id' in instance else application.model_id) - update_keys = ['name', 'desc', 'model_id', 'multiple_rounds_dialogue', 'prologue', 'example'] + update_keys = ['name', 'desc', 'model_id', 'multiple_rounds_dialogue', 'prologue', 'example', 'status'] for update_key in update_keys: if update_key in instance and instance.get(update_key) is not None: if update_key == 'multiple_rounds_dialogue': diff --git a/apps/application/swagger_api/application_api.py b/apps/application/swagger_api/application_api.py index b53589fdf..3107f4125 100644 --- a/apps/application/swagger_api/application_api.py +++ b/apps/application/swagger_api/application_api.py @@ -116,6 +116,29 @@ class ApplicationApi(ApiMixin): } ) + class Edit(ApiMixin): + @staticmethod + def get_request_body_api(): + return openapi.Schema( + type=openapi.TYPE_OBJECT, + required=['name', 'desc', 'model_id', 'multiple_rounds_dialogue'], + properties={ + 'name': openapi.Schema(type=openapi.TYPE_STRING, title="应用名称", description="应用名称"), + 'desc': openapi.Schema(type=openapi.TYPE_STRING, title="应用描述", description="应用描述"), + 'model_id': openapi.Schema(type=openapi.TYPE_STRING, title="模型id", description="模型id"), + "multiple_rounds_dialogue": openapi.Schema(type=openapi.TYPE_BOOLEAN, title="是否开启多轮对话", + description="是否开启多轮对话"), + 'prologue': openapi.Schema(type=openapi.TYPE_STRING, title="开场白", description="开场白"), + 'example': openapi.Schema(type=openapi.TYPE_ARRAY, items=openapi.Schema(type=openapi.TYPE_STRING), + title="示例列表", description="示例列表"), + 'dataset_id_list': openapi.Schema(type=openapi.TYPE_ARRAY, + items=openapi.Schema(type=openapi.TYPE_STRING), + title="关联数据集Id列表", description="关联数据集Id列表"), + 'status': openapi.Schema(type=openapi.TYPE_BOOLEAN, title='状态', description="状态") + + } + ) + class Create(ApiMixin): @staticmethod def get_request_body_api(): diff --git a/apps/application/views/application_views.py b/apps/application/views/application_views.py index 5cfff18f6..56a90383a 100644 --- a/apps/application/views/application_views.py +++ b/apps/application/views/application_views.py @@ -186,7 +186,7 @@ class Application(APIView): @swagger_auto_schema(operation_summary="修改应用", operation_id="修改应用", manual_parameters=ApplicationApi.Operate.get_request_params_api(), - request_body=ApplicationApi.Create.get_request_body_api(), + request_body=ApplicationApi.Edit.get_request_body_api(), responses=result.get_api_array_response(ApplicationApi.get_response_body_api()), tags=['应用']) @has_permissions(ViewPermission(