import React, { useState, useRef, useEffect } from 'react'; import { Form, Input, Popconfirm, Select, Button, Modal, InputNumber, message, Col, Row, Card } from 'antd'; import { PlusOutlined } from '@ant-design/icons'; import { saveInvoiceFill, updateInvoiceFill, getInvoiceFillDetail } from '@/services/invoiceFill' import { saveInvoiceItemTpl, getInvoiceItemTplList, deleteInvoiceItemTpl } from '@/services/invoiceItemTpl' import { history } from 'umi'; import PageTable from '@/components/PageTable'; const FormItem = Form.Item; const { Option } = Select; const formItemLayout = { labelCol: { span: 6 }, wrapperCol: { span: 14 } }; const goBack = () => { history.goBack(); }; export default (props) => { const { invoiceId } = props const [form] = Form.useForm(); const [loading, setLoading] = useState(false); const [formModel] = Form.useForm(); const [editModal, setEditModal] = useState(false); const [modelLoading, setModelLoading] = useState(false); const actionRef = useRef(); //保存班级 const onSubmit = (data) => { var newData = { ...data }; setLoading(true); if (invoiceId) { updateInvoiceFill(invoiceId, newData) .then(() => { setLoading(false); message.success('数据更新成功'); goBack(); }) .catch((err) => { setLoading(false); message.error(err.message || err); }); } else { saveInvoiceFill(newData) .then((res) => { setLoading(false); message.success('数据保存成功'); history.replace(`./edit.jsx?id=${res.invoiceId}`); }) .catch((err) => { setLoading(false); message.error(err.message || err); }); } }; //报销项目弹窗保存 const Submit = (val) => { setModelLoading(true); saveInvoiceItemTpl(val, invoiceId).then(res => { message.success('添加成功') setModelLoading(false) actionRef.current.reload() onCancel(); }).catch((err) => { setModelLoading(false); message.error(err.message || err); }); } // 弹窗关闭 const onCancel = () => { setEditModal(false); formModel.resetFields() } //弹起弹窗 const showModel = () => { setEditModal(true); } //删除报销项目 const handleDelete = (invoiceItemTplId) => { deleteInvoiceItemTpl(invoiceItemTplId).then(res => { message.success('删除成功') actionRef.current.reload() }).catch((err) => { message.error(err.message || err); }); } const actions = () => [ , ]; useEffect(() => { if (invoiceId) { getInvoiceFillDetail(invoiceId).then((res) => { form.setFieldsValue(res) }).catch((err) => { message.error(err.message || err); }); } }, [invoiceId]) const columns = [ { title: '报销项目名称', dataIndex: 'name', key: 'name', }, { title: '开票金额', dataIndex: 'charge', key: 'charge', }, { title: '操作', valueType: 'option', render: (_, record) => [ handleDelete(record.invoiceItemTplId)} okText="确定" cancelText="取消" > , ], }, ]; return ( <>
{ invoiceId && 报销项目 }
) }