This ticket builds on OLMIS-2654. The goal of this ticket is to make the use of the VVM field configured as a Yes/No (boolean) on a per-product basis.
The UI should use this Yes/No setting to either show the VVM data entry field or hide it when a user is recording information in Stock Management for Vaccines. As part of this ticket, we want to go back and change the UI to use this boolean value in what was done for OLMIS-2654, OLMIS-2663, and OLMIS-2662.
Per discussion with , we suggest this boolean field called "UseVVM" can live as an ExtraData on the Orderable object in Reference Data. Any "product", whether it is a Trade Item or a CommodityType in an implementation's configuration, could have UseVVM=Yes if we want our system to have the ability to record VVM status values during its stock management transactions. Please speak up if you you have any questions or concerns.
In the future using GS1 and GSDN data sources, it is possible that some of the XML data we get about a TradeItem might include information about whether that TradeItem has VVM stickers on the product. It might even talk about what kind of VVM stickers (there are multiple types). If that data source is available in the future, then we might end up wanting to use that to feed data into our boolean field. That way an implementation could be set up to collect VVM data for any TradeItem that has VVMs according to GS1 GDSN. But everything in this paragraph is future-thinking and not part of the current ticket scope.
Change ReferenceData and Stock Management services to add the boolean field "UseVVM" as ExtraData on each Orderable in RefData; default value is No. Change StockManagement to store this field in stock events optionally (maybe there is more to change there, building on now that UseVVM field exists).
Change UI to use our boolean and show/hide VVM field for only the orderables with UseVVM=Yes (hide for orderables with UseVVM=No or for orderables without the UserVVM extra data field).
Add Demo Data for a new product that is a vaccine and set it to TRUE for that orderable only.
Add any unit tests (programmers please review and decide what is appropriate)
Update Documentation to say how to set this field Yes/No and to explain what it affects: please add any expectations here about where this VVM configuration ticket should be documented
Please take a look at this ticket that I've just written (with Josh). I added it onto grooming page and onto "Enter Stock Data" wiki page for Vaccine Stock Management epic. This came from Josh and me talking about GS1 and about how we can know which products might have VVM.
Looks good to me.
I've found difficult to find which product has UseVVM field set to true without looking into demo data code. Do we have a ticket/solution to view this property on UI? I don't see any criteria for this and I think that we don't have any pattern to show extraData fields on the UI.
Hello . Good question. To clarify, are you saying you'd like a solution to either show or not show the VVM column based on what product is shown? Or are you saying there is a need to know which products are configured to show VVM? Normally the users will know which vaccines well and know which contain VVM so I'm not sure anything is needed for the end user perspective. However, if you are talking about how the UI client knows, that is another question. Do you have any thoughts suggestions?
If you are talking about the ExtraData fields being visible to the UI application, it was my understanding that ExtraData fields would be returned by the API JSON so users of our services can see and change ExtraData. So do the endpoints you need have the ExtraData?
This is my interpretation of what you are asking about, but let and me know.