From b849bfaa951788d9d72a33975d440eea8e30c9dc Mon Sep 17 00:00:00 2001
From: elforjani13 <39470382+elforjani13@users.noreply.github.com>
Date: Thu, 31 Mar 2022 13:39:15 +0200
Subject: [PATCH] BIG-344: add branch to manual journal & expense.
---
.../ExpenseDrawer/ExpenseDrawerProvider.js | 19 ++++++++++++++++-
src/containers/Drawers/ExpenseDrawer/index.js | 3 ---
.../Drawers/ManualJournalDrawer/utils.js | 21 ++++++++++++++++---
src/lang/ar/index.json | 6 ++++--
src/lang/en/index.json | 1 +
5 files changed, 41 insertions(+), 9 deletions(-)
diff --git a/src/containers/Drawers/ExpenseDrawer/ExpenseDrawerProvider.js b/src/containers/Drawers/ExpenseDrawer/ExpenseDrawerProvider.js
index 90e4b87a1..f5da42cc8 100644
--- a/src/containers/Drawers/ExpenseDrawer/ExpenseDrawerProvider.js
+++ b/src/containers/Drawers/ExpenseDrawer/ExpenseDrawerProvider.js
@@ -1,6 +1,9 @@
import React from 'react';
+import intl from 'react-intl-universal';
import { useExpense } from 'hooks/query';
-import { DrawerLoading } from 'components';
+import { DrawerHeaderContent, DrawerLoading } from 'components';
+import { Features } from 'common';
+import { useFeatureCan } from 'hooks/state';
const ExpenseDrawerDrawerContext = React.createContext();
@@ -8,6 +11,9 @@ const ExpenseDrawerDrawerContext = React.createContext();
* Expense drawer provider.
*/
function ExpenseDrawerProvider({ expenseId, ...props }) {
+ // Features guard.
+ const { featureCan } = useFeatureCan();
+
// Fetch the expense details.
const {
data: expense,
@@ -28,6 +34,17 @@ function ExpenseDrawerProvider({ expenseId, ...props }) {
return (
+
);
diff --git a/src/containers/Drawers/ExpenseDrawer/index.js b/src/containers/Drawers/ExpenseDrawer/index.js
index cb3c56f66..92ad685b6 100644
--- a/src/containers/Drawers/ExpenseDrawer/index.js
+++ b/src/containers/Drawers/ExpenseDrawer/index.js
@@ -1,6 +1,4 @@
import React, { lazy } from 'react';
-import intl from 'react-intl-universal';
-
import { Drawer, DrawerSuspense } from 'components';
import withDrawers from 'containers/Drawer/withDrawers';
@@ -22,7 +20,6 @@ function ExpenseDrawer({
diff --git a/src/containers/Drawers/ManualJournalDrawer/utils.js b/src/containers/Drawers/ManualJournalDrawer/utils.js
index 944c4f784..31e38ccf0 100644
--- a/src/containers/Drawers/ManualJournalDrawer/utils.js
+++ b/src/containers/Drawers/ManualJournalDrawer/utils.js
@@ -3,6 +3,8 @@ import React from 'react';
import { Tag, Intent, Classes, Tooltip, Position } from '@blueprintjs/core';
import { T, Choose, FormatNumberCell, If, Icon } from '../../../components';
+import { Features } from 'common';
+import { useFeatureCan } from 'hooks/state';
/**
* Note column accessor.
@@ -46,8 +48,9 @@ export function ManualJournalDetailsStatus({ manualJournal }) {
/**
* Retrieve read-only manual journal entries columns.
*/
-export const useManualJournalEntriesColumns = () =>
- React.useMemo(
+export const useManualJournalEntriesColumns = () => {
+ const { featureCan } = useFeatureCan();
+ return React.useMemo(
() => [
{
Header: intl.get('account_name'),
@@ -70,6 +73,17 @@ export const useManualJournalEntriesColumns = () =>
disableSortBy: true,
className: 'note',
},
+ ...(featureCan(Features.Branches)
+ ? [
+ {
+ Header: intl.get('branch'),
+ width: 130,
+ accessor: 'branch.name',
+ disableSortBy: true,
+ className: 'branch',
+ },
+ ]
+ : []),
{
Header: intl.get('credit'),
accessor: 'credit',
@@ -93,5 +107,6 @@ export const useManualJournalEntriesColumns = () =>
align: 'right',
},
],
- [],
+ [featureCan],
);
+};
diff --git a/src/lang/ar/index.json b/src/lang/ar/index.json
index cfb865514..9e069b70f 100644
--- a/src/lang/ar/index.json
+++ b/src/lang/ar/index.json
@@ -2005,8 +2005,10 @@
"estimate.warehouse_button.label": "المخزن: {label}",
"receipt.branch_button.label": "الفرع: {label}",
"receipt.warehouse_button.label": "المخزن: {label}",
- "warehouse_transfer.empty_status.title": "إدارة عمليات النقل بين المستودعات",
- "warehouse_transfer.empty_status.description": "غالبًا ماتحتاج الاعمال ذات مستودعات متعددة لطلبات نقل البضائع من مستودع إلى آخر عندما تكون في حاجة ماسة إلى البائعين.",
+ "warehouse_transfer.empty_status.title": "إدارة عمليات النقل بين المخازن",
+ "warehouse_transfer.empty_status.description": "غالبًا ماتحتاج الاعمال ذات مخازن متعددة لطلبات نقل البضائع من مخزن إلى آخر عندما تكون في حاجة ماسة إلى البائعين.",
+ "warehouse_transfer.form.reason.label": "أسباب النقل",
+ "warehouse_transfer.form.reason.placeholder": "Enter the reason behind the transfer order.",
"item.error.you_could_not_delete_item_has_associated": "لا يمكنك حذف العنصر لديه معاملات مرتبطة به ",
"warehouse_transfer.quantity_cannot_be_zero_or_empty": "لا يمكن أن تكون الكمية صفراً أو فارغة.",
"invoice.validation.due_date": "يجب أن يكون حقل {path} في وقت لاحق من {min}",
diff --git a/src/lang/en/index.json b/src/lang/en/index.json
index 850a6313d..eb8483918 100644
--- a/src/lang/en/index.json
+++ b/src/lang/en/index.json
@@ -1756,6 +1756,7 @@
"payment_made.drawer.subtitle": "Branch: {value}",
"manual_journal.drawer.title": "Manual journal details ({number})",
"expense.drawer.title": "Expense details",
+ "expense.drawer.subtitle": "Branch: {value}",
"global_error.you_dont_have_permissions": "You do not have permissions to access this page.",
"global_error.transactions_locked": "Transactions before {lockedToDate} has been locked. Hence action cannot be performed.",
"global_error.authorized_user_inactive": "The authorized user is inactive.",