SORMAS-Project icon indicating copy to clipboard operation
SORMAS-Project copied to clipboard

S2S_Revision of the 'share requests' directory_ Part 1 [3]

Open SahaLinaPrueger opened this issue 3 years ago • 3 comments

Problem Description

The 'share request' directory has no filter options. That is a problem, because after a while the directory becomes confusing.

At the moment the 'share requests' directory only shows incoming share requests and not the outgoing ones. That is a problem, because the health departments have no option to get an overview about shared cases/contacts and cannot track the shared cases/contacts.

Also the layout of the overview table does not include necessary information's, that the health departments need to be able to work.

Proposed Change

  • [ ] 1. Change the name from 'share requests' to 'share directory' (German: Übergabeverzeichnis)
  • [ ] 2. Add the following filter options (layout and location are the same as in the case directory)
Filter Typ Impact
Status Dropdown All - No records are filtered.
Pending - Only shares with the value "Pending" in "Status" are displayed.
Accepted - Only shares with the value "Accepted" in "Status" are displayed.
Rejected - Only those shares are displayed that have the value "Rejected" in "Status". ~
Error - Only shares with the value "Error" in "Status" are displayed.~
"" is the default setting, which shows all entries
  • [ ] 3. Delete the buttons 'Pending' and 'Accepted' image

  • [ ] 4. Add the buttons 'Incoming' (German: Eingehend) in the place where the button 'Pending' was previously seen. image

Button Incoming
Impact Only the incoming shares are displayed
Comment -This filter is active by default when the share directory is opened for the first time in the session.
-The total number of results for this filter are displayed on the button if the button has been clicked/ is active.
-Clicking on the button 'Incoming' should show all cases/contacts that where shared from another health department to the own health department (status can be: accepted and pending- if user clicks 'reject' the share has to disappear because of data protection reasons).
  • [ ] 5. Add the button 'Outgoing' (German: Ausgehend) in the place where the button 'Accepted' was previously seen. image
Button Outgoing
Impact Only the outgoing shares are displayed
Comment -The total number of results for this filter are displayed on the button if the button has been clicked/ is active
-Clicking on the button 'Outgoing' should show all cases/ contacts that where shared with another health department (status can be: accepted, pending, revoked and rejected)
  • [ ] 6. Change the configuration of the button 'All': This button should include all 'Incoming' cases/contacts and all 'Outgoing' cases/contacts. image
Button All
Impact Both incoming and outgoing shares are displayed
Comment The total number of results for this filter are displayed on the button if the button is clicked
  • [ ] 7. The layout of the overview table should include the following columns:
Share ID (German: Übergabe ID) Share Date Typ From / To
(Counterpart)
Sender Name Ownership handed over Status Direction Comment
eye button
A double click or a single click on the "eye" button opens the preview of a share (is already implemented)
First 6 sign of Share ID (already implemented) The date of the share, localised according to current language (already implemented) 'Case' or 'Contact' is shown (already implemented) Name of other counterpart for example 'LK Würzburg' if 'LK Würzburg' is the sender organisation or received organisation Name of Person who has initiated the share (Format: Last name, First name) 'Yes' or 'No' is shown (already implemented) Current status of the share 'accepted' 'pending' or 'rejected'. Is updated depending on what the target system decides (if the share is outgoing) or what the source system decides (if the share is incoming). 'Incoming' or 'Outgoing'. Accept and Reject button as they are already implemented (1.73.1) Text field as already implemented (1.73.1)
  • [ ] 7.1 All columns can be sorted in ascending and descending order.

Acceptance Criteria

Implementation Details

Additional Information

SahaLinaPrueger avatar Jul 06 '22 16:07 SahaLinaPrueger

@JaquM-HZI

SahaLinaPrueger avatar Jul 07 '22 17:07 SahaLinaPrueger

@SahaLinaPrueger It is not possible to have both incoming and outgoing requests at the same time because incoming and outgoing requests are stored in different database tables and those can't be merged.

