Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
INB
eTRANSAFE
pretox-rest-api
Commits
5548b059
Commit
5548b059
authored
Jun 22, 2021
by
javi
Browse files
export srdomain finding and validation
parent
24574a92
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/main/java/es/bsc/inb/ades/rest/api/controllers/DocumentController.java
View file @
5548b059
...
...
@@ -56,15 +56,15 @@ public class DocumentController {
return
""
;
}
@RequestMapping
(
"/documents/{id}/
e
xport
Find
in
g
/{
find
in
g
Id}/{export_
find
in
g
}"
)
public
String
setExportFinding
(
@PathVariable
(
value
=
"id"
)
Long
id
,
@PathVariable
(
value
=
"
finding
Id"
)
Integer
find
in
g
Id
,
@PathVariable
(
value
=
"export_
find
in
g
"
)
String
export_
find
in
g
)
{
documentService
.
setExportFinding
(
id
,
find
in
g
Id
,
export_
finding
);
@RequestMapping
(
"/documents/{id}/
setE
xport
SRDoma
in/{
srDoma
inId}/{export_
srDoma
in}"
)
public
String
setExportFinding
(
@PathVariable
(
value
=
"id"
)
Long
id
,
@PathVariable
(
value
=
"
srDomain
Id"
)
Integer
srDoma
inId
,
@PathVariable
(
value
=
"export_
srDoma
in"
)
Boolean
export_
srDoma
in
)
{
documentService
.
setExport
SRDomain
Finding
(
id
,
srDoma
inId
,
export_
srDomain
);
return
"true"
;
}
@RequestMapping
(
"/documents/{id}/findingValidation/{findingId}/{status}"
)
public
String
setFindingValidation
(
@PathVariable
(
value
=
"id"
)
Long
id
,
@PathVariable
(
value
=
"findingId"
)
Integer
findingId
,
@PathVariable
(
value
=
"
export_finding"
)
String
export_finding
)
{
documentService
.
set
Export
Finding
(
id
,
findingId
,
export_finding
);
public
String
setFindingValidation
(
@PathVariable
(
value
=
"id"
)
Long
id
,
@PathVariable
(
value
=
"findingId"
)
Integer
findingId
,
@PathVariable
(
value
=
"
status"
)
String
status
)
{
documentService
.
setFinding
Validation
(
id
,
findingId
,
status
);
return
"true"
;
}
...
...
src/main/java/es/bsc/inb/ades/rest/api/services/DocumentService.java
View file @
5548b059
...
...
@@ -28,7 +28,7 @@ public interface DocumentService {
String
findFindingsEvidenceByDocumentId
(
Long
id
);
Boolean
setExportFinding
(
Long
id
,
Integer
findingId
,
String
export_
find
in
g
);
Boolean
setExport
SRDomain
Finding
(
Long
id
,
Integer
findingId
,
Boolean
export_
srdoma
in
);
Boolean
setFindingValidation
(
Long
id
,
Integer
findingId
,
String
status
);
}
src/main/java/es/bsc/inb/ades/rest/api/services/DocumentServiceImpl.java
View file @
5548b059
...
...
@@ -111,9 +111,11 @@ public class DocumentServiceImpl implements DocumentService {
Document
document
=
this
.
findByDocumentId
(
id
);
Finding
findingSelected
=
null
;
for
(
Finding
finding
:
documentAnnotations
.
getFindings
())
{
if
(
finding
.
getFindingId
().
equals
(
findingId
))
{
findingSelected
=
finding
;
break
;
if
(
finding
.
getSrDomainFindings
()!=
null
)
{
if
(
finding
.
getFindingId
().
equals
(
findingId
))
{
findingSelected
=
finding
;
break
;
}
}
}
...
...
@@ -145,20 +147,23 @@ public class DocumentServiceImpl implements DocumentService {
}
@Override
public
Boolean
setExportFinding
(
Long
id
,
Integer
findingId
,
String
export_
finding
)
{
public
Boolean
setExport
SRDomain
Finding
(
Long
id
,
Integer
srDomainId
,
Boolean
export_srdomain
finding
)
{
DocumentAnnotations
documentAnnotations
=
this
.
findDocumentAnnotationsByDocumentId
(
id
);
Finding
f
indingSelected
=
null
;
SRDomainFinding
sRDomainF
indingSelected
=
null
;
for
(
Annotation
annotation
:
documentAnnotations
.
getRelevantSentences
())
{
for
(
Finding
finding
:
annotation
.
getFindings
())
{
if
(
finding
.
getFindingId
().
equals
(
findingId
))
{
findingSelected
=
finding
;
break
;
for
(
SRDomainFinding
srDomainFinding
:
finding
.
getSrDomainFindings
())
{
if
(
srDomainFinding
.
getSrDomainId
().
equals
(
srDomainId
))
{
sRDomainFindingSelected
=
srDomainFinding
;
break
;
}
}
}
}
if
(
f
indingSelected
!=
null
)
{
if
(
sRDomainF
indingSelected
!=
null
)
{
//https://stackoverflow.com/questions/47699646/updating-replacing-a-deeply-nested-object-in-mongodb-with-spring-data-mongodb
f
indingSelected
.
setExport
(
export_finding
);
sRDomainF
indingSelected
.
setExport
(
export_
srdomain
finding
);
documentAnnotationsRepository
.
save
(
documentAnnotations
);
return
true
;
}
...
...
@@ -266,80 +271,83 @@ public class DocumentServiceImpl implements DocumentService {
retStr
.
append
(
"STUDYID|DOMAIN|SRSEQ|SRRISK|SPGRPCD|GRPLBL|SRGRPDOS|SRSEX|SRSTDY|SRSTPHSE|SROBSTDY|SRENDY|SRENPHSE|SROBENDY|SRDOMAIN|SRSPEC|SRTSTCD|SRFNDG|SRORES|SROBSV|SROBSQ|SRSEV|SRPCNT|SRSIGF|SRTRTEF|SRCOMNT"
);
retStr
.
append
(
System
.
getProperty
(
"line.separator"
));
for
(
Finding
finding
:
documentAnnotations
.
getFindings
())
{
for
(
SRDomainFinding
srDomainFinding
:
finding
.
getSrDomainFindings
())
{
//STUDYID -- > Study Identifier
retStr
.
append
(
id
);
retStr
.
append
(
"|"
);
//DOMAIN -- > Domain Abbreviation, always SR
retStr
.
append
(
"SR"
);
retStr
.
append
(
"|"
);
//SRSEQ -- > Sequence number
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRRISK --> Effect Level Associated with a Group/Sex, NOEL, LOEL, NOAEL, LOAEL, HNSTD, STD, MTD
retStr
.
append
(
srDomainFinding
.
getSRRISK
()==
null
?
""
:
srDomainFinding
.
getSRRISK
());
retStr
.
append
(
"|"
);
//SPGRPCD --> Sponsor-defined Group Code, group 1 , A
retStr
.
append
(
srDomainFinding
.
getSPGRPCD
()==
null
?
""
:
srDomainFinding
.
getSPGRPCD
());
retStr
.
append
(
"|"
);
//GRPLBL --> Sponsor-defined Group Name, "low dose", "mid dose"
retStr
.
append
(
srDomainFinding
.
getGRPLBL
()==
null
?
""
:
srDomainFinding
.
getGRPLBL
());
retStr
.
append
(
"|"
);
//SRGRPDOS --> Group Dose Level, "20 mg/kg"
retStr
.
append
(
srDomainFinding
.
getSRGRPDOS
()==
null
?
""
:
srDomainFinding
.
getSRGRPDOS
());
retStr
.
append
(
"|"
);
//SRSEX -- > Sex
retStr
.
append
(
srDomainFinding
.
getSRSEX
()==
null
?
""
:
srDomainFinding
.
getSRSEX
());
retStr
.
append
(
"|"
);
//SRSTDY --> Study Day of Start of Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRSTPHSE --> Study Phase of first Observation, “PRE-DOSING”, “DOSING”, “RECOVERY”
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SROBSTDY --> Start Phase Day of Observation
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRENPHSE -->Study Phase of last Observation
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRDOMAIN --> Domain of Finding
retStr
.
append
(
srDomainFinding
.
getSRDOMAIN
()==
null
?
""
:
srDomainFinding
.
getSRDOMAIN
());
retStr
.
append
(
"|"
);
//SRSPEC --> Specimen of Finding
retStr
.
append
(
srDomainFinding
.
getSRSPEC
()==
null
?
""
:
srDomainFinding
.
getSRSPEC
());
retStr
.
append
(
"|"
);
//SRTSTCD --> Test Short Name
retStr
.
append
(
srDomainFinding
.
getSRTSTCD
()==
null
?
""
:
srDomainFinding
.
getSRTSTCD
());
retStr
.
append
(
"|"
);
//SRFNDG --> Finding
retStr
.
append
(
srDomainFinding
.
getSRFNDG
()==
null
?
""
:
srDomainFinding
.
getSRFNDG
());
retStr
.
append
(
"|"
);
//SRORES --> Observation (original result)
retStr
.
append
(
srDomainFinding
.
getSRORES
()==
null
?
""
:
srDomainFinding
.
getSRORES
());
retStr
.
append
(
"|"
);
//SROBSV --> Manifestation of Finding, “I” (Increase), “D” (Decrease), “P” (Present) or “A” (Absent)
retStr
.
append
(
srDomainFinding
.
getSROBSV
()==
null
?
""
:
srDomainFinding
.
getSROBSV
());
retStr
.
append
(
"|"
);
//SROBSQ --> Observation Qualifier, “R” (Reversible), “T” (Transient) or ‘none’
retStr
.
append
(
srDomainFinding
.
getSROBSQ
()==
null
?
""
:
srDomainFinding
.
getSROBSQ
());
retStr
.
append
(
"|"
);
//SRSEV --> Severity of Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRPCNT --> Scale of this Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRSIGF --> Statistical Significance
retStr
.
append
(
srDomainFinding
.
getSRSIGF
()==
null
?
""
:
srDomainFinding
.
getSRSIGF
());
retStr
.
append
(
"|"
);
//SRTRTEF --> Treatment-Related
retStr
.
append
(
srDomainFinding
.
getSRTRTEF
()==
null
?
""
:
srDomainFinding
.
getSRTRTEF
());
retStr
.
append
(
"|"
);
//SRCOMNT --> Comment
retStr
.
append
(
"\n"
);
if
(
finding
.
getSrDomainFindings
()!=
null
)
{
for
(
SRDomainFinding
srDomainFinding
:
finding
.
getSrDomainFindings
())
{
//STUDYID -- > Study Identifier
retStr
.
append
(
id
);
retStr
.
append
(
"|"
);
//DOMAIN -- > Domain Abbreviation, always SR
retStr
.
append
(
"SR"
);
retStr
.
append
(
"|"
);
//SRSEQ -- > Sequence number
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRRISK --> Effect Level Associated with a Group/Sex, NOEL, LOEL, NOAEL, LOAEL, HNSTD, STD, MTD
retStr
.
append
(
srDomainFinding
.
getSRRISK
()==
null
?
""
:
srDomainFinding
.
getSRRISK
());
retStr
.
append
(
"|"
);
//SPGRPCD --> Sponsor-defined Group Code, group 1 , A
retStr
.
append
(
srDomainFinding
.
getSPGRPCD
()==
null
?
""
:
srDomainFinding
.
getSPGRPCD
());
retStr
.
append
(
"|"
);
//GRPLBL --> Sponsor-defined Group Name, "low dose", "mid dose"
retStr
.
append
(
srDomainFinding
.
getGRPLBL
()==
null
?
""
:
srDomainFinding
.
getGRPLBL
());
retStr
.
append
(
"|"
);
//SRGRPDOS --> Group Dose Level, "20 mg/kg"
retStr
.
append
(
srDomainFinding
.
getSRGRPDOS
()==
null
?
""
:
srDomainFinding
.
getSRGRPDOS
());
retStr
.
append
(
"|"
);
//SRSEX -- > Sex
retStr
.
append
(
srDomainFinding
.
getSRSEX
()==
null
?
""
:
srDomainFinding
.
getSRSEX
());
retStr
.
append
(
"|"
);
//SRSTDY --> Study Day of Start of Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRSTPHSE --> Study Phase of first Observation, “PRE-DOSING”, “DOSING”, “RECOVERY”
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SROBSTDY --> Start Phase Day of Observation
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRENPHSE -->Study Phase of last Observation
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRDOMAIN --> Domain of Finding
retStr
.
append
(
srDomainFinding
.
getSRDOMAIN
()==
null
?
""
:
srDomainFinding
.
getSRDOMAIN
());
retStr
.
append
(
"|"
);
//SRSPEC --> Specimen of Finding
retStr
.
append
(
srDomainFinding
.
getSRSPEC
()==
null
?
""
:
srDomainFinding
.
getSRSPEC
());
retStr
.
append
(
"|"
);
//SRTSTCD --> Test Short Name
retStr
.
append
(
srDomainFinding
.
getSRTSTCD
()==
null
?
""
:
srDomainFinding
.
getSRTSTCD
());
retStr
.
append
(
"|"
);
//SRFNDG --> Finding
retStr
.
append
(
srDomainFinding
.
getSRFNDG
()==
null
?
""
:
srDomainFinding
.
getSRFNDG
());
retStr
.
append
(
"|"
);
//SRORES --> Observation (original result)
retStr
.
append
(
srDomainFinding
.
getSRORES
()==
null
?
""
:
srDomainFinding
.
getSRORES
());
retStr
.
append
(
"|"
);
//SROBSV --> Manifestation of Finding, “I” (Increase), “D” (Decrease), “P” (Present) or “A” (Absent)
retStr
.
append
(
srDomainFinding
.
getSROBSV
()==
null
?
""
:
srDomainFinding
.
getSROBSV
());
retStr
.
append
(
"|"
);
//SROBSQ --> Observation Qualifier, “R” (Reversible), “T” (Transient) or ‘none’
retStr
.
append
(
srDomainFinding
.
getSROBSQ
()==
null
?
""
:
srDomainFinding
.
getSROBSQ
());
retStr
.
append
(
"|"
);
//SRSEV --> Severity of Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRPCNT --> Scale of this Finding
retStr
.
append
(
""
);
retStr
.
append
(
"|"
);
//SRSIGF --> Statistical Significance
retStr
.
append
(
srDomainFinding
.
getSRSIGF
()==
null
?
""
:
srDomainFinding
.
getSRSIGF
());
retStr
.
append
(
"|"
);
//SRTRTEF --> Treatment-Related
retStr
.
append
(
srDomainFinding
.
getSRTRTEF
()==
null
?
""
:
srDomainFinding
.
getSRTRTEF
());
retStr
.
append
(
"|"
);
//SRCOMNT --> Comment
retStr
.
append
(
"\n"
);
}
}
}
return
retStr
.
toString
().
getBytes
(
Charset
.
forName
(
"UTF-8"
));
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment