import './proj-config-list-mod.css'; import { Alert, Button, Col, Flex, Form, Input, message, Row, } from "antd"; import { useNavigate, useParams } from "react-router-dom"; import { useEffect, useState } from "react"; import ModField, { IModField } from "../../../components/modfield/ModField.tsx"; import { get } from "../../../util/AjaxUtils.ts"; import { MAX_MOD_SIZE, MAX_MOD_SIZE_FREE, MIN_MOD_SIZE, MIN_MOD_SIZE_FREE } from "./ProjConfigModList.tsx"; type FormFieldType = { projId: string; modName: string; modDesc: string; modIcon: string; fields: IModField[]; } type PropsType = { isFree?: boolean; } export default function ProjConfigModShow(props: PropsType) { const nav = useNavigate(); const pathParams = useParams(); const [messageApi, contextHolder] = message.useMessage(); const [form] = Form.useForm(); const [selectedModIcon, setSelectedModIcon] = useState('fa fa-list'); const [fields, setFields] = useState([]); const minSize = props.isFree ? MIN_MOD_SIZE_FREE : MIN_MOD_SIZE; const maxSize = props.isFree ? MAX_MOD_SIZE_FREE : MAX_MOD_SIZE; const height = window.innerHeight - 210; useEffect(() => { get({ messageApi, url: `api/proj-mod/get/${pathParams.projModId}`, onSuccess({ data }) { form.setFieldsValue({ projId: data.projId, modName: data.modName, modDesc: data.modDesc, modIcon: data.modIcon, fields: data.fields, }); setSelectedModIcon(data.modIcon); setFields(data.fields) } }) }, []) return ( <> {contextHolder} {/* 首页}, {title: 创建项目}, { title: { if(props.isFree) { nav(`/proj-efree/${pathParams.projId}`) } else { `/proj-edit/${pathParams.projId}` } }}>编辑项目 }, { title: { nav(-1); }}>系统菜单管理 }, {title: '查看菜单'}, ]} /> */}
label="菜单名称" name="modName" extra="此内容会作为菜单名生成菜单,最多8个字" rules={[{ required: true, message: '请输入菜单名称' }]} > label="菜单说明" name="modDesc" extra="此内容会作为功能描述生成到操作手册中,请详细描述,最多600字" rules={[{ required: true, message: '请输入菜单说明' }]} > label="菜单图标" name="modIcon" extra="菜单图标会显示在菜单栏中" rules={[{ required: true, message: '请输入菜单图标' }]} > name="fields" rules={[{ required: true, message: '请添加菜单属性' }]} > { if (!dataArray) { return; } form.setFieldValue('fields', dataArray); }} />
) }