image_service_edit.py 3.3 KB
# coding=utf-8
#author:        4N
#createtime:    2021/9/17
#email:         nheweijun@sina.com


from app.util.component.ApiTemplate import ApiTemplate
import requests
from authlib.integrations.flask_oauth2 import current_token
from app.util.component.UserCheck import UserCheck

class Api(ApiTemplate):

    api_name = "修改ImageService服务"

    def process(self):
        # 返回结果
        res = {}
        try:

            user_req: requests.Response = requests.post("{}/API/Service/Info".format(self.para.get("url")),
                                                        data={"guid":self.para.get("guid")})
            if not user_req.json().get("result"):
                raise Exception("服务不存在!")
            # 验证权限
            UserCheck.verify(user_req.json().get("data").get("service").get("creator"), current_token.user.username)

            url = "{}/API/Service/Edit".format(self.para.get("url"))
            response:requests.Response = requests.post(url,data=self.para)
            if not response.json().get("result"):
                raise Exception("由于{},影像服务修改失败!".format(response.json().get("msg")))
            res["result"] = True
        except Exception as e:
            raise e
        return res

    api_doc = {
        "tags": ["影像服务接口"],
        "parameters": [

            {"name": "guid",
             "in": "formData",
             "type": "string",
             "description": "服务guid"},

            {"name": "type",
             "in": "formData",
             "type": "string",
             "enum": ["地图服务","切片服务","影像服务"],
             "description": "[地图服务,切片服务,影像服务]"},

            {"name": "url",
             "in": "formData",
             "type": "string",
             "description": "服务地址"},

            {"name": "name",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,切片服务,影像服务]"},
            {"name": "title",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,切片服务,影像服务]"},
            {"name": "description",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,切片服务,影像服务]"},

            {"name": "catalog_guid",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,切片服务,影像服务]"},

            {"name": "functions",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,影像服务]以逗号相隔,可选WMTS,WMS"},

            # 影像参数
            {"name": "image_guids",
             "in": "formData",
             "type": "string",
             "description": "[影像服务]影像guids,以英文逗号相隔"},
            {"name": "scheme",
             "in": "formData",
             "type": "string",
             "description": "切片方案"},


        ],
        "responses": {
            200: {
                "schema": {
                    "properties": {
                    }
                }
            }
        }
    }