Is it ok if we remove the 'All' option and the direction column from the table?

leventegal-she avatar Aug 10 '22 12:08 leventegal-she

That would be a pity for the workflow and for the consistency of the sormas UI. Do we have another option?

If we do not find another solution: We can remove the direction column from the table if the buttons "incoming" and "outgoing" are fixed when scrolling down. And maybe we have to implement the column one day, if the column is necessary for showing this column in an excel file, if we implement an export one day. @Jan-Boehme what do you think?

Another point (to clarify): The column "From / To (Counterpart)" shows the server instance name not the jurisdiction, because we decided yesterday to share with server instance not with jurisdiction.

SahaLinaPrueger avatar Aug 10 '22 14:08 SahaLinaPrueger

To make "incoming" and "outgoing" buttons fixed I can:

  1. Similar to case view modes: S2S_1
  2. With tabs like: S2S_2

Which one would you prefer?

@SahaLinaPrueger @MateStrysewske @MartinWahnschaffe @markusmann-vg

leventegal-she avatar Aug 11 '22 08:08 leventegal-she

@leventegal-she Please implement option Nr.1 so it is consistent across all directories. The column "Direction" can be removed if we do not have an "All" view.

Just for me to better understand the problem here. Why exactly are we not able to show information in one table in the UI that is stored in different database tables? Is this a Vaadin thing?

SORMAS-JanBoehme avatar Aug 11 '22 08:08 SORMAS-JanBoehme

If we implement 1 or 2 the filter option "status" doubles itself with the buttons "pending" and "accepted".

SahaLinaPrueger avatar Aug 11 '22 09:08 SahaLinaPrueger

That is correct because we have the filter for "Status" we do not need the buttons "Pending" and "Accepted" anymore. They can be removed.

SORMAS-JanBoehme avatar Aug 11 '22 09:08 SORMAS-JanBoehme

@leventegal-she So please implement Nr. 1 and remove the buttons "all", "pending" and "accepted".

The filter status stays, so please implement

  • [ ] 2. Add the following filter options (layout and location are the same as in the case directory)
Filter Typ Impact
Status Dropdown All - No records are filtered.
Pending - Only shares with the value "Pending" in "Status" are displayed.
Accepted - Only shares with the value "Accepted" in "Status" are displayed.
Rejected - Only those shares are displayed that have the value "Rejected" in "Status".
"" is the default setting, which shows all entries

SahaLinaPrueger avatar Aug 11 '22 11:08 SahaLinaPrueger

And thank you very much for developing Nr. 1 and Nr. 2 !

SahaLinaPrueger avatar Aug 11 '22 11:08 SahaLinaPrueger

@Jan-Boehme

Just for me to better understand the problem here. Why exactly are we not able to show information in one table in the UI that is stored in different database tables? Is this a Vaadin thing?

The data structure for incoming and outgoing requests are different and is not possible on the backend to query more than one database table at once and have lazy loading with sort. As there will be a lot of requests it is not performant if we load both tables fully and manage sorting and and pagination in the memory.

leventegal-she avatar Aug 11 '22 12:08 leventegal-she

@AndyBakcsy-she Can you add the correct milestone here? I'm not certain if this should go into 1.75 or 1.76?

JonasCir avatar Aug 22 '22 10:08 JonasCir

Validated ticket on the latest deployed version of sormas on the test instances.

AndyBakcsy-she avatar Sep 01 '22 06:09 AndyBakcsy-she

@leventegal-she Tested this on the nightlies:

First of all i really appreciate and like that for outgoing shares it is implemented that they can be revoked out of the share directory although this was not requested.

Second: I also like that although the specification said that on incoming share request the rejected and revoked shares should NOT be shown, they are shown, but you implemented that when you open the 'share details view' nothing is shown. 1.: Could you implement a text here: 'Due to privacy reasons the details cannot be displayed because the share request has been revoked or rejected'? Above or under the empty table? And: I am not sure, if it is okay, that on the share directory the name of the sender is written (due to data protection and so on). I will figure this out next week. 2.: IF this is a problem, can you implement, that instead of the 'sender name' (like admin) the text 'confidential' is shown? (only for incoming shares with status rejected or revoked). That would be amazing!

