-
Notifications
You must be signed in to change notification settings - Fork 23
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
Improve recurrent transactions visibility in the transaction-list page #254
Comments
I'm excited to work on it, not sure when I will start to, perhaps tomorrow. Shall I comment when I start just to be sure two devs don't work on the same? |
Yes please, and assign yourself the task if you want too :) Thanks a lot!! |
Last time I've checked I did not have permission to assign myself, must be repository permission settings 🤔 |
Done 😊 |
Hi @vincius0000, please contact me at lozin.technologies@gmail.com if you have any questions or if you want to share your progress |
Fully agree with this. Additionally, I'm thinking perhaps we could offer the option of notifying the user when the deadline of a pending transaction has passed? Otherwise it's easy to forget marking them as paid. What do you think? |
Yes, I totally agree. However, we don't have right now any kind of notifications implemented in the app, so it will require a bit of work to introduce them. That would be part of another task, but for sure a nice addition to the app. |
@enrique-lozano I've done a very basic change which left me with this As you can see, future transactions are greyed out. I'm thinking about refactoring transactions_list.dart file as within the I figured that separating transactions at stream (using StreamTransformer) and then keeping separate lists would help us here, as then we don't need to complicate existing setup and we'd have to use It's one of the bigger changes of course, as to implement this we'll have to re-write the widget and likely use SliverList (to have stable scrolling between lists and any static widget in the middle), the The screenshot below highlights how different sections (slivers) likely would be organized, the orange line indicates where static widget could be inserted I have also noticed this snippet of code if (widget.onTransactionsLoaded != null) {
widget.onTransactionsLoaded!(allTransactions: transactions);
} Which doesn't seem to be in use, but if we go with refactoring then schema of the method will likely change ( What are your thoughts on this? |
Hi @vincius0000! Looks good! I honestly think that we will need to create two separate list at some point, for me it's the simpler and easier approach. Probably the hardest part will be to fetch the transactions of the first list (the pending ones, we need to be careful with the DB query) and to make the component scroll initially to the divider. Regarding the |
@enrique-lozano should I test existing code more (to see how it deals with different user timezones) and create PR, or let's go with refactoring right away? |
Probably we can do a mix both, create the PR and let's go with the refactor right away! We can continue discussing code relevant aspects directly in the PR, better than in this thread. |
Sounds good! |
Prerequisites
Current Behavior
With the current app version, we can only see the next item that will come from a recurring transaction, without any extra information. Also, there is no easy way to distinguish future transactions or pending transactions from the rest.
Expected Behavior
It is proposed to do something similar to what the excellent 1Money app is doing right now:
Here we have the should consider the following points:
Steps to Reproduce
To generate a good test for this functionality, it would be good to create at least two recurring transactions, with a small periodicity (weekly or daily) or without an end date. With this, we could obtain a few future transactions and try to filter by dates and other parameters
Additional Information
This issue is based on the discussion generated in #243, with @shinebrillant, @vincius0000 and @enrique-lozano as participants. We should also consider the more in-deep analysis made here.
As always, if you want to collaborate on this, PRs are accepted.
The text was updated successfully, but these errors were encountered: