Bug
The HQL query in SampleDAOImpl.getUnassignedSampleByAccessionNumber filters on r.canceled = false, but Referral has no canceled property — it uses a ReferralStatus enum instead. This causes the query to fail/error out.
Note: this is unrelated to #3642 / #3701, which fixed SampleTypeRequestDAOImpl binding sampleId as Integer instead of String on a different code path.
Fix
Align the query with ReferralDAOImpl's pattern, e.g. filter using r.status != 'CANCELED' instead of r.canceled = false.
Related tests (blocked, currently commented out in SampleRestControllerTest)
getUnassignedSampleByAccessionNumber_shouldReturn500_dueToExistingCodebaseBug
getUnassignedSampleByAccessionNumber_shouldReturn200WithNotStartedAnalyses_whenUnassignedReferralExists
getUnassignedSampleByAccessionNumber_shouldReturn404_whenSampleNotFound
getUnassignedSampleByAccessionNumber_shouldReturn404_whenSampleHasNoUnassignedReferral
Acceptance Criteria
Bug
The HQL query in
SampleDAOImpl.getUnassignedSampleByAccessionNumberfilters onr.canceled = false, butReferralhas nocanceledproperty — it uses aReferralStatusenum instead. This causes the query to fail/error out.Note: this is unrelated to #3642 / #3701, which fixed
SampleTypeRequestDAOImplbindingsampleIdasIntegerinstead ofStringon a different code path.Fix
Align the query with
ReferralDAOImpl's pattern, e.g. filter usingr.status != 'CANCELED'instead ofr.canceled = false.Related tests (blocked, currently commented out in
SampleRestControllerTest)getUnassignedSampleByAccessionNumber_shouldReturn500_dueToExistingCodebaseBuggetUnassignedSampleByAccessionNumber_shouldReturn200WithNotStartedAnalyses_whenUnassignedReferralExistsgetUnassignedSampleByAccessionNumber_shouldReturn404_whenSampleNotFoundgetUnassignedSampleByAccessionNumber_shouldReturn404_whenSampleHasNoUnassignedReferralAcceptance Criteria
SampleDAOImpl.getUnassignedSampleByAccessionNumberquery fixed to use validReferralproperties