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

[$500] "Hmm, it's not here page" when clicking "Description" in send money flow #36711

Closed
1 of 6 tasks
m-natarajan opened this issue Feb 16, 2024 · 24 comments
Closed
1 of 6 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors

Comments

@m-natarajan
Copy link

m-natarajan commented Feb 16, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


Version Number: 1.4.42-2
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: @jamesdeanexpensify
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1708042986840429

Action Performed:

  1. Click on FAB and select "send money"
  2. Enter amount and select a member
  3. Click on "Description"

Expected Result:

Able to add the description

Actual Result:

"Hmm...it's not here." page appears

Workaround:

unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

Recording.2742.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~014d41934c99998d4c
  • Upwork Job ID: 1758527199783079936
  • Last Price Increase: 2024-03-08
@m-natarajan m-natarajan added External Added to denote the issue can be worked on by a contributor Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Feb 16, 2024
Copy link

melvin-bot bot commented Feb 16, 2024

Job added to Upwork: https://www.upwork.com/jobs/~014d41934c99998d4c

@melvin-bot melvin-bot bot changed the title "Hmm, it's not here page" when clicking "Description" in send money flow [$500] "Hmm, it's not here page" when clicking "Description" in send money flow Feb 16, 2024
@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Feb 16, 2024
Copy link

melvin-bot bot commented Feb 16, 2024

Triggered auto assignment to Contributor-plus team member for initial proposal review - @eVoloshchak (External)

Copy link

melvin-bot bot commented Feb 16, 2024

Triggered auto assignment to @JmillsExpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

@ZhenjaHorbach
Copy link
Contributor

#36342
Dupe

@force2008
Copy link

Please re-state the problem that we are trying to solve in this issue.

image

What is the root cause of that problem?

when click on the Description item in src\components\MoneyRequestConfirmationList.js , it navigates to the action of edit, which will check the transactionID, then cause FullPageNotFoundView show.

image

What changes do you think we should make in order to solve the problem?

change action type will solve the issue

What alternative solutions did you explore? (Optional)

none

Copy link

melvin-bot bot commented Feb 18, 2024

📣 @force2008! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Make sure you've read and understood the contributing guidelines.
  2. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  3. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  4. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@melvin-bot melvin-bot bot added the Overdue label Feb 19, 2024
@dukenv0307
Copy link
Contributor

dukenv0307 commented Feb 19, 2024

Proposal

Please re-state the problem that we are trying to solve in this issue.

"Hmm...it's not here." page appears

What is the root cause of that problem?

Because of send money flow, transactionID is undefined. So it's displayed not found page by withFullTransactionOrNotFound .

What changes do you think we should make in order to solve the problem?

We can implement send money flow by adding transactionID and reportID into the param of the route and use this to create the report and transaction as we do for request flow.

What alternative solutions did you explore? (Optional)

NA

@aneequeahmad
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

When click on Description in send money flow "Hmm, its not here page" appears

What is the root cause of that problem?

When Action performed Route isn't correct for Description Page

Reason:

  • Route For Description page was updated for request amount flow which has a transactionID already created for new money request.

  • Also if noticed the Route is like send/new/amount/ on send money flow confirmation page and when clicked on amount and when description option is clicked the url changes to edit/send/description/undefined/?backTo=%2Fsend%2Fnew%2Fconfirmation%2F which is isn't correct for send money flow.

What changes do you think we should make in order to solve the problem?

Here need to check if it's send money flow if(props.iouType === CONST.IOU.TYPE.SEND) then Route should be like send/new/description/ like it used to be till app version v1.4.38-6

What alternative solutions did you explore? (Optional)

N/A

Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

@brandonhenry
Copy link
Contributor

brandonhenry commented Feb 20, 2024

Problem Statement

When a user tries to add a description in the send money flow, they encounter a "Hmm...it's not here." page instead of being able to add the description.

Root Cause

The issue is related to the navigation route parameters passed to Navigation.navigate() in the MoneyRequestConfirmationList component. Specifically, we don't want to use ROUTES.MONEY_REQUEST_STEP_DESCRIPTION. This is the wrong route, this points to

[SCREENS.MONEY_REQUEST.STEP_DESCRIPTION]: ROUTES.MONEY_REQUEST_STEP_DESCRIPTION.route,

This results in an error because that specific routes expects a transaction and transaction.transactionID in order to build it. However, where we are calling that function (inside MoneyRequestCategoryPage / MoneyRequestConfirmationList), we are initializing transaction to {} and transactionID to ''.

