import { Avatar, Dropdown, Menu, message, Modal } from 'antd'; import { DownOutlined, UserOutlined, UserSwitchOutlined, CarryOutOutlined, HomeOutlined, ImportOutlined } from '@ant-design/icons'; import React, { useEffect, useRef } from 'react'; import moment from 'moment' import { connect, history, KeepAliveContext } from '@umijs/max'; import { ConnectState } from '@/models/connect'; import logo from '@/assets/logo.svg'; import './index.less'; import { getMenu, getLogout } from './services' import { getSessionUserData, getSessionRoleData } from "@/utils/session"; import { getToSecondUrl } from '@/pages/LoadingPage/service'; import userIcon from '@/assets/user.svg'; import homeIcon from '@/assets/home.svg'; import shutdownIcon from '@/assets/shutdown.svg'; import { logout } from './services'; import cookie from 'react-cookies'; import divider from '@/assets/divider.png'; import useGoHome from '@/utils/useGoHome'; const theme = JSON.parse(PROJECT_THEME); const GlobalHeaderRight: React.FC<{}> = (props) => { // let className = styles.right; const data = getSessionUserData(); const roleData = getSessionRoleData(); const [dataMenu, setDataMenu] = React.useState([]); const urlRef = useRef(null); const goHome = useGoHome() const handelRole = (item: any) => { sessionStorage.setItem('roleData', JSON.stringify(item)); sessionStorage.setItem('roleAuthority', JSON.stringify([item.roleCode])); const params = { roleIdList: [item.roleId] } history.push('/Dashboard') window.location.reload() // getMenu(params).then(res => { // if (res?.code == 1) { // setDataMenu(res?.data) // } else { // message.error("数据错误请联系管理员") // } // }) } //角色退出登录 const toLogout = () => { // let _data = { // mall3_token: sessionStorage.getItem('Authorization') // } // 获取用户类型,用于判断返回哪个登录页面 const userType = localStorage.getItem('userType'); Modal.info({ title: '请确认是否退出?', content: false, onOk() { logout().then((res) => { if (res?.success) { // if (data?.userType == "0") {//联通智慧门户 // window.close(); // } else if (data?.userType == "1") {//合作方 // window.close(); // } else if (data?.userType == "2") {//专家 // window.location.href = "/userformal/login" // } message.success('退出登录成功'); sessionStorage.clear(); cookie.remove('mall3_token'); // 清空用户类型 localStorage.removeItem('userType'); // 根据用户类型返回不同的登录页面 setTimeout(() => { if (userType === 'internal') { history.push('/internal-login'); // 内部用户返回内部登录页 } else { history.push('/login'); // 普通用户返回普通登录页 } }, 1000); } }) }, closable: true, centered: true, okText: "确认退出", className: "layout-modal-logout", }); } const droMenu = ( {data?.authorityList != undefined ? data?.authorityList?.map((item: any) => ( handelRole(item)}>{item.roleName} )) : null} {/* <> toLogout()}>退出登录 */} ); useEffect(() => { const getUrl = async () => { const response = await getToSecondUrl(); if (response?.success) { urlRef.current = response?.data; } } getUrl(); }, []) return (
中远海运集团采购信息系统 COSCO SHIPPING Group Procurement Information System
{roleData?.roleName} {roleData?.roleCode}
); }; export default connect(({ settings }: ConnectState) => ({ theme: settings.navTheme, layout: settings.layout, }))(GlobalHeaderRight);