import React from "react"; import { Button, Input, Select, Spin, Table, message, DatePicker, Form, Modal, Tabs, Tooltip, Tag, } from "antd"; import $ from "jquery/src/ajax"; import moment from "moment"; import { getLiquidationStatus, getjiedian, getNewOrderStatus, getProjectStatus, getProjectName, getApprovalTag, } from "@/tools.js"; import "./customer.less"; import { ChooseList } from "./chooseList"; import { salesList } from "@/dataDic.js" import DepartmentList from "../../../common/departmentList"; import OrderItemStatus from "../../../common/orderItemStatus"; import OrderDesc from "../../financialManage/orderDetail/orderDesc"; import Cascaders from "../../../common/cascaders"; 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, deps: this.state.departmenttSearch, //订单部门 adminName: this.state.adminName, //责任人名称 starTime: this.state.releaseDate[0], //开始时间 endTime: this.state.releaseDate[1], //结束时间 newStatus: this.state.newStatus, amountStatus: this.state.amountStatus,//签单金额 approval: this.state.approval,//是否特批 memberType: this.state.memberType,//会员 }, 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 ? "未触发" : "已触发", commodityName: thisdata.commodityName, approval: thisdata.approval, //特批状态 memberType: thisdata.memberType, //会员状态 deleteSign: thisdata.deleteSign,//变更状态 }); } 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 { showDesc: false, 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: "contractNo", key: "contractNo", render: (text, record) => { return ( { e.stopPropagation(); let input = document.getElementById("copyText"); input.value = text; input.select(); document.execCommand("copy"); message.success("复制成功"); }} > 复制 } >
{text}
{getApprovalTag(record.approval)}
); }, }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo", render: (text, record) => { return ( { e.stopPropagation(); let input = document.getElementById("copyText"); input.value = text; input.select(); document.execCommand("copy"); message.success("复制成功"); }} > 复制 } >
{text}
{record.totalAmount >= 10 && 大客户} {record.memberType == 1 && 会员}
); }, }, { title: "客户名称", dataIndex: "userName", key: "userName", width: 160, 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: "commodityName", key: "commodityName", }, { 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.state.RowData = record; this.setState({ showDesc: true, }); }, //新增催款记录 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 = undefined; this.state.contractNo = undefined; this.state.customerName = undefined; this.state.adminName = undefined; this.state.departmenttSearch = undefined; this.state.releaseDate[0] = undefined; this.state.releaseDate[1] = undefined; this.state.amountStatus = undefined; this.state.approval = undefined; this.state.memberType = undefined; this.Cascaders.empty(); 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; this.state.amountStatus = undefined; this.state.approval = undefined; this.state.memberType = 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(); }, // 关闭订单详情 closeDesc(e, s) { this.state.showDesc = e; if (s) { this.loadData(this.state.page); } }, //导出 exportExec() { message.config({ duration: 20, }); let loading = message.loading("下载中..."); this.setState({ exportPendingLoading: true, }); let data = { pageSize: 9999999, name: this.state.customerName, //名称 orderNo: this.state.orderNo, //订单编号 contractNo: this.state.contractNo, deps: this.state.departmenttSearch, //订单部门 adminName: this.state.adminName, //责任人名称 starTime: this.state.releaseDate[0], //开始时间 endTime: this.state.releaseDate[1], //结束时间 newStatus: this.state.newStatus, amountStatus: this.state.amountStatus,//签单金额 approval: this.state.approval,//是否特批 memberType: this.state.memberType,//会员 }; $.ajax({ method: "get", dataType: "json", crossDomain: false, url: "/api/admin/newOrder/exportOrderDunData", data, success: function (data) { if (data.error.length === 0) { this.download(data.data); } else { message.warning(data.error[0].message); } }.bind(this), }).always( function () { loading(); this.setState({ exportPendingLoading: false, }); }.bind(this) ); }, // 下载 download(fileName) { window.location.href = globalConfig.context + "/open/download?fileName=" + fileName; }, 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({ orderNo: e.target.value }); }} /> { this.setState({ contractNo: e.target.value }); }} /> { this.setState({ customerName: e.target.value }); }} /> { this.setState({ adminName: e.target.value }); }} /> this.Cascaders = node} placeholder="订单部门" id="id" name="name" children="list" height={28} onSel={(e) => { this.setState({ departmenttSearch: JSON.stringify(e), }); }} /> {/* { 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 }); }} />