import React from 'react'; import { useTranslation } from 'react-i18next'; import { Order } from '../../models/order'; import FormatLib from '../../lib/format'; import { FabButton } from '../base/fab-button'; import { User } from '../../models/user'; import { FabStateLabel } from '../base/fab-state-label'; import OrderLib from '../../lib/order'; interface OrderItemProps { order?: Order, currentUser?: User } /** * List item for an order */ export const OrderItem: React.FC = ({ order, currentUser }) => { const { t } = useTranslation('shared'); /** * Go to order page */ const showOrder = (order: Order) => { isPrivileged() ? window.location.href = `/#!/admin/store/orders/${order.id}` : window.location.href = `/#!/dashboard/orders/${order.id}`; }; /** * Check if the current operator has administrative rights or is a normal member */ const isPrivileged = (): boolean => { return (currentUser?.role === 'admin' || currentUser?.role === 'manager'); }; return (

{order.reference}

{t(`app.shared.store.order_item.state.${OrderLib.statusText(order)}`)}
{isPrivileged() &&
{t('app.shared.store.order_item.client')}

{order?.user?.name || ''}

}

{FormatLib.date(order.created_at)}

{t('app.shared.store.order_item.total')}

{FormatLib.price(order?.paid_total)}

showOrder(order)} icon={} className="is-black" />
); };