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


from app.util.component.ApiTemplate import ApiTemplate
import uuid
from ..models import Service,MapService,db


import datetime
class Api(ApiTemplate):

    api_name = "修改MapService服务"

    def process(self):

        # 返回结果
        res = {}

        try:
            guid = self.para.get("guid")
            service = Service.query.filter_by(guid=guid)
            this_time = datetime.datetime.now()


            service_update = {"update_time":this_time}
            map_service_update = {"updatetime":this_time}
            for key in self.para.keys():
                if key in ["name","title","state","description","overview","catalog_guid"]:
                    service_update[key] = self.para.get(key)
                if key in ["name","status","description","username","readonly",
                           "sid","stype","ssupply","sctime","company","abstract","thumbnail","layer_style"]:
                    map_service_update[key] = self.para.get(key)


            map_service = MapService.query.filter_by(service_guid=guid)

            if service_update:
                service.update(service_update)
            if map_service_update:
                map_service.update(map_service_update)

            db.session.commit()

            res["result"] = True
        except Exception as e:
            raise e

        return res

    api_doc = {
        "tags": ["地图服务接口"],
        "parameters": [

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


            {"name": "layer_style",
             "in": "formData",
             "type": "string",
             "description": "[地图服务,切片服务]图层样式"},

            {"name": "functions",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]服务能力,用逗号相隔"},


            # MapService参数
            {"name": "status",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]status"},
            {"name": "username",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]username"},
            {"name": "readonly",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]readonly"},
            {"name": "sid",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]sid"},
            {"name": "stype",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]stype"},
            {"name": "ssupply",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]ssupply"},
            {"name": "sctime",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]sctime"},
            {"name": "company",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]company"},
            {"name": "abstract",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]abstract"},
            {"name": "thumbnail",
             "in": "formData",
             "type": "string",
             "description": "[地图服务]thumbnail"},

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