From 1eb89a805aaba99b530e472c25a664ba431cda14 Mon Sep 17 00:00:00 2001
From: Vladimir <70273239+vladimir-8@users.noreply.github.com>
Date: Fri, 18 Oct 2024 12:42:27 -0700
Subject: [PATCH] list: display only cash_on_delivery; (restaurant) order
details: display all payment methods; (courier) task details: display only
cash_on delivery; #1576 #1575
---
src/components/PaymentMethodInfo.js | 22 ++++++++++---
src/components/TaskListItem.js | 5 ++-
.../restaurant/components/OrderHeading.js | 7 ++---
.../restaurant/components/OrderListItem.js | 7 ++---
src/navigation/task/components/Details.js | 31 +++++++++----------
5 files changed, 37 insertions(+), 35 deletions(-)
diff --git a/src/components/PaymentMethodInfo.js b/src/components/PaymentMethodInfo.js
index 7e0724852..8864d6b12 100644
--- a/src/components/PaymentMethodInfo.js
+++ b/src/components/PaymentMethodInfo.js
@@ -34,15 +34,27 @@ export const loadDescriptionTranslationKey = paymentMethod =>
export const isKnownPaymentMethod = paymentMethod =>
Object.prototype.hasOwnProperty.call(paymentMethods, paymentMethod);
-export const PaymentMethodInfo = ({ fullDetail, paymentMethod }) => {
- const { t } = useTranslation();
-
+export const isDisplayPaymentMethodInList = paymentMethod => {
if (!isKnownPaymentMethod(paymentMethod)) {
+ return false;
+ }
+
+ return paymentMethod === 'CASH_ON_DELIVERY';
+};
+
+export const PaymentMethodInList = ({ paymentMethod }) => {
+ if (!isDisplayPaymentMethodInList(paymentMethod)) {
return null;
}
- if (!fullDetail) {
- return ;
+ return ;
+}
+
+export const PaymentMethodInOrderDetails = ({ paymentMethod }) => {
+ const { t } = useTranslation();
+
+ if (!isKnownPaymentMethod(paymentMethod)) {
+ return null;
}
return (
diff --git a/src/components/TaskListItem.js b/src/components/TaskListItem.js
index ed18324c2..f84facb0c 100644
--- a/src/components/TaskListItem.js
+++ b/src/components/TaskListItem.js
@@ -23,7 +23,7 @@ import {
taskTypeIconName,
} from '../navigation/task/styles/common';
import { greenColor, redColor, yellowColor } from '../styles/common';
-import { PaymentMethodInfo } from './PaymentMethodInfo';
+import { PaymentMethodInList } from './PaymentMethodInfo';
import TaskTitle from './TaskTitle';
const styles = StyleSheet.create({
@@ -270,8 +270,7 @@ class TaskListItem extends Component {
) : null}
{task.metadata && task.metadata.payment_method && (
-
)}
diff --git a/src/navigation/restaurant/components/OrderHeading.js b/src/navigation/restaurant/components/OrderHeading.js
index efa761553..05de26d97 100644
--- a/src/navigation/restaurant/components/OrderHeading.js
+++ b/src/navigation/restaurant/components/OrderHeading.js
@@ -7,7 +7,7 @@ import FontAwesome from 'react-native-vector-icons/FontAwesome';
import material from '../../../../native-base-theme/variables/material';
import OrderFulfillmentMethodIcon from '../../../components/OrderFulfillmentMethodIcon';
-import { PaymentMethodInfo } from '../../../components/PaymentMethodInfo';
+import { PaymentMethodInOrderDetails } from '../../../components/PaymentMethodInfo';
import { resolveFulfillmentMethod } from '../../../utils/order';
import OrderButtons from './OrderButtons';
@@ -79,10 +79,7 @@ const OrderHeading = ({
-
+
-
+
{order.notes ? (
) : null}
diff --git a/src/navigation/task/components/Details.js b/src/navigation/task/components/Details.js
index 4613ae6f2..71eeb5ed3 100644
--- a/src/navigation/task/components/Details.js
+++ b/src/navigation/task/components/Details.js
@@ -12,7 +12,7 @@ import FontAwesome5 from 'react-native-vector-icons/FontAwesome5';
import ItemSeparator from '../../../components/ItemSeparator';
import {
- isKnownPaymentMethod,
+ isDisplayPaymentMethodInList,
loadDescriptionTranslationKey,
loadIconKey,
} from '../../../components/PaymentMethodInfo';
@@ -91,10 +91,7 @@ const Details = ({ task, t }) => {
});
}
- if (
- task.metadata &&
- task.metadata.has_loopeat_returns
- ) {
+ if (task.metadata && task.metadata.has_loopeat_returns) {
items.push({
iconName: 'recycle',
iconType: FontAwesome5,
@@ -109,6 +106,18 @@ const Details = ({ task, t }) => {
});
}
+ if (
+ task.metadata &&
+ task.metadata.payment_method &&
+ isDisplayPaymentMethodInList(task.metadata.payment_method)
+ ) {
+ items.push({
+ iconName: loadIconKey(task.metadata.payment_method),
+ iconType: Foundation,
+ text: t(loadDescriptionTranslationKey(task.metadata.payment_method)),
+ });
+ }
+
if (task.comments) {
items.push({
iconName: 'chatbubbles',
@@ -164,18 +173,6 @@ const Details = ({ task, t }) => {
});
}
- if (
- task.metadata &&
- task.metadata.payment_method &&
- isKnownPaymentMethod(task.metadata.payment_method)
- ) {
- items.push({
- iconName: loadIconKey(task.metadata.payment_method),
- iconType: Foundation,
- text: t(loadDescriptionTranslationKey(task.metadata.payment_method)),
- });
- }
-
return (