mirror of
https://github.com/dnpm-dip/mv64e-mtb-dto-java.git
synced 2025-09-13 08:12:51 +00:00
Merge pull request #15 from pcvolkmer/update_datamodel
chore: update data model
This commit is contained in:
@@ -12,7 +12,7 @@ import java.util.List;
|
||||
public class IhcReportResults {
|
||||
@Getter(onMethod_ = {@JsonProperty("msiMmr")})
|
||||
@Setter(onMethod_ = {@JsonProperty("msiMmr")})
|
||||
private List<MSIMmr> msiMmr;
|
||||
private List<MsiMmr> msiMmr;
|
||||
@Getter(onMethod_ = {@JsonProperty("proteinExpression")})
|
||||
@Setter(onMethod_ = {@JsonProperty("proteinExpression")})
|
||||
private List<ProteinExpression> proteinExpression;
|
||||
|
29
src/main/java/dev/pcvolkmer/mv64e/mtb/Msi.java
Normal file
29
src/main/java/dev/pcvolkmer/mv64e/mtb/Msi.java
Normal file
@@ -0,0 +1,29 @@
|
||||
package dev.pcvolkmer.mv64e.mtb;
|
||||
|
||||
import com.fasterxml.jackson.annotation.*;
|
||||
import lombok.*;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class Msi {
|
||||
@Getter(onMethod_ = {@JsonProperty("id")})
|
||||
@Setter(onMethod_ = {@JsonProperty("id")})
|
||||
private String id;
|
||||
@Getter(onMethod_ = {@JsonProperty("interpretation")})
|
||||
@Setter(onMethod_ = {@JsonProperty("interpretation")})
|
||||
private MsiInterpretationCoding interpretation;
|
||||
@Getter(onMethod_ = {@JsonProperty("method")})
|
||||
@Setter(onMethod_ = {@JsonProperty("method")})
|
||||
private MsiMethodCoding method;
|
||||
@Getter(onMethod_ = {@JsonProperty("patient")})
|
||||
@Setter(onMethod_ = {@JsonProperty("patient")})
|
||||
private Reference patient;
|
||||
@Getter(onMethod_ = {@JsonProperty("specimen")})
|
||||
@Setter(onMethod_ = {@JsonProperty("specimen")})
|
||||
private Reference specimen;
|
||||
@Getter(onMethod_ = {@JsonProperty("value")})
|
||||
@Setter(onMethod_ = {@JsonProperty("value")})
|
||||
private double value;
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
package dev.pcvolkmer.mv64e.mtb;
|
||||
|
||||
import com.fasterxml.jackson.annotation.*;
|
||||
import lombok.*;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class MsiInterpretationCoding {
|
||||
@Getter(onMethod_ = {@JsonProperty("code")})
|
||||
@Setter(onMethod_ = {@JsonProperty("code")})
|
||||
private MsiInterpretationCodingCode code;
|
||||
@Getter(onMethod_ = {@JsonProperty("display")})
|
||||
@Setter(onMethod_ = {@JsonProperty("display")})
|
||||
private String display;
|
||||
@Getter(onMethod_ = {@JsonProperty("system")})
|
||||
@Setter(onMethod_ = {@JsonProperty("system")})
|
||||
private String system;
|
||||
@Getter(onMethod_ = {@JsonProperty("version")})
|
||||
@Setter(onMethod_ = {@JsonProperty("version")})
|
||||
private String version;
|
||||
}
|
@@ -0,0 +1,32 @@
|
||||
package dev.pcvolkmer.mv64e.mtb;
|
||||
|
||||
import java.io.IOException;
|
||||
import com.fasterxml.jackson.annotation.*;
|
||||
|
||||
public enum MsiInterpretationCodingCode {
|
||||
MMR_DEFICIENT, MMR_PROFICIENT, MSI_HIGH, MSI_LOW, STABLE, UNKNOWN;
|
||||
|
||||
@JsonValue
|
||||
public String toValue() {
|
||||
switch (this) {
|
||||
case MMR_DEFICIENT: return "mmr-deficient";
|
||||
case MMR_PROFICIENT: return "mmr-proficient";
|
||||
case MSI_HIGH: return "msi-high";
|
||||
case MSI_LOW: return "msi-low";
|
||||
case STABLE: return "stable";
|
||||
case UNKNOWN: return "unknown";
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@JsonCreator
|
||||
public static MsiInterpretationCodingCode forValue(String value) throws IOException {
|
||||
if (value.equals("mmr-deficient")) return MMR_DEFICIENT;
|
||||
if (value.equals("mmr-proficient")) return MMR_PROFICIENT;
|
||||
if (value.equals("msi-high")) return MSI_HIGH;
|
||||
if (value.equals("msi-low")) return MSI_LOW;
|
||||
if (value.equals("stable")) return STABLE;
|
||||
if (value.equals("unknown")) return UNKNOWN;
|
||||
throw new IOException("Cannot deserialize MSIInterpretationCodingCode");
|
||||
}
|
||||
}
|
23
src/main/java/dev/pcvolkmer/mv64e/mtb/MsiMethodCoding.java
Normal file
23
src/main/java/dev/pcvolkmer/mv64e/mtb/MsiMethodCoding.java
Normal file
@@ -0,0 +1,23 @@
|
||||
package dev.pcvolkmer.mv64e.mtb;
|
||||
|
||||
import com.fasterxml.jackson.annotation.*;
|
||||
import lombok.*;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class MsiMethodCoding {
|
||||
@Getter(onMethod_ = {@JsonProperty("code")})
|
||||
@Setter(onMethod_ = {@JsonProperty("code")})
|
||||
private MsiMethodCodingCode code;
|
||||
@Getter(onMethod_ = {@JsonProperty("display")})
|
||||
@Setter(onMethod_ = {@JsonProperty("display")})
|
||||
private String display;
|
||||
@Getter(onMethod_ = {@JsonProperty("system")})
|
||||
@Setter(onMethod_ = {@JsonProperty("system")})
|
||||
private String system;
|
||||
@Getter(onMethod_ = {@JsonProperty("version")})
|
||||
@Setter(onMethod_ = {@JsonProperty("version")})
|
||||
private String version;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
package dev.pcvolkmer.mv64e.mtb;
|
||||
|
||||
import java.io.IOException;
|
||||
import com.fasterxml.jackson.annotation.*;
|
||||
|
||||
public enum MsiMethodCodingCode {
|
||||
BIOINFORMATIC, IHC, PCR;
|
||||
|
||||
@JsonValue
|
||||
public String toValue() {
|
||||
switch (this) {
|
||||
case BIOINFORMATIC: return "bioinformatic";
|
||||
case IHC: return "IHC";
|
||||
case PCR: return "PCR";
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@JsonCreator
|
||||
public static MsiMethodCodingCode forValue(String value) throws IOException {
|
||||
if (value.equals("bioinformatic")) return BIOINFORMATIC;
|
||||
if (value.equals("IHC")) return IHC;
|
||||
if (value.equals("PCR")) return PCR;
|
||||
throw new IOException("Cannot deserialize MSIMethodCodingCode");
|
||||
}
|
||||
}
|
@@ -7,7 +7,7 @@ import lombok.*;
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class MSIMmr {
|
||||
public class MsiMmr {
|
||||
@Getter(onMethod_ = {@JsonProperty("icScore")})
|
||||
@Setter(onMethod_ = {@JsonProperty("icScore")})
|
||||
private ProteinExpressionIcScoreCoding icScore;
|
@@ -49,6 +49,9 @@ public class Mtb {
|
||||
@Getter(onMethod_ = {@JsonProperty("ngsReports")})
|
||||
@Setter(onMethod_ = {@JsonProperty("ngsReports")})
|
||||
private List<SomaticNgsReport> ngsReports;
|
||||
@Getter(onMethod_ = {@JsonProperty("msiFindings")})
|
||||
@Setter(onMethod_ = {@JsonProperty("msiFindings")})
|
||||
private List<Msi> msiFindings;
|
||||
@Getter(onMethod_ = {@JsonProperty("patient")})
|
||||
@Setter(onMethod_ = {@JsonProperty("patient")})
|
||||
private Patient patient;
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user