__init__.py 1.7 KB
# coding=utf-8
#author:        4N
#createtime:    2021/6/11
#email:         nheweijun@sina.com


from sqlalchemy import Column, Integer, String, ForeignKey, Text, DateTime, Time
from app.models import db
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()
class Image(db.Model):
    '''
    影像元数据
    '''
    __tablename__ = 'dmdms_image'
    guid = Column(String(256), primary_key=True)
    name = Column(String)
    alias=Column(String)
    raster_y_size=Column(Integer)
    raster_x_size = Column(Integer)
    overview = Column(Integer)
    extent = Column(String)
    null_value = Column(Integer)
    available = Column(Integer)#影像是否可用,不可用可能在创建金字塔中
    bands = Column(Integer)
    path=Column(String)
    host=Column(String)
    port=Column(Integer)


dmdms_image_rel = db.Table('dmdms_image_rel',
    Column('image_guid',String, ForeignKey('dmdms_image.guid')),
    Column('service_guid', String, ForeignKey('dmdms_image_service.guid'))
    )



class ImageService(db.Model):
    '''
    影像服务
    '''
    __tablename__ = 'dmdms_image_service'
    guid = Column(String(256), primary_key=True)
    name=Column(String(256))
    alias = Column(String(256))
    state= Column(Integer)
    create_time = Column(DateTime)
    update_time = Column(DateTime)
    description = Column(Text)
    slice_scheme = Column(Text)
    extent = Column(String(256))
    images  = db.relationship('Image',
                              secondary=dmdms_image_rel,
                              backref='image_services',
                              lazy='dynamic'
                              )