import React from 'react'; import './index.less'; import { Icon, Radio } from 'antd'; import Page from '@src/containers/Page'; import { asyncSMessage } from '@src/services/AsyncTools'; import { getMap, formatMoney, formatDate } from '@src/services/Tools'; import UserLayout from '../../../layouts/User'; import menu from '../index'; import UserTable from '../../../components/UserTable'; import Modal from '../../../components/Modal'; import More from '../../../components/More'; import IconButton from '../../../components/IconButton'; import { Order } from '../../../stores/order'; import { RecordSource, ServiceKey } from '../../../../Constant'; const RecordSourceMap = getMap(RecordSource, 'value', 'label'); const ServiceKeyMap = getMap(ServiceKey, 'value', 'label'); function formatTitle(record) { if (record.productType === 'course-package') { return (record.coursePackage || {}).title; } if (record.productType === 'course') { return (record.course || {}).title; } if (record.productType === 'data') { return (record.data || {}).title; } if (record.productType === 'service') { return `${ServiceKeyMap[record.service]}`; } return ''; } const columns = [ { title: '订单编号', key: 'id' }, { title: '服务', key: 'title', render: (text, record) => { const actionList = []; if (record.canInvoice && !record.hasInvoice) { actionList.push({ key: 'invoice', label: '开发票' }); } actionList.push({ key: 'detail', label: '订单详情' }); const onAction = key => { switch (key) { case 'invoice': this.setState({ showInvoice: true, invoice: { orderId: record.id, money: record.invoiceMoney } }); break; case 'detail': openLink(`/order/detail/${record.id}`); break; default: } }; let content = ''; if (record.checkouts.length > 3) { content = [
{formatTitle(record.checkouts[0])}
等{record.checkouts.length}个商品
, ]; } else { content = record.checkouts .map(row => { return formatTitle(row); }) .join(
); } return (
{content}
); }, }, { title: '购买时间', key: 'createTime', render: text => { return formatDate(text, 'YYYY-MM-DD\nHH:mm:ss'); }, }, { title: '付款方式', key: 'payMethod', render: text => { return RecordSourceMap[text]; }, }, { title: '付款金额', key: 'money', render: text => { return formatMoney(text); }, }, ]; export default class extends Page { constructor(props) { props.size = 15; super(props); } initState() { return { list: [], }; } initData() { Order.list(this.state.search).then(result => { this.setState({ list: result.list, total: result.total, page: this.state.search.page }); }); } onChangePage(page) { this.search({ page }); } submitInvoice(invoice) { Order.openInvoice(invoice) .then(() => { this.refresh(); this.setState({ showFinish: true, showInvoice: false, invoice: {} }); }) .catch(e => { asyncSMessage(e.message, 'error'); }); } renderView() { const { config } = this.props; return ; } renderTable() { const { list, total, page } = this.state; return (
this.onChangePage(p)} total={total} current={page} /> {}} onCancel={() => {}}>
发票类型:
普通增值税电子发票
抬头类型:
个人 公司
发票抬头:
纳税人识别号:
发票内容:
商品明细
发票金额:
¥ 210010.0
{}}>
我们会在三个工作日内将电子发票发送至您的绑定邮箱:
201-30-2103@12321.com
请注意查收。
我们也会通过站内信的方式通知您
); } }