class Distribuidora(dbMongo.Document): nombre = dbMongo.StringField() direccion = dbMongo.StringField(default="") contacto = dbMongo.StringField() cuit = dbMongo.StringField(default="") representante = dbMongo.StringField(default="") id_distribuidora = dbMongo.SequenceField()
class ProductosEnStock(dbMongo.EmbeddedDocument): id_productos = dbMongo.SequenceField() codigoContenedor = dbMongo.IntField() #opcional detalleUbicacion = dbMongo.StringField() unidad = dbMongo.IntField() lote = dbMongo.StringField() fechaVencimiento = dbMongo.DateTimeField()
class Blog(dbMongo.EmbeddedDocument): fecha = dbMongo.DateTimeField( default=parser.parse(str(datetime.datetime.utcnow()))) detalle = dbMongo.StringField() id_usuario = dbMongo.IntField() id_blog = dbMongo.SequenceField() tipo = dbMongo.StringField()
class EspacioFisico(dbMongo.Document): nombre = dbMongo.StringField() piso = dbMongo.StringField() sala = dbMongo.StringField() descripcion = dbMongo.StringField() blogs = dbMongo.ListField(dbMongo.EmbeddedDocumentField('Blog')) id_espacioFisico = dbMongo.SequenceField()
class GrupoDeTrabajo(dbMongo.Document): id_grupoDeTrabajo = dbMongo.SequenceField() nombre = dbMongo.StringField() jefeDeGrupo = dbMongo.IntField() integrantes = dbMongo.ListField( dbMongo.IntField()) #ver duplicados en integrantes #stock = dbMongo.ListField(dbMongo.EmbeddedDocumentField('Stock')) grupoGral = dbMongo.BooleanField(default=False)
class Stock(dbMongo.Document): id_productoEnStock = dbMongo.SequenceField() nombre = dbMongo.StringField() #se toma de producto id_producto = dbMongo.IntField() #se toma de producto id_espacioFisico = dbMongo.IntField() id_grupoDeTrabajo = dbMongo.IntField() producto = dbMongo.ListField( dbMongo.EmbeddedDocumentField('ProductosEnStock')) seguimiento = dbMongo.BooleanField()
class GrupoExperimental(dbMongo.Document): id_grupoExperimental = dbMongo.SequenceField() id_experimento = dbMongo.IntField() codigo = dbMongo.StringField() descripcion = dbMongo.StringField() tipo = dbMongo.StringField() fuentesExperimentales = dbMongo.ListField( dbMongo.EmbeddedDocumentField(FuenteExperimentalPropia)) muestras = dbMongo.ListField(dbMongo.EmbeddedDocumentField( MuestraPropia)) #Guardar muestra propias (copia) parent = dbMongo.IntField(default=0) habilitado = dbMongo.BooleanField(default=True)
class Jaula(dbMongo.Document): id_jaula = dbMongo.SequenceField() id_proyecto = dbMongo.IntField(default=0) nombre_proyecto = dbMongo.StringField(default="") id_espacioFisico = dbMongo.IntField() # codigo = dbMongo.StringField() rack = dbMongo.IntField() # estante = dbMongo.IntField() # tipo = dbMongo.StringField() capacidad = dbMongo.IntField() habilitado = dbMongo.BooleanField(default=True) blogs = dbMongo.ListField(dbMongo.EmbeddedDocumentField('Blog'))
class Proyecto(dbMongo.Document): id_proyecto = dbMongo.SequenceField() codigoProyecto = dbMongo.StringField() nombre = dbMongo.StringField() descripcion = dbMongo.StringField() fechaInicio = dbMongo.DateTimeField(default=parser.parse(str(datetime.datetime.utcnow()))) fechaFinal = dbMongo.DateTimeField() finalizado = dbMongo.BooleanField(default=False) montoInicial = dbMongo.DecimalField() conclusion = dbMongo.StringField() participantes = dbMongo.ListField(dbMongo.IntField()) idDirectorProyecto = dbMongo.IntField()
class Contenedor(dbMongo.Document): id_contenedor = dbMongo.SequenceField() codigo = dbMongo.StringField() nombre = dbMongo.StringField() descripcion = dbMongo.StringField() temperatura = dbMongo.StringField() id_proyecto = dbMongo.IntField() #La capacidad la manejan ellos. capacidad = dbMongo.IntField() fichaTecnica = dbMongo.StringField() disponible = dbMongo.BooleanField(default=True) parent = dbMongo.IntField(default=0) id_espacioFisico = dbMongo.IntField()
class FuenteExperimental(dbMongo.Document): id_fuenteExperimental = dbMongo.SequenceField() id_proyecto = dbMongo.IntField() codigo = dbMongo.StringField(default="") codigoGrupoExperimental = dbMongo.StringField( default="") #Se usa como flag para saber si está disponible especie = dbMongo.StringField() sexo = dbMongo.StringField() cepa = dbMongo.StringField() tipo = dbMongo.StringField() descripcion = dbMongo.StringField() id_jaula = dbMongo.IntField() baja = dbMongo.BooleanField(default=False)
class Experimento(dbMongo.Document): id_experimento = dbMongo.SequenceField() id_proyecto = dbMongo.IntField() codigo = dbMongo.StringField() fechaInicio = dbMongo.DateTimeField( default=parser.parse(str(datetime.datetime.utcnow()))) fechaFin = dbMongo.DateTimeField() resultados = dbMongo.StringField(default="") finalizado = dbMongo.BooleanField(default=False) metodologia = dbMongo.StringField() conclusiones = dbMongo.StringField(default="") objetivos = dbMongo.StringField() muestrasExternas = dbMongo.ListField( dbMongo.EmbeddedDocumentField('MuestraExterna')) blogs = dbMongo.ListField(dbMongo.EmbeddedDocumentField('Blog'))
class Herramienta(dbMongo.Document): nombre = dbMongo.StringField() detalle = dbMongo.StringField() id_herramienta = dbMongo.SequenceField() id_espacioFisico = dbMongo.IntField() blogs = dbMongo.ListField(dbMongo.EmbeddedDocumentField('Blog'))