Skip to content

Commit

Permalink
List models and admins for the sake of DJango Structure in PyCharm
Browse files Browse the repository at this point in the history
  • Loading branch information
TheMadBug committed Aug 27, 2024
1 parent 4a6c524 commit a0cf1e2
Show file tree
Hide file tree
Showing 21 changed files with 262 additions and 40 deletions.
31 changes: 25 additions & 6 deletions analysis/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from guardian.admin import GuardedModelAdmin

from analysis import models
from snpdb.admin_utils import ModelAdminBasics


class AnalysisUserFilter(admin.SimpleListFilter):
Expand All @@ -20,15 +21,33 @@ def queryset(self, request, queryset):
return queryset


@admin.register(models.Analysis)
class AnalysisAdmin(GuardedModelAdmin):
list_display = ['id', 'user', 'name', 'description', 'template_type', 'visible', 'created']
list_filter = (AnalysisUserFilter,)
search_fields = ('id', 'lab_record_id')


admin.site.register(models.Analysis, AnalysisAdmin)
admin.site.register(models.AnalysisTemplate)
admin.site.register(models.AnalysisTemplateRun)
admin.site.register(models.AnalysisTemplateVersion)
admin.site.register(models.VariantTag)
admin.site.register(models.VariantTagsImport)
@admin.register(models.AnalysisTemplate)
class AnalysisTemplateAdmin(ModelAdminBasics):
pass


@admin.register(models.AnalysisTemplateRun)
class AnalysisTemplateRunAdmin(ModelAdminBasics):
pass


@admin.register(models.AnalysisTemplateVersion)
class AnalysisTemplateRunAdmin(ModelAdminBasics):
pass


@admin.register(models.VariantTag)
class VariantTagAdmin(ModelAdminBasics):
pass


