Opened 11 years ago

Closed 11 years ago

Last modified 10 years ago

#449 closed enhancement (fixed)

Add support for follow-up blood samples to the blood registration wizard

Reported by: Nicklas Nordborg Owned by: olle
Priority: major Milestone: Reggie v2.13
Component: net.sf.basedb.reggie Keywords:
Cc:

Description

Most patients will have follow-up blood samples taken 6, 12 and 36 months after operation. The blood registration wizard should be able to register them. The BloodSample annotation should be extended with options for the three time-points (it currently allow PreNeo and PreOp). If possible, it would be nice if the wizard could determine the most likely value based on information already registered.

Another difficulty is that the ID numbers on the referrals doesn't follow the regular 7-digit pattern used for the pathology or initial blood sample referral forms. This might also work to our advantage if we can use this to determine what kind of blood sample it is.

Change History (16)

comment:1 by Nicklas Nordborg, 11 years ago

Milestone: Reggie v2.xReggie v2.11

comment:2 by Nicklas Nordborg, 11 years ago

Milestone: Reggie v2.11Reggie v2.x

comment:3 by olle, 11 years ago

Owner: changed from Nicklas Nordborg to olle

Ticket reassigned to olle

comment:4 by olle, 11 years ago

Milestone: Reggie v2.xReggie v2.13

comment:5 by olle, 11 years ago

Status: newassigned

Ticket accepted.

comment:6 by olle, 11 years ago

Traceability note:

The following tickets are related to blood sample registration:

  • Ticket #350 (Blood referral form registration wizard).
  • Ticket #429 (Blood samples should store sampling date as creation date)
  • Ticket #442 (Allow pathology and blood registration wizards to save patients without names)
  • Ticket #505 (Sample source reports should be updated to support follow-up blood samples)
Last edited 11 years ago by olle (previous) (diff)

comment:7 by olle, 11 years ago

Background information:

Special referral forms are used for follow-up blood samples:

  • Instead of case number, an RCCID number is used, consisting of a 10-digit number followed by one of the suffix letters "B", "C", or "D", denoting follow-up samples 6, 12, and 36 months after operation, respectively. The integer value should be the same for follow-up samples from the same patient, and can therefore be used to find the patient ID if a previous follow-up sample has been registered. Only one follow-up blood sample per patient and time period should be supplied.
  • Personal number is supplied.
  • Blood sampling date/time and freezer date/time are supplied.
  • Follow-up blood samples are always of type "Plasma/serum", so no entry exists for this.
  • A comment may be supplied.

Information note: RCCID is an ID number created at RCC syd, which is an abbreviation of "Regionalt Cancercentrum syd" ("Regional Cancer Center - south").

Last edited 11 years ago by olle (previous) (diff)

comment:8 by olle, 11 years ago

Design discussion regarding case numbers:

The SCAN-B project allows blood samples to be registered without a case existing for the patient. However, referral forms for follow-up blood samples are only sent to patients, who have undergone breast cancer surgery, which implies that a case item has been created in the SCAN-B database. In the following will therefore be assumed, that at least one case item exists for a patient.

Previously a blood sample has been registered as a new 'Sample' with 'Blood' as it's subtype, with name equal to the case number + '.b' as suffix (see Ticket #350, "Blood referral form registration wizard" for details). In order to use this scheme for follow-up blood samples, a case must be found for the sample. A problem is that sometimes a patient has been operated for cancer in both breasts some time apart, leading to one patient having two case numbers (if the cancer was bi-lateral, and both breasts were operated at the same time, two case numbers are still used, one for each specimen, but a blood sample is only named for one of them).

For follow-up blood samples, the registration wizard should work as follows regarding finding a case number for the sample:

  1. If only one case is registered for the patient, that case number is used.
  2. If more than one case number are registered for the patient, the following priority procedure is used:
    a. If a follow-up blood sample already is registered for one of the case numbers, that case number is used.
    b. If a non-follow-up blood sample already is registered for one of the case numbers, that case number is used.
    c. The user is allowed to choose between the available case numbers, with the smallest case number as default. The case numbers should be presented together with operation dates, in order to guide the user in making the appropriate choice.
Last edited 11 years ago by olle (previous) (diff)

comment:9 by olle, 11 years ago

Design discussion:

  • The wizard for registration of follow-up blood samples should be based on the one for registration of blood samples obtained in connection with breast cancer surgery. The latter is implemented by JSP script bloodform.jsp in reggie/resources/personal/ and java servlet BloodRegistrationServlet.java in reggie/src/net/sf/basedb/reggie/servlet/. The new components will be named bloodfollowupform.jsp and BloodFollowUpRegistrationServlet.java, respectively.
  • JSP script index.jsp in reggie/resources/ will be updated to have links to the registration wizards for standard and follow-up blood samples under the header "Blood referral form registration" on the Reggie main page.
Version 0, edited 11 years ago by olle (next)

comment:10 by olle, 11 years ago

(In [2023]) Refs #449. Refs #505. First version of wizard for registration/update of data for follow-up blood samples.

comment:11 by olle, 11 years ago

(In [2024]) Refs #505. Refs #449. Sample source reports updated to support follow-up blood samples.

comment:12 by olle, 11 years ago

Resolution: fixed
Status: assignedclosed

Ticket closed as the requested functionality has been added.

comment:13 by olle, 10 years ago

(In [2036]) Refs #449. Javascript file reggie.js in reggie/resources/ updated with new function isValidRccidNumber(rccidNumber, allowSuffix), that is used by function rccidNumberOnChange() in JSP file bloodfollowupform.jsp in reggie/resources/personal/. This update should have been included in change set [2023].

comment:14 by olle, 10 years ago

(In [2116]) Refs #449. Annotation type BLOOD_RCCIDNUMBER is added to Blood annotation type category:

  1. Class/file InstallServlet.java in reggie/src/net/sf/basedb/reggie/servlet/ updated in protected method void doGet(HttpServletRequest req, HttpServletResponse resp) to add Annotationtype.BLOOD_RCCIDNUMBER to Blood annotation type category.

comment:15 by olle, 10 years ago

(In [2138]) Refs #449. Wizard for registration of follow-up blood samples updated to proceed to step 2 after an <Enter> key press, when the input RCCID and personal numbers are valid and standard (previously it was necessary to click the "Next" button):

  1. JSP script bloodfollowupform.jsp in reggie/resources/personal/ updated by moving disabling of RCCID and personal number input fields from function getPatientInfo() to function goNext(manual), after checking that the input is OK. Previous design was problematic for follow-up blood samples, since function personalNumberOnChange() calls getPatientInfo() to check if a patient exists with input personal number, which resulted in the personal number input field being disabled, as soon as the last digit in a valid personal number was entered, making it unresponsive to key press.

comment:16 by olle, 10 years ago

(In [2139]) Refs #519. Refs #449. The two blood registration wizards updated to allow 6-digit dates to be used:

  1. JSP script bloodform.jsp in reggie/resources/personal/ updated in functions samplingDateTimeOnChange() and freezerDateTimeOnChange() to call function autoFillDate(shortDate, allowSixDigitDates) in reggie.js in reggie/resources/ with argument allowSixDigitDates set to true.
  2. JSP script bloodfollowupform.jsp in reggie/resources/personal/ updated in functions samplingDateTimeOnChange() and freezerDateTimeOnChange() to call function autoFillDate(shortDate, allowSixDigitDates) in reggie.js in reggie/resources/ with argument allowSixDigitDates set to true.
Note: See TracTickets for help on using tickets.