@aliretail/react-materials-components
Version:
129 lines (118 loc) • 3.57 kB
JavaScript
import _Dialog from "@alifd/next/es/dialog";
import _Loading from "@alifd/next/es/loading";
import _Input from "@alifd/next/es/input";
import _extends from "@babel/runtime/helpers/extends";
import _Message from "@alifd/next/es/message";
import _Field from "@alifd/next/es/field";
import _Radio from "@alifd/next/es/radio";
import _Form from "@alifd/next/es/form";
import * as React from 'react';
import { requestByItem } from "../utils";
var FormItem = _Form.Item;
var RadioGroup = _Radio.Group;
var formItemLayout = {
labelCol: {
fixedSpan: 4
},
wrapperCol: {
span: 18
}
};
var AddGroupDialog = function AddGroupDialog(props) {
var field = _Field.useField();
var init = field.init,
getError = field.getError;
var requestItem = props.requestItem,
visible = props.visible,
setVisible = props.setVisible,
addPositionKey = props.addPositionKey,
getList = props.getList,
parentKey = props.parentKey;
var _React$useState = React.useState('child'),
group = _React$useState[0],
setGroup = _React$useState[1];
var _React$useState2 = React.useState(false),
loading = _React$useState2[0],
setLoading = _React$useState2[1];
var onCloseDialog = function onCloseDialog() {
setVisible(false);
};
var onChangeRadio = function onChangeRadio(val) {
setGroup(val);
};
var onSubmit = function onSubmit() {
field.validate(function (err, values) {
if (!err) {
try {
setLoading(true); // 手动创建
// getNewGroupInfo(values.relation, values.label);
// 接口创建
requestByItem(requestItem, {
label: values.label,
parentKey: values.relation === 'sibling' ? parentKey : addPositionKey
}).then(function (res) {
if (res.result.success) {
_Message.show({
type: 'success',
content: '创建成功!'
});
}
});
} catch (e) {
console.warn('err:', e);
} finally {
setLoading(false);
getList();
}
onCloseDialog();
}
});
};
return /*#__PURE__*/React.createElement(_Dialog, {
title: "\u6DFB\u52A0\u5206\u7EC4",
visible: visible,
onCancel: onCloseDialog,
onClose: onCloseDialog,
onOk: onSubmit
}, /*#__PURE__*/React.createElement(_Loading, {
visible: loading
}, /*#__PURE__*/React.createElement(_Form, _extends({}, formItemLayout, {
colon: true
}), /*#__PURE__*/React.createElement(FormItem, {
label: "\u4F4D\u7F6E:",
required: true
}, /*#__PURE__*/React.createElement(RadioGroup, _extends({
value: group,
onChange: onChangeRadio
}, init('relation', {
initValue: group,
rules: [{
required: true
}]
})), /*#__PURE__*/React.createElement(_Radio, {
id: "sibling",
value: "sibling"
}, "\u540C\u7EA7\u5206\u7EC4"), /*#__PURE__*/React.createElement(_Radio, {
id: "child",
value: "child"
}, "\u5B50\u7EA7\u5206\u7EC4"))), /*#__PURE__*/React.createElement(FormItem, {
label: "\u5206\u7EC4\u540D\u79F0:",
required: true
}, /*#__PURE__*/React.createElement(_Input, _extends({
placeholder: "\u8BF7\u8F93\u5165",
maxLength: 15,
style: {
width: '80%'
}
}, init('label', {
rules: [{
required: true,
message: '请输入分组名称'
}]
}))), /*#__PURE__*/React.createElement("div", {
style: {
color: 'red'
}
}, getError('label'))))));
};
export default AddGroupDialog;