@admin.register(models.VariantTagsImport)
class VariantTagsImportAdmin(ModelAdminBasics):
pass
29 changes: 29 additions & 0 deletions analysis/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# This file exists for PyCharm's Django Structure plugin
from analysis.models.models_analysis import Analysis, AnalysisLock, AnalysisNodeCountConfiguration, AnalysisNodeCountConfigRecord, AnalysisVariable, AnalysisTemplate, AnalysisTemplateVersion, AnalysisTemplateRun, AnalysisTemplateRunArgument, CohortAnalysisTemplateRun, SampleAnalysisTemplateRun
from analysis.models.models_karyomapping import KaryomappingAnalysis, KaryomappingGene, GenomeKaryomappingCounts, ContigKaryomappingCounts
from analysis.models.nodes.analysis_node import AnalysisNode, AnalysisEdge, NodeTask, NodeWiki, AnalysisNodeAlleleSource, NodeVersion, NodeCache, NodeCount, NodeColumnSummaryCacheCollection, NodeColumnSummaryData, NodeVCFFilter, NodeAlleleFrequencyFilter, NodeAlleleFrequencyRange, AnalysisClassification
from analysis.models.models_variant_tag import VariantTagsImport, ImportedVariantTag, VariantTag
from analysis.models.mutational_signatures import MutationalSignatureCalculator, MutationalSignature, MutationalSignatureMinimisationResult, MutationalSignatureMutationCount
from analysis.models.nodes.filters.allele_frequency_node import AlleleFrequencyNode
from analysis.models.nodes.filters.built_in_filter_node import BuiltInFilterNode
from analysis.models.nodes.filters.damage_node import DamageNode
from analysis.models.nodes.filters.filter_node import FilterNode, FilterNodeItem
from analysis.models.nodes.filters.gene_list_node import GeneListNode, GeneListNodeGeneList, GeneListNodePanelAppPanel
from analysis.models.nodes.filters.intersection_node import IntersectionNode
from analysis.models.nodes.filters.merge_node import MergeNode
from analysis.models.nodes.filters.moi_node import MOINode, MOINodeOntologyTerm, MOINodeModeOfInheritance, MOINodeSubmitter
from analysis.models.nodes.filters.phenotype_node import PhenotypeNode, PhenotypeNodeOntologyTerm
from analysis.models.nodes.filters.population_node import PopulationNode, PopulationNodeGnomADPopulation
from analysis.models.nodes.filters.selected_in_parent_node import SelectedInParentNode, NodeVariant
from analysis.models.nodes.filters.tag_node import TagNode, TagNodeTag
from analysis.models.nodes.filters.tissue_node import TissueNode
from analysis.models.nodes.filters.venn_node import VennNode, VennNodeCache
from analysis.models.gene_counts import NodeGenesCountCollection, NodeGenesCount
from analysis.models.nodes.filters.zygosity_node import ZygosityNode
from analysis.models.nodes.node_types import NodeGraphType
from analysis.models.nodes.sources.all_variants_node import AllVariantsNode
from analysis.models.nodes.sources.classifications_node import ClassificationsNode, ClassificationsNodeLab
from analysis.models.nodes.sources.cohort_node import CohortNode, CohortNodeZygosityFiltersCollection, CohortNodeZygosityFilter
from analysis.models.nodes.sources.pedigree_node import PedigreeNode
from analysis.models.nodes.sources.sample_node import SampleNode
from analysis.models.nodes.sources.trio_node import TrioNode
7 changes: 7 additions & 0 deletions annotation/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# This file exists for PyCharm's Django Structure plugin
from annotation.models.models_citations import Citation
from annotation.models.models import ClinVarVersion, ClinVar, ClinVarRecordCollection, ClinVarRecord, ClinVarCitationsCollection, ClinVarCitation, DBNSFPGeneAnnotationVersion, DBNSFPGeneAnnotation, GeneAnnotationVersion, GeneAnnotation, HumanProteinAtlasAnnotationVersion, HumanProteinAtlasTissueSample, HumanProteinAtlasAnnotation, ColumnVEPField, VariantAnnotationVersion, VCFAnnotationStats, AnnotationRangeLock, AnnotationRun, VariantAnnotation, VariantTranscriptAnnotation, VariantGeneOverlap, ManualVariantEntryCollection, ManualVariantEntry, CreatedManualVariant, AnnotationVersion, CachedWebResource, GeneSymbolCitation, GeneSymbolPubMedCount, MutationalSignatureInfo
from annotation.models.models_gene_counts import VariantSource, SampleAnnotationVersionVariantSource, GeneCountType, GeneValue, GeneValueCountCollection, GeneValueCount, CohortGeneCounts
from annotation.models.models_phenotype_match import DescriptionProcessingStatus, PhenotypeDescription, TextPhenotype, TextPhenotypeSentence, TextPhenotypeMatch, PatientTextPhenotype
from annotation.models.models_sample_stats import SampleVariantAnnotationStats, SampleVariantAnnotationStatsPassingFilter, SampleGeneAnnotationStats, SampleGeneAnnotationStatsPassingFilter, SampleClinVarAnnotationStats, SampleClinVarAnnotationStatsPassingFilter
from annotation.models.models_version_diff import VersionDiff, VersionDiffFromToResult, VersionDiffChangeCountResult, VariantAnnotationVersionDiff
4 changes: 3 additions & 1 deletion classification/admin.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
# File for PyCharm DJango Structure plugin
# noinspection PyUnresolvedReferences
import classification.admin # just need these to trigger the decorators
from classification.admin import ClassificationImportRunAdmin, ClassificationAdmin, ClassificationImportAdmin, ClinicalContextAdmin, EvidenceKeyAdmin, ClassificationReportTemplateAdmin, DiscordanceReportAdmin, DiscordanceReportTriageAdmin, DiscordanceNotificationAdmin, UploadedClassificationsUnmappedAdmin, ResolvedVariantInfoAdmin, ImportedAlleleInfoAdmin, ImportedAlleleInfoValidationAdmin, ClinVarExportAdmin, ClinVarAlleleAdmin, ClinVarExportBatchAdmin, ConditionTextAdmin

12 changes: 12 additions & 0 deletions classification/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# This file exists for PyCharm's Django Structure plugin
from classification.models.uploaded_classifications_unmapped import UploadedClassificationsUnmapped
from classification.models.classification_import_run import ClassificationImportRun
from classification.models.classification_variant_info_models import HGVSConverterVersion, ResolvedVariantInfo, ImportedAlleleInfoValidation, ImportedAlleleInfo
from classification.models.evidence_key import EvidenceKey
from classification.models.classification import ClassificationImport, ClassificationImportAlleleSource, AllClassificationsAlleleSource, Classification, ClassificationModification
from classification.models.clinical_context_models import DiscordanceNotification, ClinicalContext
from classification.models.discordance_models import DiscordanceReport, DiscordanceReportClassification, DiscordanceReportTriage
from classification.models.variant_models import ClassificationAttachment
from classification.models.condition_text_matching import ConditionText, ConditionTextMatch
from classification.models.clinvar_export_models import ClinVarAllele, ClinVarExport, ClinVarExportBatch, ClinVarExportSubmission, ClinVarExportRequest
from classification.models.classification_report_models import ClassificationReportTemplate
2 changes: 1 addition & 1 deletion classification/models/__init__.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from classification.models.discordance_models import *
from classification.models.classification import *
from classification.models.classification_ref import *

