import React from "react"; import { Button, Input, Select, Spin, Table, message, DatePicker, Form, Modal, Tabs, Tooltip, } from "antd"; import $ from "jquery/src/ajax"; import moment from "moment"; import ShowModalDiv from "@/showModal.jsx"; import { getLiquidationStatus, getjiedian, getNewOrderStatus, getProjectStatus, ShowModal, } from "@/tools.js"; import "./customer.less"; import {ChooseList} from "./chooseList"; import {getProjectName} from "../../../tools"; import DepartmentList from "../../../common/departmentList"; const ArrearsList = Form.create()( React.createClass({ loadData(pageNo) { this.setState({ visitModul: false, loading: true, ispage: pageNo, modalVisible: false, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/arrearsDunList", data: { pageNo: pageNo || 1, pageSize: this.state.pagination.pageSize, name: this.state.customerName, //名称 orderNo: this.state.orderNo, //订单编号 contractNo: this.state.contractNo, depId: this.state.departmenttSearch, //订单部门 starTime: this.state.releaseDate[0], //开始时间 endTime: this.state.releaseDate[1], //结束时间 tStarTime: this.state.chufaDate[0], //开始时间 tEndTime: this.state.chufaDate[1], //结束时间 adminName: this.state.adminName, }, success: function (data) { ShowModal(this); let theArr = []; if (data.error.length || 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]; let obj = thisdata; obj.key = i + 1; theArr.push(obj); } this.state.pagination.total = data.data.totalCount; this.state.pagination.current = data.data.pageNo; } if (data.data && data.data.list && !data.data.list.length) { this.state.pagination.total = 0; } this.setState({ dataSource: theArr, pageNo: pageNo, pagination: this.state.pagination, selectedRowKeys: [], }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, getInitialState() { return { releaseDate: [], chufaDate: [], 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: "key", key: "key", }, { title: "合同编号", dataIndex: "contractNo", key: "contractNo", }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo", }, { title: "客户名称", dataIndex: "userName", key: "userName", render: text => { return (
{text}
) } }, { title: "订单负责人", dataIndex: "salesmanName", key: "salesmanName", }, { title: "订单部门", dataIndex: "depName", key: "depName", }, { title: "订单状态", dataIndex: "orderStatus", key: "orderStatus", render: (text) => { return getNewOrderStatus(text); }, }, { title: "项目状态", dataIndex: "projectStatus", key: "projectStatus", render: (text) => { return getProjectName(text); }, }, { title: "签单金额(万元)", dataIndex: "totalAmount", key: "totalAmount", }, { title: "已收款(万元)", dataIndex: "settlementAmount", key: "settlementAmount", }, { title: "应收款(万元)", dataIndex: "orderReceivables", key: "orderReceivables", }, { title: "欠款(万元)", dataIndex: "orderArrears", key: "orderArrears", }, { title: "结算状态", dataIndex: "liquidationStatus", key: "liquidationStatus", render: (text) => { return getLiquidationStatus(text); }, }, { title: "催收科目", dataIndex: "type", key: "type", render: text => { if(text == 0) { return "按时触发应收欠款" } } }, { title: "催款状态", dataIndex: "dunStatus", key: "dunStatus", render: (text) => { if (text == 0) { return "未启动"; } else if (text == 1) { return "催款中"; } else if (text == 2) { return "已完成"; } else if (text == 3) { return "已停止"; } }, }, { title: "催款启动日期", dataIndex: "startDate", key: "startDate", }, { title: "下单时间", dataIndex: "signDate", key: "signDate", }, ], dataSource: [], }; }, //页面加载函数 componentWillMount() { this.loadData(); }, //搜索 search() { this.setState({ //signBillVisible:false }); this.loadData(); }, //导出 exportExec() { var data = { name: this.state.customerName ? this.state.customerName : undefined, //客户名称 adminName: this.state.adminName ? this.state.adminName : undefined, //订单负责人 orderNo: this.state.orderNo ? this.state.orderNo : undefined, //订单编号 contractNo: this.state.contractNo ? this.state.contractNo : undefined, starTime: this.state.releaseDate[0] ? this.state.releaseDate[0] : undefined, endTime: this.state.releaseDate[1] ? this.state.releaseDate[1] : undefined, tStarTime: this.state.chufaDate[0] ? this.state.chufaDate[0] : undefined, tEndTime: this.state.chufaDate[1] ? this.state.chufaDate[1] : undefined, depId: this.state.departmenttSearch, pageSize: 9999999, }; window.location.href = globalConfig.context + "/api/admin/newOrder/exportArrearsDunListData?" + $.param(data); }, //重置 reset() { this.state.orderNo = ""; this.state.contractNo = ''; this.state.customerName = ""; this.state.adminName = ""; this.state.departmenttSearch = undefined; this.state.releaseDate[0] = undefined; this.state.releaseDate[1] = undefined; this.state.chufaDate[1] = undefined; this.state.chufaDate[0] = undefined; this.loadData(); }, 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 formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; const FormItem = Form.Item; const { RangePicker } = DatePicker; const rowSelection = { selectedRowKeys: this.state.selectedRowKeys, onChange: (selectedRowKeys, selectedRows) => { this.setState({ modalVisible: false, selectedRows: selectedRows.slice(-1), selectedRowKeys: selectedRowKeys.slice(-1), }); }, onSelect: (recordt) => { this.setState({ modalVisible: false, recordt: recordt.id, }); }, }; const { TabPane } = Tabs; return (
欠款催收列表
{ this.setState({ customerName: e.target.value }); }} /> { this.setState({ orderNo: e.target.value }); }} /> { this.setState({ contractNo: e.target.value }); }} /> { this.setState({ adminName: e.target.value }); }} /> { this.setState({ departmenttSearch: e }); }}/> 下单时间 : { this.setState({ releaseDate: dataString }); }} /> 触发时间 : { this.setState({ chufaDate: dataString }); }} />
); }, }) ); export default ArrearsList;