import React, { useState, useEffect, useRef } from 'react';
import { Button, Popconfirm, Modal, Form, Input, message } from 'antd';
import { PlusOutlined } from '@ant-design/icons';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import moment from 'moment';
import PageTable from '@/components/PageTable';
import { getNewsTypeList, addNewsType, deleteNewsType, updateNewsType } from '@/services/newsType';
const formatterTime = (val) => {
return val && val !== '-' ? moment(val).format('YYYY-MM-DD') : '-';
};
const FormItem = Form.Item;
export default (props) => {
const formItemLayout = { labelCol: { span: 6 }, wrapperCol: { span: 14 } };
const [form] = Form.useForm();
const [editModal, setEditModal] = useState(false);
const [loading, setLoading] = useState(false);
const [typeId, setTypeId] = useState();
const actionRef = useRef();
const Submit = (values) => {
setLoading(true);
if (typeId) {
updateNewsType(typeId, values).then(() => {
setLoading(false);
message.success(`修改成功`);
onCancel();
actionRef.current.reload();
});
} else {
addNewsType(values)
.then(() => {
setLoading(false);
message.success(`保存成功`);
onCancel();
actionRef.current.reload();
})
.catch((err) => {
setLoading(false);
message.error(err.message || err);
});
}
};
const handelEdit = (val) => {
setTypeId(val.typeId);
form.setFieldsValue(val);
setEditModal(true);
};
const onCancel = () => {
setTypeId();
form.resetFields();
setEditModal(false);
};
const handleDelete = (id) => {
deleteNewsType(id)
.then(() => {
message.success('删除成功');
actionRef.current.reload();
})
.catch((err) => {
message.error(err);
});
};
useEffect(() => {
if (typeId) {
} else {
form.resetFields();
}
}, [typeId]);
const actions = () => [
} onClick={() => setEditModal(true)}>
新增
,
];
const columns = [
{
title: '分类名',
dataIndex: 'name',
key: 'name',
},
{
title: '创建时间',
dataIndex: 'createDate',
key: 'createDate',
render: formatterTime,
search: false,
width: 240,
},
{
title: '操作',
valueType: 'option',
width: 160,
render: (_, record) => [
,
handleDelete(record.typeId)}
okText="确定"
cancelText="取消"
>
,
],
},
];
return (
);
};