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

(M)Badges highlighting number of actions required #507

Closed
edmofro opened this issue Aug 23, 2017 · 32 comments
Closed

(M)Badges highlighting number of actions required #507

edmofro opened this issue Aug 23, 2017 · 32 comments
Assignees
Labels
Effort: large Large effort story/task, estimated 5+ days Priority: high Type: Feature From a new button to whole new systems

Comments

@edmofro
Copy link
Collaborator

edmofro commented Aug 23, 2017

Particularly now we have Customer Requisitions, which we need users to see and process without something so obvious as a pile of stock landing on their doorstep.

Like a facebook notification on the corner of the 'Customer Requisitions' and 'Supplier Invoices' buttons, showing the number of 'In Process' requisitions, and 'In Process' external supplier invoices.

@edmofro edmofro added Type: Feature From a new button to whole new systems Priority: normal labels Aug 23, 2017
@edmofro edmofro changed the title Badges showing actionable notifications Badges highlighting number of actions required Aug 23, 2017
@GaryWilletts
Copy link

Love it, something I've been pushing for in mSupply for ages.

@andreievg
Copy link
Contributor

Thumbs Up

@Chris-Petty Chris-Petty self-assigned this Sep 6, 2017
@Chris-Petty
Copy link
Contributor

Chris-Petty commented Sep 8, 2017

@andreievg
Copy link
Contributor

Should also show badges for anything created but not finalised > x days long.

@Chris-Petty Chris-Petty changed the title Badges highlighting number of actions required (M)Badges highlighting number of actions required Dec 4, 2018
@Chris-Petty Chris-Petty added the Effort: large Large effort story/task, estimated 5+ days label Dec 4, 2018
@Chris-Petty Chris-Petty removed their assignment Jan 7, 2019
@andreievg
Copy link
Contributor

I've changed priority to High. This is getting urgent as we've become aware that a high number of mSupply Mobile users are not finalising Supplier Invoices (and thus the stock is not introduced in their store).

We need to introduced further UI changes aimed at improving overall usage and enforcing completion of key activities.

Badges will help, but it may require further thought and design. I'll launch an internal discussion via email, conclusion of which will be added as issue.

@andreievg
Copy link
Contributor

@sworup as you are assigned to this issue, can you make some designs before you launch into implementation.

The idea is, we want to use badges to indicate to users that certain activities need to be addressed.

Examples:

  • Not finalised supplier Invoices
  • Not finalised customer requisitions
  • Not finalised supplier requisitions
  • Not finalised stock takes
  • New supplier invoices
  • New customer requisitions

I guess we need to determine what we consider 'Freshly' arrived and Not finalised. Maybe there needs to be a preference similar to this:

{
  supplierInvoices: {
    unFinalisedThresholdDays: 7,
    newThresholdDays: 2,
  },
  stockTake: {
    unFinalisedThresholdDays: 2,
    minimumStocktakePeriodDays: 30,
  }
...
}

The more I think about this, the more I feel we need a way to indicate to user, tasks that don't have a record associated with them, i.e. as per 'minimumStocktakePeriodDays': 30, means if last stocktake date was more then 30 days ago, we need to advise the user somehow.

@Chris-Petty
Copy link
Contributor

The more I think about this, the more I feel we need a way to indicate to user, tasks that don't have a record associated with them, i.e. as per 'minimumStocktakePeriodDays': 30, means if last stocktake date was more then 30 days ago, we need to advise the user somehow.

Some kind of notification system ought to do it. I had originally thought it could be in #441, but should really be it's own separate issue.

@sworup
Copy link
Contributor

sworup commented Jan 17, 2019

@andreievg @Chris-Petty
Do you mean design of badges like this?

screen shot 2019-01-17 at 6 06 49 pm

  • The RED one is for Not finalised and GRAY is for New.
  • I am thinking the badges would push to the top right corner (where RED badge is right now), if red has 0 notifications, the badge will disappear and GRAY will be at top. If both are 0, there is no badge.
  • We could add icons (cross for not finalized etc.) to the left side of the numbers to give some representation, maybe we can add short abbreviation like NF and NEW right/left side of the number.

I have built a rough version of these badge components that you are seeing in screenshot.

@Chris-Petty
Copy link
Contributor

@sworup yea that is exactly the idea. Is there a good touchscreen way of showing tooltips? Be good to have explanation of what the badges are actually representing!

