__init__.py 2.9 KB
# coding=utf-8
#author:        4N
#createtime:    2021/9/14
#email:         nheweijun@sina.com

from flasgger import swag_from
from flask import Blueprint
from app.util import BlueprintApi
from . import service_register
from . import service_exist_type
from . import service_list
from . import service_list_base
from . import service_delete
from . import service_state
from . import service_info
from . import service_edit
import os
from flask import send_from_directory
from app.decorators.token_decorator import token_decorator


class DataManager(BlueprintApi):

    bp = Blueprint("Service", __name__, url_prefix="/API/Service")
    service_type = []


    @staticmethod
    @bp.route('/Register', methods=['POST'])
    @swag_from(service_register.Api.api_doc)
    @token_decorator("profile")
    def api_service_register():
        """
        服务注册
        """
        return service_register.Api().result

    @staticmethod
    @bp.route('/Type', methods=['GET'])
    @swag_from(service_exist_type.Api.api_doc)
    def api_service_type():
        """
        可用服务类型
        """
        return service_exist_type.Api().result

    @staticmethod
    @bp.route('/State', methods=['POST'])
    @swag_from(service_state.Api.api_doc)
    @token_decorator("profile")
    def api_service_state():
        """
        修改服务状态
        """
        return service_state.Api().result

    @staticmethod
    @bp.route('/List', methods=['POST'])
    @swag_from(service_list.Api.api_doc)
    def api_service_list():
        """
        服务列表
        """
        return service_list.Api().result


    @staticmethod
    @bp.route('/BaseMapList', methods=['POST'])
    @swag_from(service_list_base.Api.api_doc)
    def api_service_list_base():
        """
        底图服务列表
        """
        return service_list_base.Api().result

    @staticmethod
    @bp.route('/Info', methods=['POST'])
    @swag_from(service_info.Api.api_doc)
    def api_service_info():
        """
        服务Info
        """
        return service_info.Api().result

    @staticmethod
    @bp.route('/Edit', methods=['POST'])
    @swag_from(service_edit.Api.api_doc)
    @token_decorator("profile")
    def api_service_edit():
        """
        服务Edit
        """
        return service_edit.Api().result



    @staticmethod
    @bp.route('/Delete', methods=['POST'])
    @swag_from(service_delete.Api.api_doc)
    @token_decorator("profile")
    def api_service_delete():
        """
        服务删除
        """
        return service_delete.Api().result


    @staticmethod
    @bp.route('/Overview/<file>', methods=['GET'])
    def table_download_file(file):
        parent = os.path.dirname(os.path.realpath(__file__))
        dirpath = os.path.join(parent,"overview")

        return send_from_directory(dirpath, filename=file, as_attachment=True)