class RatedModelMixin(models.Model): ratings = models.ManyToManyField('ratings.Rating') rating = models.FloatField(_('Rating'), null=True, default=None) class Meta: abstract = True
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='BrainRegion', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, unique=True)), ('abbreviation', models.CharField(max_length=255, unique=True)), ('is_super_group', models.BooleanField(default=False, verbose_name='self')), ('sub_groups', models.ManyToManyField( blank=True, related_name='_brainregion_sub_groups_+', to='inia.BrainRegion')), ], ), migrations.CreateModel( name='Dataset', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('legacy_id', models.IntegerField()), ('name', models.CharField(max_length=255, unique=True)), ('treatment', models.CharField(choices=[('DID', 'DID'), ('NONE', 'NONE'), ('CIA', 'CIA'), ('EOD', 'EOD'), ('LPS', 'LPS')], max_length=255)), ('microarray', models.CharField(max_length=255)), ('model', models.CharField(max_length=255)), ('phenotype', models.CharField(max_length=255)), ('species', models.CharField(choices=[('H**O SAPIENS', 'H**O SAPIENS'), ('MUS MUSCULUS', 'MUS MUSCULUS'), ('RATTUS NORVEGICUS', 'RATTUS NORVEGICUS')], max_length=255)), ('paradigm', models.CharField(max_length=255)), ('paradigm_duration', models.CharField(max_length=255)), ('alcohol', models.BooleanField()), ('brain_region', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='inia.BrainRegion')), ], ), migrations.CreateModel( name='GeneAliases', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('symbol', models.CharField(max_length=255)), ], ), migrations.CreateModel( name='Homologene', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('homologene_group_id', models.IntegerField(db_index=True)), ('gene_symbol', models.CharField(max_length=255)), ('created_at', models.DateField(auto_now=True)), ('updated_at', models.DateField(auto_now=True)), ('species', models.CharField(choices=[('H**O SAPIENS', 'H**O SAPIENS'), ('MUS MUSCULUS', 'MUS MUSCULUS'), ('RATTUS NORVEGICUS', 'RATTUS NORVEGICUS')], max_length=255)), ('brain', models.BooleanField()), ], ), migrations.CreateModel( name='IniaGene', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('legacy_id', models.IntegerField(db_index=True)), ('uniqueID', models.CharField(max_length=255)), ('gene_symbol', models.CharField(blank=True, max_length=255)), ('gene_name', models.CharField(max_length=255)), ('p_value', models.FloatField(blank=True, null=True)), ('fdr', models.FloatField()), ('direction', models.CharField(choices=[('UP', 'UP'), ('DOWN', 'DOWN')], max_length=255)), ('updated', models.DateTimeField(auto_now=True)), ('dataset', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='inia.Dataset')), ('homologenes', models.ManyToManyField(to='inia.Homologene')), ], ), migrations.CreateModel( name='Publication', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('legacy_id', models.IntegerField()), ('authors', models.TextField()), ('title', models.CharField(max_length=255)), ('journal', models.CharField(max_length=255)), ('pages', models.CharField(max_length=15)), ('date_sub', models.DateTimeField()), ('doi', models.CharField(max_length=255)), ('url', models.CharField(max_length=255)), ('display', models.CharField(max_length=255)), ('htmlid', models.CharField(max_length=255)), ], ), migrations.AddField( model_name='iniagene', name='publication', field=models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, to='inia.Publication'), ), migrations.AddField( model_name='genealiases', name='IniaGene', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='inia.IniaGene'), ), migrations.AddField( model_name='dataset', name='publication', field=models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, to='inia.Publication'), ), ]
class Movie(models.Model): title = models.CharField(max_length=255) rate = models.FloatField(null=True) genre = models.ForeignKey(Genre, on_delete=models.CASCADE)
class Product(models.Model): name = models.CharField(max_length=225) price = models.FloatField() def __str__(self): return self.name
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Amenaza', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('ano', models.SmallIntegerField()), ('ot', models.IntegerField()), ('dpto_riesgo', models.CharField(max_length=150)), ('mun_riesgo', models.CharField(max_length=150)), ('tipo_estudio_riesgo', models.TextField(max_length=100)), ('genero', models.TextField(max_length=100)), ('nivel_de_riesgo', models.CharField(max_length=150)), ('sintesis_hechos_gvp', models.TextField()), ('desicion_gvp', models.TextField()), ('dpto_residencia', models.CharField(max_length=150)), ('mun_residencia', models.CharField(max_length=150)), ('grupo_poblacional', models.CharField(max_length=150)), ('observaciones', models.TextField(null=True)), ('sinopsis_informacion', models.TextField(null=True)), ('carac_presun_amenaza', models.TextField(null=True)), ('analisis_info', models.TextField(null=True)), ('sintesis_1', models.TextField(blank=True, null=True)), ('sintesis_2', models.TextField(blank=True, null=True)), ('create_at', models.DateTimeField(auto_now_add=True)), ('update_at', models.DateTimeField(auto_now=True)), ], ), migrations.CreateModel( name='GVP', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('ano', models.SmallIntegerField()), ('ot', models.IntegerField()), ('tipo_estudio_riesgo', models.TextField(max_length=100)), ('matriz_estudio', models.FloatField()), ('nivel_de_riesgo', models.CharField(max_length=150)), ('decision', models.TextField()), ('concepto', models.TextField()), ('sintesis', models.TextField()), ('orden_publico', models.TextField(null=True)), ('dpto_reparto_riesgo', models.CharField(max_length=150)), ('mun_reparto_riesgo', models.CharField(max_length=150)), ('sintesis_hechos_1', models.TextField(blank=True, null=True)), ('sintesis_hechos_2', models.TextField(blank=True, null=True)), ('create_at', models.DateTimeField(auto_now_add=True)), ('update_at', models.DateTimeField(auto_now=True)), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Conso_eur', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('client', models.IntegerField()), ('juillet', models.FloatField()), ('aout', models.FloatField()), ('septembre', models.FloatField()), ('octobre', models.FloatField()), ('novembre', models.FloatField()), ('decembre', models.FloatField()), ('janvier', models.FloatField()), ('fevrier', models.FloatField()), ('mars', models.FloatField()), ('avril', models.FloatField()), ('mai', models.FloatField()), ('juin', models.FloatField()), ('yearly_evolution', models.FloatField()), ], ), migrations.CreateModel( name='Conso_watt', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('client', models.IntegerField()), ('juillet', models.FloatField()), ('aout', models.FloatField()), ('septembre', models.FloatField()), ('octobre', models.FloatField()), ('novembre', models.FloatField()), ('decembre', models.FloatField()), ('janvier', models.FloatField()), ('fevrier', models.FloatField()), ('mars', models.FloatField()), ('avril', models.FloatField()), ('mai', models.FloatField()), ('juin', models.FloatField()), ('yearly_evolution', models.FloatField()), ], ), migrations.CreateModel( name='Usage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('client', models.IntegerField()), ('chauffage', models.FloatField()), ('cuisson', models.FloatField()), ('froid', models.FloatField()), ('chauffeeau', models.FloatField()), ('electromenager', models.FloatField()), ('autres', models.FloatField()), ('total', models.FloatField()), ], ), ]
class ClusterNode(models.Model): """A model that represents the cluster node.""" uuid = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, null=False) sequence = models.IntegerField( editable=False, null=False, help_text='The sequence number of this node within the cluser.', ) name = models.CharField(max_length=256, null=False, help_text='Name of the node') cluster = models.ForeignKey(Cluster, related_name='nodes') hostname = models.CharField(max_length=256, blank=True, null=True) role = models.CharField(max_length=6, choices=NodeRoles.CHOICES, help_text='The role of the node') docker_version = models.CharField(max_length=128, blank=True, null=True) kubelet_version = models.CharField(max_length=10) os_image = models.CharField(max_length=128) kernel_version = models.CharField(max_length=128) schedulable_taints = models.BooleanField(default=False) schedulable_state = models.BooleanField(default=False) memory = models.BigIntegerField() cpu = models.FloatField() n_gpus = models.SmallIntegerField() status = models.CharField(max_length=24, default=NodeLifeCycle.UNKNOWN, choices=NodeLifeCycle.CHOICES) is_current = models.BooleanField(default=True) class Meta: ordering = ['sequence'] unique_together = (('cluster', 'sequence'), ) def __str__(self): return '{}/{}'.format(self.cluster, self.name) def save(self, *args, **kwargs): if self.pk is None: last = ClusterNode.objects.filter(cluster=self.cluster).last() self.sequence = 1 if last: self.sequence = last.sequence + 1 super(ClusterNode, self).save(*args, **kwargs) @classmethod def from_node_item(cls, node): return { 'name': node.metadata.name, 'hostname': nodes.get_hostname(node), 'role': nodes.get_role(node), 'docker_version': nodes.get_docker_version(node), 'kubelet_version': node.status.node_info.kubelet_version, 'os_image': node.status.node_info.os_image, 'kernel_version': node.status.node_info.kernel_version, 'schedulable_taints': nodes.is_schedulable(node), 'schedulable_state': nodes.get_schedulable_state(node), 'memory': nodes.get_memory(node), 'cpu': nodes.get_cpu(node), 'n_gpus': nodes.get_n_gpus(node), 'status': nodes.get_status(node) }
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='Usuario', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), ('dni', models.BigIntegerField(unique=True)), ('nombre', models.CharField(max_length=20)), ('apellido', models.CharField(max_length=20)), ('email', models.EmailField(max_length=254)), ('direccion', models.CharField(max_length=20)), ('telefono', models.IntegerField()), ('long_contra', models.IntegerField()), ('date_joined', models.DateTimeField(auto_now_add=True, verbose_name='date joined')), ('puntos', models.IntegerField()), ('is_active', models.BooleanField(default=True, verbose_name='account is activated')), ('is_admin', models.BooleanField(default=False, verbose_name='staff account')), ('is_premium', models.BooleanField(default=False)), ('fecha_premium', models.DateTimeField(default=datetime.datetime.now, verbose_name='%m/%d/%Y')), ('tipo_usuario', models.IntegerField(default=3)), ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')), ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Anuncio', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('titulo', models.CharField(max_length=20)), ('texto', models.CharField(max_length=10000)), ('fecha_y_hora', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='Ciudad', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nombre', models.CharField(max_length=30)), ('provincia', models.CharField(max_length=25)), ('codigo_postal', models.IntegerField()), ('pais', models.CharField(default='Argentina', max_length=20)), ], ), migrations.CreateModel( name='InformacionDeContacto', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('email', models.EmailField(max_length=254)), ('direccion', models.CharField(max_length=50)), ('telefono1', models.IntegerField(blank=True, null=True)), ('telefono2', models.IntegerField(blank=True, null=True)), ('celular', models.IntegerField(blank=True, null=True)), ('descripcion', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='Insumo', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nombre', models.CharField(max_length=60)), ('precio', models.FloatField()), ('stock', models.IntegerField()), ('sabor', models.BooleanField()), ('categoria', models.CharField(max_length=20)), ], ), migrations.CreateModel( name='Premium', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('descuento', models.IntegerField()), ('cuota', models.FloatField()), ], ), migrations.CreateModel( name='Premium_pago', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('id_user', models.IntegerField()), ('fecha', models.DateTimeField(verbose_name='%m/%d/%Y')), ('nro_tarjeta', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='Puntuar', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('id_viaje', models.IntegerField()), ('id_user', models.IntegerField()), ], ), migrations.CreateModel( name='Ruta', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('origen', models.CharField(max_length=30)), ('destino', models.CharField(max_length=30)), ('nombre', models.CharField(max_length=30)), ('km', models.IntegerField()), ('duracion', models.IntegerField()), ('duracion_en', models.CharField(max_length=10)), ('codigo_origen', models.IntegerField()), ('codigo_destino', models.IntegerField()), ], ), migrations.CreateModel( name='Test', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('pasaje', models.IntegerField()), ('viaje', models.IntegerField()), ('temperatura', models.CharField(max_length=20)), ('olfato', models.BooleanField()), ('gusto', models.BooleanField()), ('contacto', models.BooleanField()), ], ), migrations.CreateModel( name='Vehiculo', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('patente', models.CharField(max_length=10)), ('marca', models.CharField(max_length=50)), ('modelo', models.CharField(max_length=4)), ('capacidad', models.IntegerField(verbose_name='Cantidad de asientos')), ('premium', models.BooleanField()), ], ), migrations.CreateModel( name='Viaje', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('fecha_salida', models.DateTimeField()), ('fecha_llegada', models.DateTimeField(verbose_name='%m/%d/%Y')), ('hora_salida', models.CharField(max_length=20)), ('asientos_total', models.IntegerField(default=0)), ('asientos_disponibles', models.IntegerField(default=0)), ('vendidos', models.IntegerField()), ('precio', models.FloatField()), ('estado', models.CharField(max_length=20)), ('puntaje', models.IntegerField()), ('chofer', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL)), ('ruta', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.ruta')), ('vehiculo', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.vehiculo')), ], ), migrations.CreateModel( name='Ticket', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('cantidad', models.IntegerField(null=True)), ('precio_ticket', models.FloatField(null=True)), ('id_user', models.IntegerField()), ('id_pasaje', models.IntegerField()), ('insumo', models.ForeignKey(null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.insumo')), ('viaje', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.viaje')), ], ), migrations.CreateModel( name='Tarjeta', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('numero', models.CharField(max_length=50)), ('vencimiento', models.CharField(max_length=6)), ('titular', models.CharField(max_length=30)), ('emisor', models.CharField(max_length=20)), ('codigo', models.IntegerField()), ('id_user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Pasaje', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('id_user', models.BigIntegerField()), ('dni', models.BigIntegerField()), ('nombre', models.CharField(max_length=20)), ('apellido', models.CharField(max_length=20)), ('estado', models.CharField(max_length=20)), ('nro_viaje', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.viaje')), ('tarjeta', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.tarjeta')), ], ), migrations.CreateModel( name='Comentario', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('usuario_dni', models.BigIntegerField()), ('usuario_nombre', models.CharField(max_length=50)), ('texto', models.CharField(max_length=10000)), ('fecha_y_hora', models.CharField(max_length=50)), ('viaje', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='+', to='combi19app.viaje')), ], ), ]
class Project(ProjectDefaults, TaggedMixin, models.Model): name = models.CharField(max_length=250, null=False, blank=False, verbose_name=_("name")) slug = models.SlugField(max_length=250, unique=True, null=False, blank=True, verbose_name=_("slug")) description = models.TextField(null=False, blank=False, verbose_name=_("description")) created_date = models.DateTimeField(null=False, blank=False, verbose_name=_("created date"), default=timezone.now) modified_date = models.DateTimeField(null=False, blank=False, verbose_name=_("modified date")) owner = models.ForeignKey(settings.AUTH_USER_MODEL, null=False, blank=False, related_name="owned_projects", verbose_name=_("owner")) members = models.ManyToManyField(settings.AUTH_USER_MODEL, related_name="projects", through="Membership", verbose_name=_("members"), through_fields=("project", "user")) total_milestones = models.IntegerField(null=True, blank=True, verbose_name=_("total of milestones")) total_story_points = models.FloatField(null=True, blank=True, verbose_name=_("total story points")) is_backlog_activated = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("active backlog panel")) is_kanban_activated = models.BooleanField(default=False, null=False, blank=True, verbose_name=_("active kanban panel")) is_wiki_activated = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("active wiki panel")) is_issues_activated = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("active issues panel")) videoconferences = models.CharField(max_length=250, null=True, blank=True, choices=choices.VIDEOCONFERENCES_CHOICES, verbose_name=_("videoconference system")) videoconferences_extra_data = models.CharField(max_length=250, null=True, blank=True, verbose_name=_("videoconference extra data")) creation_template = models.ForeignKey("projects.ProjectTemplate", related_name="projects", null=True, blank=True, default=None, verbose_name=_("creation template")) anon_permissions = TextArrayField(blank=True, null=True, default=[], verbose_name=_("anonymous permissions"), choices=ANON_PERMISSIONS) public_permissions = TextArrayField(blank=True, null=True, default=[], verbose_name=_("user permissions"), choices=MEMBERS_PERMISSIONS) is_private = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("is private")) userstories_csv_uuid = models.CharField(max_length=32, editable=False, null=True, blank=True, default=None, db_index=True) tasks_csv_uuid = models.CharField(max_length=32, editable=False, null=True, blank=True, default=None, db_index=True) issues_csv_uuid = models.CharField(max_length=32, editable=False, null=True, blank=True, default=None, db_index=True) tags_colors = TextArrayField(dimension=2, null=False, blank=True, verbose_name=_("tags colors"), default=[]) _importing = None class Meta: verbose_name = "project" verbose_name_plural = "projects" ordering = ["name"] permissions = ( ("view_project", "Can view project"), ) def __str__(self): return self.name def __repr__(self): return "<Project {0}>".format(self.id) def save(self, *args, **kwargs): if not self._importing or not self.modified_date: self.modified_date = timezone.now() if not self.slug: base_name = "{}-{}".format(self.owner.username, self.name) base_slug = slugify_uniquely(base_name, self.__class__) slug = base_slug for i in arithmetic_progression(): if not type(self).objects.filter(slug=slug).exists() or i > 100: break slug = "{}-{}".format(base_slug, i) self.slug = slug if not self.videoconferences: self.videoconferences_extra_data = None super().save(*args, **kwargs) def get_roles(self): return self.roles.all() def get_users(self): user_model = get_user_model() members = self.memberships.values_list("user", flat=True) return user_model.objects.filter(id__in=list(members)) def update_role_points(self, user_stories=None): RolePoints = apps.get_model("userstories", "RolePoints") Role = apps.get_model("users", "Role") # Get all available roles on this project roles = self.get_roles().filter(computable=True) if roles.count() == 0: return # Iter over all project user stories and create # role point instance for new created roles. if user_stories is None: user_stories = self.user_stories.all() # Get point instance that represent a null/undefined # The current model allows duplicate values. Because # of it, we should get all poins with None as value # and use the first one. # In case of that not exists, creates one for avoid # unexpected errors. none_points = list(self.points.filter(value=None)) if none_points: null_points_value = none_points[0] else: name = slugify_uniquely_for_queryset("?", self.points.all(), slugfield="name") null_points_value = Points.objects.create(name=name, value=None, project=self) for us in user_stories: usroles = Role.objects.filter(role_points__in=us.role_points.all()).distinct() new_roles = roles.exclude(id__in=usroles) new_rolepoints = [RolePoints(role=role, user_story=us, points=null_points_value) for role in new_roles] RolePoints.objects.bulk_create(new_rolepoints) # Now remove rolepoints associated with not existing roles. rp_query = RolePoints.objects.filter(user_story__in=self.user_stories.all()) rp_query = rp_query.exclude(role__id__in=roles.values_list("id", flat=True)) rp_query.delete() @property def project(self): return self def _get_q_watchers(self): return Q(notify_policies__project_id=self.id) & ~Q(notify_policies__notify_level=NotifyLevel.none) def get_watchers(self): return get_user_model().objects.filter(self._get_q_watchers()) def get_related_people(self): related_people_q = Q() ## - Owner if self.owner_id: related_people_q.add(Q(id=self.owner_id), Q.OR) ## - Watchers related_people_q.add(self._get_q_watchers(), Q.OR) ## - Apply filters related_people = get_user_model().objects.filter(related_people_q) ## - Exclude inactive and system users and remove duplicate related_people = related_people.exclude(is_active=False) related_people = related_people.exclude(is_system=True) related_people = related_people.distinct() return related_people def add_watcher(self, user, notify_level=NotifyLevel.all): notify_policy = create_notify_policy_if_not_exists(self, user) set_notify_policy_level(notify_policy, notify_level) def remove_watcher(self, user): notify_policy = get_notify_policy(self, user) set_notify_policy_level_to_ignore(notify_policy) def delete_related_content(self): from taiga.events.apps import connect_events_signals, disconnect_events_signals from taiga.projects.tasks.apps import connect_all_tasks_signals, disconnect_all_tasks_signals from taiga.projects.userstories.apps import connect_all_userstories_signals, disconnect_all_userstories_signals from taiga.projects.issues.apps import connect_all_issues_signals, disconnect_all_issues_signals from taiga.projects.apps import connect_memberships_signals, disconnect_memberships_signals disconnect_events_signals() disconnect_all_issues_signals() disconnect_all_tasks_signals() disconnect_all_userstories_signals() disconnect_memberships_signals() try: self.tasks.all().delete() self.user_stories.all().delete() self.issues.all().delete() self.memberships.all().delete() self.roles.all().delete() finally: connect_events_signals() connect_all_issues_signals() connect_all_tasks_signals() connect_all_userstories_signals() connect_memberships_signals()
class Migration(migrations.Migration): dependencies = [ ('clintwinsponsor', '0007_auto_20200324_1208'), ] operations = [ migrations.CreateModel( name='Categories', fields=[ ('categoryId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('name', models.CharField(max_length=50)), ('value', models.CharField(max_length=50)), ('valueType', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='ClinicalTrial', fields=[ ('trialId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('title', models.CharField(max_length=100)), ('objective', models.CharField(max_length=100)), ('recruitmentStartDate', models.DateField()), ('recruitmentEndDate', models.DateField()), ('enrollmentTarget', models.IntegerField()), ('inclusionCriteria', models.CharField(max_length=30)), ('exclusionCriteria', models.CharField(max_length=30)), ('url', models.URLField()), ('followUp', models.TextField()), ('location', models.CharField(max_length=100)), ('comments', models.TextField()), ('createdTimeStamp', models.DateTimeField(auto_now_add=True)), ], ), migrations.CreateModel( name='ClinicalTrialCriteriaResponse', fields=[ ('responseId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('trialId', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='clintwinsponsor.ClinicalTrial')), ], ), migrations.CreateModel( name='Criteria', fields=[ ('criteriaId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('name', models.CharField(max_length=50)), ('value', models.CharField(max_length=50)), ('valueType', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='Participant', fields=[ ('participantId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('firstName', models.CharField(max_length=50)), ('lastName', models.CharField(max_length=50)), ('gender', models.CharField(choices=[('M', 'Male'), ('F', 'Female'), ('O', 'Other')], max_length=1)), ('weight', models.FloatField()), ('height', models.FloatField()), ('dateBirth', models.DateField()), ('dateRegistered', models.DateField()), ('dateDeregistered', models.DateField()), ('email', models.EmailField(max_length=254)), ('phone', models.IntegerField()), ('location', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='Sponsor', fields=[ ('sponsorId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('OrganizationName', models.CharField(max_length=50)), ('dateRegistered', models.DateField()), ('dateDeregistered', models.DateField()), ('contactPerson', models.CharField(max_length=50)), ('email', models.EmailField(max_length=254)), ('phone', models.IntegerField()), ('location', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='QuestionSchema', fields=[ ('questionId', models.CharField(max_length=30, primary_key=True, serialize=False)), ('type', models.CharField(max_length=50)), ('categories', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='clintwinsponsor.Categories')), ('responseId', models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='clintwinsponsor.ClinicalTrialCriteriaResponse')), ], ), migrations.AddField( model_name='clinicaltrialcriteriaresponse', name='value', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='clintwinsponsor.Criteria'), ), migrations.AddField( model_name='clinicaltrial', name='sponsorId', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='clintwinsponsor.Sponsor'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='dataset', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='data', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('TCO', models.FloatField(blank=True)), ('TVO', models.FloatField(blank=True)), ('NET', models.FloatField(blank=True)), ('PP', models.FloatField(blank=True)), ('ROI', models.FloatField(blank=True)), ('CapEx', models.FloatField(blank=True)), ('OneTime', models.FloatField(blank=True)), ('OnGoing', models.FloatField(blank=True)), ('Revenue', models.FloatField(blank=True)), ('Saving', models.FloatField(blank=True)), ('Avoid', models.FloatField(blank=True)), ('CostGrade', models.FloatField(blank=True)), ('ValueScore', models.FloatField(blank=True)), ('RiskScore', models.FloatField(blank=True)), ('BlendedScore', models.FloatField(blank=True)), ('CalcPriority', models.FloatField()), ('OverridePriority', models.FloatField()), ('dsid', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='main.dataset')), ], ), ]
class WeatherModel(models.Model): date = models.DateField() max_temp = models.FloatField(default=0, null=True, blank=True) mean_temp = models.FloatField(default=0, null=True, blank=True) min_temp = models.FloatField(default=0, null=True, blank=True) max_dew = models.FloatField(default=0, null=True, blank=True) mean_dew = models.FloatField(default=0, null=True, blank=True) min_dew = models.FloatField(default=0, null=True, blank=True) max_humidity = models.FloatField(default=0, null=True, blank=True) mean_humidity = models.FloatField(default=0, null=True, blank=True) min_humidity = models.FloatField(default=0, null=True, blank=True) max_sea_pressure = models.FloatField(default=0, null=True, blank=True) mean_sea_pressure = models.FloatField(default=0, null=True, blank=True) min_sea_pressure = models.FloatField(default=0, null=True, blank=True) max_visibility = models.FloatField(default=0, null=True, blank=True) mean_visibility = models.FloatField(default=0, null=True, blank=True) min_visibility = models.FloatField(default=0, null=True, blank=True)
class Marks(models.Model): subject = models.CharField(max_length=20, choices=SUBJECTS) marks = models.FloatField() student = models.ForeignKey(Student, on_delete=models.CASCADE)
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Book_Author', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(blank=True, max_length=30, null=True)), ('current_user', models.IntegerField()), ], options={ 'verbose_name_plural': 'Book_Author', 'db_table': 'bookauthor', 'managed': True, }, ), migrations.CreateModel( name='Employee', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('employee_name', models.CharField(blank=True, max_length=30, null=True)), ('age', models.IntegerField(blank=True, null=True)), ('email', models.EmailField(blank=True, max_length=30, null=True)), ('profile', models.CharField(choices=[('Senior_Manager', 'Senior_Manager'), ('Junior_Manager', 'Junior_Manager'), ('Clerk', 'Clerk'), ('Guard', 'Guard')], max_length=20)), ('salary', models.IntegerField(blank=True, null=True)), ('address', models.TextField(blank=True, max_length=300, null=True)), ('current_user', models.IntegerField()), ], options={ 'verbose_name_plural': 'Employee', 'db_table': 'employee_record', 'managed': True, }, ), migrations.CreateModel( name='User_Data', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('age', models.IntegerField(blank=True, null=True)), ('username', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'User_Data', 'db_table': 'userdata', 'managed': True, }, ), migrations.CreateModel( name='Book', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('book_title', models.CharField(blank=True, max_length=30, null=True)), ('book_image', models.FileField(blank=True, help_text='Upload only .png, .jpg & .jpeg image extension.', null=True, upload_to='image/book_image')), ('series', models.FloatField(blank=True, null=True)), ('description', models.TextField(max_length=500)), ('pages', models.IntegerField(blank=True, null=True)), ('current_user', models.IntegerField()), ('author_name', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='Book_Mgnt_System.Book_Author')), ], options={ 'verbose_name_plural': 'Book', 'db_table': 'book', 'managed': True, }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='ANNUAL', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('first', models.FloatField(blank=True, max_length=4, null=True)), ('second', models.FloatField(blank=True, max_length=4, null=True)), ('third', models.FloatField(blank=True, max_length=4, null=True)), ('anual', models.FloatField(blank=True, max_length=10, null=True)), ('agr', models.FloatField(blank=True, max_length=10, null=True)), ('grade', models.CharField(blank=True, max_length=5, null=True)), ('anu_posi', models.CharField(blank=True, max_length=5, null=True)), ('term', models.CharField(blank=True, default='None', max_length=15, null=True)), ('model_in', models.CharField(blank=True, default='None', max_length=15, null=True)), ('logged_in', models.ForeignKey(blank=True, help_text='subject_teacher', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('student_name_id', ), }, ), migrations.CreateModel( name='ASUBJECTS', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(blank=True, choices=[ ('English', 'English'), ('Mathematics', 'Mathematics'), ('Civic Education', 'Civic Education'), ('Electrical', 'Electrical'), ('Yoruba', 'Yoruba'), ('Agric. Sc.', 'Agric. Sc.'), ('Garment Making', 'Garment Making'), ('Pre-Vocation', 'Pre-Vocation'), ('Information Technology', 'Information Technology'), ('Biology', 'Biology'), ('Chemistry', 'Chemistry'), ('Physics', 'Physics'), ('Geography', 'Geography'), ('Government', 'Government'), ('Account', 'Account'), ('Arabic', 'Arabic'), ('Islamic Studies', 'Islamic Studies'), ('Litrature', 'Litrature'), ('Commerce', 'Commerce'), ('Economics', 'Economics'), ('Business Studies', 'Business Studies'), ('Basic Science and Technology', 'Basic Science and Technology'), ('Catering', 'Catering'), ('National Value', 'National Value'), ('Furthe Mathematics', 'Furthe Mathematics'), ('others', 'others') ], default='English', max_length=30, null=True)), ('model_in', models.CharField(blank=True, default='subject', max_length=8, null=True)), ], options={ 'ordering': ('name', ), }, ), migrations.CreateModel( name='BTUTOR', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('teacher_name', models.CharField(blank=True, max_length=30, null=True)), ('Class', models.CharField(blank=True, choices=[('JSS 1', 'jss_one'), ('JSS 2', 'jss_two'), ('JSS 3', 'jss_three'), ('SS 1', 'sss_one'), ('SS 2', 'sss_two'), ('SS 3', 'sss_three')], max_length=30, null=True)), ('term', models.CharField(blank=True, choices=[('1st Term', 'first term'), ('2nd Term', 'second term'), ('3rd Term', 'third term')], max_length=30, null=True)), ('model_summary', models.CharField(blank=True, default='tutor', max_length=1000, null=True)), ('model_in', models.CharField(blank=True, default='qsubject', max_length=8, null=True)), ('males', models.IntegerField(blank=True, default='0', null=True)), ('females', models.IntegerField(blank=True, default='0', null=True)), ('cader', models.CharField(blank=True, max_length=1, null=True)), ('session', models.IntegerField(blank=True, default='0', null=True)), ], options={ 'ordering': ('id', ), }, ), migrations.CreateModel( name='CNAME', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('student_name', models.CharField(blank=True, max_length=30, null=True)), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(blank=True, editable=False, null=True)), ('subject_code', models.IntegerField(blank=True, default='0', null=True)), ('model_summary', models.CharField(blank=True, default='student_names', max_length=200, null=True)), ('Class', models.CharField(blank=True, default='None', max_length=200, null=True)), ], options={ 'ordering': ('student_name', ), }, ), migrations.CreateModel( name='Edit_User', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('last_name', models.CharField(blank=True, max_length=20)), ('first_name', models.CharField(blank=True, max_length=20)), ('photo', models.ImageField( blank=True, null=True, upload_to='static/result/', validators=[result.models.Edit_User.validate_image])), ('bio', models.TextField(blank=True)), ('phone', models.CharField(blank=True, max_length=20)), ('city', models.CharField(blank=True, max_length=15)), ('country', models.CharField(blank=True, max_length=10)), ('organization', models.CharField(blank=True, max_length=10)), ('location', models.CharField(blank=True, max_length=30)), ('birth_date', models.DateField(blank=True, help_text='Date format: MM/DD/YYYY', null=True)), ('department', models.CharField(blank=True, choices=[('Sc', 'Sciences'), ('SSc', 'Social Sciences'), ('Art', 'Arts and Humanities')], max_length=30, null=True)), ('account', models.CharField(blank=True, choices=[('Student', 'Student'), ('Staff', 'Staff')], max_length=30, null=True)), ('email_confirmed', models.BooleanField(default=False, help_text='True/False')), ('model_in', models.CharField(blank=True, default='user_profile', max_length=15, null=True)), ('user', models.OneToOneField( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('account', ), }, ), migrations.CreateModel( name='QSUBJECT', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('test', models.FloatField(blank=True, max_length=4, null=True)), ('agn', models.FloatField(blank=True, max_length=4, null=True)), ('atd', models.FloatField(blank=True, max_length=4, null=True)), ('total', models.FloatField(blank=True, max_length=4, null=True)), ('exam', models.FloatField(blank=True, max_length=4, null=True)), ('agr', models.FloatField(blank=True, max_length=4, null=True)), ('grade', models.CharField(blank=True, max_length=5, null=True)), ('posi', models.CharField(blank=True, max_length=5, null=True)), ('gender', models.CharField(blank=True, help_text='sex', max_length=10, null=True)), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(blank=True, editable=False, null=True)), ('cader', models.CharField(blank=True, choices=[('s', 'Senior'), ('j', 'Junior')], max_length=1, null=True)), ('model_in', models.CharField(blank=True, default='qsubject', max_length=8, null=True)), ('annual_scores', models.CharField(blank=True, max_length=100, null=True)), ('Class', models.CharField(blank=True, choices=[('JSS 1', 'jss_one'), ('JSS 2', 'jss_two'), ('JSS 3', 'jss_three'), ('SS 1', 'sss_one'), ('SS 2', 'sss_two'), ('SS 3', 'sss_three')], max_length=30, null=True)), ('logged_in', models.ForeignKey(blank=True, help_text='subject_teacher', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('student_name', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.CNAME')), ('tutor', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='result.BTUTOR')), ], options={ 'ordering': ('student_name_id', ), }, ), migrations.CreateModel( name='QUEST_MODEL', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('test', models.FloatField(blank=True, max_length=4, null=True)), ('agn', models.FloatField(blank=True, max_length=4, null=True)), ('atd', models.FloatField(blank=True, max_length=4, null=True)), ('total', models.FloatField(blank=True, max_length=4, null=True)), ('exam', models.FloatField(blank=True, max_length=4, null=True)), ('agr', models.FloatField(blank=True, max_length=4, null=True)), ('grade', models.CharField(blank=True, max_length=5, null=True)), ('posi', models.CharField(blank=True, max_length=5, null=True)), ('gender', models.CharField(blank=True, help_text='sex', max_length=10, null=True)), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(blank=True, editable=False, null=True)), ('cader', models.CharField(blank=True, max_length=1, null=True)), ('model_in', models.CharField(blank=True, default='qsubject', max_length=8, null=True)), ('logged_in', models.ForeignKey(blank=True, help_text='subject_teacher', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('student_name', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.CNAME')), ('tutor', models.ForeignKey(blank=True, help_text='terms', null=True, on_delete=django.db.models.deletion.CASCADE, to='result.BTUTOR')), ], ), migrations.CreateModel( name='RESULT_GRADE', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('identifier', models.IntegerField(blank=True, default='0', null=True)), ('model_in', models.CharField(blank=True, default='grades', max_length=6, null=True)), ('subject', models.CharField(blank=True, choices=[ ('English', 'English'), ('Mathematics', 'Mathematics'), ('Civic Education', 'Civic Education'), ('Electrical', 'Electrical'), ('Yoruba', 'Yoruba'), ('Agric. Sc.', 'Agric. Sc.'), ('Garment Making', 'Garment Making'), ('Pre-Vocation', 'Pre-Vocation'), ('Information Technology', 'Information Technology'), ('Biology', 'Biology'), ('Chemistry', 'Chemistry'), ('Physics', 'Physics'), ('Geography', 'Geography'), ('Government', 'Government'), ('Account', 'Account'), ('Arabic', 'Arabic'), ('Islamic Studies', 'Islamic Studies'), ('Litrature', 'Litrature'), ('Commerce', 'Commerce'), ('Economics', 'Economics'), ('Business Studies', 'Business Studies'), ('Basic Science and Technology', 'Basic Science and Technology'), ('Catering', 'Catering'), ('National Value', 'National Value'), ('Furthe Mathematics', 'Furthe Mathematics'), ('others', 'others') ], default='English', max_length=30, null=True)), ('grade_A', models.IntegerField(blank=True, default='0', null=True)), ('grade_C', models.IntegerField(blank=True, default='0', null=True)), ('grade_P', models.IntegerField(blank=True, default='0', null=True)), ('grade_F', models.IntegerField(blank=True, default='0', null=True)), ('grade_A1', models.IntegerField(blank=True, default='0', null=True)), ('grade_B2', models.IntegerField(blank=True, default='0', null=True)), ('grade_B3', models.IntegerField(blank=True, default='0', null=True)), ('grade_C4', models.IntegerField(blank=True, default='0', null=True)), ('grade_C5', models.IntegerField(blank=True, default='0', null=True)), ('grade_C6', models.IntegerField(blank=True, default='0', null=True)), ('grade_D7', models.IntegerField(blank=True, default='0', null=True)), ('grade_E8', models.IntegerField(blank=True, default='0', null=True)), ('grade_F9', models.IntegerField(blank=True, default='0', null=True)), ('remark', models.BooleanField(default=False, help_text='True/False')), ], options={ 'ordering': ('subject', ), }, ), migrations.CreateModel( name='TOTAL', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('subject_scores', models.FloatField(blank=True, max_length=9, null=True)), ('subject_pert', models.FloatField(blank=True, max_length=9, null=True)), ('term', models.CharField(blank=True, choices=[('1st Term', 'first term'), ('2nd Term', 'second term'), ('3rd Term', 'third term')], help_text='subject term', max_length=30, null=True)), ('model_in', models.CharField(blank=True, default='total', max_length=6, null=True)), ('logged_in', models.ForeignKey(blank=True, help_text='Logged-in-user', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('subject', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.ASUBJECTS')), ('subject_by', models.ForeignKey(blank=True, help_text='subject_teacher', null=True, on_delete=django.db.models.deletion.CASCADE, to='result.BTUTOR')), ], options={ 'ordering': ('term', ), }, ), migrations.AddField( model_name='btutor', name='graded', field=models.ForeignKey( blank=True, help_text='Grade Counts', null=True, on_delete=django.db.models.deletion.CASCADE, to='result.RESULT_GRADE'), ), migrations.AddField( model_name='btutor', name='subject', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.ASUBJECTS'), ), migrations.AddField( model_name='btutor', name='user', field=models.ForeignKey( blank=True, help_text='loggon-account:move account here', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='annual', name='student_name', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.CNAME'), ), migrations.AddField( model_name='annual', name='subject', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='result.ASUBJECTS'), ), migrations.AddField( model_name='annual', name='subject_by', field=models.ForeignKey( blank=True, help_text='subject_teacher', null=True, on_delete=django.db.models.deletion.CASCADE, to='result.BTUTOR'), ), ]
class ValueSensor(models.Model): """класс предназначен для связи модели структуры Джанго и модуля сбора данных Attributes ============ - sensor - FK - внешний ключ к сущности Sensors - name - str - название переменной - name_connection - str - название соединения - table_name - str - название иаблицы с данными - up_level_alarm - float - верхний уроыень аварии - down_level_alarm - float - нижний уровень аварии - up_level - float - верхний придел - down_level - float - нижниц придел =================== Methods ============ - get_last_shift - возвращает list с данными за текущую смену (без усреднения) - get_last_day - возвращает list с данными за текущий день (без усреднения) - get_last_hour - возвращает list с данными за текущий час (без усреднения) - _time_conversion - метод преобразования формата времени (protected) - get_period - метод получения данных в промежутке start=<start_time> до end=<end_period> =============== """ sensor = models.ForeignKey(Sensors, on_delete=models.CASCADE) name = models.CharField(max_length=255, default='no name') name_connection = models.CharField(max_length=255, default='no name connection') table_name = models.CharField(max_length=255, default='no table name') unit = models.CharField(max_length=255, default='') up_level_alarm = models.FloatField(default=0.00) down_level_alarm = models.FloatField(default=0.00) up_level = models.FloatField(default=0.00) down_level = models.FloatField(default=0.00) rate_change = models.FloatField(default=0.00) def __str__(self): return self.name def save(self, *args, **kwargs): if self._check_table_name(str(self.table_name)): super(ValueSensor, self).save(*args, **kwargs) else: raise ValidationError( _('Table with this name = "%s" does not exist'), params=(self.table_name, ), code='invalid') def get_last_shift(self) -> object: """метод возвращает данные за текущую смену""" now = datetime.datetime.now().time().strftime('%H:%M:%S') now_t = datetime.datetime.now() shifts = self.sensor.parent.parent.shift_set.filter(start__lte=now, end__gt=now) if not shifts: return self.get_last_day() start = datetime.datetime(now_t.year, now_t.month, now_t.day, shifts[0].start.hour, shifts[0].start.minute, 0) end = datetime.datetime(now_t.year, now_t.month, now_t.day, shifts[0].end.hour, shifts[0].end.minute, 0) return self._time_conversion(start=start, end=end) def get_last_day(self) -> object: """метод возвращает данные за последний день""" now = datetime.datetime.now() end = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, 0) start = now - datetime.timedelta(days=1) return self._time_conversion(start=start, end=now) def get_last_week(self) -> object: """метод возвращает данные за последнию неделю""" now = datetime.datetime.now() end = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, 0) start = now - datetime.timedelta(days=7) return self._time_conversion(start=start, end=now) def get_last_month(self) -> object: """метод возвращает данные за последний месяц""" now = datetime.datetime.now() end = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, 0) start = now - datetime.timedelta(days=30) return self._time_conversion(start=start, end=now) def get_last_hour(self) -> object: """возвращает значения за последний час""" now = datetime.datetime.now() end = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, 0) start = end - datetime.timedelta(hours=1) return self._time_conversion(start=start, end=end) def _time_conversion(self, start, end) -> object: """ преобразование времени к формату :param datetime start: начало периода :param datetime end: конец периода """ f = '%Y-%m-%d %H:%M:%S' start = start.strftime(f) end = end.strftime(f) return self.get_period(start=start, end=end) def get_period(self, start, end) -> list: """метод возвращает данные за период start - end :param datetime start: начало периода :param datetime end: конец периода :return: list """ f = '%Y-%m-%d %H:%M:%S' if (((datetime.datetime.strptime(end, f) - datetime.datetime.strptime(start, f))) < datetime.timedelta(hours=6)): curs = connection.cursor() curs.execute( f"""SELECT (now_time +('180 minute'::interval))::timestamp as now_time, key, value FROM {str(self.table_name)} WHERE now_time >= '{ str(datetime.datetime.fromisoformat(start)-datetime.timedelta(hours=3))}' AND now_time<'{datetime.datetime.fromisoformat(end)-datetime.timedelta(hours=3)}';""" ) query = curs.fetchall() fieldnames = [name[0] for name in curs.description] result = [] for row in query: rowset = [] for field in zip(fieldnames, row): rowset.append(field) result.append(dict(rowset)) return result else: a = self._generate_period_min(start, end) # return self._get_mode_by_periods(var=a['var'], periods=a['periods']) return self.get_mode_by_periods_interval(start=start, end=end, interval=a['var']) def _generate_period_min(self, start, end) -> dict: """ пересчитывает время в интервалы для метода моды и среднего исходя из заданного количество точек points :param real start: начало периода :param real end: конец периода :return: dict {'var':real,'periods':real} """ f = '%Y-%m-%d %H:%M:%S' points = 200 # количество точек minutes = (datetime.datetime.strptime(end, f) - datetime.datetime.strptime(start, f)).total_seconds() / 60 interval = minutes / points return {'var': interval, 'periods': minutes} def _check_table_name(self, name): """проверка на наличие таблицы с именем <name> :param str name: название таблицы """ engine = connection.vendor curs = connection.cursor() if (engine == 'sqlite'): curs.execute( "SELECT name FROM 'sqlite_master' WHERE type ='table' AND name=%s;", [str(name)]) elif (engine == 'postgresql'): try: curs.execute( "SELECT table_name FROM " " information_schema.tables WHERE table_schema = 'public' " " AND table_name =%s;", [str(name)]) except: return False else: return False result = curs.fetchall() if len(result) == 0: return False else: return True def _get_average_by_periods(self, var=5, periods=100) -> list or bool: """ Возвращет объект с усреднеными значениями из периода periods (в минутах) разбитый по частям на интервалы var минут :param int var: шаг в минутах :param int periods: интервал в минутах :return: list [{'start_time':datetime,'end_time':datetime,'value':real}] :raises ValueError: Вернет False """ curs = connection.cursor() sql = "with period_t as (" \ "SELECT" \ "(SELECT max(now_time)::timestamp from " + str(self.table_name) + ")+((n-" + str( var) + ") || 'minutes')::interval start_time," \ "(SELECT max(now_time)::timestamp from " + str( self.table_name) + ")+(n || 'minutes')::interval end_time " \ "from generate_series(0,-" + str(periods) + ",-" + str(var) + ") n" \ ")" \ "SELECT a.start_time, a.end_time, AVG(b.value) as value from " + str( self.table_name) + " b right join" \ "period_t a ON b.now_time>=a.start_time AND b.now_time<a.end_time GROUP BY a.start_time, a.end_time" \ "ORDER BY a.start_time desc" try: curs.execute(sql) except: return False query = curs.fetchall() fieldnames = [name[0] for name in curs.description] result = [] for row in query: rowset = [] for field in zip(fieldnames, row): rowset.append(field) result.append(dict(rowset)) return result def _get_mode_by_periods(self, var=5, periods=100) -> list or bool: """ Возвращет объект со значениями по МОДЫ из периода periods (в минутах) разбитый по частям на интервалы var минут :param int var: шаг в минутах :param int periods: интервал в минутах :return: list [{'start_time':datetime,'end_time':datetime,'modevar':real}] :raises ValueError: Вернет False """ curs = connection.cursor() sql = "with period_t as (" \ "SELECT" \ "(SELECT max(now_time)::timestamp from " + str(self.table_name) + ")+((n-" + str( var) + ") || 'minutes')::interval start_time," \ "(SELECT max(now_time)::timestamp from " + str( self.table_name) + ")+(n || 'minutes')::interval end_time " \ "from generate_series(0,-" + str(periods) + ",-" + str(var) + ") n" \ ")" \ "SELECT a.start_time, a.end_time, (SELECT mode() WITHIN GROUP (ORDER BY value) as modevar" \ " FROM " + str(self.table_name) + \ " r WHERE r.now_time>=a.start_time and r.now_time<a.end_time) as value from " + str( self.table_name) + " b right join " \ "period_t a ON b.now_time>=a.start_time AND b.now_time<a.end_time GROUP BY a.start_time, a.end_time" \ " ORDER BY a.start_time desc" try: curs.execute(sql) except Exception as a: return False query = curs.fetchall() fieldnames = [name[0] for name in curs.description] result = [] for row in query: rowset = [] for field in zip(fieldnames, row): rowset.append(field) result.append(dict(rowset)) return result def get_mode_by_periods_interval(self, start, end, interval=20) -> list or bool: curs = connection.cursor() sql = "with period_t as (SELECT n as ti from generate_series('" + str(start) + "'::timestamp,'" + str( end) + "'::timestamp,'" + str(interval) + " minute'::interval) n)" \ "SELECT ti as now_time, COALESCE((SELECT mode() WITHIN GROUP (ORDER BY value) as modevar" \ " FROM " + str(self.table_name) + \ " r WHERE (r.now_time +('180 minute'::interval))::timestamp>=ti and (r.now_time +('180 minute'::interval))::timestamp<(ti+('"+str(interval)+ \ " minutes'::interval))),NULL) as value from " \ + str(self.table_name) + " b right join " \ "period_t a ON (b.now_time +('180 minute'::interval))::timestamp>=ti AND (b.now_time +('180 minute'::interval))::timestamp<(ti+('"+str(interval)+" minutes'::interval)) GROUP BY ti" \ " ORDER BY ti desc" try: curs.execute(sql) except Exception as a: return a.__str__() query = curs.fetchall() fieldnames = [name[0] for name in curs.description] result = [] for row in query: rowset = [] for field in zip(fieldnames, row): rowset.append(field) result.append(dict(rowset)) if (result[0]['value'] == None): result[0]['value'] = 0 return result
class Migration(migrations.Migration): initial = True dependencies = [ ('delivery_user_profile', '0001_initial'), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('description', models.TextField()), ('image', models.URLField()), ('icon', models.URLField()), ], ), migrations.CreateModel( name='Country', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('description', models.TextField()), ('prefix', models.CharField(max_length=8)), ('flag', models.URLField()), ], ), migrations.CreateModel( name='Item', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('description', models.TextField()), ('image', models.URLField()), ('category', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='item_category', to='menu.Category')), ], ), migrations.CreateModel( name='Review', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('rating', models.FloatField()), ('review_text', models.TextField()), ('timestamp_created', models.DateTimeField(auto_now_add=True)), ('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='review_item', to='menu.Item')), ('profile', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='review_profile', to='delivery_user_profile.Profile')), ], ), migrations.CreateModel( name='ItemVariant', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('description', models.TextField()), ('price', models.FloatField()), ('image', models.URLField()), ('country', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='itemvariant_country', to='menu.Country')), ('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='itemvariant_item', to='menu.Item')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='LV_line_section', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('clamped', models.IntegerField()), ('extruded', models.IntegerField()), ('snippet', models.CharField(max_length=254)), ('popupinfo', models.CharField(max_length=254)), ('shape_leng', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiLineStringField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'LV_line_section', }, ), migrations.CreateModel( name='LV_pole', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('popupinfo', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'LV_pole', }, ), migrations.CreateModel( name='LV_polest', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'LV_polest', }, ), migrations.CreateModel( name='MV_line_section', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('clamped', models.IntegerField()), ('extruded', models.IntegerField()), ('snippet', models.CharField(max_length=254)), ('popupinfo', models.CharField(max_length=254)), ('shape_leng', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiLineStringField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'MV_line_section', }, ), migrations.CreateModel( name='MV_pole', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('popupinfo', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'MV_pole', }, ), migrations.CreateModel( name='Primary_substation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('total_rev', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'Primary_substation', }, ), migrations.CreateModel( name='Secondary_substation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('revenue', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'Secondary_substation', }, ), migrations.CreateModel( name='Urban_plot', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('clamped', models.IntegerField()), ('extruded', models.IntegerField()), ('snippet', models.CharField(max_length=254)), ('popupinfo', models.CharField(max_length=254)), ('shape_leng', models.FloatField()), ('shape_area', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'Urban_plot', }, ), migrations.CreateModel( name='Urban_plot_point', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('oid_field', models.IntegerField()), ('name', models.CharField(max_length=254)), ('folderpath', models.CharField(max_length=254)), ('symbolid', models.IntegerField()), ('altmode', models.IntegerField()), ('base', models.FloatField()), ('snippet', models.CharField(max_length=254)), ('haslabel', models.IntegerField()), ('labelid', models.IntegerField()), ('daily_kwh', models.FloatField()), ('f_tariff', models.FloatField()), ('tariff_kwh', models.FloatField()), ('d_revenue', models.FloatField()), ('total_rev', models.FloatField()), ('geom', django.contrib.gis.db.models.fields.MultiPointField(srid=4326)), ('mpoly', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)), ], options={ 'verbose_name_plural': 'Urban_plot_point', }, ), ]
class ExternalCollection(models.Model): # # CHOICE DICTIONARIES # TYPE_OF_IDENTIFIER_CHOICES = [(0, '(a) Counterparty'), (1, '(b) Loan')] LEGAL_entity_idENTIFIER_CHOICES = [(0, 'REF: ISO 17442 LEI')] # # FIELDS # external_collection_identifier = models.TextField(unique=True) balance_amount_sent_to_agent = models.FloatField( blank=True, null=True, help_text= 'The Balance that was sent to the External Debt Collection Agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Balance_Amount_Sent_to_Agent">Documentation</a>' ) cash_recoveries = models.FloatField( blank=True, null=True, help_text= 'Total cash recoveries collected by the external collection agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Cash_Recoveries">Documentation</a>' ) costs_accrued = models.FloatField( blank=True, null=True, help_text= 'Total amount of costs accrued for external collection as at the NPL Portfolio Cut-Off Date. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Costs_Accrued">Documentation</a>' ) date_returned_from_agent = models.DateField( blank=True, null=True, help_text= 'Date that the Loan was received back from the external collection agent, i.e. when the agent stopped recovery efforts and passed the Loan back to the Institution. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Date_Returned_From_Agent">Documentation</a>' ) date_sent_to_agent = models.DateField( blank=True, null=True, help_text= 'Date that the Loan was sent to the external collection agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Date_Sent_to_Agent">Documentation</a>' ) institutions_internal_identifier_for_the_loan_or_counterparty = models.TextField( blank=True, null=True, help_text= 'Institutions internal identifier for the Counterparty or the Loan.<a class ="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Institutions_internal_identifier_for_the_Loan_or_Counterparty" >Documentation</a>' ) instrument_identifier = models.TextField( blank=True, null=True, help_text= 'Institutions internal identifier for the Loan part. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Instrument_Identifier">Documentation</a>' ) legal_entity_identifier = models.IntegerField( blank=True, null=True, choices=LEGAL_entity_idENTIFIER_CHOICES, help_text= 'Global standard 20-character corporate identifier of the external collection agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Legal_entity_identifier">Documentation</a>' ) name_of_external_debt_collection_agent = models.TextField( blank=True, null=True, help_text= 'Name of the external collection agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Name_of_External_Debt_Collection_Agent">Documentation</a>' ) principal_forgiveness = models.FloatField( blank=True, null=True, help_text= 'Amount of the principal that was forgiven by the external collection agent as part of recovery negotiations. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Principal_Forgiveness">Documentation</a>' ) quantity_returned_from_agent = models.FloatField( blank=True, null=True, help_text= 'Amount of times the at the Loan was received back from the external debt collection agent. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Quantity_Returned_From_Agent">Documentation</a>' ) registration_number = models.TextField( blank=True, null=True, help_text= 'Company registration number of the external collection agent according to the registration with the country specific registration office. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Registration_number">Documentation</a>' ) repayment_plan = models.NullBooleanField( blank=True, null=True, help_text= 'Indicator as to whether a repayment plan has been agreed with the external collection agency. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Repayment_Plan">Documentation</a>' ) repayment_plan_description = models.TextField( blank=True, null=True, help_text= 'Description of the repayment plan which has been agreed with the external collection agency. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Repayment_Plan_Description">Documentation</a>' ) type_of_identifier = models.IntegerField( blank=True, null=True, choices=TYPE_OF_IDENTIFIER_CHOICES, help_text= 'Indicator as to whether the external collections have been prepares on a Counterparty level or on a Loan Level. <a class="risk_manual_url" href="https://www.openriskmanual.org/wiki/EBA_NPL.External Collection.Type_of_Identifier">Documentation</a>' ) # Bookkeeping fields creation_date = models.DateTimeField(auto_now_add=True) last_change_date = models.DateTimeField(auto_now=True) def __str__(self): return self.external_collection_identifier def get_absolute_url(self): return reverse('eba_portfolio:eba_external_collection_edit', kwargs={'pk': self.pk}) class Meta: verbose_name = "External Collection" verbose_name_plural = "External Collections"
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Dataset', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('author', models.CharField(max_length=255)), ('createdAt', models.DateTimeField()), ('dataset_meta_id', models.BigIntegerField(blank=True, null=True)), ('description', models.CharField(blank=True, max_length=500, null=True)), ('equipment_id', models.BigIntegerField(blank=True, null=True)), ('name', models.CharField(max_length=255)), ('state', models.CharField(max_length=255)), ('type', models.CharField(max_length=255)), ('updatedAt', models.DateTimeField()), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'dataset', 'managed': False, }, ), migrations.CreateModel( name='DatasetMeta', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('detail', models.CharField(blank=True, max_length=255, null=True)), ('goal', models.CharField(blank=True, max_length=255, null=True)), ('name', models.CharField(max_length=255)), ('operators', models.CharField(blank=True, max_length=255, null=True)), ('paper', models.CharField(blank=True, max_length=255, null=True)), ('position', models.CharField(blank=True, max_length=255, null=True)), ('sample', models.CharField(blank=True, max_length=255, null=True)), ('signal_type', models.CharField(blank=True, max_length=255, null=True)), ('stimulus', models.CharField(blank=True, max_length=255, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'dataset_meta', 'managed': False, }, ), migrations.CreateModel( name='Environment', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('humidity', models.FloatField(blank=True, null=True)), ('light', models.FloatField(blank=True, null=True)), ('name', models.CharField(max_length=255)), ('pressure', models.FloatField(blank=True, null=True)), ('temperature', models.FloatField(blank=True, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'environment', 'managed': False, }, ), migrations.CreateModel( name='Equipment', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('description', models.CharField(blank=True, max_length=255, null=True)), ('name', models.CharField(max_length=255)), ('provider', models.CharField(blank=True, max_length=255, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'equipment', 'managed': False, }, ), migrations.CreateModel( name='IecMeta', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('channel_num', models.SmallIntegerField(blank=True, null=True)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('duration', models.FloatField(blank=True, null=True)), ('name', models.CharField(max_length=255)), ('rate', models.IntegerField(blank=True, null=True)), ('record_position', models.CharField(blank=True, max_length=255, null=True)), ('sampling_rate', models.BigIntegerField(blank=True, null=True)), ('signal_type', models.CharField(blank=True, max_length=255, null=True)), ('start_at', models.DateTimeField(blank=True, null=True)), ('stimulate_detail', models.CharField(blank=True, max_length=255, null=True)), ('stimulate_material', models.CharField(blank=True, max_length=255, null=True)), ('stimulate_type', models.CharField(blank=True, max_length=255, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'iec_meta', 'managed': False, }, ), migrations.CreateModel( name='ImageMeta', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('duration', models.FloatField(blank=True, null=True)), ('format', models.CharField(blank=True, max_length=255, null=True)), ('frame_rate', models.IntegerField(blank=True, null=True)), ('name', models.CharField(max_length=255)), ('record_area', models.CharField(blank=True, max_length=255, null=True)), ('record_position', models.CharField(blank=True, max_length=255, null=True)), ('signal_type', models.CharField(blank=True, max_length=255, null=True)), ('start_at', models.DateTimeField(blank=True, null=True)), ('stimulate_detail', models.CharField(blank=True, max_length=255, null=True)), ('stimulate_material', models.CharField(blank=True, max_length=255, null=True)), ('stimulate_type', models.CharField(blank=True, max_length=255, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'image_meta', 'managed': False, }, ), migrations.CreateModel( name='Sample', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('growth', models.CharField(blank=True, max_length=255, null=True)), ('name', models.CharField(max_length=255)), ('period', models.CharField(blank=True, max_length=255, null=True)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ], options={ 'db_table': 'sample', 'managed': False, }, ), migrations.CreateModel( name='Software', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('createdAt', models.DateTimeField(blank=True, null=True)), ('name', models.CharField(max_length=255)), ('updatedAt', models.DateTimeField(blank=True, null=True)), ('userId', models.BigIntegerField()), ('version', models.CharField(blank=True, max_length=255, null=True)), ], options={ 'db_table': 'software', 'managed': False, }, ), migrations.CreateModel( name='User', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('address', models.CharField(max_length=255)), ('createdAt', models.DateTimeField()), ('email', models.CharField(max_length=255, unique=True)), ('password', models.CharField(max_length=255)), ('sex', models.CharField(max_length=255)), ('updatedAt', models.DateTimeField()), ('username', models.CharField(max_length=255, unique=True)), ], options={ 'db_table': 'user', 'managed': False, }, ), ]
class Migration(migrations.Migration): dependencies = [ ('geography', '0007_new_countries_remove_regions'), ('products', '0009_auto_20161103_1038'), ('markets', '0048_auto_20161104_1149'), ('reversion', '0001_squashed_0004_auto_20160611_1202'), ] operations = [ migrations.CreateModel( name='PublishedMarket', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('last_modified', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=200)), ('slug', models.SlugField(max_length=200)), ('description', models.TextField(verbose_name='e-Marketplace Description')), ('web_address', models.URLField()), ('signup_address', models.URLField(blank=True, null=True, verbose_name='Explore the marketplace')), ('web_traffic', models.FloatField(blank=True, default=0, help_text='in millions', null=True, verbose_name='Number of registered users')), ('customer_support_hours', models.CharField(blank=True, max_length=150, null=True)), ('seller_support_hours', models.CharField(blank=True, max_length=150, null=True)), ('customer_demographics', ckeditor.fields.RichTextField(blank=True, null=True)), ('marketing_merchandising', ckeditor.fields.RichTextField(blank=True, null=True)), ('product_details_upload_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('payment_terms_days', models.IntegerField( blank=True, help_text='in days', null=True, verbose_name='Payment terms - sale to payment duration')), ('logistics_structure_notes', models.CharField(blank=True, max_length=200, null=True, verbose_name='notes')), ('commission_lower', models.FloatField(blank=True, null=True)), ('commission_upper', models.FloatField(blank=True, null=True)), ('commission_notes', models.CharField(blank=True, max_length=255, null=True)), ('ukti_terms', ckeditor.fields.RichTextField( blank=True, null=True, verbose_name= 'Department of International Trade special terms')), ('local_bank_account_needed', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='A local bank account')), ('local_bank_account_needed_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('local_incorporation_needed', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='A local company')), ('local_incorporation_needed_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('exclusivity_required', models.BooleanField( choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='Product exclusivity required')), ('exclusivity_required_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('translation_verbal', models.BooleanField( choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='To negotiate with the marketplace')), ('translation_verbal_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('translation_application_process', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='To apply to join')), ('translation_application_process_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('translation_product_content', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='For product content')), ('translation_product_content_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('translation_seller_support', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='For seller support')), ('translation_seller_support_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('payment_terms_rate_fixed', models.BooleanField( choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='Payment Terms - Exchange rate fixed')), ('payment_terms_rate_fixed_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('registration_fees', models.FloatField(default=0, verbose_name='One off registration fee')), ('registration_fees_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('fee_per_listing', models.BooleanField(choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='Fee per Listing')), ('fee_per_listing_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('membership_fees', models.FloatField(default=0, verbose_name='Membership fees')), ('membership_fees_frequency', models.CharField(blank=True, choices=[('D', 'daily'), ('W', 'weekly'), ('M', 'monthly'), ('Q', 'quarterly'), ('Y', 'annually')], max_length=1, null=True)), ('deposit', models.FloatField(default=0)), ('deposit_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('shipping_tracking_required', models.BooleanField( choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='Shipping Tracking Required')), ('shipping_tracking_required_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('local_return_address_required', models.BooleanField( choices=[(True, 'Yes'), (False, 'No')], default=False, verbose_name='A local address to handle returns?')), ('local_return_address_required_notes', models.CharField(blank=True, max_length=255, null=True, verbose_name='Notes')), ('dit_advisor_tip', models.TextField( blank=True, null=True, verbose_name= 'Department of International Trade advisor tip')), ('countries_served', models.ManyToManyField(blank=True, to='geography.Country', verbose_name='Operating Countries')), ('currency_of_payments', models.ManyToManyField( blank=True, to='markets.Currency', verbose_name='Payment terms - Currency of payments')), ('customer_support_channels', models.ManyToManyField( blank=True, related_name='markets_publishedmarket_customer_related', to='markets.SupportChannel')), ('deposit_currency', models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='markets_publishedmarket_deposit_currency', to='markets.Currency')), ('famous_brands_on_marketplace', models.ManyToManyField(blank=True, to='markets.Brand')), ('logistics_structure', models.ManyToManyField(blank=True, to='markets.LogisticsModel')), ('logo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='markets.Logo')), ('membership_fees_currency', models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name= 'markets_publishedmarket_membership_fees_currency', to='markets.Currency')), ('product_categories', models.ManyToManyField(blank=True, to='products.Category')), ('product_details_upload', models.ManyToManyField( blank=True, to='markets.UploadMethod', verbose_name='Upload product details via')), ('product_type', models.ManyToManyField(blank=True, to='products.Type', verbose_name='Product Positioning')), ('prohibited_items', models.ManyToManyField(blank=True, to='products.ProhibitedItem')), ('registration_fees_currency', models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name= 'markets_publishedmarket_registration_fees_currency', to='markets.Currency')), ('seller_model', models.ManyToManyField(blank=True, to='markets.SellerModel')), ('seller_support_channels', models.ManyToManyField( blank=True, related_name='markets_publishedmarket_seller_related', to='markets.SupportChannel')), ], options={ 'abstract': False, 'ordering': ('-name', ), }, ), migrations.DeleteModel(name='MarketForSignOff', ), migrations.AlterModelOptions( name='market', options={'permissions': (('can_publish', 'Can publish Market'), )}, ), migrations.AddField( model_name='market', name='live_version', field=models.IntegerField(null=True), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='AvatarImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200)), ('pic', models.ImageField(upload_to='main/static/main/avatar_img')), ], ), migrations.CreateModel( name='Categories', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(help_text='Enter a lot category', max_length=200)), ], ), migrations.CreateModel( name='Image', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=200)), ('pic', models.ImageField(upload_to='main/static/main/lots_img')), ], ), migrations.CreateModel( name='Regions', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(help_text='Enter a lot region', max_length=200)), ], ), migrations.CreateModel( name='SOBE_Users', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('balance', models.IntegerField()), ('account', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('avatar_image', models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.avatarimage')), ], ), migrations.CreateModel( name='Sellers', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='main.sobe_users')), ], ), migrations.CreateModel( name='Lots', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(help_text='Enter lot name', max_length=200)), ('description', models.TextField(blank=True, help_text='Enter lot description', max_length=1000)), ('count', models.PositiveIntegerField(help_text='Enter lot count')), ('price', models.FloatField(blank=True, help_text='Enter lot price')), ('date', models.DateField(blank=True, null=True)), ('category', models.ManyToManyField(help_text='Enter lot category', to='main.Categories')), ('image', models.OneToOneField(help_text='Enter lot image', null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.image')), ('region', models.ManyToManyField(help_text='Enter lot region', to='main.Regions')), ('seller', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.sellers')), ], ), migrations.CreateModel( name='Dealings', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField(blank=True, null=True)), ('price', models.FloatField(blank=True)), ('lot', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.lots')), ('seller', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.sellers')), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='main.sobe_users')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ BtreeGinExtension(), migrations.CreateModel( name='Category', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('name', models.TextField(db_index=True)), ('level', models.IntegerField(default=0)), ('order', models.IntegerField(default=0)), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('parent', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.category')), ], options={ 'ordering': ['created'], }, ), migrations.CreateModel( name='Currency', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('key', models.CharField(max_length=32, unique=True)), ('key_digit', models.CharField(default=None, max_length=32, null=True)), ('name', models.TextField(db_index=True, default=None, null=True)), ('html', models.TextField(db_index=True, default=None, null=True)), ('full_name', models.TextField(db_index=True, default=None, null=True)), ('quantity', models.FloatField(default=1.0)), ('rate', models.FloatField(default=1.0)), ], options={ 'ordering': ['key'], }, ), migrations.CreateModel( name='Image', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('file_name', models.TextField(default=None, null=True)), ('created', models.DateTimeField(db_index=True, default=django.utils.timezone.now)), ], options={ 'ordering': ['-created'], }, ), migrations.CreateModel( name='Parameter', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('name', models.TextField(db_index=True, default=None, null=True)), ('description', models.TextField(default=None, null=True)), ('order', models.IntegerField(default=0)), ], options={ 'ordering': ['order'], }, ), migrations.CreateModel( name='ParameterGroup', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('name', models.TextField(db_index=True, default=None, null=True)), ('order', models.IntegerField(default=0)), ], options={ 'ordering': ['order'], }, ), migrations.CreateModel( name='Price', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('value', models.DecimalField(decimal_places=2, max_digits=18)), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('currency', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.currency')), ], options={ 'ordering': ['created'], }, ), migrations.CreateModel( name='Product', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('part_number', models.TextField(db_index=True, default=None, null=True)), ('names_search', models.TextField(db_index=True, default=None, null=True)), ('parameters_search', models.TextField(db_index=True, default=None, null=True)), ('slug', models.TextField(db_index=True, default=None, null=True)), ('name', models.TextField(db_index=True, default=None, null=True)), ('short_name', models.TextField(db_index=True, default=None, null=True)), ('name_rus', models.TextField(db_index=True, default=None, null=True)), ('name_other', models.TextField(db_index=True, default=None, null=True)), ('description', models.TextField(default=None, null=True)), ('warranty', models.TextField(default=None, null=True)), ('ean_128', models.TextField(db_index=True, default=None, null=True)), ('upc', models.TextField(db_index=True, default=None, null=True)), ('pnc', models.TextField(db_index=True, default=None, null=True)), ('hs_code', models.TextField(db_index=True, default=None, null=True)), ('gtin', models.TextField(db_index=True, default=None, null=True)), ('tnved', models.TextField(db_index=True, default=None, null=True)), ('traceable', models.BooleanField(db_index=True, default=None, null=True)), ('quantity', models.IntegerField(default=None, null=True)), ('quantity_great_than', models.BooleanField(db_index=True, default=None, null=True)), ('weight', models.DecimalField(decimal_places=9, default=None, max_digits=18, null=True)), ('width', models.DecimalField(decimal_places=9, default=None, max_digits=18, null=True)), ('height', models.DecimalField(decimal_places=9, default=None, max_digits=18, null=True)), ('depth', models.DecimalField(decimal_places=9, default=None, max_digits=18, null=True)), ('volume', models.DecimalField(decimal_places=9, default=None, max_digits=18, null=True)), ('multiplicity', models.IntegerField(default=None, null=True)), ('content', models.TextField(default=None, null=True)), ('content_loaded', models.DateTimeField(default=None, null=True)), ('images_loaded', models.DateTimeField(default=None, null=True)), ('created', models.DateTimeField(default=django.utils.timezone.now)), ('updated', models.DateTimeField(default=None, null=True)), ('edited', models.DateTimeField(default=None, null=True)), ('category', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.category')), ('price', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.price')), ], options={ 'ordering': ['-created'], }, ), migrations.CreateModel( name='Unit', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('name', models.TextField(db_index=True, default=None, null=True)), ('full_name', models.TextField(db_index=True, default=None, null=True)), ], options={ 'ordering': ['name'], }, ), migrations.CreateModel( name='Vendor', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('name', models.TextField(db_index=True)), ('slug', models.TextField(db_index=True, default=None, null=True)), ], options={ 'ordering': ['name'], }, ), migrations.CreateModel( name='ProductImage', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('source_url', models.TextField(db_index=True, default=None, null=True)), ('file_name', models.TextField(default=None, null=True)), ('created', models.DateTimeField(db_index=True, default=django.utils.timezone.now)), ('product', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.product')), ], options={ 'ordering': ['created'], }, ), migrations.AddField( model_name='product', name='unit', field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.unit'), ), migrations.AddField( model_name='product', name='vendor', field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.vendor'), ), migrations.CreateModel( name='ParameterValue', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('value', models.TextField(db_index=True, default=None, null=True)), ('created', models.DateTimeField(db_index=True, default=django.utils.timezone.now)), ('parameter', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.parameter')), ('product', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.product')), ('unit', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.unit')), ], options={ 'ordering': ['created'], }, ), migrations.AddField( model_name='parameter', name='group', field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='pflops.parametergroup'), ), migrations.CreateModel( name='CatalogElement', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('title', models.TextField(db_index=True)), ('slug', models.TextField(db_index=True, default=None, null=True)), ('path', models.TextField(db_index=True, default=None, null=True)), ('content', models.TextField(default=None, null=True)), ('description', models.TextField(default=None, null=True)), ('created', models.DateTimeField(db_index=True, default=django.utils.timezone.now)), ('edited', models.DateTimeField(db_index=True, default=None, null=True)), ('published', models.DateTimeField(db_index=True, default=None, null=True)), ('image', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.image')), ('parent', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.catalogelement')), ], options={ 'ordering': ['-created'], }, ), migrations.CreateModel( name='Article', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('title', models.TextField(db_index=True)), ('slug', models.TextField(db_index=True, default=None, null=True)), ('path', models.TextField(db_index=True, default=None, null=True)), ('content', models.TextField(default=None, null=True)), ('description', models.TextField(default=None, null=True)), ('assistant', models.BooleanField(db_index=True, default=False)), ('created', models.DateTimeField(db_index=True, default=django.utils.timezone.now)), ('edited', models.DateTimeField(db_index=True, default=None, null=True)), ('published', models.DateTimeField(db_index=True, default=None, null=True)), ('image', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.image')), ('parent', models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='pflops.catalogelement')), ], options={ 'ordering': ['-created'], }, ), migrations.AddIndex( model_name='product', index=django.contrib.postgres.indexes.GinIndex(fields=['names_search', 'parameters_search'], name='product_search_idx'), ), ]
class Treatment(models.Model): hospital = models.ForeignKey(Hospital, on_delete=models.CASCADE) name = models.CharField(max_length=200) price = models.FloatField(validators=[ MinValueValidator(0)])
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Hierarchy', fields=[ ('protein_id', models.CharField(max_length=9, primary_key=True, serialize=False, unique=True)), ], ), migrations.CreateModel( name='Comparison', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('similarity_value', models.FloatField()), ('protein_one', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comparison_one', to='TSR3DSystem.Hierarchy')), ('protein_two', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='comparison_two', to='TSR3DSystem.Hierarchy')), ], ), migrations.CreateModel( name='AllProteins', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('protein_key', models.IntegerField()), ('key_occurrence', models.IntegerField(null=True)), ('aacd0', models.CharField(max_length=3)), ('position0', models.IntegerField()), ('aacd1', models.CharField(max_length=3)), ('position1', models.IntegerField()), ('aacd2', models.CharField(max_length=3)), ('position2', models.IntegerField()), ('classT1', models.IntegerField()), ('theta', models.FloatField()), ('classL1', models.IntegerField()), ('maxDist', models.FloatField()), ('x0', models.FloatField()), ('y0', models.FloatField()), ('z0', models.FloatField()), ('x1', models.FloatField()), ('y1', models.FloatField()), ('z1', models.FloatField()), ('x2', models.FloatField()), ('y2', models.FloatField()), ('z2', models.FloatField()), ('protein_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='details', to='TSR3DSystem.Hierarchy')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Hizmetler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('hizmetAdi', models.CharField(max_length=50, verbose_name='Hizmet Adı')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Kisiler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('ad', models.CharField(max_length=50, verbose_name='Ad')), ('soyad', models.CharField(max_length=50, verbose_name='Soyad')), ('gorev', models.CharField(max_length=50, verbose_name='Gorev')), ('telefon', models.PositiveIntegerField(verbose_name='Telefon')), ('mail', models.EmailField(max_length=50, verbose_name='E-mail')), ('linkedin', models.CharField(max_length=50, verbose_name='LinkedIn')), ('whatsapp', models.CharField(max_length=50, verbose_name='Whatsapp')), ('instagram', models.CharField(max_length=50, verbose_name='Instagram')), ('memleket', models.CharField(max_length=50, verbose_name='LinkedIn')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Notlar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('notTur', models.CharField(choices=[('Istek', 'Istek'), ('Sikayet', 'Sikayet'), ('Oneri', 'Oneri')], max_length=20, verbose_name='Not Türü')), ('notIcerik', models.CharField(max_length=1000, verbose_name='Not')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Personeller', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('ad', models.CharField(max_length=50, verbose_name='Ad')), ('soyad', models.CharField(max_length=50, verbose_name='Soyad')), ('mail', models.EmailField(max_length=50, verbose_name='E-mail')), ('telefon', models.PositiveIntegerField(verbose_name='Telefon')), ('sifre', models.CharField(max_length=15, verbose_name='Parola')), ('dogumTarihi', models.DateField(verbose_name='Doğum Tarihi')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='SaglikKuruluslari', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('kurulusAdi', models.CharField(max_length=50, verbose_name='Kuruluş Adı')), ('kurulusTuru', models.CharField(choices=[('Dis Polikinigi', 'Dis Polikinigi'), ('Ozel Hastane', 'Ozel Hastane'), ('Kamu Hastanesi', 'Kamu Hastanesi'), ('Estetik Hekimler', 'Estetik Hekimler'), ('IFV', 'IFV')], max_length=20, verbose_name='Kuruluş Türü')), ('durum', models.CharField(choices=[('Potansiyel', 'Potansiyel'), ('Yeni', 'Yeni'), ('In Progress', 'In Progress'), ('Completed', 'Completed'), ('Not Working', 'Not Working')], max_length=20, verbose_name='Durum')), ('enlem', models.FloatField(max_length=50, verbose_name='Enlem')), ('boylam', models.FloatField(max_length=50, verbose_name='Boylam')), ('telefon', models.PositiveIntegerField(verbose_name='Telefon')), ('fax', models.PositiveIntegerField(verbose_name='Fax')), ('website', models.CharField(max_length=50, verbose_name='Website')), ('mail', models.EmailField(max_length=50, verbose_name='Mail')), ('doktorSayisi', models.PositiveIntegerField(verbose_name='Doktor Sayısı')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Ekleyen')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Seviyeler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('seviyeAdi', models.CharField(max_length=50, verbose_name='Seviye Adı')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Uzmanliklar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('uzmanlikAdi', models.CharField(max_length=50, verbose_name='Tedavi Adı')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='Tedaviler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('tedaviAdi', models.CharField(max_length=50, verbose_name='Tedavi Adı')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('uzmanlikID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='TedavilerUzmanlikID', to='base.uzmanliklar')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='SaglikTedaviler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('saglikID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikTedavilerSaglikID', to='base.saglikkuruluslari')), ('tedaviID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikTedavilerTedaviID', to='base.tedaviler')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='SaglikNotlar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('notlID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikNotlarSaglikID', to='base.notlar')), ('sagliklID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikNotlarSaglikID', to='base.saglikkuruluslari')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='SaglikKisiler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('kisiID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikKisilerKisiID', to='base.kisiler')), ('saglikID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikKisilerSaglikID', to='base.saglikkuruluslari')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='SaglikHizmetler', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('hizmetID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='base.hizmetler')), ('kurulus', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='SaglikHizmetlerKurulus', to='base.saglikkuruluslari')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='PersonelSaglik', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('personelID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='PersonelSaglikPersonelID', to='base.personeller')), ('saglikID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='PersonelSaglikSaglikID', to='base.saglikkuruluslari')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.AddField( model_name='personeller', name='seviye', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='PersonellerSeviye', to='base.seviyeler'), ), migrations.AddField( model_name='notlar', name='personelID', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='NotlarPersonelID', to='base.personeller'), ), migrations.CreateModel( name='Mesajlar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mesaj', models.CharField(max_length=250, verbose_name='Mesaj')), ('okundu', models.BooleanField(default=False, verbose_name='Okundu')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('alıcı', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='MesajAlıcı')), ('gonderen', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='MesajGonderıcı', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.CreateModel( name='KisiNotlar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('eklenmeTarihi', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')), ('kisiID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='KisiNotlarKisiID', to='base.kisiler')), ('notID', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='KisiNotlarNotId', to='base.notlar')), ], options={ 'ordering': ['-eklenmeTarihi'], }, ), migrations.AddField( model_name='hizmetler', name='SaglikHizmet', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='HizmetlerSaglikHizmet', to='base.saglikkuruluslari'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('goods', '0001_initial'), ] operations = [ migrations.CreateModel( name='OrderGoods', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('goods_num', models.IntegerField(default=0, verbose_name='商品数量')), ], options={ 'verbose_name': '订单商品', 'verbose_name_plural': '订单商品', }, ), migrations.CreateModel( name='OrderInfo', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order_sn', models.CharField(blank=True, max_length=30, null=True, unique=True, verbose_name='订单号')), ('trade_no', models.CharField(blank=True, max_length=100, null=True, unique=True, verbose_name='交易号')), ('pay_status', models.CharField(choices=[('TRADE_SUCCESS', '成功'), ('TRADE_CLOSED', '超时关闭'), ('WAIT_BUYER_PAY', '交易创建'), ('TRADE_FINISHED', '交易结束'), ('paying', '待支付')], default='paying', max_length=30, verbose_name='订单状态')), ('post_script', models.CharField(max_length=200, verbose_name='订单留言')), ('order_mount', models.FloatField(default=0.0, verbose_name='订单金额')), ('pay_time', models.DateTimeField(blank=True, null=True, verbose_name='支付时间')), ('address', models.CharField(default='', max_length=100, verbose_name='收货地址')), ('signer_name', models.CharField(default='', max_length=20, verbose_name='签收人')), ('singer_mobile', models.CharField(max_length=11, verbose_name='联系电话')), ], options={ 'verbose_name': '订单', 'verbose_name_plural': '订单', }, ), migrations.CreateModel( name='ShoppingCart', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('add_time', models.DateTimeField(default=datetime.datetime.now, verbose_name='添加时间')), ('nums', models.IntegerField(default=0, verbose_name='购买数量')), ('goods', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='goods.Goods', verbose_name='商品')), ], options={ 'verbose_name': '购物车', 'verbose_name_plural': '购物车', }, ), ]
class Product(models.Model): COLOR_CHOICES =[("BL", "Black"), ("WH", "White"), ("GY", "Gray"), ("BR", "Browns"), ("GR", "Green"), ("BU", "Blue"), ("PU", "Purple"), ("RE", "Red"), ("OR", "Orange"), ("YE", "Yellow"), ] THEME_CHOICES =[("NE", "Neon"), ("BW", "Black & White"), ("CR", "Carnival"), ("DS", "Disco"), ("SR", "Soirées"), ("CK", "Cocktail"), ("SH", "Showers"), ("PP", "Pool Parties"), ("FR", "Farewell"), ("OD", "Outdoor"), ("FN", "Fancy"), ] CATEGORY_CHOICES =[ ("TB", "Tables"), ("CH", "Chairs"), ("GZ", "Arches & Gazebos"), ("TN", "Tents"), ("TA", "Tent Accessories"), ("ST", "Stages"), ("PR", "Projectors & Screens"), ("EF", "Special Effects Equipments"), ("AU", "Audio Systems"), ("LT", "Lighting"), ("LN", "Lenin"), ("HN", "Hangers"), ("GL", "Glasses & Stemware"), ("FO", "Fun Food Equip"), ("FL", "Floral Accessories"), ("CR", "Floors & Carpet"), ("TR", "Serving Trays"), ("WR", "Flatware"), ] name = models.CharField(max_length = 50) img = models.ImageField(null=True, blank=True) measures = models.CharField(max_length = 50, null = True, blank = True) quantity = models.IntegerField(null=True, blank = True) description = models.TextField(null = True, blank = True) price_per_day = models.FloatField() is_rented = models.BooleanField(default= False) category = models.CharField(max_length=2, choices = CATEGORY_CHOICES, null = True, blank = True) color = models.CharField(max_length=2, choices = COLOR_CHOICES, null = True, blank = True) theme = models.CharField(max_length=2, choices = THEME_CHOICES, null = True, blank = True) def __str__(self): return "{} {} - ${}/day".format(self.name, self.measures, self.price_per_day) def get_absolute_url(self): return reverse('product_details', kwargs={'product_id':self.id})
class UsedGame(Game): price = models.FloatField(default=0.0, blank=False, null=False)
class User_Stock(models.Model): user_profile = models.ForeignKey(UserProfile, on_delete=models.CASCADE) name = models.ForeignKey(Stock_Info, on_delete=models.PROTECT) buy_price = models.FloatField(default=0) amount = models.IntegerField(default=0)