Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Visit Scheduling] Enhance the date picker of Schedule action #1315

Open
Tracked by #1649
mahalakshme opened this issue Aug 26, 2024 · 0 comments
Open
Tracked by #1649

[Visit Scheduling] Enhance the date picker of Schedule action #1315

mahalakshme opened this issue Aug 26, 2024 · 0 comments

Comments

@mahalakshme
Copy link
Contributor

mahalakshme commented Aug 26, 2024

Scenarios:

  • being able to schedule absolute or relative
  • start or end of months
  • relative or absolute to specific dates based on the form, ie., in Registration form, only registration date and any concepts used in the form. In enrolment form, enrolment date, registration date and concepts, and similarly for encounter form
  • overdue date is using the scheduled date

AC:

Image

In the Actions, from Using, will be replaced by UI in this sheet.

On:

  • After Visit name display a drop-down with two options: On and After
  • If 'On' is selected, show 3 drop-downs with options like in the sheet for days, month and year and show text as 'Following' followed with a dropdown.
  • The options in this dropdown (after Following) need to be similar as current: ie: For encounter form, show registration date, enrolment date , earliest visit date, encounter visit date and concepts used in the same form
    - ie., there is 1 difference from the current behaviour. In the options currently we show everything as DateTime, but going forward we will show it as date
    - Similarly for enrolment form, the options are registraton date, concepts in the same form and registration form,
    - Registration form...
  • By default '1st', 'Same Month', 'Same year' should get selected on selection of 'On'

After:

  • When After selected, show one text box. Show zero as default value in the text box.
  • Following the text box, show dropdown selection for Days, Weeks, Months and Years
  • For Month, Week, and Year selection show start/end of the selection
  • Show 'From' text following the above, after which the relative date dropdown can be showed.

Overdue:

  • For both On and After overdue date needs to be shown
  • but it is always following or relative to Scheduled date. So at the end show 'Following the Scheduled date' or 'After the Scheduled date' when on or after is selected respectively.

Old: Ignore:

AC:

Image

Adding levels:

  • As you can see in the above image, I should be able to add month, day and year at granular level on clicking + icon on the left.

  • On clicking plus each time, the below should get added. The below image is shown in a format with drop-downs expanded.
    Image

  • I should not be able to add the same level(month, day or year) again. If added twice say, months option, show the error message nearby stating The month(s) option already added.

Using dropdown:

  • for scheduled date, show the current options in Using dropdown as it is working now
    ie., in Registration form, only registration date and any concepts used in the form. In enrolment form, enrolment date, registration date and concepts, and similarly for encounter form
  • for overdue date, as Using field value, constantly show 'Using above Scheduled Date' since that is more easier. Currently we show whatever is selected in Using dropdown of 'Scheduled' itself.

Absolute/relative with egs:

  • In each level(month, day, year) it can be absolute or relative (on or after)
  • When after is selected - add. When on is selected., use the values of the date selected in the Using dropdown. Eg: When the selection is 'on 9 month(s)' and 'after 1 year(s)' using Encounter date time, lets say which is '2024-04-05' then the resultant date need to be '2025-09-05'.
  • As you can see from the above eg, when a level is not mentioned, the value from the Using field will be used. In the above example, Days is not mentioned, and hence the value of 5 in the encounter date is used.

Removing of levels:

  • On clicking cross icon, should be able to remove the level
  • When all levels are removed, then the same date selected in the Using dropdown will be used as scheduled or overdue date

Misc:

  • start and end options need to show on selecting 'month(s)' in the dropdown in a consecutive dropdown towards right. For year and days no need to display any consecutive drop-downs.

Old: ignore

  • start of next month, next quarter, next financial year,
  • end of month,
  • next year, specific month and year
  • next month - specific date
  • maxDate also specific month and year
  • use earliesVisitDateTime or encounterDateTime - currently can use only one of them
  • just add one month - no specific date
  • 90 days/3 months from a concept date value - in using itself we can allow to select date concepts
  • name suffixes - month with year or weekday
  • if an encountertype ever scheduled already - baseline
  • should be able to schedule without mentioning any condition
  • schedule it on first non-Sunday

Eg: - earliest date - programEncounter.earliestVisitDateTime).month(4).date(15).toDate();

Inputs:

after - some UX inputs needed.

Inputs:

  • non-Sunday - complex
  • timezone - when evaluating the rules

  • What code will get replaced
  • 10th of every quarter

Inputs from second parsing:

  • Show all dates across all forms? - show from registration and enrolment for encounter, and from registration for enrolment
  • Do not show voided concepts in the 'Value of' dropdown.
  • In Answer concept show all posssible answers instead of need to type?
    • We are showing some non-applicable answer concepts as well
    • Image
    • Image
  • programEncounter.earliestVisitDateTime || programEncounter.encounterDateTime
  • next year,
  • next month, next quarter, next half year, next year
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Analysis Review
Development

No branches or pull requests

1 participant