Skip to content

Commit

Permalink
Merge branch 'refs/heads/demo-rfc80-poc' into demo-rfc80-poc-mutation…
Browse files Browse the repository at this point in the history
…_type_count

# Conflicts:
#	src/main/java/org/cbioportal/persistence/StudyViewRepository.java
#	src/main/java/org/cbioportal/persistence/mybatisclickhouse/StudyViewMapper.java
#	src/main/java/org/cbioportal/persistence/mybatisclickhouse/StudyViewMyBatisRepository.java
#	src/main/java/org/cbioportal/service/impl/StudyViewColumnarServiceImpl.java
#	src/main/java/org/cbioportal/web/columnar/StudyViewColumnStoreController.java
#	src/main/resources/org/cbioportal/persistence/mybatisclickhouse/StudyViewFilterMapper.xml
#	src/main/resources/org/cbioportal/persistence/mybatisclickhouse/StudyViewMapper.xml
  • Loading branch information
fuzhaoyuan committed Jun 25, 2024
2 parents 6bc6e47 + 2b87a26 commit cd477b6
Show file tree
Hide file tree
Showing 19 changed files with 639 additions and 620 deletions.
35 changes: 20 additions & 15 deletions src/main/java/org/cbioportal/persistence/StudyViewRepository.java
Original file line number Diff line number Diff line change
@@ -1,44 +1,49 @@
package org.cbioportal.persistence;

