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 { getLiquidationStatus,getjiedian,getNewOrderStatus,getProjectStatus} from '@/tools.js'; import './customer.less'; import {ChooseList} from "./chooseList"; import {getProjectName} from "../../../tools"; import DepartmentList from "../../../common/departmentList"; const IntentionCustomer = 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/dunOrderNewList", 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,//订单部门 adminName:this.state.adminName,//责任人名称 starTime: this.state.releaseDate[0],//开始时间 endTime: this.state.releaseDate[1],//结束时间 newStatus: this.state.newStatus, }, success: function(data) { 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]; theArr.push({ key: i + 1, id:thisdata.id,//ID contractNo: thisdata.contractNo, orderNo: thisdata.orderNo,//订单编号 totalAmount:thisdata.totalAmount,//签单金额 settlementAmount:thisdata.settlementAmount,//已收款 accountsReceivable:thisdata.accountsReceivable,//应收款 uncollectedAmount:thisdata.uncollectedAmount,//应收款 appropriationRatio:thisdata.appropriationRatio,//拨款比例 orderStatus:thisdata.orderStatus,//订单状态 projectStatus:thisdata.projectStatus,//项目状态 liquidationStatus:thisdata.liquidationStatus,//结算状态 signDate:thisdata.signDate,//签单时间 userName:thisdata.userName,//客户名称 salesmanName:thisdata.salesmanName,//营销员名称 dunSubject:thisdata.dunSubject,//催收科目 startDate:thisdata.startDate,//催收启动时间 depName:thisdata.depName,//部门名称 dunStatus: thisdata.dunStatus == 0 ? "未触发" : "已触发" }); }; 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)); }, loadDatas(dunId) { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context +"/api/admin/newOrder/selectDunLogList", data: { dunId:dunId, }, success: function(data) { let theArr = []; if(data.error.length || data.data == "") { if(data.error && data.error.length) { message.warning(data.error[0].message); }; } else { for(let i = 0; i < data.data.length; i++) { let thisdata = data.data[i]; theArr.push({ key: i, id:thisdata.id,//ID dunId: thisdata.dunId,//催款ID dumBy:thisdata.dumBy,//催款人 dumTime:thisdata.dumDate,//催款时间 remarks:thisdata.remarks,//备注 }); }; }; this.setState({ dataSources: theArr, }); }.bind(this), }).always(function() { this.setState({ loading: false }); }.bind(this)); }, getInitialState() { return { newStatus: 1, page: 1, releaseDate: [], selectedRowKeys: [], orgCodeUrl: [], paginations: 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: "key", key: "key" }, { title: "合同编号", dataIndex: "contractNo", key: "contractNo" }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo" }, { title: "客户名称", dataIndex: "userName", key: "userName", width: 150, 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: "uncollectedAmount", key: "uncollectedAmount" }, { title: "拨款比例", dataIndex: "appropriationRatio", key: "appropriationRatio" }, { title: "结算状态", dataIndex: "liquidationStatus", key: "liquidationStatus", render: text => { return getLiquidationStatus(text); } }, { title: "催收科目", dataIndex: "dunSubject", key: "dunSubject" // render: text => { // return getjiedian(text); // } }, { title: "应收款(万元)", dataIndex: "accountsReceivable", key: "accountsReceivable" }, { title: "催款状态", dataIndex: "dunStatus", key: "dunStatus" }, { title: "催款启动日期", dataIndex: "startDate", key: "startDate" }, { title: "签单时间", dataIndex: "signDate", key: "signDate" }, { title: "催收操作", dataIndex: "abc", key: "abc", render: (text, record) => { return (
); } } ], data: [], dataSource: [], columnsX: [ { title: "催款人", dataIndex: "dumBy", key: "dumBy" }, { title: "催款时间", dataIndex: "dumTime", key: "dumTime" }, { title: "催款情况", dataIndex: "remarks", key: "remarks" } ], dataSources: [] }; }, //页面加载函数 componentWillMount() { this.loadData(); }, //进入新增拜访记录 visit(record) { this.setState({ visible:true, dunId:record.id }) }, // //整行点击 tableRowClick(record) { this.setState({ visibles:true, }); this.loadDatas(record.id); }, //新增催款记录 examOk(){ $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context +"/api/admin/newOrder/createDunLog", data: { dunId:this.state.dunId, dumTime:this.state.dumTime, remarks:this.state.remarks, }, success: function(data) { if(data.error.length || data.data.list == "") { if(data.error && data.error.length) { message.warning(data.error[0].message); }; } else { message.success("新增催款记录成功~"); this.setState({ visible:false, }); this.loadData(); this.resets(); }; }.bind(this), }).always(function() { this.setState({ loading: false }); }.bind(this)); }, //关闭输入理由框 noCancel(){ this.setState({ noVisible:false }) }, //搜索 search() { this.setState({ //signBillVisible:false }) this.loadData(); }, //重置 reset() { this.setState({ signBillVisible:false }) 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.loadData(); }, resets(){ 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; }, getOrgCodeUrl(e) { this.setState({ orgCodeUrl: e }); }, //关闭详情 visitCancel(){ this.setState({ visible:false }) this.resets(); }, visitOk(){ this.setState({ visible:false }) this.resets(); }, //关闭详情 visitCancels(){ this.setState({ visibles:false }) this.resets(); }, //导出 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, depId: this.state.departmenttSearch ? this.state.departmenttSearch : undefined,//订单部门 pageSize: 9999999, newStatus: this.state.newStatus } window.location.href=(globalConfig.context+'/api/admin/newOrder/exportOrderDunData?'+$.param(data)); }, visitOks(){ this.setState({ visibles:false }) this.resets(); }, 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({ adminName: e.target.value }); }} /> { this.setState({ orderNo: e.target.value }); }} /> { this.setState({ contractNo: e.target.value }); }} /> { this.setState({ departmenttSearch: e }); }}/> 下单时间 : { this.setState({ releaseDate: dataString }); }} />
{}} value={ this.state.dumTime ? moment(this.state.dumTime) : null } onChange={(data, dataString) => { this.setState({ dumTime: dataString }); }} />
{ this.setState({ remarks: e.target.value }); }} />
); } })); export default IntentionCustomer;