diff --git a/config/proxy.ts b/config/proxy.ts index b2818a1..4e5b100 100644 --- a/config/proxy.ts +++ b/config/proxy.ts @@ -1,10 +1,16 @@ export default { dev: { + '/api/v1': { + target: 'http://10.0.0.14:18030',// 李 + // target: 'http://10.0.0.46:18030',// 袁 + changeOrigin: true, + pathRewrite: { '^/api/v1': '/v1' }, + }, '/api': { // target: 'http://10.242.37.148:18022',// // target: 'http://10.0.0.10:18012',// 茂 - target: 'http://10.0.0.125:18012',// 测试 - // target: 'http://10.0.0.14:18012',// 李 + // target: 'http://10.0.0.125:18012',// 测试 + target: 'http://10.0.0.14:18012',// 李 // target: 'http://10.0.0.14:18030',// 李 // target: 'http://10.0.0.46:18030',// 袁 changeOrigin: true, diff --git a/src/components/SupplierSelector/SupplierSelector.tsx b/src/components/SupplierSelector/SupplierSelector.tsx index 27a1aa6..34357d7 100644 --- a/src/components/SupplierSelector/SupplierSelector.tsx +++ b/src/components/SupplierSelector/SupplierSelector.tsx @@ -237,6 +237,7 @@ const SupplierSelector: React.FC = ({ { title: intl.formatMessage({ id: 'supplierTaskManage.column.supplierName' }), dataIndex: 'supplierName', + width: 120, ellipsis: true, render: (supplierName: string) => ( @@ -247,6 +248,7 @@ const SupplierSelector: React.FC = ({ { title: intl.formatMessage({ id: 'supplierTaskManage.column.socialCreditCode' }), dataIndex: 'socialCreditCode', + width: 120, ellipsis: true, render: (socialCreditCode: string) => ( @@ -257,6 +259,7 @@ const SupplierSelector: React.FC = ({ { title: intl.formatMessage({ id: 'supplierTaskManage.column.categoryName' }), dataIndex: 'categoryName', + width: 120, ellipsis: true, render: (categoryName: string) => ( diff --git a/src/layouts/BasicLayout.tsx b/src/layouts/BasicLayout.tsx index ca1b9b2..ca2a136 100644 --- a/src/layouts/BasicLayout.tsx +++ b/src/layouts/BasicLayout.tsx @@ -1,5 +1,5 @@ // src/layouts/BasicLayout.tsx -import React from 'react'; +import React, { useEffect, useState } from 'react'; import ProLayout, { PageContainer } from '@ant-design/pro-layout'; import { Link, useLocation, useIntl, useHistory } from 'umi'; import { connect } from 'dva'; @@ -34,6 +34,28 @@ const MenuRender = (item: any, isSubMenu: boolean) => { ); }; +// 递归交集过滤函数 +function filterMenuByRouter(routes:any, menuRoutes:any) { + return routes.reduce((result:any, route:any) => { + // 只看有 name 的节点 + const menu = menuRoutes.find(m => m.name === route.name); + if (menu) { + // 匹配到后,递归处理 children + let children = []; + if (route.children && menu.children) { + children = filterMenuByRouter(route.children, menu.children); + } + // 构建新节点,保留原 router.config.ts 路径等信息(比如 path, icon, ...其它字段) + result.push({ + ...route, + // ...menu, // 可按需决定是否 menu 字段覆盖 route 字段(比如 path) + // children: children.length > 0 ? children : undefined + }); + } + return result; + }, []); +} + const BreadcrumbRender = (routeBreadcrumb: any, intl: any, history: any, dynamicBreadcrumbName: string | null) => { const breadcrumbRoutes = routeBreadcrumb?.routes; return ( @@ -74,11 +96,28 @@ const BasicLayout: React.FC = (props) => { const location = useLocation(); const intl = useIntl(); const history = useHistory(); + + const [menuRoutes, setMenuRoutes] = useState([]); + + useEffect(() => { + const menuStr = sessionStorage.getItem('menuList'); + if (menuStr) { + const menusFromApi = JSON.parse(menuStr); + // routes是本地静态路由,menusFromApi是接口菜单 + const finalMenus = filterMenuByRouter(routes, menusFromApi); + console.log(finalMenus); + + setMenuRoutes(finalMenus); + } + }, []); + + return ( { return MenuRender(menuItemProps, true); }} diff --git a/src/pages/login/login.tsx b/src/pages/login/login.tsx index 3007518..e709265 100644 --- a/src/pages/login/login.tsx +++ b/src/pages/login/login.tsx @@ -3,7 +3,7 @@ import { Form, Input, Button, Checkbox, Tabs, message } from 'antd'; import { UserOutlined, LockOutlined, EyeInvisibleOutlined, EyeTwoTone, HomeOutlined } from '@ant-design/icons'; import { history, useIntl } from 'umi'; import './login.less'; -import { getCaptcha, supplierLogin, expertLogin, accountLogin } from '@/servers/api/login'; +import { getCaptcha, supplierLogin, expertLogin, accountLogin, getUserinfo, findMenuList } from '@/servers/api/login'; import { encryptWithRsa } from '@/utils/encryptWithRsa' import Password from 'antd/lib/input/Password'; @@ -51,6 +51,20 @@ const LoginPage: React.FC = () => { // sessionStorage.setItem('userId', loginRes.data.supplierUser.userId); } sessionStorage.setItem('currentUser', JSON.stringify(loginRes.data)); + + getUserinfo().then( async (res) => { + // if(res.code == 200) { + const roleIdList = res.authorityList.map((item:any) => { + return item.roleId + }) + console.log(roleIdList,'roleIdList'); + + const menuList = await findMenuList({ roleIdList }); + sessionStorage.setItem('menuList', JSON.stringify(menuList.data)); + // } + }) + + message.success('登录成功'); history.push('/index'); } else { diff --git a/src/pages/supplier/admission/SupplierCategoryEntry/components/SupplierSelector.tsx b/src/pages/supplier/admission/SupplierCategoryEntry/components/SupplierSelector.tsx index 456f6a8..ef67c4e 100644 --- a/src/pages/supplier/admission/SupplierCategoryEntry/components/SupplierSelector.tsx +++ b/src/pages/supplier/admission/SupplierCategoryEntry/components/SupplierSelector.tsx @@ -71,7 +71,7 @@ const SupplierSelector: React.FC<{ visible: boolean; onCancel: () => void; onSel }, [visible]) //供应商名称 const columns = [ - { title: '供应商名称', dataIndex: 'name', ellipsis: true, render: (name: string) => ( + { title: '供应商名称', dataIndex: 'name', ellipsis: true, width: 160, render: (name: string) => ( {name} diff --git a/src/pages/supplier/admission/SupplierCategoryEntry/index.tsx b/src/pages/supplier/admission/SupplierCategoryEntry/index.tsx index a73c0b0..4380364 100644 --- a/src/pages/supplier/admission/SupplierCategoryEntry/index.tsx +++ b/src/pages/supplier/admission/SupplierCategoryEntry/index.tsx @@ -88,12 +88,12 @@ const SupplierCategoryEntry: React.FC = () => { width: 60, render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, }, - { title: '准入工作', ellipsis: true, dataIndex: 'accessWorkName' }, - { title: '准入单位', ellipsis: true, dataIndex: 'deptId' }, - { title: '准入部门', ellipsis: true, dataIndex: 'deptId' }, - { title: '准入方式', ellipsis: true, dataIndex: 'accessTypeText' }, + { title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' }, + { title: '准入单位', ellipsis: true, width: 120, dataIndex: 'deptId' }, + { title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptId' }, + { title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' }, { title: '申请时间', dataIndex: 'createTime', width: 180 }, - { title: '状态', ellipsis: true, dataIndex: 'approveStatusText' }, + { title: '状态', ellipsis: true, width: 120, dataIndex: 'approveStatusText' }, { title: '操作', width: 140, diff --git a/src/pages/supplier/admission/SupplierEntryReview/index.tsx b/src/pages/supplier/admission/SupplierEntryReview/index.tsx index 4aaf921..212cebc 100644 --- a/src/pages/supplier/admission/SupplierEntryReview/index.tsx +++ b/src/pages/supplier/admission/SupplierEntryReview/index.tsx @@ -120,21 +120,25 @@ const SupplierEntryReview: React.FC = () => { dataIndex: 'accessWorkName', align: 'center', ellipsis: true, + width: 120, }, { title: '准入部门', dataIndex: 'deptId', align: 'center', + width: 120, }, { title: '准入方式', dataIndex: 'accessTypeText', align: 'center', ellipsis: true, + width: 120, }, { title: '准入品类', dataIndex: 'categoryNameList', + width: 120, align: 'center', render: (_: any, record: any) => { return ( @@ -164,15 +168,18 @@ const SupplierEntryReview: React.FC = () => { title: '流程状态', dataIndex: 'reviewStatusText', align: 'center', + width: 120, }, { title: '审核', dataIndex: 'approveStatusText', align: 'center', + width: 120, }, { title: '操作', width: 120, + fixed: 'right', render: (_: any, record: any) => { return ( diff --git a/src/pages/supplier/admission/admissionManagement/components/CreateModal.tsx b/src/pages/supplier/admission/admissionManagement/components/CreateModal.tsx index eb3e9b5..0e93267 100644 --- a/src/pages/supplier/admission/admissionManagement/components/CreateModal.tsx +++ b/src/pages/supplier/admission/admissionManagement/components/CreateModal.tsx @@ -497,7 +497,7 @@ const CreateModal: React.FC<{ visible: boolean; onCancel: () => void; }> = ({ vi - + {/* 供应商选择 */} setSupplierModalVisible(false)} @@ -507,7 +507,7 @@ const CreateModal: React.FC<{ visible: boolean; onCancel: () => void; }> = ({ vi setSupplierModalVisible(false); }} /> - + {/* 评审人员选择 */} setReviewerModalVisible(false)} @@ -519,7 +519,7 @@ const CreateModal: React.FC<{ visible: boolean; onCancel: () => void; }> = ({ vi setReviewerModalVisible(false); }} /> - + {/* 评审分工选择 */} => { - return new Promise((resolve) => { - setTimeout(() => { - const all: Reviewer[] = Array.from({ length: 36 }, (_, i) => ({ - id: `u-${i + 1}`, - name: `评审人${i + 1}`, - userId: `E000${i + 1}`, - deptId: `部门${(i % 3) + 1}`, - isLeader: 0, - })); - resolve({ - list: all.slice((pageNum - 1) * pageSize, pageNum * pageSize), - total: all.length, - }); - }, 300); - }); -}; - const ReviewerSelector: React.FC = ({ visible, onCancel, @@ -82,19 +59,22 @@ const ReviewerSelector: React.FC = ({ useEffect(() => { if (!visible) return; setLoading(true); - fetchReviewers({ pageNum: page, pageSize }) + getUserPage({ basePageRequest: { pageNo: page, pageSize } }) .then((res) => { - setData(res.list); - setTotal(res.total); + const { code, data } = res; + if(code == 200) { + setData(data.records); + setTotal(data.total); + } }) .finally(() => setLoading(false)); }, [visible, page, pageSize]); // 当前已选项(全局选中的都能做组长) - const selectedReviewerObjs = useMemo( - () => data.filter((item) => selectedRowKeys.includes(item.userId)), - [data, selectedRowKeys] - ); + // const selectedReviewerObjs = useMemo( + // () => data.filter((item) => selectedRowKeys.includes(item.userId)), + // [data, selectedRowKeys] + // ); // 列 const columns: ColumnsType = [ @@ -134,7 +114,8 @@ const ReviewerSelector: React.FC = ({ ...item, isLeader: item.userId === leaderUserId ? 1 : 0, })); - + console.log(selected); + // 完整数据传回 onSelect?.({ selected, diff --git a/src/pages/supplier/admission/admissionManagement/components/SupplierSelector.tsx b/src/pages/supplier/admission/admissionManagement/components/SupplierSelector.tsx index 3c6c4b5..f3ea2f9 100644 --- a/src/pages/supplier/admission/admissionManagement/components/SupplierSelector.tsx +++ b/src/pages/supplier/admission/admissionManagement/components/SupplierSelector.tsx @@ -70,7 +70,7 @@ const SupplierSelector: React.FC<{ visible: boolean; onCancel: () => void; onSel }, [visible]) //供应商名称 const columns = [ - { title: '供应商名称', dataIndex: 'name', ellipsis: true, render: (name: string) => ( + { title: '供应商名称', dataIndex: 'name', ellipsis: true, width: 160, render: (name: string) => ( {name} diff --git a/src/pages/supplier/admission/admissionManagement/index.tsx b/src/pages/supplier/admission/admissionManagement/index.tsx index 14edbe0..48b8233 100644 --- a/src/pages/supplier/admission/admissionManagement/index.tsx +++ b/src/pages/supplier/admission/admissionManagement/index.tsx @@ -91,15 +91,16 @@ const AccessManagement: React.FC = () => { width: 80, render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, }, - { title: '准入工作', ellipsis: true, dataIndex: 'accessWorkName' }, - { title: '准入单位', ellipsis: true, dataIndex: 'deptId' }, - { title: '准入部门', ellipsis: true, dataIndex: 'deptId' }, - { title: '准入方式', ellipsis: true, dataIndex: 'accessTypeText' }, - { title: '申请时间', ellipsis: true, dataIndex: 'createTime' }, - { title: '状态', dataIndex: 'reviewStatusText' }, + { title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' }, + { title: '准入单位', ellipsis: true, width: 120, dataIndex: 'deptId' }, + { title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptId' }, + { title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' }, + { title: '申请时间', ellipsis: true, width: 180, dataIndex: 'createTime' }, + { title: '状态', dataIndex: 'reviewStatusText', width: 80, }, { title: '操作', width: 200, + fixed: 'right', render: (_: any, record: any) => ( openModal('view', record)}>查看 diff --git a/src/pages/supplier/admission/admissionManagement/services.ts b/src/pages/supplier/admission/admissionManagement/services.ts index a7ddf87..ab961f9 100644 --- a/src/pages/supplier/admission/admissionManagement/services.ts +++ b/src/pages/supplier/admission/admissionManagement/services.ts @@ -68,6 +68,17 @@ interface CoscoAccessWork { } export const add = (data: addInterface) => request.post('/coscoAccessWork/add', { data }); +interface getUserPage { + basePageRequest: basePageRequest; +} +interface basePageRequest { + pageNo: number; + pageSize: number; +} + + +export const getUserPage = (data: getUserPage) => request.post('/user/getUserPage', { data }); + /** * 品类选择查询树 */ diff --git a/src/pages/supplier/admission/admissionReviewManagement/index.tsx b/src/pages/supplier/admission/admissionReviewManagement/index.tsx index bb4d80d..38de021 100644 --- a/src/pages/supplier/admission/admissionReviewManagement/index.tsx +++ b/src/pages/supplier/admission/admissionReviewManagement/index.tsx @@ -94,6 +94,7 @@ const CooperateEnterprise: React.FC = () => { title: '准入工作', dataIndex: 'accessWorkName', key: 'accessWorkName', + width: 120, ellipsis: true, }, { @@ -101,14 +102,14 @@ const CooperateEnterprise: React.FC = () => { dataIndex: 'deptId', key: 'deptId', ellipsis: true, - width: 180, + width: 120, }, { title: '准入部门', dataIndex: 'deptId', key: 'deptId', ellipsis: true, - width: 180, + width: 120, }, { title: '准入品类', @@ -130,7 +131,7 @@ const CooperateEnterprise: React.FC = () => { dataIndex: 'accessTypeText', key: 'accessTypeText', ellipsis: true, - width: 160, + width: 120, }, { title: '评审时间', @@ -148,6 +149,7 @@ const CooperateEnterprise: React.FC = () => { { title: '操作', width: 140, + fixed: 'right', render: (_: any, record: any) => { // 已完成 3 、结果汇总中 2 、进行中1 、 未开始0 // 显示评审 按钮 diff --git a/src/pages/supplier/backend/changeProgressInquiry/components/DetailView.tsx b/src/pages/supplier/backend/changeProgressInquiry/components/DetailView.tsx index cfc4624..153ad46 100644 --- a/src/pages/supplier/backend/changeProgressInquiry/components/DetailView.tsx +++ b/src/pages/supplier/backend/changeProgressInquiry/components/DetailView.tsx @@ -2,16 +2,7 @@ import React, { useEffect, useState } from 'react'; import { Modal, Table, Spin, Descriptions } from 'antd'; import { supplierChangeApplyById } from '../services'; -interface Qualification { - type: string; - name: string; - level: string; - number: string; - org: string; - issueDate: string; - validDate: string; - file?: string; -} + interface InfoItem { fieldAnnotation?: string; newValue?: string; @@ -23,9 +14,14 @@ interface InfoItem { coscoSupplierChangeHistoryList?: []; } interface DetailData { - coscoSupplierChangeApply: InfoItem; + fieldAnnotation?: string; + newValue?: string; + oldValue?: string; + title?: string; + changeDesc?: string; + supplierName?: string; + approveStatusText?: string; coscoSupplierChangeHistoryList: InfoItem[]; - qualifications: Qualification[]; } interface DetailViewProps { visible: boolean; @@ -87,11 +83,11 @@ const DetailView: React.FC = ({ visible, onClose, detailId }) =
{/* 基本信息 */} - {detailData.coscoSupplierChangeApply?.title} - {detailData.coscoSupplierChangeApply?.changeDesc} - {detailData.coscoSupplierChangeApply?.coscoSupplierChangeHistoryList && ( - {detailData.coscoSupplierChangeApply?.changeDesc} - ) } + {detailData?.title} + {detailData?.changeDesc} + {/* {detailData?.coscoSupplierChangeHistoryList && ( + {detailData?.changeDesc} + ) } */} {/* 变更内容 */}
变更内容:
diff --git a/src/pages/supplier/backend/changeProgressInquiry/index.tsx b/src/pages/supplier/backend/changeProgressInquiry/index.tsx index 59da18a..dbc836f 100644 --- a/src/pages/supplier/backend/changeProgressInquiry/index.tsx +++ b/src/pages/supplier/backend/changeProgressInquiry/index.tsx @@ -54,9 +54,9 @@ const CooperateEnterprise: React.FC = () => { render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, }, { - title: '变更内容', - dataIndex: 'changeDesc', - key: 'changeDesc', + title: '变更标题', + dataIndex: 'title', + key: 'title', }, { title: '提交时间', @@ -70,8 +70,8 @@ const CooperateEnterprise: React.FC = () => { }, { title: '审批状态', - dataIndex: 'enterpriseType', - key: 'enterpriseType', + dataIndex: 'approveStatusText', + key: 'approveStatusText', }, { title: '审批时间', diff --git a/src/pages/supplier/backend/cooperateEnterprise/index.tsx b/src/pages/supplier/backend/cooperateEnterprise/index.tsx index f062219..3da0e77 100644 --- a/src/pages/supplier/backend/cooperateEnterprise/index.tsx +++ b/src/pages/supplier/backend/cooperateEnterprise/index.tsx @@ -115,6 +115,7 @@ const CooperateEnterprise: React.FC = () => { dataIndex: 'exitReason', key: 'exitReason', ellipsis: true, + width: 120, }, ]; return ( diff --git a/src/pages/supplier/backend/supplierNews/index.tsx b/src/pages/supplier/backend/supplierNews/index.tsx index 0b3f09d..cdf1de6 100644 --- a/src/pages/supplier/backend/supplierNews/index.tsx +++ b/src/pages/supplier/backend/supplierNews/index.tsx @@ -80,6 +80,7 @@ const supplierNews: React.FC = () => { dataIndex: 'content', key: 'content', ellipsis: true, + }, { title: '业务类型', diff --git a/src/pages/supplier/informationManagement/SupplierChangeReviewManage/components/DetailView.tsx b/src/pages/supplier/informationManagement/SupplierChangeReviewManage/components/DetailView.tsx index cfc4624..f1b18f6 100644 --- a/src/pages/supplier/informationManagement/SupplierChangeReviewManage/components/DetailView.tsx +++ b/src/pages/supplier/informationManagement/SupplierChangeReviewManage/components/DetailView.tsx @@ -2,16 +2,7 @@ import React, { useEffect, useState } from 'react'; import { Modal, Table, Spin, Descriptions } from 'antd'; import { supplierChangeApplyById } from '../services'; -interface Qualification { - type: string; - name: string; - level: string; - number: string; - org: string; - issueDate: string; - validDate: string; - file?: string; -} + interface InfoItem { fieldAnnotation?: string; newValue?: string; @@ -23,9 +14,12 @@ interface InfoItem { coscoSupplierChangeHistoryList?: []; } interface DetailData { - coscoSupplierChangeApply: InfoItem; + fieldAnnotation?: string; + title?: string; + changeDesc?: string; + supplierName?: string; + approveStatusText?: string; coscoSupplierChangeHistoryList: InfoItem[]; - qualifications: Qualification[]; } interface DetailViewProps { visible: boolean; @@ -87,11 +81,11 @@ const DetailView: React.FC = ({ visible, onClose, detailId }) =
{/* 基本信息 */} - {detailData.coscoSupplierChangeApply?.title} - {detailData.coscoSupplierChangeApply?.changeDesc} - {detailData.coscoSupplierChangeApply?.coscoSupplierChangeHistoryList && ( - {detailData.coscoSupplierChangeApply?.changeDesc} - ) } + {detailData?.title} + {detailData?.changeDesc} + {/* {detailData?.coscoSupplierChangeHistoryList && ( + {detailData?.changeDesc} + ) } */} {/* 变更内容 */}
变更内容:
diff --git a/src/pages/supplier/informationManagement/SupplierChangeReviewManage/index.tsx b/src/pages/supplier/informationManagement/SupplierChangeReviewManage/index.tsx index c1e7dda..eaa8f10 100644 --- a/src/pages/supplier/informationManagement/SupplierChangeReviewManage/index.tsx +++ b/src/pages/supplier/informationManagement/SupplierChangeReviewManage/index.tsx @@ -125,6 +125,7 @@ const SupplierChangeReviewManage: React.FC = ({ dispatch }) => { title: '供应商名称', dataIndex: 'supplierName', align: 'left', + width: 160, ellipsis: true, render: (dom, record) => diff --git a/src/pages/supplier/informationRetrieval/groupQualifiedSupplierQuery/index.tsx b/src/pages/supplier/informationRetrieval/groupQualifiedSupplierQuery/index.tsx index c8581c4..7049c86 100644 --- a/src/pages/supplier/informationRetrieval/groupQualifiedSupplierQuery/index.tsx +++ b/src/pages/supplier/informationRetrieval/groupQualifiedSupplierQuery/index.tsx @@ -156,7 +156,8 @@ const groupQualifiedSupplierQuery: React.FC = ({ dispatch }) => { dataIndex: 'name', key: 'name', align: 'left', - ellipsis: true, + ellipsis: true, + width: 160, render: (dom, record) => = ({ dispatch }) => { title: '供应商名称', dataIndex: 'name', key: 'name', + width: 160, ellipsis: true, render: (dom, record) => diff --git a/src/pages/supplier/informationRetrieval/registrationQuery/index.tsx b/src/pages/supplier/informationRetrieval/registrationQuery/index.tsx index d37dfbf..75721a5 100644 --- a/src/pages/supplier/informationRetrieval/registrationQuery/index.tsx +++ b/src/pages/supplier/informationRetrieval/registrationQuery/index.tsx @@ -117,6 +117,7 @@ const RegistrationQuery: React.FC = ({ dispatch }) => { dataIndex: 'name', key: 'name', align: 'left', + width: 160, ellipsis: true, render: (dom, record) => diff --git a/src/servers/api/login.ts b/src/servers/api/login.ts index fdff6d4..d768f42 100644 --- a/src/servers/api/login.ts +++ b/src/servers/api/login.ts @@ -37,5 +37,29 @@ export async function supplierLogin (data: API.LoginSupplier) { data }); } +/** + * 用户信息 + */ +export async function getUserinfo() { + return request('/v1/userinfo/get', { + method: 'GET' + }); +} - +/** + * 退出 + */ +export async function Logout() { + return request('/v1/login/logout', { + method: 'GET' + }); +} +/** + * 路由 + */ +export async function findMenuList(data: any) { + return request('/v1/menu/findMenuList', { + method: 'POST', + data + }); +}