import org.cbioportal.model.AlterationCountByGene;
import org.cbioportal.model.ClinicalAttribute;
import org.cbioportal.model.CaseListDataCount;
import org.cbioportal.model.ClinicalData;
import org.cbioportal.model.ClinicalDataCount;
import org.cbioportal.model.CopyNumberCountByGene;
import org.cbioportal.model.GenomicDataCountItem;
import org.cbioportal.model.GenomicDataCount;
import org.cbioportal.model.Sample;
import org.cbioportal.persistence.enums.ClinicalAttributeDataSource;
import org.cbioportal.persistence.enums.ClinicalAttributeDataType;
import org.cbioportal.web.parameter.CategorizedClinicalDataCountFilter;
import org.cbioportal.web.parameter.GenomicDataFilter;
import org.cbioportal.web.parameter.StudyViewFilter;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface StudyViewRepository {
List<Sample> getFilteredSamples(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
List<Sample> getFilteredSamples(StudyViewFilter studyViewFilter);

List<ClinicalData> getSampleClinicalData(StudyViewFilter studyViewFilter, List<String> attributeIds, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
List<ClinicalData> getSampleClinicalData(StudyViewFilter studyViewFilter, List<String> attributeIds);

List<ClinicalData> getPatientClinicalData(StudyViewFilter studyViewFilter, List<String> attributeIds, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
List<ClinicalData> getPatientClinicalData(StudyViewFilter studyViewFilter, List<String> attributeIds);

List<AlterationCountByGene> getMutatedGenes(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
List<AlterationCountByGene> getMutatedGenes(StudyViewFilter studyViewFilter);

List<ClinicalDataCount> getClinicalDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<String> filteredAttributes);
List<AlterationCountByGene> getStructuralVariantGenes(StudyViewFilter studyViewFilter);
List<CopyNumberCountByGene> getCnaGenes(StudyViewFilter studyViewFilter);

List<ClinicalDataCount> getSampleClinicalDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<String> filteredAttributes);
List<ClinicalDataCount> getClinicalDataCounts(StudyViewFilter studyViewFilter, List<String> filteredAttributes);

List<ClinicalDataCount> getPatientClinicalDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<String> filteredAttributes);
List<GenomicDataCount> getGenomicDataCounts(StudyViewFilter studyViewFilter);

List<GenomicDataCount> getGenomicDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
List<String> getClinicalDataAttributeNames(ClinicalAttributeDataSource clinicalAttributeDataSource, ClinicalAttributeDataType dataType);
List<ClinicalAttribute> getClinicalAttributes();

List<CaseListDataCount> getCaseListDataCounts(StudyViewFilter studyViewFilter);

Map<String, AlterationCountByGene> getTotalProfiledCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, String alterationType);
Map<String, AlterationCountByGene> getTotalProfiledCounts(StudyViewFilter studyViewFilter, String alterationType);

int getFilteredSamplesCount(StudyViewFilter studyViewFilter);

int getFilteredSamplesCount(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter);
Map<String, Set<String>> getMatchingGenePanelIds(StudyViewFilter studyViewFilter, String alterationType);

Map<String, AlterationCountByGene> getMatchingGenePanelIds(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, String alterationType);
int getTotalProfiledCountsByAlterationType(StudyViewFilter studyViewFilter, String alterationType);

List<GenomicDataCountItem> getCNAAlterationCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<GenomicDataFilter> genomicDataFilters);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,13 @@ public static AlterationFilterHelper build(@Nullable AlterationFilter alteration

private final AlterationFilter alterationFilter;
private final Select<String> mappedMutationTypes;

private final Select<Short> mappedCnaTypes;

private AlterationFilterHelper(@NonNull AlterationFilter alterationFilter){
this.alterationFilter = alterationFilter;
this.mappedMutationTypes = buildMutationTypeList();
this.mappedCnaTypes = buildCnaTypeList();
}

private Select<String> buildMutationTypeList() {
Expand All @@ -42,8 +45,12 @@ private Select<String> buildMutationTypeList() {
public Select<String> getMutationTypeList() {
return mappedMutationTypes;
}

public Select<Short> getCnaTypeList() {
return mappedCnaTypes;
}

public Select<Short> buildCnaTypeList() {
if (alterationFilter.getCNAEventTypeSelect().hasNone()) {
return Select.none();
}
Expand Down Expand Up @@ -128,11 +135,17 @@ public boolean isSomeTierOptionsSelected() {
return !isAllTierOptionsSelected() && !isNoTierOptionsSelected();
}

public boolean shouldApply() {
public boolean shouldApplyMutationAlterationFilter() {
return isSomeDriverAnnotationsSelected()
|| isSomeMutationStatusSelected()
|| isSomeTierOptionsSelected()
|| mappedMutationTypes.hasNone()
|| (!mappedMutationTypes.hasNone() && !mappedMutationTypes.hasAll());
}

public boolean shouldApplyCnaAlterationFilter() {
return isSomeDriverAnnotationsSelected()
|| mappedCnaTypes.hasNone()
|| (!mappedCnaTypes.hasNone() && !mappedCnaTypes.hasAll());
}
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
package org.cbioportal.persistence.mybatisclickhouse;

import org.cbioportal.model.*;
import org.apache.ibatis.annotations.MapKey;
import org.cbioportal.model.AlterationCountByGene;
import org.cbioportal.model.CaseListDataCount;
import org.cbioportal.model.ClinicalAttribute;
import org.cbioportal.model.ClinicalData;
import org.cbioportal.model.ClinicalDataCount;
import org.cbioportal.model.CopyNumberCountByGene;
import org.cbioportal.model.GenePanelToGene;
import org.cbioportal.model.GenomicDataCount;
import org.cbioportal.model.GenomicDataCountItem;
import org.cbioportal.model.Sample;
import org.cbioportal.persistence.helper.AlterationFilterHelper;
Expand All @@ -15,6 +19,7 @@
import java.util.List;
import java.util.Map;


public interface StudyViewMapper {
List<Sample> getFilteredSamples(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters);

Expand All @@ -23,6 +28,12 @@ public interface StudyViewMapper {
List<AlterationCountByGene> getMutatedGenes(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter,
boolean applyPatientIdFilters, AlterationFilterHelper alterationFilterHelper);

List<CopyNumberCountByGene> getCnaGenes(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter,
boolean applyPatientIdFilters, AlterationFilterHelper alterationFilterHelper);

List<AlterationCountByGene> getStructuralVariantGenes(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter,
boolean applyPatientIdFilters, AlterationFilterHelper alterationFilterHelper);

List<ClinicalDataCount> getPatientClinicalDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter,
boolean applyPatientIdFilters, List<String> attributeIds, List<String> filteredAttributeValues);

Expand All @@ -31,8 +42,10 @@ List<ClinicalDataCount> getSampleClinicalDataCounts(StudyViewFilter studyViewFil

List<ClinicalDataCount> getClinicalDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter,
boolean applyPatientIdFilters, List<String> attributeIds, List<String> filteredAttributeValues);

List<CaseListDataCount> getCaseListDataCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters);

List<String> getClinicalAttributeNames(String tableName);
List<ClinicalAttribute> getClinicalAttributes();

List<ClinicalData> getSampleClinicalDataFromStudyViewFilter(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters, List<String> attributeIds);

Expand All @@ -43,12 +56,13 @@ List<ClinicalDataCount> getClinicalDataCounts(StudyViewFilter studyViewFilter, C

int getFilteredSamplesCount(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters);

@MapKey("hugoGeneSymbol")
Map<String, AlterationCountByGene> getMatchingGenePanelIds(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters, String alterationType);
List<GenePanelToGene> getMatchingGenePanelIds(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters, String alterationType);

int getTotalProfiledCountByAlterationType(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, boolean applyPatientIdFilters, String alterationType);

List<GenomicDataCountItem> getCNAAlterationCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<GenomicDataFilter> genomicDataFilters);

Map<String, Integer> getMutationCounts(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, GenomicDataFilter genomicDataFilter);

List<GenomicDataCountItem> getMutationCountsByType(StudyViewFilter studyViewFilter, CategorizedClinicalDataCountFilter categorizedClinicalDataCountFilter, List<GenomicDataFilter> genomicDataFilters);
}
Loading

0 comments on commit cd477b6

Please sign in to comment.