from classification.models.classification_variant_fields_validation import * # so we load the receivers
from classification.models.classification_variant_info_models import *
from classification.models.variant_models import *
from classification.models.condition_text_matching import *
from classification.models.clinvar_export_models import *
Expand Down
2 changes: 2 additions & 0 deletions email_manager/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# This file exists for PyCharm's Django Structure plugin
from email_manager.models.email_model import EmailLog
1 change: 1 addition & 0 deletions eventlog/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
from django.shortcuts import render
from django.utils import timezone
from django.views.decorators.http import require_POST
from django.views.generic import ListView

from eventlog.models import Event
from library.enums.log_level import LogLevel
Expand Down
2 changes: 2 additions & 0 deletions flags/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# This file exists for PyCharm's Django Structure plugin
from flags.models.models import FlagResolution, FlagTypeContext, FlagType, FlagTypeResolution, Flag, FlagCollection, FlagComment
46 changes: 38 additions & 8 deletions genes/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,41 @@ def panelapp_au_refresh(self, request, queryset: QuerySet[GeneSymbol]):
update_gene_relations(gene_symbol)


admin.site.register(models.ActiveSampleGeneList)
admin.site.register(models.GeneAnnotationRelease)
admin.site.register(models.GeneInfo)
admin.site.register(models.GeneListGeneSymbol)
admin.site.register(models.GeneSymbolAlias)
admin.site.register(models.PanelAppPanel)
admin.site.register(models.PanelAppPanelLocalCache)
admin.site.register(models.SampleGeneList)
@admin.register(models.ActiveSampleGeneList)
class ActiveSampleGeneListAdmin(ModelAdminBasics):
pass


@admin.register(models.GeneAnnotationRelease)
class GeneAnnotationReleaseAdmin(ModelAdminBasics):
pass


@admin.register(models.GeneInfo)
class GeneInfoAdmin(ModelAdminBasics):
pass


@admin.register(models.GeneListGeneSymbol)
class GeneListGeneSymbolAdmin(ModelAdminBasics):
pass


@admin.register(models.GeneSymbolAlias)
class GeneSymbolAliasAdmin(ModelAdminBasics):
pass


@admin.register(models.PanelAppPanel)
class PanelAppPanelAdmin(ModelAdminBasics):
pass


@admin.register(models.PanelAppPanelLocalCache)
class PanelAppPanelLocalCacheAdmin(ModelAdminBasics):
pass


@admin.register(models.SampleGeneList)
class SampleGeneListAdmin(ModelAdminBasics):
pass
3 changes: 3 additions & 0 deletions manual/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# This file exists for PyCharm's Django Structure plugin
from manual.models.deployment_models import Deployment
from manual.models.manual_migration_models import ManualMigrationTask, ManualMigrationRequired, ManualMigrationAttempt
2 changes: 2 additions & 0 deletions ontology/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# This file exists for PyCharm's Django Structure plugin
from ontology.models.models_ontology import OntologyImport, OntologyTerm, OntologyTermRelation, OntologyVersion
54 changes: 45 additions & 9 deletions patients/admin.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,49 @@
from django.contrib import admin

from patients import models
from snpdb.admin_utils import ModelAdminBasics

admin.site.register(models.Patient)
admin.site.register(models.Tissue)
admin.site.register(models.Specimen)
admin.site.register(models.PatientImport)
admin.site.register(models.PatientModification)
admin.site.register(models.PatientComment)
admin.site.register(models.Clinician)
admin.site.register(models.PatientRecords)
admin.site.register(models.PatientRecord)

@admin.register(models.Patient)
class PatientAdmin(ModelAdminBasics):
pass


@admin.register(models.Tissue)
class TissueAdmin(ModelAdminBasics):
pass


