class ProfileModel(db.Model): __tablename__ = 'profile' id = db.Column(db.Integer, primary_key=True, autoincrement=True) lastname = db.Column(db.String(80), nullable=True) facebook = db.Column(db.String(80), nullable=True) instragram = db.Column(db.String(80), nullable=True) location = db.Column(db.Text, nullable=True) avatar = db.Column(db.Text, nullable=True) createDate = db.Column(db.BigInteger, default=time) updateDate = db.Column(db.BigInteger, onupdate=time) userId = db.Column(db.String(50), db.ForeignKey('users.userId')) user = db.relationship('UserModel') @classmethod def findById(cls, userid): return cls.query.filter_by(userId=userid).first() def insert(self): db.session.add(self) db.session.commit() def delete(self): db.session.delete(self) db.session.commit()
class UserModel(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, db.Sequence('seq_users_id', start=1, increment=1), primary_key=True) identification = db.Column(db.String(255)) email = db.Column(db.String(255)) phone = db.Column(db.String(255)) password = db.Column(db.String(255)) status = db.Column(db.String(1), default=2) # 2 = user new created = db.Column(db.DateTime, default=datetime.datetime.utcnow) rol_id = db.Column(db.Integer, db.ForeignKey('roles.id')) rol = db.relationship('RolModel') def __init__(self, identification, password, email, phone, rol_id): self.identification = identification self.password = password self.email = email self.phone = phone self.rol_id = rol_id def save_to_db(self): db.session.add(self) db.session.commit() @classmethod def find_by_identification(cls, identification): return cls.query.filter_by(identification=identification).first() @classmethod def find_by_id(cls, _id): return cls.query.filter_by(id=_id).first()
class Experiment(db.Model): """ 实验表 """ __tablename__ = 'experiment' id = db.Column(db.Integer, primary_key=True, doc=u'唯一标识') name = db.Column(db.String(32), nullable=False, default='', doc=u'实验名称') remark = db.Column(db.String(512), nullable=False, default='', doc=u'实验备注') start_time = db.Column(db.DateTime, nullable=False, default=func.now(), doc=u'开始时间') end_time = db.Column(db.DateTime, nullable=False, default=func.now(), doc=u'结束时间') lab_no = db.Column(db.Integer, nullable=False, default=0, doc=u'实验室编号') teacher_id = db.Column(db.Integer, nullable=False, default=0, doc=u'教师id') status = db.Column(db.Integer, nullable=False, default=1, doc=u'是否审批通过') class Status(object): SUCCESS = 0 # 成功 PROCESS = 1 # 审批中 FAILED = 2 # 失败 __label__ = {SUCCESS: "审批通过", PROCESS: "审批中", FAILED: "审批未通过"}
class BrandModel(db.Model): __tablename__ = 'brands' brandId = db.Column(db.String(80),primary_key=True,nullable=False,default=DefaultFunc.generateId) brandName = db.Column(db.String(50),nullable=False) createDate = db.Column(db.BigInteger,default=time) updateDate = db.Column(db.BigInteger,onupdate=time) product = db.relationship('ProductModel',lazy="dynamic") @classmethod def fetchAll(cls): return cls.query.all() @classmethod def findById(cls,brandid): return cls.query.filter_by(brandId=brandid).first() @classmethod def findByBrandName(cls,name): return cls.query.filter_by(brandName=name).first() def insert(self): db.session.add(self) db.session.commit() def delete(self): db.session.delete(self) db.session.commit()
class Kardex(db.Model): idkardex = db.Column(db.Integer, primary_key=True) fecha_kardex = db.Column(db.DateTime, default=datetime.now( pytz.timezone('America/Lima'))) tipo = db.Column(db.String(30)) usuario = db.Column(db.String(50)) producto = db.Column(db.String(50)) cantidad_ingreso = db.Column(db.Integer) cantidad_salida = db.Column(db.Integer) idvet = db.Column(db.Integer, db.ForeignKey('vet.idvet')) idatedet = db.Column(db.Integer, unique=True) idordendet = db.Column(db.Integer, unique=True) def __init__(self, fecha_kardex, tipo, usuario, producto, cantidad_ingreso, cantidad_salida, idvet, idatedet, idordendet): self.fecha_kardex = fecha_kardex self.tipo = tipo self.usuario = usuario self.producto = producto self.cantidad_ingreso = cantidad_ingreso self.cantidad_salida = cantidad_salida self.idvet = idvet self.idatedet = idatedet self.idordendet = idordendet
class User(db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, doc='用户唯一标识') username = db.Column(db.String(32), nullable=False, doc='用户名') password = db.Column(db.String(32), nullable=False, doc='密码') real_name = db.Column(db.String(32), nullable=False, default=u'', doc='真实姓名') telephone = db.Column(db.String(32), nullable=False, doc='联系电话') identity_type = db.Column(db.Integer, nullable=False, default=2, doc='0管理者 1快递员 2普通用户') status = db.Column(db.Integer, nullable=False, default=0, doc='状态 0 启用 1 禁用') class IdentityType(object): """ 用户身份 """ MANAGER = 0 # 管理员 COURIER = 1 # 快递员 CUSTOMER = 2 # 普通客户 class Status(object): """ 用户状态 """ NORMAL = 0 # 正常 ABANDON = 1 # 废弃
class HospitalModel(db.Model): __tablename__ = 'hospital' id = db.Column(db.Integer, db.Sequence('seq_hospital_id', start=1, increment=1), primary_key=True) name = db.Column(db.String(255)) direccion = db.Column(db.String(255)) service = db.Column(db.String(255)) status = db.Column(db.String(1), default=1) created = db.Column(db.DateTime, default=datetime.datetime.utcnow) user_id = db.Column(db.Integer, db.ForeignKey('users.id')) user = db.relationship('UserModel') def __init__(self, name, direccion, service, user_id): self.name = name self.direccion = direccion self.service = service self.user_id = user_id def save_to_db(self): db.session.add(self) db.session.commit() @classmethod def find_by_id(cls, _id): return cls.query.filter_by(id=_id).first()
class Veterinaria(db.Model): id = db.Column(db.Integer, primary_key = True) name = db.Column(db.String(255)) logo = db.Column(db.String(255)) ruc = db.Column(db.String(25)) telefono = db.Column(db.String(25)) whatsapp = db.Column(db.String(25)) pais = db.Column(db.String(200)) provincia = db.Column(db.String(200)) ciudad = db.Column(db.String(200)) Distrito = db.Column(db.String(200)) Address = db.Column(db.String(250)) status = db.Column(db.Integer,nullable = False) fecha_registro = db.Column(db.DateTime,default=datetime.utcnow) uservets = db.relationship('UserVet',backref='uservetid') services = db.relationship('Services',backref='serviceid') def __init__(self,name,logo,ruc,telefono,whatsapp,pais,provincia,ciudad,Distrito,Address,status,fecha_registro): self.name = name self.logo = logo self.ruc = ruc self.telefono = telefono self.whatsapp = whatsapp self.pais = pais self.provincia = provincia self.ciudad = ciudad self.Distrito = Distrito self.Address = Address self.status = status self.fecha_registro =fecha_registro
class UserModel(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80)) password = db.Column(db.String(100)) def __init__(self, username, password): self.username = username self.password = password def save_to_db(self): db.session.add(self) db.session.commit() @classmethod def find_by_username(cls, username): return cls.query.filter_by(username=username).first() @classmethod def find_by_id(cls, _id): return cls.query.filter_by(id=_id).first() @staticmethod def genHash(password): return sha256.hash(password)
class UserModel(db.Model): __tablename__ = "users" id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True) password = db.Column(db.String(80)) chatbots = db.relationship("ChatbotModel", lazy="dynamic") def __init__(self, username: str, password: str): self.username = username self.password = password def json(self) -> UserJSON: return {"id": self.id, "username": self.username} @classmethod def find_by_username(cls, username: str) -> "UserModel": return cls.query.filter_by(username=username).first() @classmethod def find_by_id(cls, _id: int) -> "UserModel": return cls.query.filter_by(id=_id).first() def save_to_db(self) -> None: db.session.add(self) db.session.commit() def delete_from_db(self) -> None: db.session.delete(self) db.session.commit()
class User(db.Model): """ 用户表 """ __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, doc=u'用户唯一标识') username = db.Column(db.String(32), nullable=False, doc=u'用户名') password = db.Column(db.String(32), nullable=False, doc=u'密码') role = db.Column(db.Integer, nullable=False, default=2, doc=u'身份标识 0, 1, 2') contacts = db.Column(db.String(64), nullable=False, default='', doc=u'联系方式') join_experiments = db.Column(db.String(128), nullable=False, default='', doc=u'学生参加的实验') class Role(object): """ 用户身份 """ MANAGER = 0 # 管理员 TEACHER = 1 # 老师 STUDENT = 2 # 学生 __label__ = {MANAGER: u"管理员", TEACHER: u"教师", STUDENT: u"学生"}
class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(20), unique=True, nullable=False) password = db.Column(db.String(120), nullable=False) wallet = db.relationship('Wallet', uselist=False)
class Template(db.Model): __tablename__ = 'template' id = db.Column(db.Integer, primary_key=True) # 编号 title = db.Column(db.String(40), nullable=False) # content = db.Column(db.Text, nullable=False) # 内容 saveName = db.Column(db.String(100), nullable=False) # toPath = db.Column(db.String(100), nullable=False) # addtime = db.Column(db.DateTime, nullable=False) # 注册时间
class Laboratory(db.Model): """ 实验室表 """ __tablename__ = 'laboratory' id = db.Column(db.Integer, primary_key=True, doc='唯一标识') name = db.Column(db.String(32), nullable=False, default='', doc='实验室名称') notice = db.Column(db.String(512), nullable=False, default='', doc=u'公告') devices = db.Column(db.String(512), nullable=False, default='', doc=u'设备')
class Vendedor(db.Model): idvendedor = db.Column(db.Integer, primary_key=True) dni = db.Column(db.Integer, nullable=False, unique=True) email = db.Column(db.String(200), nullable=True, unique=True) password = db.Column(db.String(250), nullable=False) nombre = db.Column(db.String(250)) apellidos = db.Column(db.String(250)) telefono = db.Column(db.String(250)) banco = db.Column(db.String(250)) nro_cuenta = db.Column(db.String(250)) nro_cuenta_int = db.Column(db.String(250)) activo = db.Column(db.String(2)) relacionuservet = db.relationship('Uservet', backref='vendedor', lazy=True) relacionpagovendedor = db.relationship('PagoVendedor', backref='vendedor', lazy=True) def __init__(self, dni, email, password, nombre, apellidos, telefono, banco, nro_cuenta, nro_cuenta_int, activo): self.dni = dni self.email = email self.password = password self.nombre = nombre self.apellidos = apellidos self.telefono = telefono self.banco = banco self.nro_cuenta = nro_cuenta self.nro_cuenta_int = nro_cuenta_int self.activo = activo
class Reservacion(db.Model): idreservacion = db.Column(db.Integer, primary_key=True) idvet = db.Column(db.Integer, db.ForeignKey('vet.idvet')) dni = db.Column(db.String(20)) nombre_apellido = db.Column(db.String(100)) telefono = db.Column(db.String(100)) email = db.Column(db.String(100)) fecha = db.Column(db.Date) hora_inicio = db.Column(db.String(20)) hora_final = db.Column(db.String(20)) observacion = db.Column(db.String(100)) encargado = db.Column(db.String(100)) estado_reservacion = db.Column(db.String(100)) def __init__(self, idvet, dni, nombre_apellido, telefono, email, fecha, hora_inicio, hora_final, observacion, encargado, estado_reservacion): self.idvet = idvet self.dni = dni self.nombre_apellido = nombre_apellido self.telefono = telefono self.email = email self.fecha = fecha self.hora_inicio = hora_inicio self.hora_final = hora_final self.observacion = observacion self.encargado = encargado self.estado_reservacion = estado_reservacion
class Empleado(db.Model): idempleado = db.Column(db.Integer, primary_key=True) nombre = db.Column(db.String(300)) dni = db.Column(db.String(100)) password = db.Column(db.String(100)) atencion = db.Column(db.String(1)) petshop = db.Column(db.String(1)) reservaciones = db.Column(db.String(1)) servicios = db.Column(db.String(1)) productos = db.Column(db.String(1)) activo = db.Column(db.String(2)) idvet = db.Column(db.Integer, db.ForeignKey('vet.idvet')) def __init__(self, nombre, dni, password, atencion, petshop, reservaciones, servicios, productos, activo, idvet): self.nombre = nombre self.dni = dni self.password = password self.atencion = atencion self.petshop = petshop self.reservaciones = reservaciones self.servicios = servicios self.productos = productos self.activo = activo self.idvet = idvet
class PagoVendedor(db.Model): idpagovendedor = db.Column(db.Integer, primary_key=True) idvendedor = db.Column(db.Integer, db.ForeignKey('vendedor.idvendedor')) idpagosuscripcion = db.Column(db.String(20)) estado = db.Column(db.String(20)) monto = db.Column(db.String(20)) def __init__(self, idvendedor, idpagosuscripcion, estado, monto): self.idvendedor = idvendedor self.idpagosuscripcion = idpagosuscripcion self.estado = estado self.monto = monto
class User(db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True) # 编号 name = db.Column(db.String(20), nullable=False) # 账号 pwd = db.Column(db.String(100), nullable=False) # 密码 addtime = db.Column(db.DateTime, nullable=False) # 注册时间 def __repr__(self): return "<User %r>" % self.name def check_pwd(self,pwd): return check_password_hash(self.pwd,pwd)
class Email(db.Model): """ 收件箱表 """ __tablename__ = 'email' id = db.Column(db.Integer, primary_key=True, doc=u'唯一标识') user_id = db.Column(db.Integer, nullable=False, doc=u'用户id') content = db.Column(db.String(512), nullable=False, doc=u'邮件内容') create_id = db.Column(db.Integer, nullable=False, doc=u'创建人') create_name = db.Column(db.String(32), nullable=False, doc=u'创建人姓名') create_time = db.Column(db.DateTime, nullable=False, default=func.now(), doc=u'创建时间')
class HistorialSuscripcion(db.Model): idhist = db.Column(db.Integer, primary_key=True) idsuscripcion = db.Column(db.Integer) fecha = db.Column(db.DateTime, default=datetime.now(pytz.timezone('America/Lima'))) accion = db.Column(db.String(200)) observaciones = db.Column(db.String(200)) def __init__(self, idsuscripcion, fecha, accion, observaciones): self.idsuscripcion = idsuscripcion self.fecha = fecha self.accion = accion self.observaciones = observaciones
class Services(db.Model): id = db.Column(db.Integer,primary_key = True) idvet = db.Column(db.Integer,db.ForeignKey('veterinaria.id')) tipo = db.Column(db.String(200)) nombre = db.Column(db.String(200)) precio = db.Column(db.Float) foto = db.Column(db.String(250)) def __init__(self,idvet,tipo,nombre,precio,foto): self.idvet = idvet self.tipo = tipo self.nombre = nombre self.precio = precio self.foto = foto
class Driver(BaseModel): """ Driver Model class """ __tablename__ = 'drivers' name = db.Column(db.String(250), nullable=False, unique=True) license_number = db.Column(db.String(100), nullable=False, unique=True) motorcycle_id = db.Column(db.Integer, db.ForeignKey('motorcycles.id'), nullable=False) motorcycle = db.relationship('Motorcycle', backref='driver_motorcycle', lazy='joined')
class StoreModel(db.Model): __tablename__ = "store" storeId = db.Column( db.String(80), primary_key=True ) # prefix ST_ + Serial + registerDate(from UserModel) + userId storeName = db.Column(db.String(40), nullable=False) storeLocation = db.Column(db.Text, nullable=True) storeCoverImage = db.Column(db.Text, nullable=True) storePicture = db.Column(db.Text, nullable=True) createDate = db.Column(db.BigInteger, default=time) updateDate = db.Column(db.BigInteger, onupdate=time) userId = db.Column(db.String(50), db.ForeignKey('users.userId')) user = db.relationship('UserModel') product = db.relationship('ProductModel', lazy="dynamic", cascade="all ,delete-orphan") @classmethod def fetchAll(cls): return cls.query.all() @classmethod def findSerial(cls): return cls.query.count() @classmethod def findByStoreId(cls, storeid): return cls.query.filter_by(storeId=storeid).first() @classmethod def findByUserId(cls, userid): return cls.query.filter_by(userId=userid).first() @classmethod def isLimit(cls, userid) -> bool: return cls.query.filter_by(userId=userid).count() >= 5 @classmethod def findByStoreName(cls, storename): return cls.query.filter_by(storeName=storename).first() def insert(self): db.session.add(self) db.session.commit() def delete(self): db.session.delete(self) db.session.commit()
class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80)) password = db.Column(db.String(80)) userGroup = db.Column(db.Integer) active = db.Column(db.Integer) locked = db.Column(db.Integer) def __init__(self, _id, username, password, userGroup=1, active=1, locked=0): """ Instance attributes: username password userGroup: *1: Normal *2: Admin active: *0: Inactive: Being used instead of physical deletion *1: Active locked: *0: Not locked *1: Locked for any reason that doesn't comply with the available policies. For exapmale suspecious activity. """ self.id = _id self.username = username self.password = password self.active = active self.locked = locked def json(self): return { 'id': self.id, 'usrename': self.username, 'active': self.active } @classmethod def find_by_username(cls, username): return cls.query.filter_by(username=username, active=1).first() @classmethod def find_by_id(cls, id): return cls.query.filter_by(id=id, active=1).first()
class Usuario(db.Model): id = db.Column(db.Integer, primary_key = True) name = db.Column(db.String(255)) email = db.Column(db.String(120),unique = True) phone = db.Column(db.Integer, nullable = True) pais = db.Column(db.String(200) , nullable = True) provincia = db.Column(db.String(200) , nullable = True) ciudad = db.Column(db.String(200) , nullable = True) distrito = db.Column(db.String(200) , nullable = True) direccion = db.Column(db.String(200) , nullable = True) role = db.Column(db.Integer) pets = db.relationship('Pet',backref='pet_id') uservets = db.relationship('UserVet',backref='pet_id') fecha_registro = db.Column(db.DateTime,default=datetime.utcnow) auth0id = db.Column(db.String(255)) def __init__(self,name,email,phone,pais,provincia,ciudad,distrito,direccion,role,fecha_registro,auth0id): self.name = name self.email = email self.phone = phone self.pais = pais self.provincia = provincia self.ciudad = ciudad self.distrito = distrito self.direccion = direccion self.role = role self.fecha_registro= fecha_registro self.auth0id = auth0id
class Servicios(db.Model): idServicio = db.Column(db.Integer, primary_key=True) nombre = db.Column(db.String(250)) tipo = db.Column(db.String(250)) precio = db.Column(db.Float) detalles = db.Column(db.String(250)) idvet = db.Column(db.Integer, db.ForeignKey('vet.idvet')) def __init__(self, nombre, tipo, precio, detalles, idvet): self.nombre = nombre self.tipo = tipo self.precio = precio self.detalles = detalles self.idvet = idvet
class Uservet(db.Model): iduservet = db.Column(db.Integer, primary_key=True) dni = db.Column(db.Integer, nullable=False, unique=True) email = db.Column(db.String(200), nullable=True, unique=True) password = db.Column(db.String(250), nullable=False) nombre = db.Column(db.String(250)) apellidos = db.Column(db.String(250)) telefono = db.Column(db.String(250)) tipo_uservet = db.Column(db.String(250)) estado_uservet = db.Column(db.String(250)) validado = db.Column(db.String(250)) creado = db.Column(db.DateTime, default=datetime.now(pytz.timezone('America/Lima'))) vet_id = db.Column(db.Integer, db.ForeignKey('vet.idvet')) idsuscripcion = db.Column(db.Integer, db.ForeignKey('suscripcion.idsuscripcion')) idvendedor = db.Column(db.Integer, db.ForeignKey('vendedor.idvendedor')) def __init__(self, dni, email, password, nombre, apellidos, telefono, tipo_uservet, estado_uservet, validado, creado, vet_id, idvendedor): self.dni = dni self.email = email self.password = password self.nombre = nombre self.apellidos = apellidos self.telefono = telefono self.tipo_uservet = tipo_uservet self.estado_uservet = estado_uservet self.validado = validado self.creado = creado self.vet_id = vet_id self.idvendedor = idvendedor
class HistorialPagovendedor(db.Model): idhp = db.Column(db.Integer, primary_key=True) creado = db.Column(db.DateTime, default=datetime.now(pytz.timezone('America/Lima'))) idvendedor = db.Column(db.String(20)) cliente = db.Column(db.String(100)) accion = db.Column(db.String(200)) observaciones = db.Column(db.String(200)) def __init__(self, creado, idvendedor, cliente, accion, observaciones): self.creado = creado self.idvendedor = idvendedor self.cliente = cliente self.accion = accion self.observaciones = observaciones
class Productos(db.Model): idProducto = db.Column(db.Integer, primary_key=True) nombre = db.Column(db.String(250)) descripcion = db.Column(db.String(250)) precio = db.Column(db.Float) stock = db.Column(db.Integer) idvet = db.Column(db.Integer, db.ForeignKey('vet.idvet')) __table_args__ = (db.UniqueConstraint('nombre', 'idvet'), ) def __init__(self, nombre, descripcion, precio, stock, idvet): self.nombre = nombre self.descripcion = descripcion self.precio = precio self.stock = stock self.idvet = idvet