ROUTES.MONEY_REQUEST_STEP_DESCRIPTION is actually tied to https://github.com/Expensify/App/blob/1806422ea2208540a89271da7026799a1ade9d69/src/libs/Navigation/AppNavigator/ModalStackNavigators.tsx#L90C28-L90C44

[SCREENS.MONEY_REQUEST.STEP_DESCRIPTION]: () => require('../../../pages/iou/request/step/IOURequestStepDescription').default as React.ComponentType,

That is a different route, specifically for when someone is requesting and not sending. So, we need a new screen for send description

Proposed Solution

  1. Add a New Screen for Money Send Description:
    • Create a new screen SCREENS.MONEY_REQUEST_DESCRIPTION in the SCREENS constant file.
    • Define the corresponding route in the ROUTES constant file and the linking configuration.
const SCREENS = {
    ...
    MONEY_REQUEST_DESCRIPTION: 'MoneyRequestDescription',
    ...
};
const ROUTES = {
    ...
    MONEY_REQUEST_DESCRIPTION: {
        route: ':iouType/new/description/:reportID?',
        getRoute: (iouType: string, reportID = '') => `${iouType}/new/description/${reportID}` as const,
    },
    ...
};
  1. Update Navigation in MenuItemWithTopDescription:
    • Replace the incorrect route ROUTES.MONEY_REQUEST_STEP_DESCRIPTION with the new route for SCREENS.MONEY_REQUEST_DESCRIPTION in the onPress callback.
Navigation.navigate(
    ROUTES.MONEY_REQUEST_DESCRIPTION.getRoute( // change here
        CONST.IOU.ACTION.EDIT,
        props.iouType,
        transaction.transactionID,
        props.reportID,
        Navigation.getActiveRouteWithoutParams(),
    ),
);
  1. Implement the Description Screen:
    • Implement the Description screen based on how we have implemented screens in the past. For example src/pages/ious/steps/MoneyRequestCategoryPage.js

ab6a7ec#diff-6e896ede958248cb2e8e85d63852f3412c3cad4c9842fc87f1504f691a67f9b9

  • Design screen based on IOUSRequestStepDescription.js

https://github.com/Expensify/App/blob/main/src/pages/iou/request/step/IOURequestStepDescription.js

  1. Test the Flow:
    • Ensure that navigating to the description screen works correctly and that the user can add and save a description successfully.

@aneequeahmad
Copy link
Contributor

@brandonhenry Isn't your proposal the duplicate of my proposal ? Thats the same root cause and solution that i have posted. You just explained what i proposed.

Copy link

melvin-bot bot commented Feb 20, 2024

@JmillsExpensify, @eVoloshchak Whoops! This issue is 2 days overdue. Let's get this updated quick!

@JmillsExpensify
Copy link

@eVoloshchak thoughts on the proposals so far?

@melvin-bot melvin-bot bot removed the Overdue label Feb 21, 2024
Copy link

melvin-bot bot commented Feb 23, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@melvin-bot melvin-bot bot added the Overdue label Feb 23, 2024
@eVoloshchak
Copy link
Contributor

Agree with @ZhenjaHorbach's comment, this is a duplicate of #36342 (which is on hold)

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Feb 26, 2024
@eVoloshchak
Copy link
Contributor

Not overdue, #36711 (comment)

@melvin-bot melvin-bot bot removed the Overdue label Feb 28, 2024
Copy link

melvin-bot bot commented Mar 1, 2024

@JmillsExpensify @eVoloshchak this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

Copy link

melvin-bot bot commented Mar 1, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@melvin-bot melvin-bot bot added the Overdue label Mar 4, 2024
@eVoloshchak
Copy link
Contributor

@JmillsExpensify, I think we should close this since it's a duplicate of #36342

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Mar 4, 2024
@srikarparsi
Copy link
Contributor

Hey! Yup, this looks like a duplicate of #36342. I can take care of it in the other issue so I think we can close it out here @JmillsExpensify

Copy link

melvin-bot bot commented Mar 8, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

Copy link

melvin-bot bot commented Mar 8, 2024

@JmillsExpensify @eVoloshchak 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!

Copy link

melvin-bot bot commented Mar 8, 2024

@JmillsExpensify, @eVoloshchak Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

Copy link

melvin-bot bot commented Mar 12, 2024

@JmillsExpensify, @eVoloshchak Still overdue 6 days?! Let's take care of this!

@JmillsExpensify
Copy link

Nice, thanks ya'll. Closing this one out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors
Projects
None yet
Development

No branches or pull requests

9 participants