@admin.register(models.Specimen)
class SpecimenAdmin(ModelAdminBasics):
pass


@admin.register(models.PatientImport)
class PatientImportAdmin(ModelAdminBasics):
pass


@admin.register(models.PatientModification)
class PatientModificationAdmin(ModelAdminBasics):
pass


@admin.register(models.PatientComment)
class PatientCommentAdmin(ModelAdminBasics):
pass


@admin.register(models.Clinician)
class ClinicianAdmin(ModelAdminBasics):
pass


@admin.register(models.PatientRecords)
class PatientRecordsAdmin(ModelAdminBasics):
pass


@admin.register(models.PatientRecord)
class PatientRecordAdmin(ModelAdminBasics):
pass
3 changes: 3 additions & 0 deletions review/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# File for PyCharm DJango Structure plugin
# noinspection PyUnresolvedReferences
from review.admin import ReviewTopicAdmin, ReviewAdmin
2 changes: 1 addition & 1 deletion review/admin/review_admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ def has_change_permission(self, request, obj=None):


@admin.register(ReviewTopic)
class ReviewQuestionTopicAdmin(ModelAdminBasics):
class ReviewTopicAdmin(ModelAdminBasics):
inlines = (ReviewQuestionInline,)

def widget_overrides(self):
Expand Down
2 changes: 2 additions & 0 deletions review/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# This file exists for PyCharm's Django Structure plugin
from review.models.review_models import ReviewTopic, ReviewQuestion, ReviewedObject, Review_reviewing_labs, Review
77 changes: 63 additions & 14 deletions seqauto/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,66 @@ def is_readonly_field(self, f) -> bool:
return super().is_readonly_field(f)


# Register your models here.
admin.site.register(models.Sequencer)
admin.site.register(models.SequencerModel)
admin.site.register(models.SeqAutoRun)
admin.site.register(models.SequencingRun)
admin.site.register(models.IlluminaFlowcellQC)
admin.site.register(models.Fastq)
admin.site.register(models.FastQC)
admin.site.register(models.UnalignedReads)
admin.site.register(models.BamFile)
admin.site.register(models.Flagstats)
admin.site.register(models.VCFFile)
admin.site.register(models.QC)
admin.site.register(models.QCExecSummary)
@admin.register(models.Sequencer)
class SequencerAdmin(ModelAdminBasics):
pass


@admin.register(models.SequencerModel)
class SequencerModelAdmin(ModelAdminBasics):
pass


@admin.register(models.SeqAutoRun)
class SeqAutoRunAdmin(ModelAdminBasics):
pass


@admin.register(models.SequencingRun)
class SequencingRunAdmin(ModelAdminBasics):
pass


@admin.register(models.IlluminaFlowcellQC)
class IlluminaFlowcellQCAdmin(ModelAdminBasics):
pass


@admin.register(models.Fastq)
class FastqAdmin(ModelAdminBasics):
pass


@admin.register(models.FastQC)
class FastQCAdmin(ModelAdminBasics):
pass


@admin.register(models.UnalignedReads)
class UnalignedReadsAdmin(ModelAdminBasics):
pass


@admin.register(models.BamFile)
class BamFileAdmin(ModelAdminBasics):
pass


@admin.register(models.Flagstats)
class FlagstatsAdmin(ModelAdminBasics):
pass


@admin.register(models.VCFFile)
class VCFFileAdmin(ModelAdminBasics):
pass


@admin.register(models.QC)
class QCAdmin(ModelAdminBasics):
pass