Note: Please don't implement anything yet, I still have to discuss with my team on Monday, but an answer about what is theoretically feasible would be great.

SahaLinaPrueger avatar Sep 02 '22 17:09 SahaLinaPrueger

status can be: accepted and pending- if user clicks 'reject' the share has to disappear because of data protection reasons

@leventegal-she Unfortunately we have to implement this like it was specified due to data protection reasons. So for incoming share requests: As soon as the share request is rejected by target system or revoked by source system the share request has to be deleted completely -also in the database- . And nothing should be visible on the UI.

If possible to implement: For 'incoming view': The filter with the dropdown should not include 'rejected' and 'revoked'.

SahaLinaPrueger avatar Sep 05 '22 10:09 SahaLinaPrueger

Validated on test.de1 & test.de2 on Version: 1.76.0-SNAPSHOT (378ad16). Summary of elements implemented/changed:

  1. Title 'Share requests' changed to 'Share Directory' (EN+DE)
  2. 'Status' filter dropdown contains:
  • for Incoming: - / Pending / Accepted
  • for Outgoing: - / Pending / Accepted / Rejected / Revoked
  1. Buttons Pending' and 'Accepted' were removed
  2. -5. 'Incoming'/'Outgoing' filters implemented as buttons (Incoming = Default)
  • Buttons text {'Eingehend'/'Ausgehend') not yet translated for users having DE language
  1. 'All' button removed
  2. Table Layout fields:
  • ShareID/CreationDate/Type/From-To(ServerName)/SenderName/HandOver/Status/(for revoke button)/Comment
  • Direction column removed

dragosb-vg avatar Sep 19 '22 14:09 dragosb-vg

Buttons text {'Eingehend'/'Ausgehend') not yet translated for users having DE language

Translations are not yet available on crowdIn. Please provide.

SahaLinaPrueger avatar Sep 28 '22 08:09 SahaLinaPrueger

Line does not have the same height everywhere and layout changes greatly depending on filter setting. If it is possible, it would be great if the layout remains the same. Concerns incoming and outgoing.

revision share directory

SahaLinaPrueger avatar Sep 28 '22 09:09 SahaLinaPrueger

@leventegal-she And another thing: Why is the column 'creation date' not renamed to 'share date' as specified? We found 'creation date' confusing because it was not clear what the word 'creation' referred to, so we thought 'share date' would be better. Did you also find 'share date' misleading and 'delivery date' or something similar would be better? Or was it just forgotten to change?

SahaLinaPrueger avatar Sep 29 '22 14:09 SahaLinaPrueger

@leventegal-she: open task for this ticket, before it can be closed. Additional requirements will be taken care of in a new ticket

  • [x] Rename column 'creation date' to 'share date'

markusmann-vg avatar Oct 05 '22 06:10 markusmann-vg

@leventegal-she @markusmann-vg I guess changing the caption of the creationDate field is sufficient?

MartinWahnschaffe avatar Oct 05 '22 06:10 MartinWahnschaffe

@leventegal-she @markusmann-vg I guess changing the caption of the creationDate field is sufficient?

OK.

For the alignment issue the only solution I see is to set fixed size on some of the columns so there will be less changes when filtering the grid

leventegal-she avatar Oct 05 '22 06:10 leventegal-she

reverified ticket after deployment on test-de2 environment

AndyBakcsy-she avatar Oct 06 '22 12:10 AndyBakcsy-she

@leventegal-she @AndyBakcsy-she Buttons INCOMING and OUTGOING are not yet translated on UI. Can you please check this?

SahaLinaPrueger avatar Oct 13 '22 08:10 SahaLinaPrueger

@SahaLinaPrueger I pushed a fix for it

leventegal-she avatar Oct 13 '22 18:10 leventegal-she