import React from 'react'; import $ from 'jquery/src/ajax'; import moment from 'moment'; import './public.less'; import {Button, InputNumber, Select, Input, Spin, Table, message, DatePicker, Tabs, Tooltip} from 'antd'; import Receivable from './receivable'; import Examine from './examine'; import OrderDesc from '../orderDetail/orderDesc'; import { getLiquidationStatus, getNewOrderStatus, getRefundStatus } from '@/tools'; import { ChooseList } from "../../order/orderNew/chooseList"; const { TabPane } = Tabs const TuiDan = React.createClass({ departmentList() { this.setState({ loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/organization/selectSuperId", data: {}, success: function (data) { let thedata = data.data; let theArr = []; if (!thedata) { if (data.error && data.error.length) { message.warning(data.error[0].message); } } else { thedata.map(function (item, index) { theArr.push({ key: index, name: item.name, id: item.id }); }); } this.setState({ departmentArr: theArr }); }.bind(this) }).always( function () { this.setState({ loading: false }); }.bind(this) ); }, loadData(pageNo) { this.state.data = []; this.setState({ selectedRowKeys: [], selectedRowKey: [], page: pageNo, loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/financial/getRefundList", data: { pageNo: pageNo || 1, pageSize: this.state.pagination.pageSize, id: this.state.orderRefundSearch, buyName: this.state.nameSearch, //客户名称 orderNo: this.state.orderNoSearch, refundStatus: this.state.refundStatus, startTime: this.state.releaseDate[0], endTime: this.state.releaseDate[1], departmentId: this.state.departmenttList }, success: function (data) { let theArr = []; if (!data.data || !data.data.list) { if (data.error && data.error.length) { message.warning(data.error[0].message); } } else { for (let i = 0; i < data.data.list.length; i++) { let thisdata = data.data.list[i]; theArr.push({ key: i, id: thisdata.id, orderNo: thisdata.orderNo, orderType: thisdata.orderType, buyName: thisdata.buyName, companyName: thisdata.buyName, buyerName: thisdata.saleName, contractNo: thisdata.contractNo, buyerId: "0", refundAmount: thisdata.refundAmount, companyId: thisdata.buyid, orderStatus: thisdata.orderStatus, liquidationStatus: thisdata.liquidationStatus, refundStatus: thisdata.refundStatus, saleName: thisdata.saleName, createTime: thisdata.createTime ? new Date(thisdata.createTime).toLocaleString() : "" }); } } this.state.pagination.current = data.data.pageNo; this.state.pagination.total = data.data.totalCount; if (data.data && data.data.list && !data.data.list.length) { this.state.pagination.current = 0; this.state.pagination.total = 0; } this.setState({ totalPage: data.data.totalPage, dataSource: theArr, pagination: this.state.pagination }); }.bind(this) }).always( function () { this.setState({ loading: false }); }.bind(this) ); }, getInitialState() { return { searchMore: true, assignVisible: false, releaseDate: [], totalPage: 0, assignData: [], // 子组件改变的表格title数组 changeList: undefined, boHuivisible: false, selectedRowKeys: [], selectedRows: [], loading: false, pagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.loadData(page); }.bind(this), showTotal: function (total) { return "共" + total + "条数据"; } }, columns: [ { title: "退单编号", dataIndex: "id", key: "id" // fixed: "left" }, { title: "申请退单时间", dataIndex: "createTime", key: "createTime" }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo" }, { title: "客户名称", dataIndex: "buyName", key: "buyName", width: 150, render: (text) => { return (
{text}
) }, }, { title: "订单状态", dataIndex: "orderStatus", key: "orderStatus", render: text => { return getNewOrderStatus(text); } }, { title: "订单负责人", dataIndex: "saleName", key: "saleName" }, { title: "结算状态", dataIndex: "liquidationStatus", key: "liquidationStatus", render: text => { return getLiquidationStatus(text); } }, { title: "审批状态", dataIndex: "refundStatus", key: "refundStatus", render: text => { return getRefundStatus(text); } }, { title: "操作", dataIndex: "caozuo", key: "caouzo", render: (text, recard) => { return (
{recard.refundStatus == 1 && ( )} {recard.refundStatus == 0 && ( )}
); } } ], dataSource: [], examineData: {}, searchTime: [,] }; }, /* 添加收款记录 */ evaluate(recard) { this.state.assignData = recard; this.setState({ assignVisible: true }); }, /* 驳回 */ reject(recard) { this.setState({ examineData: recard, examineVisible: true }); }, componentWillMount() { this.loadData(); this.departmentList(); }, tableRowClick(record) { this.state.RowData = record; this.setState({ showDesc: true }); }, closeExamine(e, s, nub) { this.state.examineData = {}; this.state.examineVisible = e; if (s) { if (nub == "2") { if ( this.state.pagination.current == this.state.totalPage && this.state.pagination.total % 10 == 1 ) { this.loadData(this.state.page - 1); } else { this.loadData(this.state.page); } } else { this.loadData(this.state.page); } } }, closeDesc(e, s) { this.state.RowData = {}; this.state.showDesc = e; if (s) { this.loadData(this.state.page); } }, closeAssign(e, s) { this.state.assignData = {}; this.state.assignVisible = e; if (s) { this.loadData(this.state.page); } }, search() { this.loadData(); }, reset() { this.state.nameSearch = ""; this.state.orderRefundSearch = ""; this.state.releaseDate = []; this.state.orderNoSearch = ""; this.state.departmenttList = undefined; this.state.refundStatus = undefined; this.loadData(); }, searchSwitch() { this.setState({ searchMore: !this.state.searchMore }); }, changeList(arr) { const newArr = []; this.state.columns.forEach(item => { arr.forEach(val => { if (val === item.title) { newArr.push(item); } }); }); this.setState({ changeList: newArr }); }, render() { const { RangePicker } = DatePicker; var departmentArr = this.state.departmentArr || []; return (
退单管理
`${value && !isNaN(value) ? parseInt(value) : ""}` } style={{ marginRight: 10, width: 120, marginLeft: 10 }} placeholder="退单编号" value={this.state.orderRefundSearch} onChange={e => { this.setState({ orderRefundSearch: e }); }} /> { this.setState({ orderNoSearch: e.target.value }); }} /> { this.setState({ nameSearch: e.target.value }); }} /> 退单时间 : { this.setState({ releaseDate: dataString }); }} />
); } }); export default TuiDan;