@admin.register(models.QCExecSummary)
class QCExecSummaryAdmin(ModelAdminBasics):
pass
4 changes: 4 additions & 0 deletions seqauto/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# This file exists for PyCharm's Django Structure plugin
from seqauto.models.models_sequencing import SequencerModel, Sequencer, EnrichmentKit, Library, Assay, Experiment, SequencingInfo
from seqauto.models.models_software import VariantCaller, Aligner, VariantCallingPipeline, SoftwarePipeline, SoftwarePipelineNode, SoftwarePipelineEdge
from seqauto.models.models_seqauto import SeqAutoRun, SeqAutoRecord, SeqAutoMessage, SequencingRun, SequencingRunWiki, SampleSheet, SequencingRunCurrentSampleSheet, SequencingSample, SequencingSampleData, SampleFromSequencingSample, VCFFromSequencingRun, IlluminaFlowcellQC, ReadQ30, IlluminaIndexQC, Fastq, FastQC, UnalignedReads, BamFile, Flagstats, VCFFile, SampleSheetCombinedVCFFile, QC, QCGeneList, QCExecSummary, ExecSummaryReferenceRange, QCGeneCoverage, GoldReference, GoldGeneCoverageCollection, GoldCoverageSummary, QCType, QCColumn, JobScript
13 changes: 13 additions & 0 deletions snpdb/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# This file exists for PyCharm's Django Structure plugin
from snpdb.models.models import Tag, CachedGeneratedFile, Company, Manufacturer, Wiki, ImportedWikiCollection, ImportedWiki, Organization, ClinVarKey, ClinVarKeyExcludePattern, Country, State, Lab, LabHead, UserAward, LabProject, SiteMessage
from snpdb.models.models_genome import GenomeBuild, GenomeBuildPatchVersion, Contig, GenomeBuildContig, GenomeFasta, GenomeFastaContig
from snpdb.models.models_clingen_allele import ClinGenAllele
from snpdb.models.models_variant import Allele, AlleleMergeLog, Sequence, Locus, Variant, VariantWiki, VariantAllele, VariantCollection, VariantCollectionRecord, AlleleSource, VariantAlleleSource, VariantAlleleCollectionSource, VariantAlleleCollectionRecord, LiftoverRun, AlleleLiftover
from snpdb.models.models_genomic_interval import GenomicIntervalsCategory, GenomicIntervalsCollection, GenomicInterval
from snpdb.models.models_vcf import Project, VCF, VCFFilter, VCFTag, Sample, SampleFilePath, SampleTag, VCFAlleleSource, SampleStatsCodeVersion, SampleStats, SampleStatsPassingFilter, SampleLocusCount, SampleLabProject, VCFSourceSettings, VCFBedIntersection
from snpdb.models.models_cohort import Cohort, CohortSample, CohortGenotypeTaskVersion, CohortGenotypeCommonFilterVersion, CommonVariantClassified, CohortGenotypeCollection, CohortGenotype, Trio
from snpdb.models.models_columns import VariantGridColumn, ColumnVCFInfo, CustomColumnsCollection, CustomColumn
from snpdb.models.models_dbsnp import DbSNP
from snpdb.models.models_somalier import SomalierVCFExtract, SomalierSampleExtract, SomalierAncestryRun, SomalierAncestry, SomalierCohortRelate, SomalierTrioRelate, SomalierAllSamplesRelate, SomalierRelatePairs
from snpdb.models.models_user_settings import UserDataPrefix, TagColorsCollection, TagColor, UserPageAck, UserGridConfig, SettingsOverride, GlobalSettings, OrganizationUserSettingsOverride, LabUserSettingsOverride, UserSettingsOverride, SettingsInitialGroupPermission, NodeCountSettingsCollection, NodeCountSettings, UserContact
from snpdb.models.models_zygosity_counts import VariantZygosityCountCollection, VariantZygosityCount, VariantZygosityCountForVCF, VariantZygosityCountForSample
3 changes: 3 additions & 0 deletions sync/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# This file exists for PyCharm's Django Structure plugin
from sync.models.models import SyncDestination, SyncRun
from sync.models.models_classification_sync import ClassificationModificationSyncRecord
3 changes: 3 additions & 0 deletions upload/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# This file exists for PyCharm's Django Structure plugin
from upload.models.models import UploadedFile, UploadPipeline, ToolVersion, UploadStep, UploadStepMultiFileOutput, VCFImporter, UploadedVCF, UploadedVCFPendingAnnotation, BackendVCF, VCFImportInfo, SimpleVCFImportInfo, ModifiedImportedVariants, ModifiedImportedVariant, VCFSkippedContigs, VCFSkippedContig, UploadSettings, UploadSettingsFileType
from upload.models.models_uploaded_files import UploadedGeneList, UploadedBed, UploadedPedFile, UploadedPatientRecords, UploadedGeneCoverage, UploadedManualVariantEntryCollection, UploadedClassificationImport, UploadedLiftover, UploadedWikiCollection, UploadedClinVarVersion, UploadedVariantTags

0 comments on commit a0cf1e2

Please sign in to comment.