From a0599ae4d12acafb934b40f52d4a771709b3e583 Mon Sep 17 00:00:00 2001 From: Kseniya Tomskikh Date: Mon, 16 Oct 2017 20:06:52 +0700 Subject: PDSUI-2318 Created custom swagger format for TM --- .../utils/CustomSwaggerJsonFormats.scala | 132 +++++++++++++-------- 1 file changed, 80 insertions(+), 52 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuicommon/utils') diff --git a/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala b/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala index 6d2a068..b122fab 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala @@ -17,8 +17,16 @@ import xyz.driver.pdsuidomain.formats.json.sprayformats.trialissue._ import xyz.driver.core.swagger.CustomSwaggerJsonConverter._ import xyz.driver.entities.patient.CancerType import xyz.driver.pdsuicommon.concurrent.BridgeUploadQueue +import xyz.driver.pdsuidomain.fakes.entities.common +import xyz.driver.pdsuidomain.formats.json.sprayformats.bridgeuploadqueue._ +import xyz.driver.pdsuidomain.formats.json.sprayformats.record._ +import xyz.driver.pdsuidomain.formats.json.sprayformats.document._ import xyz.driver.pdsuidomain.services.CriterionService.RichCriterion import xyz.driver.pdsuidomain.services.ExtractedDataService.RichExtractedData +import xyz.driver.pdsuidomain.services.PatientCriterionService.{DraftPatientCriterion, RichPatientCriterion} +import xyz.driver.pdsuidomain.services.PatientEligibleTrialService.RichPatientEligibleTrial +import xyz.driver.pdsuidomain.services.PatientHypothesisService.RichPatientHypothesis +import xyz.driver.pdsuidomain.services.PatientLabelService.RichPatientLabel import scala.collection.immutable @@ -29,11 +37,18 @@ object CustomSwaggerJsonFormats { classOf[LocalDate] -> stringProperty(example = Some("2010-12-31")), classOf[UuidId[_]] -> stringProperty(example = Some("370b0450-35cb-4aab-ba74-0145be75add5")), classOf[StringId[_]] -> stringProperty(), - classOf[LongId[_]] -> stringProperty() + classOf[LongId[_]] -> stringProperty(), + classOf[CancerType] -> stringProperty() ) + + val customCommonObjectsExamples = immutable.Map[Class[_], JsValue]( + classOf[BridgeUploadQueue.Item] -> queueUploadItemFormat.write(common.nextBridgeUploadQueueItem()), + classOf[ProviderType] -> providerTypeFormat.write(common.nextProviderType()), + classOf[DocumentType] -> documentTypeFormat.write(common.nextDocumentType()) + ) + val customTrialCurationProperties = immutable.Map[Class[_], Property]( classOf[Trial.Status] -> stringProperty(), - classOf[CancerType] -> stringProperty(), classOf[TrialHistory.Action] -> stringProperty(), classOf[TrialHistory.State] -> stringProperty() ) ++ customCommonProperties @@ -59,70 +74,83 @@ object CustomSwaggerJsonFormats { // records-processing-service object Rep { - import xyz.driver.pdsuidomain.fakes.entities.rep - import xyz.driver.pdsuidomain.formats.json.sprayformats.document - import xyz.driver.pdsuidomain.formats.json.sprayformats.documentissue - import xyz.driver.pdsuidomain.formats.json.sprayformats.documenthistory - import xyz.driver.pdsuidomain.formats.json.sprayformats.record - import xyz.driver.pdsuidomain.formats.json.sprayformats.recordissue - import xyz.driver.pdsuidomain.formats.json.sprayformats.recordhistory - import xyz.driver.pdsuidomain.formats.json.sprayformats.bridgeuploadqueue - import xyz.driver.pdsuidomain.formats.json.sprayformats.extracteddata + import xyz.driver.pdsuidomain.fakes.entities.recordprocessing._ + import xyz.driver.pdsuidomain.formats.json.sprayformats._ + + val customRecordProcessingProperties = immutable.Map[Class[_], Property]( + classOf[MedicalRecord.Status] -> stringProperty(), + classOf[MedicalRecordHistory.Action] -> stringProperty(), + classOf[MedicalRecordHistory.State] -> stringProperty(), + classOf[Document.Status] -> stringProperty(), + classOf[Document.RequiredType] -> stringProperty(), + classOf[DocumentHistory.Action] -> stringProperty(), + classOf[DocumentHistory.State] -> stringProperty() + ) ++ customCommonProperties val customRepObjectsExamples = immutable.Map[Class[_], JsValue]( classOf[Document] -> - document.documentFormat.write(rep.DocumentGen.nextDocument()), - classOf[Document.Meta] -> - document.documentMetaFormat.write(rep.DocumentGen.nextDocumentMeta()), - classOf[TextJson[Document.Meta]] -> - document.fullDocumentMetaFormat.write(rep.DocumentGen.nextDocumentMetaJson()), - classOf[Document.RequiredType] -> - document.requiredTypeFormat.write(rep.DocumentGen.nextDocumentRequiredType()), - classOf[Document.Status] -> - document.documentStatusFormat.write(rep.DocumentGen.nextDocumentStatus()), + document.documentFormat.write(nextDocument()), classOf[DocumentIssue] -> - documentissue.documentIssueFormat.write(rep.DocumentGen.nextDocumentIssue()), + documentissue.documentIssueFormat.write(nextDocumentIssue()), classOf[DocumentHistory] -> - documenthistory.documentHistoryFormat.write(rep.DocumentGen.nextDocumentHistory()), - classOf[DocumentHistory.Action] -> - documenthistory.documentActionFormat.write(rep.DocumentGen.nextDocumentHistoryAction()), - classOf[DocumentHistory.State] -> - documenthistory.documentStateFormat.write(rep.DocumentGen.nextDocumentHistoryState()), - classOf[ProviderType] -> - record.providerTypeFormat.write(rep.MedicalRecordGen.nextProviderType()), + documenthistory.documentHistoryFormat.write(nextDocumentHistory()), classOf[TextJson[List[MedicalRecord.Meta]]] -> - record.recordMetaFormat.write(rep.MedicalRecordGen.nextMedicalRecordMetasJson()), + record.recordMetaFormat.write(nextMedicalRecordMetaJson()), classOf[MedicalRecord] -> - record.recordFormat.write(rep.MedicalRecordGen.nextMedicalRecord()), - classOf[MedicalRecord.Meta] -> - record.recordMetaTypeFormat.write(rep.MedicalRecordGen.nextMedicalRecordMeta()), - classOf[MedicalRecord.Status] -> - record.recordStatusFormat.write(rep.MedicalRecordGen.nextMedicalRecordStatus()), + record.recordFormat.write(nextMedicalRecord()), classOf[MedicalRecordIssue] -> - recordissue.recordIssueFormat.write(rep.MedicalRecordGen.nextMedicalRecordIssue()), + recordissue.recordIssueFormat.write(nextMedicalRecordIssue()), classOf[MedicalRecordHistory] -> - recordhistory.recordHistoryFormat.write(rep.MedicalRecordGen.nextMedicalRecordHistory()), - classOf[MedicalRecordHistory.Action] -> - recordhistory.recordActionFormat.write(rep.MedicalRecordGen.nextMedicalRecordHistoryAction()), - classOf[MedicalRecordHistory.State] -> - recordhistory.recordStateFormat.write(rep.MedicalRecordGen.nextMedicalRecordHistoryState()), - classOf[BridgeUploadQueue.Item] -> - bridgeuploadqueue.queueUploadItemFormat.write(rep.BridgeUploadQueueGen.nextBridgeUploadQueueItem()), + recordhistory.recordHistoryFormat.write(nextMedicalRecordHistory()), + classOf[RichExtractedData] -> + extracteddata.extractedDataFormat.write(nextRichExtractedData()), + classOf[MedicalRecord.Meta] -> + record.recordMetaTypeFormat.write(nextMedicalRecordMeta()), + classOf[TextJson[Document.Meta]] -> + document.fullDocumentMetaFormat.write(nextDocumentMetaJson()), classOf[ExtractedData.Meta] -> - extracteddata.extractedDataMetaFormat.write(rep.ExtractedDataGen.nextExtractedDataMeta()), + extracteddata.extractedDataMetaFormat.write(nextExtractedDataMeta()), classOf[ExtractedData.Meta.Evidence] -> - extracteddata.metaEvidenceFormat.write(rep.ExtractedDataGen.nextExtractedDataMetaEvidence()), + extracteddata.metaEvidenceFormat.write(nextExtractedDataMetaEvidence()), classOf[ExtractedData.Meta.Keyword] -> - extracteddata.metaKeywordFormat.write(rep.ExtractedDataGen.nextExtractedDataMetaKeyword()), + extracteddata.metaKeywordFormat.write(nextExtractedDataMetaKeyword()), classOf[ExtractedData.Meta.TextLayerPosition] -> - extracteddata.metaTextLayerPositionFormat.write(rep.ExtractedDataGen.nextExtractedDataMetaTextLayerPosition()), + extracteddata.metaTextLayerPositionFormat.write(nextExtractedDataMetaTextLayerPosition()), classOf[TextJson[ExtractedData.Meta]] -> - extracteddata.fullExtractedDataMetaFormat.write(rep.ExtractedDataGen.nextExtractedDataMetaJson()), - classOf[RichExtractedData] -> - extracteddata.extractedDataFormat.write(rep.ExtractedDataGen.nextRichExtractedData()), - classOf[ExtractedDataLabel] -> - extracteddata.extractedDataLabelWriter.write(rep.ExtractedDataGen.nextExtractedDataLabel()) - ) + extracteddata.fullExtractedDataMetaFormat.write(nextExtractedDataMetaJson()) + ) ++ customCommonObjectsExamples + } + + object treatmentmatching { + import xyz.driver.pdsuidomain.fakes.entities.treatmentmatching._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patient._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patientcriterion._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patientdefiningcriteria._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patienteligibletrial._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patientlabel._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patienthypothesis._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patienthistory._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.patientissue._ + + val customTreatmentMatchingProperties = immutable.Map[Class[_], Property]( + classOf[Patient.Status] -> stringProperty(), + classOf[PatientHistory.Action] -> stringProperty(), + classOf[PatientHistory.State] -> stringProperty() + ) ++ customCommonProperties + + val customTreatmentMatchingObjectsExamples = immutable.Map[Class[_], JsValue]( + classOf[Patient] -> patientWriter.write(nextPatient()), + classOf[RichPatientLabel] -> richPatientLabelWriter.write(nextRichPatientLabel()), + classOf[PatientLabel] -> patientLabelDefiningCriteriaWriter.write(nextPatientLabel()), + classOf[RichPatientCriterion] -> patientCriterionWriter.write(nextRichPatientCriterion()), + classOf[DraftPatientCriterion] -> draftPatientCriterionFormat.write(nextDraftPatientCriterion()), + classOf[PatientLabelEvidenceView] -> patientLabelEvidenceWriter.write(nextPatientLabelEvidenceView()), + classOf[RichPatientEligibleTrial] -> patientEligibleTrialWriter.write(nextRichPatientEligibleTrial()), + classOf[PatientHypothesis] -> patientHypothesisWriter.write(nextPatientHypothesis()), + classOf[RichPatientHypothesis] -> richPatientHypothesisWriter.write(nextRichPatientHypothesis()), + classOf[PatientHistory] -> patientHistoryFormat.write(nextPatientHistory()), + classOf[PatientIssue] -> patientIssueWriter.write(nextPatientIssue()) + ) ++ customCommonObjectsExamples } } -- cgit v1.2.3 From eb9a75c226b005e5989d2a6494160ebe0dd9d9e7 Mon Sep 17 00:00:00 2001 From: Kseniya Tomskikh Date: Tue, 17 Oct 2017 16:17:47 +0700 Subject: Fixed custom formats for rep and tric --- .../utils/CustomSwaggerJsonFormats.scala | 158 +++++++++++---------- .../fakes/entities/recordprocessing.scala | 4 +- .../fakes/entities/treatmentmatching.scala | 129 ++++++++++++++++- 3 files changed, 210 insertions(+), 81 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuicommon/utils') diff --git a/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala b/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala index b122fab..004a914 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/utils/CustomSwaggerJsonFormats.scala @@ -4,20 +4,16 @@ import java.time.{LocalDate, LocalDateTime} import io.swagger.models.properties.Property import spray.json.JsValue -import xyz.driver.pdsuicommon.domain.{LongId, StringId, TextJson, UuidId} +import xyz.driver.pdsuicommon.domain.{LongId, StringId, UuidId} import xyz.driver.pdsuidomain.entities._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.arm._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.criterion._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.intervention._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.hypothesis._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.studydesign._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.trial._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.trialhistory._ -import xyz.driver.pdsuidomain.formats.json.sprayformats.trialissue._ +import xyz.driver.pdsuidomain.formats.json.sprayformats.ListResponse._ import xyz.driver.core.swagger.CustomSwaggerJsonConverter._ import xyz.driver.entities.patient.CancerType import xyz.driver.pdsuicommon.concurrent.BridgeUploadQueue +import xyz.driver.pdsuidomain.entities.export.patient.ExportPatientWithLabels +import xyz.driver.pdsuidomain.entities.export.trial.ExportTrialWithLabels import xyz.driver.pdsuidomain.fakes.entities.common +import xyz.driver.pdsuidomain.formats.json.sprayformats.ListResponse import xyz.driver.pdsuidomain.formats.json.sprayformats.bridgeuploadqueue._ import xyz.driver.pdsuidomain.formats.json.sprayformats.record._ import xyz.driver.pdsuidomain.formats.json.sprayformats.document._ @@ -47,35 +43,48 @@ object CustomSwaggerJsonFormats { classOf[DocumentType] -> documentTypeFormat.write(common.nextDocumentType()) ) - val customTrialCurationProperties = immutable.Map[Class[_], Property]( - classOf[Trial.Status] -> stringProperty(), - classOf[TrialHistory.Action] -> stringProperty(), - classOf[TrialHistory.State] -> stringProperty() - ) ++ customCommonProperties - - val customTrialCurationObjectsExamples = immutable.Map[Class[_], JsValue]( - classOf[Trial] -> trialWriter.write(xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextTrial()), - classOf[Arm] -> armFormat.write(xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextArm()), - classOf[TrialHistory] -> trialHistoryFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextTrialHistory()), - classOf[TrialIssue] -> trialIssueWriter.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextTrialIssue()), - classOf[RichCriterion] -> richCriterionFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextRichCriterion()), - classOf[InterventionWithArms] -> interventionFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextInterventionWithArms()), - classOf[InterventionType] -> interventionTypeFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextInterventionType()), - classOf[Hypothesis] -> hypothesisFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextHypothesis()), - classOf[StudyDesign] -> studyDesignFormat.write( - xyz.driver.pdsuidomain.fakes.entities.trialcuration.nextStudyDesign()) - ) + object trialcuration { + import xyz.driver.pdsuidomain.fakes.entities.trialcuration._ + import xyz.driver.pdsuidomain.fakes.entities.export + import xyz.driver.pdsuidomain.formats.json.sprayformats.export._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.arm._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.criterion._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.intervention._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.hypothesis._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.studydesign._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.trial._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.trialhistory._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.trialissue._ + + val customTrialCurationProperties = immutable.Map[Class[_], Property]( + classOf[Trial.Status] -> stringProperty(), + classOf[TrialHistory.Action] -> stringProperty(), + classOf[TrialHistory.State] -> stringProperty() + ) ++ customCommonProperties + + val customTrialCurationObjectsExamples = immutable.Map[Class[_], JsValue]( + classOf[Trial] -> trialWriter.write(nextTrial()), + classOf[Arm] -> armFormat.write(nextArm()), + classOf[TrialHistory] -> trialHistoryFormat.write(nextTrialHistory()), + classOf[TrialIssue] -> trialIssueWriter.write(nextTrialIssue()), + classOf[RichCriterion] -> richCriterionFormat.write(nextRichCriterion()), + classOf[InterventionWithArms] -> interventionFormat.write(nextInterventionWithArms()), + classOf[InterventionType] -> interventionTypeFormat.write(nextInterventionType()), + classOf[Hypothesis] -> hypothesisFormat.write(nextHypothesis()), + classOf[StudyDesign] -> studyDesignFormat.write(nextStudyDesign()), + classOf[ExportTrialWithLabels] -> trialWithLabelsFormat.write(export.nextExportTrialWithLabels()) + ) + } - // records-processing-service - object Rep { + object recordprocessing { import xyz.driver.pdsuidomain.fakes.entities.recordprocessing._ - import xyz.driver.pdsuidomain.formats.json.sprayformats._ + import xyz.driver.pdsuidomain.fakes.entities.export + import xyz.driver.pdsuidomain.formats.json.sprayformats.export._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.documentissue._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.documenthistory._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.recordissue._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.recordhistory._ + import xyz.driver.pdsuidomain.formats.json.sprayformats.extracteddata._ val customRecordProcessingProperties = immutable.Map[Class[_], Property]( classOf[MedicalRecord.Status] -> stringProperty(), @@ -87,37 +96,15 @@ object CustomSwaggerJsonFormats { classOf[DocumentHistory.State] -> stringProperty() ) ++ customCommonProperties - val customRepObjectsExamples = immutable.Map[Class[_], JsValue]( - classOf[Document] -> - document.documentFormat.write(nextDocument()), - classOf[DocumentIssue] -> - documentissue.documentIssueFormat.write(nextDocumentIssue()), - classOf[DocumentHistory] -> - documenthistory.documentHistoryFormat.write(nextDocumentHistory()), - classOf[TextJson[List[MedicalRecord.Meta]]] -> - record.recordMetaFormat.write(nextMedicalRecordMetaJson()), - classOf[MedicalRecord] -> - record.recordFormat.write(nextMedicalRecord()), - classOf[MedicalRecordIssue] -> - recordissue.recordIssueFormat.write(nextMedicalRecordIssue()), - classOf[MedicalRecordHistory] -> - recordhistory.recordHistoryFormat.write(nextMedicalRecordHistory()), - classOf[RichExtractedData] -> - extracteddata.extractedDataFormat.write(nextRichExtractedData()), - classOf[MedicalRecord.Meta] -> - record.recordMetaTypeFormat.write(nextMedicalRecordMeta()), - classOf[TextJson[Document.Meta]] -> - document.fullDocumentMetaFormat.write(nextDocumentMetaJson()), - classOf[ExtractedData.Meta] -> - extracteddata.extractedDataMetaFormat.write(nextExtractedDataMeta()), - classOf[ExtractedData.Meta.Evidence] -> - extracteddata.metaEvidenceFormat.write(nextExtractedDataMetaEvidence()), - classOf[ExtractedData.Meta.Keyword] -> - extracteddata.metaKeywordFormat.write(nextExtractedDataMetaKeyword()), - classOf[ExtractedData.Meta.TextLayerPosition] -> - extracteddata.metaTextLayerPositionFormat.write(nextExtractedDataMetaTextLayerPosition()), - classOf[TextJson[ExtractedData.Meta]] -> - extracteddata.fullExtractedDataMetaFormat.write(nextExtractedDataMetaJson()) + val customRecordProcessingObjectsExamples = immutable.Map[Class[_], JsValue]( + classOf[Document] -> documentFormat.write(nextDocument()), + classOf[DocumentIssue] -> documentIssueFormat.write(nextDocumentIssue()), + classOf[DocumentHistory] -> documentHistoryFormat.write(nextDocumentHistory()), + classOf[MedicalRecord] -> recordFormat.write(nextMedicalRecord()), + classOf[MedicalRecordIssue] -> recordIssueFormat.write(nextMedicalRecordIssue()), + classOf[MedicalRecordHistory] -> recordHistoryFormat.write(nextMedicalRecordHistory()), + classOf[RichExtractedData] -> extractedDataFormat.write(nextRichExtractedData()), + classOf[ExportPatientWithLabels] -> patientWithLabelsFormat.write(export.nextExportPatientWithLabels()) ) ++ customCommonObjectsExamples } @@ -139,17 +126,32 @@ object CustomSwaggerJsonFormats { ) ++ customCommonProperties val customTreatmentMatchingObjectsExamples = immutable.Map[Class[_], JsValue]( - classOf[Patient] -> patientWriter.write(nextPatient()), - classOf[RichPatientLabel] -> richPatientLabelWriter.write(nextRichPatientLabel()), - classOf[PatientLabel] -> patientLabelDefiningCriteriaWriter.write(nextPatientLabel()), - classOf[RichPatientCriterion] -> patientCriterionWriter.write(nextRichPatientCriterion()), - classOf[DraftPatientCriterion] -> draftPatientCriterionFormat.write(nextDraftPatientCriterion()), - classOf[PatientLabelEvidenceView] -> patientLabelEvidenceWriter.write(nextPatientLabelEvidenceView()), - classOf[RichPatientEligibleTrial] -> patientEligibleTrialWriter.write(nextRichPatientEligibleTrial()), - classOf[PatientHypothesis] -> patientHypothesisWriter.write(nextPatientHypothesis()), - classOf[RichPatientHypothesis] -> richPatientHypothesisWriter.write(nextRichPatientHypothesis()), - classOf[PatientHistory] -> patientHistoryFormat.write(nextPatientHistory()), - classOf[PatientIssue] -> patientIssueWriter.write(nextPatientIssue()) + classOf[Patient] -> patientWriter.write(nextPatient()), + classOf[RichPatientLabel] -> richPatientLabelWriter.write(nextRichPatientLabel()), + classOf[PatientLabel] -> patientLabelDefiningCriteriaWriter.write(nextPatientLabel()), + classOf[RichPatientCriterion] -> patientCriterionWriter.write(nextRichPatientCriterion()), + classOf[DraftPatientCriterion] -> draftPatientCriterionFormat.write(nextDraftPatientCriterion()), + classOf[PatientLabelEvidenceView] -> patientLabelEvidenceWriter.write(nextPatientLabelEvidenceView()), + classOf[RichPatientEligibleTrial] -> patientEligibleTrialWriter.write(nextRichPatientEligibleTrial()), + classOf[PatientHypothesis] -> patientHypothesisWriter.write(nextPatientHypothesis()), + classOf[RichPatientHypothesis] -> richPatientHypothesisWriter.write(nextRichPatientHypothesis()), + classOf[PatientHistory] -> patientHistoryFormat.write(nextPatientHistory()), + classOf[PatientIssue] -> patientIssueWriter.write(nextPatientIssue()), + classOf[ListResponse[Patient]] -> listResponseWriter[Patient].write(nextPatientListResponse()), + classOf[ListResponse[PatientLabel]] -> listResponseWriter[PatientLabel].write(nextPatientLabelListResponse()), + classOf[ListResponse[RichPatientLabel]] -> listResponseWriter[RichPatientLabel].write( + nextRichPatientLabelListResponse()), + classOf[ListResponse[RichPatientCriterion]] -> listResponseWriter[RichPatientCriterion].write( + nextRichPatientCriterionListResponse()), + classOf[ListResponse[PatientLabelEvidenceView]] -> listResponseWriter[PatientLabelEvidenceView].write( + nextPatientLabelEvidenceViewListResponse()), + classOf[ListResponse[RichPatientEligibleTrial]] -> listResponseWriter[RichPatientEligibleTrial].write( + nextRichPatientEligibleTrialListResponse()), + classOf[ListResponse[RichPatientHypothesis]] -> listResponseWriter[RichPatientHypothesis].write( + nextRichPatientHypothesisListResponse()), + classOf[ListResponse[PatientIssue]] -> listResponseWriter[PatientIssue].write(nextPatientIssuesListResponse()), + classOf[ListResponse[PatientHistory]] -> listResponseWriter[PatientHistory].write( + nextPatientHistoryListResponse()) ) ++ customCommonObjectsExamples } diff --git a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/recordprocessing.scala b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/recordprocessing.scala index 279ea38..d2a648c 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/recordprocessing.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/recordprocessing.scala @@ -105,7 +105,7 @@ object recordprocessing { def nextMedicalRecord(): MedicalRecord = MedicalRecord( id = nextLongId[MedicalRecord], status = nextMedicalRecordStatus(), - previousStatus = None, + previousStatus = nextOption(generators.oneOf[MedicalRecord.Status](MedicalRecord.Status.AllPrevious)), assignee = nextOption(nextStringId), previousAssignee = nextOption(nextStringId), lastActiveUserId = nextOption(nextStringId), @@ -168,7 +168,7 @@ object recordprocessing { Document( id = nextLongId[Document], status = nextDocumentStatus(), - previousStatus = None, + previousStatus = nextOption(generators.oneOf[Document.Status](Document.Status.AllPrevious)), assignee = nextOption(nextStringId[User]), previousAssignee = nextOption(nextStringId[User]), lastActiveUserId = nextOption(nextStringId[User]), diff --git a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/treatmentmatching.scala b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/treatmentmatching.scala index 35aa5ef..b0ca136 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/treatmentmatching.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/treatmentmatching.scala @@ -4,6 +4,7 @@ import xyz.driver.entities.labels.Label import xyz.driver.fakes import xyz.driver.pdsuicommon.domain.{LongId, StringId, User} import xyz.driver.pdsuidomain.entities._ +import xyz.driver.pdsuidomain.formats.json.sprayformats.ListResponse import xyz.driver.pdsuidomain.services.PatientCriterionService.{DraftPatientCriterion, RichPatientCriterion} import xyz.driver.pdsuidomain.services.PatientEligibleTrialService.RichPatientEligibleTrial import xyz.driver.pdsuidomain.services.PatientHypothesisService.RichPatientHypothesis @@ -27,7 +28,7 @@ object treatmentmatching { name = nextFullName[Patient], dob = nextLocalDate, assignee = generators.nextOption(nextStringId[User]), - previousStatus = generators.nextOption(nextPatientStatus), + previousStatus = generators.nextOption(generators.oneOf[Patient.Status](Patient.Status.AllPrevious)), previousAssignee = generators.nextOption(nextStringId[User]), lastActiveUserId = generators.nextOption(nextStringId[User]), isUpdateRequired = generators.nextBoolean(), @@ -164,4 +165,130 @@ object treatmentmatching { created = nextLocalDateTime ) + def nextPatientListResponse(): ListResponse[Patient] = { + val xs: Seq[Patient] = Seq.fill(3)(nextPatient()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextRichPatientLabelListResponse(): ListResponse[RichPatientLabel] = { + val xs: Seq[RichPatientLabel] = Seq.fill(3)(nextRichPatientLabel()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextPatientLabelListResponse(): ListResponse[PatientLabel] = { + val xs: Seq[PatientLabel] = Seq.fill(3)(nextPatientLabel()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextRichPatientCriterionListResponse(): ListResponse[RichPatientCriterion] = { + val xs: Seq[RichPatientCriterion] = Seq.fill(3)(nextRichPatientCriterion()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextRichPatientEligibleTrialListResponse(): ListResponse[RichPatientEligibleTrial] = { + val xs: Seq[RichPatientEligibleTrial] = Seq.fill(3)(nextRichPatientEligibleTrial()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextRichPatientHypothesisListResponse(): ListResponse[RichPatientHypothesis] = { + val xs: Seq[RichPatientHypothesis] = Seq.fill(3)(nextRichPatientHypothesis()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextPatientLabelEvidenceViewListResponse(): ListResponse[PatientLabelEvidenceView] = { + val xs: Seq[PatientLabelEvidenceView] = Seq.fill(3)(nextPatientLabelEvidenceView()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextPatientIssuesListResponse(): ListResponse[PatientIssue] = { + val xs: Seq[PatientIssue] = Seq.fill(3)(nextPatientIssue()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + + def nextPatientHistoryListResponse(): ListResponse[PatientHistory] = { + val xs: Seq[PatientHistory] = Seq.fill(3)(nextPatientHistory()) + val pageSize = generators.nextInt(xs.size, 1) + ListResponse( + items = xs, + meta = ListResponse.Meta( + itemsCount = xs.size, + pageNumber = generators.nextInt(xs.size / pageSize), + pageSize = pageSize, + lastUpdate = generators.nextOption(nextLocalDateTime) + ) + ) + } + } -- cgit v1.2.3