2022-08-08 21:45:13 +08:00
|
|
|
from flask import Blueprint, request, Response, make_response
|
2022-07-26 17:02:06 +08:00
|
|
|
|
|
|
|
from Modules.File.FileImpl import FileObjImpl
|
|
|
|
from Utils.ErrorUtil import APIReturnError
|
|
|
|
from Utils.RouteUtil import RouteParamsCheck
|
|
|
|
|
|
|
|
file_route = Blueprint('file', __name__)
|
|
|
|
|
|
|
|
|
2022-08-08 20:30:08 +08:00
|
|
|
@file_route.route('/new_file_package', methods=['POST'])
|
|
|
|
def new_file_package_route():
|
|
|
|
"""新建文件包"""
|
|
|
|
try:
|
2022-08-09 16:53:08 +08:00
|
|
|
RouteParamsCheck(req=request.json,
|
|
|
|
params=["package_name", "obj_name", "impl_name", "route_name", "class_data", "impl_range",
|
|
|
|
"route_prefix"]).required()
|
2022-08-08 20:30:08 +08:00
|
|
|
data = request.json
|
|
|
|
impl = FileObjImpl()
|
|
|
|
src_dir = impl.new_file_package(data=data)
|
|
|
|
impl.write_file_to_zip(src_dir=src_dir)
|
2022-08-08 21:45:13 +08:00
|
|
|
response = Response(impl.return_file_data(package_name=data['package_name']), content_type='application/zip')
|
2022-08-18 17:09:23 +08:00
|
|
|
impl.delete_all_file()
|
2022-08-08 20:30:08 +08:00
|
|
|
return response
|
|
|
|
except APIReturnError as e:
|
2022-08-09 16:53:08 +08:00
|
|
|
return {"info": e.__str__()}, e.status_code
|