Another option is it's especially important to finalise supplier invoices - perhaps a regular push notification would help here if some are unfinalised. Probably another issue for that 😉 .

@andreievg
Copy link
Contributor

Some kind of notification system ought to do it. I had originally thought it could be in #441, but should really be it's own separate issue.

@Chris-Petty, i feel like a notification is too easy to dismiss and forget about.
What i was thinking, as an example:

  • Stocktake is due to be done
  • A badge appears on stocktake menu button
  • When stocktake is pressed, a modal appears telling the user that stocktake is overdue and needs to be created

Similar for all other badges, when you actually go into supplier invoices, customer requisitions etc.. there is a modal explaining why there are badges

@andreievg
Copy link
Contributor

@sworup I like the idea of your design. What does the rough version look like btw ? (is it form the screenshot).

I think we also need a way to put a badge on the data table, next to the record that badge is for.

sworup pushed a commit that referenced this issue Sep 9, 2019
sworup pushed a commit that referenced this issue Sep 24, 2019
sworup pushed a commit that referenced this issue Oct 1, 2019
sworup pushed a commit that referenced this issue Oct 2, 2019
sworup pushed a commit that referenced this issue Oct 2, 2019
sworup pushed a commit that referenced this issue Oct 2, 2019
- This might need some more coding and cleaning up
- Badgeset now takes route name as prop
- Badgeset also does calculations now, I think we need to extract the calculations outside
- #507
sworup pushed a commit that referenced this issue Oct 3, 2019
- We are no longer looking to attach set of badge
- Our approach now is to build a single badge with multiple lines of informations
- #507
sworup pushed a commit that referenced this issue Oct 3, 2019
sworup pushed a commit that referenced this issue Oct 3, 2019
sworup pushed a commit that referenced this issue Oct 3, 2019
sworup pushed a commit that referenced this issue Oct 3, 2019
sworup pushed a commit that referenced this issue Oct 3, 2019
@josh-griffin josh-griffin added this to the Mobile 3.1.0 milestone Oct 21, 2019
josh-griffin added a commit that referenced this issue Nov 4, 2019
…-with-multi-row

#507 Badge highlight number with multi-row
@josh-griffin
Copy link
Contributor

Closed by #1313

@diegoevangelisti
Copy link
Contributor

TESTS

  • There is a badge on a button on MenuPage where there are in progress records. [For example: If there 1+ supplier invoice that are in progress (or, not finalised) the badge should appear].
  • There is no badge when there are no in progress records.
  • The badge correctly states how many in progress records there are [i.e. 3 in progress CI's, should show 3].
  • Badges are clickable, opening a popup which displays more information regarding the badge.
  • Clicking away closes the popup, when it is open [Try some funny things, like trying to navigate away from the page when the popup is open, or clicking other things quickly before it appears].

All good, just not sure about the last one. Just noticed that clicking a button quickly before the popup appears (e.g. SupplierInvoicesPage button), that page opens and then the popup shows up and disappears briefly.

popup

@josh-griffin
Copy link
Contributor

@diegoevangelisti

The issue you're describing should have been fixed with this one: #1581

The popover should be automatically closed when navigating, maybe it is taking to long? Is it automatically closing?

@diegoevangelisti
Copy link
Contributor

@diegoevangelisti

The issue you're describing should have been fixed with this one: #1581

The popover should be automatically closed when navigating, maybe it is taking to long? Is it automatically closing?

You are right @joshxg , #1581 was tested with a Lenovo tablet (Android 8.1.0) but this one only in the AVD (Android 9.0), which as you mentioned it is taking to long to open the popup. And last, yes, it is automatically closing (in both tablet and emulator).
I reckon it is ok if this is just happening using a VD.

@josh-griffin
Copy link
Contributor

@diegoevangelisti

Cool. I think it's not a great solution but it's pretty edge casey .. lets see how users react!

@josh-griffin josh-griffin mentioned this issue Dec 11, 2019
5 tasks
@emilyporrello
Copy link

Docs updated

Badges explained in Getting Started page (with updated screenshots of main screen)
https://docs.msupply.foundation/en:mobile:user_guide:getting_started

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Effort: large Large effort story/task, estimated 5+ days Priority: high Type: Feature From a new button to whole new systems
Projects
None yet
Development

No branches or pull requests

8 participants