|
@@ -1,17 +1,17 @@
|
|
|
-import {useEffect,useState,useContext} from 'react';
|
|
|
-import { Form, Input, Checkbox, Button, Select,Steps,Tabs ,InputNumber,Space,Switch,Breadcrumb } from 'antd';
|
|
|
-import MenuTree from './MenuTree';
|
|
|
+import { useEffect, useState, useContext } from 'react';
|
|
|
+import { Form, Input, Checkbox, Button, Select, Steps, Tabs, InputNumber, Space, Switch, Breadcrumb } from 'antd';
|
|
|
+import MenuTree from './MenuTree';
|
|
|
import './index.less';
|
|
|
import OrgContext from './org-context';
|
|
|
import apiObj from '@api/index';
|
|
|
import backIcon from "@images/back.png";
|
|
|
|
|
|
-const {post,api,xPost} = apiObj;
|
|
|
+const { post, api, xPost } = apiObj;
|
|
|
|
|
|
const { Step } = Steps;
|
|
|
const { TabPane } = Tabs;
|
|
|
const { Option } = Select;
|
|
|
-function AddSubOrg(props){
|
|
|
+function AddSubOrg(props) {
|
|
|
const [current, setCurrent] = useState(0);
|
|
|
const { back } = props;
|
|
|
const steps = [
|
|
@@ -38,7 +38,7 @@ function AddSubOrg(props){
|
|
|
return (
|
|
|
<>
|
|
|
<Breadcrumb separator="">
|
|
|
- <Breadcrumb.Item><img className='back-icon' src={backIcon} onClick={back} alt="返回上一页"/></Breadcrumb.Item>
|
|
|
+ <Breadcrumb.Item><img className='back-icon' src={backIcon} onClick={back} alt="返回上一页" /></Breadcrumb.Item>
|
|
|
<Breadcrumb.Item>组织管理</Breadcrumb.Item>
|
|
|
<Breadcrumb.Separator />
|
|
|
<Breadcrumb.Item>新增子组织</Breadcrumb.Item>
|
|
@@ -60,15 +60,15 @@ function AddSubOrg(props){
|
|
|
)
|
|
|
}
|
|
|
|
|
|
-function StepContent(props){
|
|
|
+function StepContent(props) {
|
|
|
const [form] = Form.useForm();
|
|
|
const [treeDatas, setTreeDatas] = useState([]);
|
|
|
const [tabDatas, setTabDatas] = useState([]);
|
|
|
const [activeTab, setActiveTab] = useState('');
|
|
|
const [sysCheckeds, setSysCheckeds] = useState([]);
|
|
|
const [name, setName] = useState('');
|
|
|
- const { orgId, orgName, hisTypeList, save, detail} = useContext(OrgContext);
|
|
|
- const {current,pre,next} = props;
|
|
|
+ const { type, hisTypeList, save, detail } = useContext(OrgContext);
|
|
|
+ const { current, pre, next } = props;
|
|
|
const initialValues = detail
|
|
|
const vilidateRules = {
|
|
|
required: '${label}不能为空!',
|
|
@@ -79,88 +79,93 @@ function StepContent(props){
|
|
|
};
|
|
|
|
|
|
//获取菜单数据
|
|
|
- function getTreeData(){
|
|
|
- xPost(api.getUserMenuResourceTree,{type:0}).then((res)=>{
|
|
|
- if(res.data.code===200){
|
|
|
+ function getTreeData() {
|
|
|
+ xPost(api.getUserMenuResourceTree, { type: 0 }).then((res) => {
|
|
|
+ if (res.data.code === 200) {
|
|
|
const data = res.data.data;
|
|
|
const treeDatas = structureTreeData(data);
|
|
|
setTreeDatas(treeDatas);
|
|
|
setTabDatas([treeDatas[0]]);
|
|
|
setActiveTab(treeDatas[0].key);
|
|
|
setName(treeDatas[0].title)
|
|
|
+ setSysCheckeds(treeDatas[0] ? [treeDatas[0].key] : []);
|
|
|
}
|
|
|
|
|
|
})
|
|
|
}
|
|
|
//数据转换为树形结构所需字段
|
|
|
- function structureTreeData(data){
|
|
|
+ function structureTreeData(data) {
|
|
|
const arr = [];
|
|
|
const checks = []
|
|
|
- let obj={};
|
|
|
- data.map((it,i)=>{
|
|
|
- obj =JSON.stringify(it.children).replace(/softwareMenuId/g,"key").replace(/menuName/g,'title');
|
|
|
- arr[i]={
|
|
|
- title:it.softwareName,
|
|
|
- key:it.softwareId,
|
|
|
- children:JSON.parse(obj)
|
|
|
+ let obj = {};
|
|
|
+ data.map((it, i) => {
|
|
|
+ obj = JSON.stringify(it.children).replace(/softwareMenuId/g, "key").replace(/menuName/g, 'title');
|
|
|
+ arr[i] = {
|
|
|
+ title: it.softwareName,
|
|
|
+ key: it.softwareId,
|
|
|
+ children: JSON.parse(obj)
|
|
|
}
|
|
|
checks[i] = it.softwareId
|
|
|
});
|
|
|
- setSysCheckeds(arr[0]?[arr[0].key]:[]);
|
|
|
-
|
|
|
//form.setFieldsValue({softwares:[{id:arr[0]?[arr[0].key]:''}]}); //默认选中第一个
|
|
|
return arr;
|
|
|
}
|
|
|
- useEffect(()=>{
|
|
|
- getTreeData();
|
|
|
- },[]);
|
|
|
- function handlePre(){
|
|
|
+ useEffect(() => {
|
|
|
+ if (type == 2) {
|
|
|
+ const treeDatas = structureTreeData(detail.getRoleDTO.loginUserMenuResourceTree);
|
|
|
+ setTabDatas(treeDatas);
|
|
|
+ setSysCheckeds(detail.sids);
|
|
|
+ } else {
|
|
|
+ getTreeData();
|
|
|
+ }
|
|
|
+ }, []);
|
|
|
+ function handlePre() {
|
|
|
pre();
|
|
|
}
|
|
|
- function handleNext(){
|
|
|
+ function handleNext() {
|
|
|
const validateKeys = {
|
|
|
- 0:['parentId','name','code',['addHospitalUserVO','name'],['addHospitalUserVO','mobilePhone'],'type','orderNo'],
|
|
|
- 1:[['addHospitalUserVO','username'],['addHospitalUserVO','password'],'confirmPsd'],
|
|
|
+ 0: ['parentId', 'name', 'code', ['addHospitalUserVO', 'name'], ['addHospitalUserVO', 'mobilePhone'], 'type', 'orderNo'],
|
|
|
+ 1: [['addHospitalUserVO', 'username'], ['addHospitalUserVO', 'password'], 'confirmPsd'],
|
|
|
};
|
|
|
- form.validateFields(validateKeys[current]).then((res)=>{
|
|
|
+ form.validateFields(validateKeys[current]).then((res) => {
|
|
|
next(form);
|
|
|
});
|
|
|
}
|
|
|
- function handleSave(){
|
|
|
- form.validateFields([['softwares',0,'id'],['softwares',0,'softwareMenuIds'],['softwares',0,'softwareResourceIds']]).then((res)=>{
|
|
|
+ function handleSave() {
|
|
|
+ form.validateFields([['softwares', 0, 'id'], ['softwares', 0, 'softwareMenuIds'], ['softwares', 0, 'softwareResourceIds']]).then((res) => {
|
|
|
save(form.getFieldsValue())
|
|
|
});
|
|
|
}
|
|
|
//树形结构选中事件
|
|
|
- function checkTreeEvent(i,idsArr,sourceIds){
|
|
|
+ function checkTreeEvent(i, idsArr, sourceIds) {
|
|
|
console.log(activeTab);
|
|
|
-
|
|
|
- const formData=form.getFieldsValue();
|
|
|
- const arr=formData.softwares;
|
|
|
- arr[i]={
|
|
|
+
|
|
|
+ const formData = form.getFieldsValue();
|
|
|
+ const arr = formData.softwares;
|
|
|
+ arr[i] = {
|
|
|
id: activeTab,
|
|
|
- name:name,
|
|
|
- softwareMenuIds:idsArr,
|
|
|
- softwareResourceIds:sourceIds
|
|
|
+ name: name,
|
|
|
+ softwareMenuIds: idsArr,
|
|
|
+ softwareResourceIds: sourceIds
|
|
|
};
|
|
|
form.setFieldsValue({
|
|
|
- softwares:arr
|
|
|
+ softwares: arr
|
|
|
});
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
- function onTabChange(activeTab){
|
|
|
+ function onTabChange(activeTab) {
|
|
|
console.log(activeTab);
|
|
|
-
|
|
|
+
|
|
|
setName(activeTab.split('-')[0])
|
|
|
setActiveTab(activeTab.split('-')[1])
|
|
|
}
|
|
|
//开放系统勾选事件
|
|
|
- function softwareChange(checkedValue){
|
|
|
- let arr = [],item;
|
|
|
+ function softwareChange(checkedValue) {
|
|
|
+ let arr = [], item;
|
|
|
setSysCheckeds(checkedValue);
|
|
|
- for(let i=0;i<checkedValue.length;i++){
|
|
|
- item=treeDatas.find((it)=>it.key===checkedValue[i]);
|
|
|
- if(item){
|
|
|
+ for (let i = 0; i < checkedValue.length; i++) {
|
|
|
+ item = treeDatas.find((it) => it.key === checkedValue[i]);
|
|
|
+ if (item) {
|
|
|
arr.push(item);
|
|
|
}
|
|
|
}
|
|
@@ -168,178 +173,178 @@ function StepContent(props){
|
|
|
}
|
|
|
return (
|
|
|
<>
|
|
|
- <Form
|
|
|
- labelCol={{ span: 6 }}
|
|
|
- wrapperCol={{ span: 16 }}
|
|
|
- layout="horizontal"
|
|
|
- validateMessages={vilidateRules}
|
|
|
- initialValues={initialValues}
|
|
|
- form={form}
|
|
|
- >
|
|
|
- <Form.Item
|
|
|
- label="上级组织ID"
|
|
|
- hidden={true}
|
|
|
- name='parentId'>
|
|
|
- <Input placeholder='请输入上级组织ID' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="上级组织"
|
|
|
- name='parentName'
|
|
|
- hidden={current!==0}
|
|
|
- rules={[{ required: true}]}>
|
|
|
- <Input disabled/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="组织名称"
|
|
|
- name='name'
|
|
|
- required
|
|
|
- hidden={current!==0}
|
|
|
- rules={[() => ({
|
|
|
- validator(_, value) {
|
|
|
- if(!value){
|
|
|
- return Promise.reject(new Error('组织名称不能为空!'));
|
|
|
- }else if (value.length<51) {
|
|
|
- return Promise.resolve();
|
|
|
- }
|
|
|
- return Promise.reject(new Error('格式错误!'));
|
|
|
- },
|
|
|
- }),]}>
|
|
|
- <Input placeholder='请输入组织名称' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="组织编码"
|
|
|
- hidden={current!==0}
|
|
|
- name='code'>
|
|
|
- <Input placeholder='请输入组织编码' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="联系人"
|
|
|
- hidden={current!==0}
|
|
|
- name={['addHospitalUserVO','name']}>
|
|
|
- <Input placeholder='请输入联系人' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="手机号码"
|
|
|
- hidden={current!==0}
|
|
|
- name={['addHospitalUserVO','mobilePhone']}>
|
|
|
- <Input placeholder='请输入手机号码' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="类型"
|
|
|
- name='type'
|
|
|
- hidden={current!==0}
|
|
|
- rules={[{ required: true }]}>
|
|
|
- <Select placeholder='请选择类型'>
|
|
|
- {hisTypeList.map((item,i)=>{
|
|
|
- return (
|
|
|
- <Option value={item.name} key={i}>{item.val}</Option>
|
|
|
- )
|
|
|
- })}
|
|
|
- </Select>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="排序"
|
|
|
- hidden={current!==0}
|
|
|
- name='orderNo'>
|
|
|
- <InputNumber placeholder='大于0的整数' min={0}/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="用户名"
|
|
|
- hidden={current!==1}
|
|
|
- name={['addHospitalUserVO','username']}
|
|
|
- rules={[{ required: true}]}>
|
|
|
- <Input placeholder='请输入用户名' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="初始密码"
|
|
|
- type="password"
|
|
|
- hidden={current!==1}
|
|
|
- name={['addHospitalUserVO','password']}
|
|
|
- rules={[{ required: true}]}>
|
|
|
- <Input placeholder='请输入初始密码' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="确认密码"
|
|
|
- type="password"
|
|
|
- name='confirmPsd'
|
|
|
- dependencies={['addHospitalUserVO','password']}
|
|
|
- hidden={current!==1}
|
|
|
- rules={[{ required: true},({ getFieldValue }) => ({
|
|
|
- validator(_, value) {
|
|
|
- if (!value || getFieldValue(['addHospitalUserVO','password']) === value) {
|
|
|
- return Promise.resolve();
|
|
|
- }
|
|
|
- return Promise.reject(new Error('两次密码输入不一致!'));
|
|
|
- },
|
|
|
- }),]}>
|
|
|
- <Input placeholder='请输入确认密码' autoComplete='off'/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="开放系统"
|
|
|
- type="password"
|
|
|
- hidden={current!==2}
|
|
|
- rules={[{ required: true}]}>
|
|
|
- <Checkbox.Group value={sysCheckeds} onChange={softwareChange}>
|
|
|
- {
|
|
|
- treeDatas.map((it, i) => {
|
|
|
- return (
|
|
|
- <Form.Item key={it.key} noStyle>
|
|
|
- <Checkbox key={i} value={it.key}>{it.title}</Checkbox>
|
|
|
- </Form.Item>
|
|
|
- )
|
|
|
- })
|
|
|
- }
|
|
|
- </Checkbox.Group>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="菜单权限"
|
|
|
- hidden={current!==2}
|
|
|
- required>
|
|
|
- <Tabs onChange={onTabChange} type="card">
|
|
|
- {
|
|
|
- tabDatas.map((it,i)=>{
|
|
|
+ <Form
|
|
|
+ labelCol={{ span: 6 }}
|
|
|
+ wrapperCol={{ span: 16 }}
|
|
|
+ layout="horizontal"
|
|
|
+ validateMessages={vilidateRules}
|
|
|
+ initialValues={initialValues}
|
|
|
+ form={form}
|
|
|
+ >
|
|
|
+ <Form.Item
|
|
|
+ label="上级组织ID"
|
|
|
+ hidden={true}
|
|
|
+ name='parentId'>
|
|
|
+ <Input placeholder='请输入上级组织ID' autoComplete='off' />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="上级组织"
|
|
|
+ name='parentName'
|
|
|
+ hidden={current !== 0}
|
|
|
+ rules={[{ required: true }]}>
|
|
|
+ <Input disabled />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="组织名称"
|
|
|
+ name='name'
|
|
|
+ required
|
|
|
+ hidden={current !== 0}
|
|
|
+ rules={[() => ({
|
|
|
+ validator(_, value) {
|
|
|
+ if (!value) {
|
|
|
+ return Promise.reject(new Error('组织名称不能为空!'));
|
|
|
+ } else if (value.length < 51) {
|
|
|
+ return Promise.resolve();
|
|
|
+ }
|
|
|
+ return Promise.reject(new Error('格式错误!'));
|
|
|
+ },
|
|
|
+ }),]}>
|
|
|
+ <Input placeholder='请输入组织名称' autoComplete='off' />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="组织编码"
|
|
|
+ hidden={current !== 0}
|
|
|
+ name='code'>
|
|
|
+ <Input placeholder='请输入组织编码' autoComplete='off' />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="联系人"
|
|
|
+ hidden={current !== 0}
|
|
|
+ name={['addHospitalUserVO', 'name']}>
|
|
|
+ <Input placeholder='请输入联系人' autoComplete='off' />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="手机号码"
|
|
|
+ hidden={current !== 0}
|
|
|
+ name={['addHospitalUserVO', 'mobilePhone']}>
|
|
|
+ <Input placeholder='请输入手机号码' autoComplete='off' />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="类型"
|
|
|
+ name='type'
|
|
|
+ hidden={current !== 0}
|
|
|
+ rules={[{ required: true }]}>
|
|
|
+ <Select placeholder='请选择类型'>
|
|
|
+ {hisTypeList.map((item, i) => {
|
|
|
return (
|
|
|
- <TabPane tab={it.title} key={it.title + '-' + it.key}>
|
|
|
- <Form.Item key={i} name={['softwares', i, 'softwareMenuIds']} noStyle>
|
|
|
- <MenuTree data={it} checkeds={form.getFieldValue().softwares ? form.getFieldValue().softwares[i] : []} checkEv={(checkedKeys,sourceIds)=>checkTreeEvent(i,checkedKeys,sourceIds)}/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item key={i+"a"} hidden={true} name={['softwares', i, 'id']} noStyle>
|
|
|
- <Input/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item key={i+"b"} hidden={true} name={['softwares', i, 'softwareResourceIds']} noStyle>
|
|
|
- <Input/>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item key={i + "c"} hidden={true} name={['softwares', i, 'name']} noStyle>
|
|
|
- <Input />
|
|
|
- </Form.Item>
|
|
|
- </TabPane>
|
|
|
+ <Option value={item.name} key={i}>{item.val}</Option>
|
|
|
)
|
|
|
- })
|
|
|
- }
|
|
|
- </Tabs>
|
|
|
- </Form.Item>
|
|
|
- <Form.Item
|
|
|
- label="当前状态"
|
|
|
- hidden={current!==2}>
|
|
|
- <Space>
|
|
|
- <Form.Item
|
|
|
- name='status'
|
|
|
- valuePropName='checked'
|
|
|
- getValueFromEvent={(checked)=>{
|
|
|
- return +checked+'';
|
|
|
- }}
|
|
|
- noStyle>
|
|
|
- <Switch />
|
|
|
- </Form.Item>
|
|
|
- <span>启用</span>
|
|
|
- </Space>
|
|
|
- </Form.Item>
|
|
|
- </Form>
|
|
|
- <div className="button-box">
|
|
|
- {current!==0?<Button onClick={handlePre}>上一步</Button>:null}
|
|
|
- {current!==2?<Button onClick={handleNext} type='primary'>下一步</Button>:null}
|
|
|
- {current===2?<Button onClick={handleSave} type='primary'>保存</Button>:null}
|
|
|
- </div>
|
|
|
+ })}
|
|
|
+ </Select>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="排序"
|
|
|
+ hidden={current !== 0}
|
|
|
+ name='orderNo'>
|
|
|
+ <InputNumber placeholder='大于0的整数' min={0} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="用户名"
|
|
|
+ hidden={current !== 1}
|
|
|
+ name={['addHospitalUserVO', 'username']}
|
|
|
+ rules={[{ required: true }]}>
|
|
|
+ <Input placeholder='请输入用户名' autoComplete='off' disabled={type == 2 ? true : false} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="初始密码"
|
|
|
+ type="password"
|
|
|
+ hidden={current !== 1}
|
|
|
+ name={['addHospitalUserVO', 'password']}
|
|
|
+ rules={[{ required: true }]}>
|
|
|
+ <Input placeholder='请输入初始密码' autoComplete='off' disabled={type == 2 ? true : false} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="确认密码"
|
|
|
+ type="password"
|
|
|
+ name='confirmPsd'
|
|
|
+ dependencies={['addHospitalUserVO', 'password']}
|
|
|
+ hidden={current !== 1}
|
|
|
+ rules={[{ required: true }, ({ getFieldValue }) => ({
|
|
|
+ validator(_, value) {
|
|
|
+ if (!value || getFieldValue(['addHospitalUserVO', 'password']) === value) {
|
|
|
+ return Promise.resolve();
|
|
|
+ }
|
|
|
+ return Promise.reject(new Error('两次密码输入不一致!'));
|
|
|
+ },
|
|
|
+ }),]}>
|
|
|
+ <Input placeholder='请输入确认密码' autoComplete='off' disabled={type == 2 ? true : false} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="开放系统"
|
|
|
+ type="password"
|
|
|
+ hidden={current !== 2}
|
|
|
+ rules={[{ required: true }]}>
|
|
|
+ <Checkbox.Group value={sysCheckeds} onChange={softwareChange}>
|
|
|
+ {
|
|
|
+ treeDatas.map((it, i) => {
|
|
|
+ return (
|
|
|
+ <Form.Item key={it.key} noStyle>
|
|
|
+ <Checkbox key={i} value={it.key}>{it.title}</Checkbox>
|
|
|
+ </Form.Item>
|
|
|
+ )
|
|
|
+ })
|
|
|
+ }
|
|
|
+ </Checkbox.Group>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="菜单权限"
|
|
|
+ hidden={current !== 2}
|
|
|
+ required>
|
|
|
+ <Tabs onChange={onTabChange} type="card">
|
|
|
+ {
|
|
|
+ tabDatas.map((it, i) => {
|
|
|
+ return (
|
|
|
+ <TabPane tab={it.title} key={it.title + '-' + it.key}>
|
|
|
+ <Form.Item key={i} name={['softwares', i, 'softwareMenuIds']} noStyle>
|
|
|
+ <MenuTree data={it} checkeds={form.getFieldValue().softwares ? form.getFieldValue().softwares[i] : []} checkEv={(checkedKeys, sourceIds) => checkTreeEvent(i, checkedKeys, sourceIds)} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item key={i + "a"} hidden={true} name={['softwares', i, 'id']} noStyle>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item key={i + "b"} hidden={true} name={['softwares', i, 'softwareResourceIds']} noStyle>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item key={i + "c"} hidden={true} name={['softwares', i, 'name']} noStyle>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ </TabPane>
|
|
|
+ )
|
|
|
+ })
|
|
|
+ }
|
|
|
+ </Tabs>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item
|
|
|
+ label="当前状态"
|
|
|
+ hidden={current !== 2}>
|
|
|
+ <Space>
|
|
|
+ <Form.Item
|
|
|
+ name='status'
|
|
|
+ valuePropName='checked'
|
|
|
+ getValueFromEvent={(checked) => {
|
|
|
+ return +checked + '';
|
|
|
+ }}
|
|
|
+ noStyle>
|
|
|
+ <Switch />
|
|
|
+ </Form.Item>
|
|
|
+ <span>启用</span>
|
|
|
+ </Space>
|
|
|
+ </Form.Item>
|
|
|
+ </Form>
|
|
|
+ <div className="button-box">
|
|
|
+ {current !== 0 ? <Button onClick={handlePre}>上一步</Button> : null}
|
|
|
+ {current !== 2 ? <Button onClick={handleNext} type='primary'>下一步</Button> : null}
|
|
|
+ {current === 2 ? <Button onClick={handleSave} type='primary'>保存</Button> : null}
|
|
|
+ </div>
|
|
|
</>
|
|
|
)
|
|
|
}
|