feat:add redirect link to bpms

This commit is contained in:
MehrdadAdabi 2025-09-14 16:07:30 +03:30
parent d240fb39fa
commit 6fdfe83b1e
3 changed files with 55 additions and 31 deletions

View File

@ -5,17 +5,16 @@ import { cn } from "~/lib/utils";
import { Button } from "~/components/ui/button";
import {
PanelLeft,
Search,
Bell,
Settings,
User,
Moon,
Sun,
Menu,
ChevronDown,
Globe,
HelpCircle,
Server,
} from "lucide-react";
import apiService from "~/lib/api";
interface HeaderProps {
onToggleSidebar?: () => void;
@ -32,6 +31,18 @@ export function Header({
const [isProfileMenuOpen, setIsProfileMenuOpen] = useState(false);
const [isNotificationOpen, setIsNotificationOpen] = useState(false);
const redirectHandler = async () => {
try {
const getData = await apiService.post('/GenerateSsoCode')
const url = `http://localhost:3000/redirect/${getData.data}`;
// const url = `https://inogen-bpms.pelekan.org/redirect/${getData.data}`;
window.open(url, "_blank");
} catch (error) {
console.log(error);
}
}
return (
<header
className={cn(
@ -111,6 +122,13 @@ export function Header({
<Settings className="h-4 w-4" />
تنظیمات
</Link>
<button
className="flex w-full items-center gap-2 px-3 py-2 text-sm text-gray-300 hover:bg-gradient-to-r hover:from-emerald-500/10 hover:to-teal-500/10 hover:text-emerald-300 font-persian"
onClick={redirectHandler}>
<Server className="h-4 w-4" />
ورود به سامانه BPMS
</button>
</div>
</div>
)}

View File

@ -3,6 +3,7 @@ import { cn } from "~/lib/utils";
import { Sidebar } from "./sidebar";
import { Header } from "./header";
import { StrategicAlignmentPopup } from "./strategic-alignment-popup";
import apiService from "~/lib/api";
interface DashboardLayoutProps {
children: React.ReactNode;
@ -27,6 +28,8 @@ export function DashboardLayout({
setIsMobileSidebarOpen(!isMobileSidebarOpen);
};
return (
<div
className="h-screen flex overflow-hidden bg-[linear-gradient(to_bottom_left,#464861,20%,#111628)] relative overflow-x-hidden"
@ -58,6 +61,7 @@ export function DashboardLayout({
onToggleCollapse={toggleSidebarCollapse}
className="h-full flex-shrink-0 relative z-10"
onStrategicAlignmentClick={() => setIsStrategicAlignmentPopupOpen(true)}
/>
</div>

View File

@ -15,6 +15,7 @@ import {
Settings,
Star,
Workflow,
DiscAlbum
} from "lucide-react";
import React, { useState } from "react";
import { Link, useLocation } from "react-router";
@ -112,6 +113,7 @@ const menuItems: MenuItem[] = [
icon: null,
href: "#", // This is not a route, it opens a popup
},
];
const bottomMenuItems: MenuItem[] = [