From e56864c02ece19f049b2531a92dd3585ac007eed Mon Sep 17 00:00:00 2001 From: xixi <123@qq.com> Date: Tue, 21 May 2024 15:24:48 +0800 Subject: [PATCH] lyp --- src/route/proj/ProjEdit.tsx | 2 +- .../proj/edit/ProjConfigMenuListShow.tsx | 14 +- src/route/proj/edit/ProjConfigModEdit.tsx | 17 +- src/route/proj/edit/ProjConfigModListShow.tsx | 12 +- src/route/proj/edit/ProjConfigModSave.tsx | 178 +++++++++++------- 5 files changed, 137 insertions(+), 86 deletions(-) diff --git a/src/route/proj/ProjEdit.tsx b/src/route/proj/ProjEdit.tsx index 46bd8bf..5c84131 100644 --- a/src/route/proj/ProjEdit.tsx +++ b/src/route/proj/ProjEdit.tsx @@ -1,4 +1,4 @@ -import './proj-edit.css'; +import './proj-edit.css';1 // import {Link, useNavigate, useParams} from "react-router-dom"; import { useNavigate, useParams } from "react-router-dom"; import { Button, FloatButton, message, Modal } from "antd"; diff --git a/src/route/proj/edit/ProjConfigMenuListShow.tsx b/src/route/proj/edit/ProjConfigMenuListShow.tsx index 64725cc..2bf2a45 100644 --- a/src/route/proj/edit/ProjConfigMenuListShow.tsx +++ b/src/route/proj/edit/ProjConfigMenuListShow.tsx @@ -1,6 +1,6 @@ import './proj-config-list-mod.css'; -import {Alert, Breadcrumb, message, Table, TableProps,} from "antd"; -import {Link, useNavigate, useParams} from "react-router-dom"; +import {Alert, message, Table, TableProps,} from "antd"; +import {useParams} from "react-router-dom"; import {useEffect, useState} from "react"; import {get} from "../../../util/AjaxUtils.ts"; @@ -17,12 +17,12 @@ interface DataType { } export default function ProjConfigMenuListShow() { - const nav = useNavigate(); + // const nav = useNavigate(); const pathParams = useParams(); const [messageApi, contextHolder] = message.useMessage(); const [dataArray, setDataArray] = useState(); - const height = window.innerHeight - 165; + const height = window.innerHeight - 200; const renderData = () => { get({ @@ -66,15 +66,15 @@ export default function ProjConfigMenuListShow() { return ( <> {contextHolder} - 首页}, {title: 创建项目}, {title: {nav(-1)}}>编辑项目}, {title: '系统菜单顺序'}, ]} - /> -
+ /> */} +
-
*/} -
- +
+
{ setIsEditModalOpen(true); }} @@ -87,23 +87,43 @@ export default function ProjConfigModSave(props: PropsType) { label="菜单名称" name="modName" extra="此内容会作为菜单名生成菜单,最多8个字" - rules={[{required: true, message: '请输入菜单名称'}]} + rules={[{ required: true, message: '请输入菜单名称' }, + // { + // validator: (_, value) => { + // const reg = /^[\u4e00-\u9fa5]+$/; // 中文字符的正则表达式 + // if (!reg.test(value)) { + // return Promise.reject('请输入中文字符'); + // } + // return Promise.resolve(); + // } + // }, + ]} > - + label="菜单说明" name="modDesc" extra="此内容会作为功能描述生成到操作手册中,请详细描述,最多600字" - rules={[{required: true, message: '请输入菜单说明'}]} + rules={[{ required: true, message: '请输入菜单说明' }, + // { + // validator: (_, value) => { + // const reg = /^[\u4e00-\u9fa5]+$/; // 中文字符的正则表达式 + // if (!reg.test(value)) { + // return Promise.reject('请输入中文字符'); + // } + // return Promise.resolve(); + // } + // } + ]} > - + label="菜单图标" name="modIcon" extra="菜单图标会显示在菜单栏中" - rules={[{required: true, message: '请输入菜单图标'}]} + rules={[{ required: true, message: '请输入菜单图标' }]} >
name="fields" - rules={[{required: true, message: '请添加菜单属性'}]} + rules={[{ required: true, message: '请添加菜单属性' } + ]} > + }} /> - -
+ +
- @@ -155,54 +176,71 @@ export default function ProjConfigModSave(props: PropsType) {
{ - setIsEditModalOpen(false); - post({ - messageApi, - url: `/api/proj-mod/save`, - body: { - projId: pathParams.projId, - modName: form.getFieldValue('modName'), - modDesc: form.getFieldValue('modDesc'), - modIcon: form.getFieldValue('modIcon'), - fields: form.getFieldValue('fields'), - }, - onBefore() { - setLoading(true); - }, - onSuccess() { - messageApi.success('添加成功'); - nav(0); - }, - onFinally() { - setLoading(false); - } - }) - }} - onCancel={() => { - setIsEditModalOpen(false); - }}> + okText="确定" + cancelText="取消" + open={isEditModalOpen} + onOk={() => { + + setIsEditModalOpen(false); + + const reg = /^[\u4e00-\u9fa5]+$/; // 中文字符的正则表达式 + console.log( ((form.getFieldValue('fields'))[0].fieldDesc )); + + + if (!reg.test((form.getFieldValue('fields'))[0].fieldDesc)) { + messageApi.error('描述必须为中文') + }else{ + post({ + messageApi, + url: `/api/proj-mod/save`, + body: { + projId: pathParams.projId, + modName: form.getFieldValue('modName'), + modDesc: form.getFieldValue('modDesc'), + modIcon: form.getFieldValue('modIcon'), + fields: form.getFieldValue('fields'), + }, + onBefore() { + setLoading(true); + }, + onSuccess() { + messageApi.success('添加成功'); + setTimeout(function () { + // 刷新当前页面 + // location.reload(); + // 返回上一页 + nav(-1); + }, 1000); + }, + onFinally() { + setLoading(false); + } + }) + } + + + }} + onCancel={() => { + setIsEditModalOpen(false); + }}>
确定提交吗?
{ - setIsModIconModalOpen(false); - }}> -
+ footer={false} + open={isModIconModalOpen} + onCancel={() => { + setIsModIconModalOpen(false); + }}> +
{ - form.setFieldValue('modIcon', icon); - setSelectedModIcon(icon); - }} + handleClick={(icon) => { + form.setFieldValue('modIcon', icon); + setSelectedModIcon(icon); + }} />
- + )