-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[HOLD for payment 2024-02-14] [$500] Request Money - Previous currency is shown selected if edit Amount&Currency in Request Money #33608
Comments
Job added to Upwork: https://www.upwork.com/jobs/~0137f820b6bde4b24a |
Triggered auto assignment to @bfitzexpensify ( |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to Contributor-plus team member for initial proposal review - @hoangzinh ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.Request Money - Previous currency is shown selected if edit Amount&Currency in Request Money What is the root cause of that problem?We are not updating draft transaction when the pageindex is App/src/pages/iou/request/step/IOURequestStepCurrency.js Lines 85 to 87 in 595bf40
from this pr to avoid the saving of the currency on transaction when the user just navigates back after changing the currency without pressing save. What changes do you think we should make in order to solve the problem?Use the same mechnism we used in App/src/pages/iou/request/step/IOURequestStepAmount.js Lines 66 to 68 in 595bf40
to
Inside
What alternative solutions did you explore? (Optional) |
ProposalPlease re-state the problem that we are trying to solve in this issueRequest Money - Previous currency is shown selected if edit Amount&Currency in Request Money What is the root cause of that problem?This PR #32826 prohibits the change in What changes do you think we should make in order to solve the problem?Add new property Explaination This works by creating a field inside transaction draft onyx structure named original currency /**
* @param {String} transactionID
* @param {String} originalCurrency
*/
function setMoneyRequestOriginalCurrency_temporaryForRefactor(transactionID, originalCurrency) {
Onyx.merge(`${ONYXKEYS.COLLECTION.TRANSACTION_DRAFT}${transactionID}`, {originalCurrency});
} And use this method on mount method of And then restore the currency if save method was never hit on this step during unmount method What alternative solutions did you explore? (Optional) |
ProposalPlease re-state the problem that we are trying to solve in this issue.Currency is not updated when edit What is the root cause of that problem?Currently, we get currency from the draft transaction, When we select from the list we don't save anywhere when slect row until we save on the What changes do you think we should make in order to solve the problem?We should pass the query current currency from What alternative solutions did you explore? (Optional)N/A |
ProposalPlease re-state the problem that we are trying to solve in this issue.Previous currency is shown selected if user changes it while editing Request Money What is the root cause of that problem?The selected currency is displayed as the currency which we stored in transaction. When we select a currency and the pageIndex is
What changes do you think we should make in order to solve the problem?We don't store this to transaction to avoid the case the user just goes back to confirm page without saving. We can remove this condition to always store to selected currency in transaction
And then on
What alternative solutions did you explore? (Optional)NA |
Few proposals ready for review @hoangzinh |
ah yes, gonna review today. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Previous currency is shown selected if edit Amount&Currency in Request Money What is the root cause of that problem?Updated
What changes do you think we should make in order to solve the problem?Instead of read Updated App/src/pages/iou/request/step/IOURequestStepAmount.js Lines 36 to 43 in 5c5c862
Ok, to be synchronize I change my term from App/src/pages/iou/request/step/IOURequestStepCurrency.js Lines 51 to 57 in f8d75dc
function IOURequestStepCurrency({
currencyList,
route: {
params: {backTo, iouType, pageIndex, reportID, transactionID,currency: selectedCurrency}, //<=== added here
},
transaction: {currency: originalCurrency}, //<== changed here
}) {
const currency = selectedCurrency || originalCurrency; // <=== added here p/s :Got small changes from other files too. Updated: it worked on web too. Screen.Recording.2023-12-29.at.3.53.15.PM.movWhat alternative solutions did you explore? (Optional) |
Thanks for your proposals, everyone.
|
I tested this
|
@hoangzinh Proposal updated #33608 (comment) |
@hoangzinh I 'm really sorry for making your job difficult but the reason i didn't notify when updating was because there was no similar proposal on my last update as you can see from the snapshout my last update came 6 min before @namhihi237 commented 👍 |
@hoangzinh proposal updated #33608 (comment) |
@dukenv0307 If I understand your proposal correctly
Am I correct? |
@aim-salam Thanks for the update. It looks like your proposal is same approach as @FitseTLT and @namhihi237. Moreover, the RC is not clear to me, why does "Updated |
@hoangzinh Yes, correct. The main ideal of my proposal is the same way we do when we edit the distance. |
Thanks for proposals, everyone. I think all of proposals would fix this issue. But in my opinion, I like the idea of @shubham1206agra and @dukenv0307, using
But because @shubham1206agra is first, so I suggest we go with his proposal. Link to proposal: #33608 (comment) 🎀👀🎀 C+ reviewed |
Triggered auto assignment to @techievivek, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
Here is the ideal from proposal of @shubham1206agra. It will only restore the currency when click on back button. So this will not work if we open confirm page by deeplink when we're on amount page. And my proposal already had the detail enough firstly after this proposal update the explaination. |
Melvin, we're still working on the PR |
@hoangzinh, @techievivek, @bfitzexpensify, @shubham1206agra Huh... This is 4 days overdue. Who can take care of this? |
Still deciding the fix to the small Onyx bug in the issue. |
@hoangzinh @techievivek @bfitzexpensify @shubham1206agra this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ and will need to go internal. What needs to happen to get a PR in review this week? Please create a thread in #expensify-open-source to discuss. Thanks! |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.37-7 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-02-14. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Payments complete, @hoangzinh please complete the BZ checklist when you get a moment - thanks! |
BugZero Checklist:
Regression Test Proposal
Do we agree 👍 or 👎 |
Thanks @hoangzinh. Agree with those regression steps - added via https://github.com/Expensify/Expensify/issues/370147. Let's close this one out. |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 1.4.17-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:
Expected Result:
Last selected currency should be shown while editing Request Money
Actual Result:
Previous currency is shown selected if user changes it while editing Request Money
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6326315_1703614106567.2023-12-26_20-14-43.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: