-
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-05-09] [Violations] [$500] Implement Receipt Audit
Feature / Note
type violations
#36288
Comments
Current assignee @JmillsExpensify is eligible for the NewFeature assigner, not assigning anyone new. |
Receipt Audit
Feature / Note
type violationsReceipt Audit
Feature / Note
type violations
Job added to Upwork: https://www.upwork.com/jobs/~019f84ef0521d4c9c9 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @sobitneupane ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.Implement Receipt Audit Feature / Note type violations What is the root cause of that problem?New Feature What changes do you think we should make in order to solve the problem?We will:
|
ProposalPlease re-state the problem that we are trying to solve in this issue.Implement Receipt Audit Feature / Note type violations What is the root cause of that problem?New Feature What changes do you think we should make in order to solve the problem?Steps we will follow:
The component will look like:import React from 'react';
import {View} from 'react-native';
import Icon from '@components/Icon';
import * as Expensicons from '@components/Icon/Expensicons';
import Text from '@components/Text';
import useTheme from '@hooks/useTheme';
import useThemeStyles from '@hooks/useThemeStyles';
export default function ReceiptAudit({notes}: {notes: string[]}) {
const styles = useThemeStyles();
const theme = useTheme();
return (
<View style={[styles.mt2, styles.mb1, styles.ph5]}>
<View style={[styles.flexRow, styles.alignItemsCenter, styles.gap2]}>
<View style={[styles.textReceiptAuditTitle, {backgroundColor: notes.length ? theme.danger : theme.success}]}>
<Icon
width={18}
height={18}
src={notes.length > 0 ? Expensicons.Receipt : Expensicons.Checkmark}
fill={theme.white}
/>
<Text style={[styles.textLabel, styles.textStrong, styles.textWhite]}>
{notes.length > 0 ? `Receipt Audit : ${notes.length} Issue(s) Found` : 'Receipt Verified : No issues Found'}
</Text>
</View>
</View>
// If notes is a array of strings, map through it & show notes.
<View style={[styles.mv1, styles.gap1]}>{notes.length > 0 && notes.map((message) => <Text style={[styles.textLabelError]}>{message}</Text>)}</View>
</View>
);
}
Line 238 in 20ca041
Minor stylings can be adjusted by taking suggestions by the design team. ResultStyle 2 Result |
hi |
📣 @kevalacme! 📣
|
@sobitneupane Thoughts on the proposals so far? |
Thanks for the proposal @neonbhai and @Krishna2323
This portion of the request is missing in both the proposals. |
@JmillsExpensify Can we get more details on this portion of the requirement.
|
Contributor details |
|
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
@JmillsExpensify, @sobitneupane Huh... This is 4 days overdue. Who can take care of this? |
@sobitneupane Can you help me understand what detail you're looking for? Comments on each point though.
Any questions on this. RBR is the red dot that appears next to a chat that appears in the LHN
This is a forward looking concern, so not relevant for this issue. I removed it from the OP above. |
I believe that is answered in the screenshot above. No red dot visible in the LHN, so no RBR. |
For the sake of clarity though, the only time RBR should appear for the transaction thread is when both and these statements are true:
If both of those statements are not true, then RBR won't show in the LHN for the submitter. Further the transaction thread is never RBR for the manager or the admin/owner. |
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. |
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. |
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. |
Receipt Audit
Feature / Note
type violationsReceipt Audit
Feature / Note
type violations
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.69-2 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-05-09. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR adding this new feature has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
@JmillsExpensify, bump for payments 😄 |
@cead22, @JmillsExpensify, @lakchote, @sobitneupane, @Krishna2323 Eep! 4 days overdue now. Issues have feelings too... |
Payment summary:
|
Contributor contract paid out via Upwork. C+ is paid via New Expensify, so I'm going to go ahead and close the issue and circle back when I receive a payment request. @sobitneupane Don't forget to get the BZ checklist completed. I definitely think we need a series of regression tests for this feature. |
Oops I missed the issue.
Do we agree 👍 or 👎 |
@JmillsExpensify I can add a test to the violations test script based on this ^ |
Ok thanks @cead22! Sounds good. I need to have someone else confirm this payment summary that isn't me, so I reached out to someone else on the BZ team. |
Contributor: @Krishna2323 paid $500 via Upwork |
$500 approved for @sobitneupane |
Relevant Background - High-level
Notes for completeness:
Note
type violations are largely “informational ” and arise from “Receipt Audit” (e.g. we scan the receipt, whether or not the employee does).Note
type violations do not generate an RBR in the LHN for admins or members, because notes are informational and there is nothing for either admin or member to fix. However, we will do the following:Review required
approved
orreimbursed
state, whichever comes first, theReview required
is removed as a sub-state. This is because while the informational note remains, there is never anything in particular to resolve or dismiss, like other violations.Receipt Audit * %numIssues% issues found
(note: “issue” is singular if only one issue).Receipt Audit * no issues found
Detailed (Note: This is outdated and proposals should note suggested updates)
We’ll update src/components/ReportActionItem/MoneyRequestView.js with a similar approach we took for showing inline violations
{hasReceipt && ( <View style={styles.moneyRequestViewImage}>
notes
with the value transactionVioltions.noticeReceipt Verified No issues found
Receipt Audit N issues found
, and the copy of the notices in red below<ReceiptAudit notice={transactionViolation.notice} />
The text was updated successfully, but these errors were encountered: