Selaa lähdekoodia

added menu item auth control

MergeProblem1
[email protected] 2 viikkoa sitten
vanhempi
commit
7aca307ed4
1 muutettua tiedostoa jossa 24 lisäystä ja 15 poistoa
  1. +24
    -15
      src/components/NavigationContent/NavigationContent.tsx

+ 24
- 15
src/components/NavigationContent/NavigationContent.tsx Näytä tiedosto

@@ -26,14 +26,7 @@ import Link from "next/link";
import { NAVIGATION_CONTENT_WIDTH } from "@/config/uiConfig";
import Logo from "../Logo";
import BugReportIcon from "@mui/icons-material/BugReport";
import {
VIEW_USER,
MAINTAIN_USER,
VIEW_GROUP,
MAINTAIN_GROUP,
// Add more authorities as needed, e.g.:
TESTING, PROD, PACK, ADMIN, STOCK, Driver
} from "../../authorities";
import { AUTH } from "../../authorities";

interface NavigationItem {
icon: React.ReactNode;
@@ -67,15 +60,18 @@ const NavigationContent: React.FC = () => {
icon: <RequestQuote />,
label: "Store Management",
path: "",
requiredAbility: [AUTH.PURCHASE, AUTH.STOCK, AUTH.STOCK_TAKE, AUTH.STOCK_FG, AUTH.STOCK_IN_BIND, AUTH.ADMIN],
children: [
{
icon: <RequestQuote />,
label: "Purchase Order",
requiredAbility: [AUTH.PURCHASE, AUTH.ADMIN],
path: "/po",
},
{
icon: <RequestQuote />,
label: "Pick Order",
requiredAbility: [AUTH.STOCK, AUTH.ADMIN],
path: "/pickOrder",
},
// {
@@ -101,16 +97,19 @@ const NavigationContent: React.FC = () => {
{
icon: <RequestQuote />,
label: "View item In-out And inventory Ledger",
requiredAbility: [AUTH.STOCK, AUTH.ADMIN],
path: "/inventory",
},
{
icon: <RequestQuote />,
label: "Stock Take Management",
requiredAbility: [AUTH.STOCK_TAKE, AUTH.ADMIN],
path: "/stocktakemanagement",
},
{
icon: <RequestQuote />,
label: "Stock Issue",
requiredAbility: [AUTH.STOCK, AUTH.STOCK_TAKE, AUTH.ADMIN],
path: "/stockIssue",
},
//TODO: anna
@@ -122,16 +121,19 @@ const NavigationContent: React.FC = () => {
{
icon: <RequestQuote />,
label: "Put Away Scan",
requiredAbility: [AUTH.STOCK, AUTH.STOCK_TAKE, AUTH.STOCK_IN_BIND, AUTH.ADMIN],
path: "/putAway",
},
{
icon: <RequestQuote />,
label: "Finished Good Order",
requiredAbility: [AUTH.STOCK_FG, AUTH.ADMIN],
path: "/finishedGood",
},
{
icon: <RequestQuote />,
label: "Stock Record",
requiredAbility: [AUTH.STOCK_TAKE, AUTH.STOCK_IN_BIND, AUTH.STOCK_FG, AUTH.ADMIN],
path: "/stockRecord",
},
],
@@ -140,11 +142,12 @@ const NavigationContent: React.FC = () => {
icon: <RequestQuote />,
label: "Delivery",
path: "",
//requiredAbility: VIEW_DO,
requiredAbility: [AUTH.STOCK_FG, AUTH.ADMIN],
children: [
{
icon: <RequestQuote />,
label: "Delivery Order",
requiredAbility: [AUTH.STOCK_FG, AUTH.ADMIN],
path: "/do",
},
],
@@ -187,6 +190,7 @@ const NavigationContent: React.FC = () => {
icon: <RequestQuote />,
label: "Scheduling",
path: "",
requiredAbility: [AUTH.FORECAST, AUTH.ADMIN],
children: [
{
icon: <RequestQuote />,
@@ -211,25 +215,30 @@ const NavigationContent: React.FC = () => {
icon: <RequestQuote />,
label: "Management Job Order",
path: "",
requiredAbility: [AUTH.JOB_CREATE, AUTH.JOB_PICK, AUTH.JOB_PROD, AUTH.ADMIN],
children: [
{
icon: <RequestQuote />,
label: "Search Job Order/ Create Job Order",
requiredAbility: [AUTH.JOB_CREATE, AUTH.ADMIN],
path: "/jo",
},
{
icon: <RequestQuote />,
label: "Job Order Pickexcution",
requiredAbility: [AUTH.JOB_PICK, AUTH.JOB_MAT, AUTH.ADMIN],
path: "/jodetail",
},
{
icon: <RequestQuote />,
label: "Job Order Production Process",
requiredAbility: [AUTH.JOB_PROD, AUTH.ADMIN],
path: "/productionProcess",
},
{
icon: <RequestQuote />,
label: "Bag Usage",
requiredAbility: [AUTH.JOB_PROD, AUTH.ADMIN],
path: "/bag",
},
],
@@ -238,40 +247,40 @@ const NavigationContent: React.FC = () => {
icon: <BugReportIcon />,
label: "PS",
path: "/ps",
requiredAbility: TESTING,
requiredAbility: AUTH.TESTING,
isHidden: false,
},
{
icon: <BugReportIcon />,
label: "Printer Testing",
path: "/testing",
requiredAbility: TESTING,
requiredAbility: [AUTH.TESTING, AUTH.ADMIN],
isHidden: false,
},
{
icon: <BugReportIcon />,
label: "Report Management",
path: "/report",
requiredAbility: TESTING,
requiredAbility: [AUTH.TESTING, AUTH.ADMIN],
isHidden: false,
},
{
icon: <RequestQuote />,
label: "Settings",
path: "",
requiredAbility: [VIEW_USER, VIEW_GROUP],
requiredAbility: [AUTH.VIEW_USER, AUTH.ADMIN],
children: [
{
icon: <RequestQuote />,
label: "User",
path: "/settings/user",
requiredAbility: VIEW_USER,
requiredAbility: [AUTH.VIEW_USER, AUTH.ADMIN],
},
{
icon: <RequestQuote />,
label: "User Group",
path: "/settings/user",
requiredAbility: VIEW_GROUP,
requiredAbility: [AUTH.VIEW_GROUP, AUTH.ADMIN],
},
// {
// icon: <RequestQuote />,


Ladataan…
Peruuta
Tallenna