|
@@ -17,6 +17,7 @@ import {
|
|
|
} from "antd";
|
|
|
import Receivable from "./receivable";
|
|
|
import Assign from "@/manageCenter/publicComponent/assign";
|
|
|
+import ReactToPrint from "react-to-print";
|
|
|
import {
|
|
|
getjiedian,
|
|
|
getProcessStatus,
|
|
@@ -70,7 +71,7 @@ const approvedOutsourcing = React.createClass({
|
|
|
}.bind(this)
|
|
|
);
|
|
|
},
|
|
|
- loadData(pageNo) {
|
|
|
+ loadData(pageNo, pageSize) {
|
|
|
this.state.data = [];
|
|
|
this.setState({
|
|
|
selectedRowKeys: [],
|
|
@@ -85,27 +86,27 @@ const approvedOutsourcing = React.createClass({
|
|
|
url: globalConfig.context + "/api/admin/financial/financeList",
|
|
|
data: {
|
|
|
pageNo: pageNo || 1,
|
|
|
- pageSize: this.state.pagination.pageSize,
|
|
|
+ pageSize: pageSize || this.state.pagination.pageSize,
|
|
|
buyerName: this.state.nameSearch, //客户名称
|
|
|
orderNo: this.state.orderNoSearch,
|
|
|
startTime: this.state.releaseDate[0],
|
|
|
endTime: this.state.releaseDate[1],
|
|
|
departmentId: this.state.departmenttList,
|
|
|
- processStatus: this.state.processStatus,
|
|
|
+ processStatus: this.state.processStatusSearch,
|
|
|
contractNo: this.state.contractNoSearch,
|
|
|
outsource: 1
|
|
|
},
|
|
|
success: function(data) {
|
|
|
let theArr = [];
|
|
|
- if (!data.data || !data.data.list) {
|
|
|
+ if (!data.data || !data.data.pagination.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];
|
|
|
+ for (let i = 0; i < data.data.pagination.list.length; i++) {
|
|
|
+ let thisdata = data.data.pagination.list[i];
|
|
|
theArr.push({
|
|
|
- key: i,
|
|
|
+ key: thisdata.orderNo,
|
|
|
orderNo: thisdata.orderNo,
|
|
|
orderType: thisdata.orderType,
|
|
|
orderStatus: thisdata.orderStatus,
|
|
@@ -127,14 +128,18 @@ const approvedOutsourcing = React.createClass({
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
- 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 = data.data.pagination.pageNo;
|
|
|
+ this.state.pagination.total = data.data.pagination.totalCount;
|
|
|
+ if (
|
|
|
+ data.data &&
|
|
|
+ data.data.pagination.list &&
|
|
|
+ !data.data.pagination.list.length
|
|
|
+ ) {
|
|
|
this.state.pagination.current = 0;
|
|
|
this.state.pagination.total = 0;
|
|
|
}
|
|
|
this.setState({
|
|
|
- totalPage: data.data.totalPage,
|
|
|
+ totalPage: data.data.pagination.totalPage,
|
|
|
dataSource: theArr,
|
|
|
pagination: this.state.pagination
|
|
|
});
|
|
@@ -182,7 +187,7 @@ const approvedOutsourcing = React.createClass({
|
|
|
{
|
|
|
title: "订单编号",
|
|
|
dataIndex: "orderNo",
|
|
|
- key: "orderNo",
|
|
|
+ key: "orderNo"
|
|
|
// fixed: "left"
|
|
|
},
|
|
|
{
|
|
@@ -387,6 +392,36 @@ const approvedOutsourcing = React.createClass({
|
|
|
}
|
|
|
}
|
|
|
],
|
|
|
+ columnsDate: [
|
|
|
+ {
|
|
|
+ title: "编号",
|
|
|
+ dataIndex: "id",
|
|
|
+ key: "id"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "订单编号",
|
|
|
+ dataIndex: "orderno",
|
|
|
+ key: "orderno"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "开票金额(万元)",
|
|
|
+ dataIndex: "amount",
|
|
|
+ key: "amount"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "申请时间",
|
|
|
+ dataIndex: "createTime",
|
|
|
+ key: "createTime"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "开票状态",
|
|
|
+ dataIndex: "status",
|
|
|
+ key: "status",
|
|
|
+ render: text => {
|
|
|
+ return getInvoiceStatus(text);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ],
|
|
|
columnsY: [
|
|
|
{
|
|
|
title: "流程",
|
|
@@ -467,7 +502,137 @@ const approvedOutsourcing = React.createClass({
|
|
|
}
|
|
|
],
|
|
|
dataSource: [],
|
|
|
- searchTime: [,]
|
|
|
+ searchTime: [,],
|
|
|
+ printColumns: [
|
|
|
+ {
|
|
|
+ title: "订单编号",
|
|
|
+ dataIndex: "orderNo",
|
|
|
+ key: "orderNo"
|
|
|
+ // fixed: "left"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "合同编号",
|
|
|
+ dataIndex: "contractNo",
|
|
|
+ key: "contractNo"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "签单日期",
|
|
|
+ dataIndex: "signTime",
|
|
|
+ key: "signTime"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "下单日期",
|
|
|
+ dataIndex: "createTime",
|
|
|
+ key: "createTime"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "已收款(万元)",
|
|
|
+ dataIndex: "actuallyTotalAmount",
|
|
|
+ key: "actuallyTotalAmount"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "客户名称",
|
|
|
+ dataIndex: "buyerName",
|
|
|
+ key: "buyerName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "流程状态",
|
|
|
+ dataIndex: "processStatus",
|
|
|
+ key: "processStatus",
|
|
|
+ render: text => {
|
|
|
+ return getProcessStatus(text);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "订单部门",
|
|
|
+ dataIndex: "departmentName",
|
|
|
+ key: "departmentName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "特批状态",
|
|
|
+ dataIndex: "approval",
|
|
|
+ key: "approval",
|
|
|
+ render: text => {
|
|
|
+ return getApproval(text);
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: "订单负责人",
|
|
|
+ dataIndex: "sellerName",
|
|
|
+ key: "sellerName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "结算状态",
|
|
|
+ dataIndex: "liquidationStatus",
|
|
|
+ key: "liquidationStatus",
|
|
|
+ render: text => {
|
|
|
+ return getLiquidationStatus(text);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ waterlistDate: [
|
|
|
+ {
|
|
|
+ title: "平台流水号",
|
|
|
+ dataIndex: "billNo",
|
|
|
+ key: "billNo"
|
|
|
+ // fixed: "left"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "金额(万元)",
|
|
|
+ dataIndex: "transactionAmount",
|
|
|
+ key: "transactionAmount"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "收款方",
|
|
|
+ dataIndex: "payeeName",
|
|
|
+ key: "payeeName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "付款方",
|
|
|
+ dataIndex: "payerName",
|
|
|
+ key: "payerName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "流水科目",
|
|
|
+ dataIndex: "transactionSubject",
|
|
|
+ key: "transactionSubject",
|
|
|
+ render: text => {
|
|
|
+ return getTransactionProject(text);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "收款类型",
|
|
|
+ dataIndex: "type",
|
|
|
+ key: "type"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "财务流水时间",
|
|
|
+ dataIndex: "financialPayTimes",
|
|
|
+ key: "financialPayTimes"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "财务流水号",
|
|
|
+ dataIndex: "financialPayNo",
|
|
|
+ key: "financialPayNo"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "订单编号",
|
|
|
+ dataIndex: "orderNo",
|
|
|
+ key: "orderNo"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "订单负责人",
|
|
|
+ dataIndex: "saleName",
|
|
|
+ key: "saleName"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: "创建时间",
|
|
|
+ dataIndex: "createTimes",
|
|
|
+ key: "createTimes"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ waterData: []
|
|
|
};
|
|
|
},
|
|
|
// 特批通过
|
|
@@ -974,6 +1139,174 @@ const approvedOutsourcing = React.createClass({
|
|
|
changeList: newArr
|
|
|
});
|
|
|
},
|
|
|
+ onSelectChange(selectedRowKeys) {
|
|
|
+ // for(var i=0; i<selectedRowKeys.length; i++){
|
|
|
+ // for(var j=i+1; j<selectedRowKeys.length; j++){
|
|
|
+ // if(selectedRowKeys[i]==selectedRowKeys[j]){
|
|
|
+ // selectedRowKeys.splice(j,1);
|
|
|
+ // j--;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ console.log(selectedRowKeys);
|
|
|
+
|
|
|
+ this.setState({ selectedRowKeys });
|
|
|
+ },
|
|
|
+ inRecordData() {
|
|
|
+ this.setState({
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "get",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url:
|
|
|
+ globalConfig.context +
|
|
|
+ "/api/admin/orderInvoice/salesmanOrderInvoiceList",
|
|
|
+ data: {
|
|
|
+ orderNo: this.state.selectedRowKeys[0]
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ let theArr = [];
|
|
|
+ let sum = 0;
|
|
|
+ if (!data.data) {
|
|
|
+ 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];
|
|
|
+ sum += parseFloat(thisdata.amount);
|
|
|
+ theArr.push({
|
|
|
+ id: thisdata.id,
|
|
|
+ orderno: thisdata.orderno, //订单编号
|
|
|
+ amount: thisdata.amount, //签单金额
|
|
|
+ createTime: thisdata.createTime, //流程状态
|
|
|
+ status: thisdata.status, //结算状态
|
|
|
+ rejectReason: thisdata.rejectReason
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ recordData: theArr,
|
|
|
+ sum: sum.toFixed(4)
|
|
|
+ });
|
|
|
+ }.bind(this)
|
|
|
+ }).done(
|
|
|
+ function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this)
|
|
|
+ );
|
|
|
+ },
|
|
|
+ inRecordCanl() {
|
|
|
+ this.setState({
|
|
|
+ bvisible: false
|
|
|
+ });
|
|
|
+ },
|
|
|
+ waterData() {
|
|
|
+ this.state.data = [];
|
|
|
+ this.setState({
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "get",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/financial/myBillList",
|
|
|
+ data: {
|
|
|
+ orderNo: this.state.selectedRowKeys[0]
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ let theArr = [];
|
|
|
+ let waterSum = 0;
|
|
|
+ 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];
|
|
|
+ waterSum += parseFloat(thisdata.transactionAmount);
|
|
|
+ theArr.push({
|
|
|
+ key: i,
|
|
|
+ orderNo: thisdata.orderNo,
|
|
|
+ billNo: thisdata.billNo,
|
|
|
+ transactionAmount: thisdata.transactionAmount,
|
|
|
+ payeeName: thisdata.payeeName,
|
|
|
+ payerName: thisdata.payerName,
|
|
|
+ transactionSubject: thisdata.transactionSubject,
|
|
|
+ transactionChannel: thisdata.transactionChannel,
|
|
|
+ financialPayTimes: thisdata.financialPayTimes,
|
|
|
+ financialPayNo: thisdata.financialPayNo,
|
|
|
+ createrName: thisdata.createrName,
|
|
|
+ saleName: thisdata.saleName,
|
|
|
+ createTimes: thisdata.createTimes,
|
|
|
+ type: thisdata.type == 0 ? "手工" : "批量"
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ waterData: theArr,
|
|
|
+ waterSum: waterSum.toFixed(4)
|
|
|
+ });
|
|
|
+ }.bind(this)
|
|
|
+ }).always(
|
|
|
+ function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this)
|
|
|
+ );
|
|
|
+ },
|
|
|
+ waterCanl() {
|
|
|
+ this.setState({
|
|
|
+ cvisible: false
|
|
|
+ });
|
|
|
+ },
|
|
|
+ exportAll() {
|
|
|
+ window.location.href =
|
|
|
+ globalConfig.context +
|
|
|
+ "/api/admin/receivables/exportReceivables?outsource=1";
|
|
|
+ },
|
|
|
+ exportKaip() {
|
|
|
+ window.location.href =
|
|
|
+ globalConfig.context +
|
|
|
+ "/api/admin/receivables/exportInvoice?" +
|
|
|
+ `orderNo=${this.state.selectedRowKeys}`;
|
|
|
+ },
|
|
|
+ exportWater() {
|
|
|
+ window.location.href =
|
|
|
+ globalConfig.context +
|
|
|
+ "/api/admin/receivables/exportMyBill?" +
|
|
|
+ `orderNo=${this.state.selectedRowKeys}`;
|
|
|
+ },
|
|
|
+ printAll() {
|
|
|
+ this.setState({
|
|
|
+ dvisible: true
|
|
|
+ // loading: true
|
|
|
+ });
|
|
|
+
|
|
|
+ this.loadData(1, 9999);
|
|
|
+ this.state.pagination.pageSize = 9999;
|
|
|
+ this.setState({
|
|
|
+ pagination: this.state.pagination
|
|
|
+ });
|
|
|
+ window.setTimeout(() => {
|
|
|
+ document.querySelectorAll(
|
|
|
+ ".ant-pagination.ant-table-pagination.mini"
|
|
|
+ )[0].style.display = "none";
|
|
|
+ // let tr = document.querySelectorAll(".patent-table tr");
|
|
|
+ // for(let i = 0; i < tr.length; i++) {
|
|
|
+ // tr[i].style.fontSize = "6px"
|
|
|
+ // }
|
|
|
+ // let td = document.querySelectorAll(".patent-table tr td");
|
|
|
+ // for (let i = 0; i < td.length; i++) {
|
|
|
+ // td[i].style.padding = "0 0 0 0";
|
|
|
+ // }
|
|
|
+ }, 100);
|
|
|
+ },
|
|
|
render() {
|
|
|
const { TextArea } = Input;
|
|
|
const { RangePicker } = DatePicker;
|
|
@@ -984,89 +1317,167 @@ const approvedOutsourcing = React.createClass({
|
|
|
labelCol: { span: 8 },
|
|
|
wrapperCol: { span: 12 }
|
|
|
};
|
|
|
+ const { loading, selectedRowKeys, visible } = this.state;
|
|
|
+ const rowSelection = {
|
|
|
+ selectedRowKeys,
|
|
|
+ onChange: this.onSelectChange,
|
|
|
+ hideDefaultSelections: true,
|
|
|
+ type: "radio"
|
|
|
+ };
|
|
|
const jsDate = this.state.jsDate || [];
|
|
|
return (
|
|
|
<div className="user-content">
|
|
|
<div className="content-title">
|
|
|
<span>外包结算管理</span>
|
|
|
</div>
|
|
|
- <div className="user-search">
|
|
|
- <Input
|
|
|
- placeholder="订单编号"
|
|
|
- value={this.state.orderNoSearch}
|
|
|
- onChange={e => {
|
|
|
- this.setState({ orderNoSearch: e.target.value });
|
|
|
- }}
|
|
|
- />
|
|
|
- <Input
|
|
|
- placeholder="客户名称"
|
|
|
- value={this.state.nameSearch}
|
|
|
- onChange={e => {
|
|
|
- this.setState({ nameSearch: e.target.value });
|
|
|
- }}
|
|
|
- />
|
|
|
- <Select
|
|
|
- placeholder="订单部门"
|
|
|
- style={{ width: 150, marginRight: 10 }}
|
|
|
- value={this.state.departmenttList}
|
|
|
- onChange={e => {
|
|
|
- this.setState({ departmenttList: e });
|
|
|
- }}
|
|
|
- >
|
|
|
- {departmentArr.map(function(item) {
|
|
|
- return <Select.Option key={item.id}>{item.name}</Select.Option>;
|
|
|
- })}
|
|
|
- </Select>
|
|
|
- <Input
|
|
|
- placeholder="合同编号"
|
|
|
- value={this.state.contractNoSearch}
|
|
|
- onChange={e => {
|
|
|
- this.setState({
|
|
|
- contractNoSearch: e.target.value
|
|
|
- });
|
|
|
- }}
|
|
|
- />
|
|
|
- <Select
|
|
|
- placeholder="流程状态"
|
|
|
- onChange={e => {
|
|
|
- this.setState({ processStatus: e });
|
|
|
- }}
|
|
|
- style={{ width: 160, marginRight: 5 }}
|
|
|
- value={this.state.processStatus}
|
|
|
- >
|
|
|
- <Option value="3">未分配</Option>
|
|
|
- <Option value="4">已分配</Option>
|
|
|
- </Select>
|
|
|
- <span style={{ marginRight: 10 }}>下单日期:</span>
|
|
|
- <RangePicker
|
|
|
- value={[
|
|
|
- this.state.releaseDate[0]
|
|
|
- ? moment(this.state.releaseDate[0])
|
|
|
- : null,
|
|
|
- this.state.releaseDate[1]
|
|
|
- ? moment(this.state.releaseDate[1])
|
|
|
- : null
|
|
|
- ]}
|
|
|
- onChange={(data, dataString) => {
|
|
|
- this.setState({ releaseDate: dataString });
|
|
|
- }}
|
|
|
- />
|
|
|
- <Button
|
|
|
- type="primary"
|
|
|
- onClick={this.search}
|
|
|
- style={{ marginLeft: 10 }}
|
|
|
- >
|
|
|
- 搜索
|
|
|
- </Button>
|
|
|
- <Button onClick={this.reset}>重置</Button>
|
|
|
- </div>
|
|
|
-
|
|
|
- <ChooseList
|
|
|
- columns={this.state.columns}
|
|
|
- changeFn={this.changeList}
|
|
|
- changeList={this.state.changeList}
|
|
|
- top={55}
|
|
|
- />
|
|
|
+ <Tabs defaultActiveKey="2" onChange={this.callback}>
|
|
|
+ <TabPane tab="更改表格显示数据" key="1">
|
|
|
+ <div style={{ marginLeft: 10 }}>
|
|
|
+ <ChooseList
|
|
|
+ columns={this.state.columns}
|
|
|
+ changeFn={this.changeList}
|
|
|
+ changeList={this.state.changeList}
|
|
|
+ top={55}
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </TabPane>
|
|
|
+ <TabPane tab="搜索" key="2">
|
|
|
+ <div className="user-search" style={{ marginLeft: 10 }}>
|
|
|
+ <Input
|
|
|
+ placeholder="订单编号"
|
|
|
+ value={this.state.orderNoSearch}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({ orderNoSearch: e.target.value });
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ <Input
|
|
|
+ placeholder="客户名称"
|
|
|
+ value={this.state.nameSearch}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({ nameSearch: e.target.value });
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ <Select
|
|
|
+ placeholder="订单部门"
|
|
|
+ style={{ width: 150, marginRight: 10 }}
|
|
|
+ value={this.state.departmenttList}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({ departmenttList: e });
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ {departmentArr.map(function(item) {
|
|
|
+ return (
|
|
|
+ <Select.Option key={item.id}>{item.name}</Select.Option>
|
|
|
+ );
|
|
|
+ })}
|
|
|
+ </Select>
|
|
|
+ <Input
|
|
|
+ placeholder="合同编号"
|
|
|
+ value={this.state.contractNoSearch}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({
|
|
|
+ contractNoSearch: e.target.value
|
|
|
+ });
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ <Select
|
|
|
+ placeholder="流程状态"
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({ processStatusSearch: e });
|
|
|
+ }}
|
|
|
+ style={{ width: 160, marginRight: 5 }}
|
|
|
+ value={this.state.processStatusSearch}
|
|
|
+ >
|
|
|
+ <Option value="3">未分配</Option>
|
|
|
+ <Option value="4">已分配</Option>
|
|
|
+ </Select>
|
|
|
+ <span style={{ marginRight: 10 }}>下单日期:</span>
|
|
|
+ <RangePicker
|
|
|
+ value={[
|
|
|
+ this.state.releaseDate[0]
|
|
|
+ ? moment(this.state.releaseDate[0])
|
|
|
+ : null,
|
|
|
+ this.state.releaseDate[1]
|
|
|
+ ? moment(this.state.releaseDate[1])
|
|
|
+ : null
|
|
|
+ ]}
|
|
|
+ onChange={(data, dataString) => {
|
|
|
+ this.setState({ releaseDate: dataString });
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ onClick={this.search}
|
|
|
+ style={{ marginLeft: 10 }}
|
|
|
+ >
|
|
|
+ 搜索
|
|
|
+ </Button>
|
|
|
+ <Button onClick={this.reset}>重置</Button>
|
|
|
+ </div>
|
|
|
+ </TabPane>
|
|
|
+ <TabPane tab="打印" key="3">
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={this.printAll}
|
|
|
+ >
|
|
|
+ 打印所有列表信息
|
|
|
+ </Button>
|
|
|
+ </TabPane>
|
|
|
+ <TabPane tab="导出Excel" key="4">
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={this.exportAll}
|
|
|
+ >
|
|
|
+ 导出当前列表
|
|
|
+ </Button>
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ disabled={!this.state.selectedRowKeys.length}
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={this.exportKaip}
|
|
|
+ >
|
|
|
+ 导出所选开票详情
|
|
|
+ </Button>
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ disabled={!this.state.selectedRowKeys.length}
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={this.exportWater}
|
|
|
+ >
|
|
|
+ 导出所选收款详情流水
|
|
|
+ </Button>
|
|
|
+ </TabPane>
|
|
|
+ <TabPane tab="查看" key="5">
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ disabled={this.state.selectedRowKeys.length != 1}
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={() => {
|
|
|
+ this.inRecordData();
|
|
|
+ this.setState({
|
|
|
+ bvisible: true
|
|
|
+ });
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ 查看开票详情
|
|
|
+ </Button>
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ disabled={this.state.selectedRowKeys.length != 1}
|
|
|
+ style={{ margin: "0px 0px 10px 10px" }}
|
|
|
+ onClick={() => {
|
|
|
+ this.waterData();
|
|
|
+ this.setState({
|
|
|
+ cvisible: true
|
|
|
+ });
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ 详情收款流水
|
|
|
+ </Button>
|
|
|
+ </TabPane>
|
|
|
+ </Tabs>
|
|
|
|
|
|
<div className="patent-table">
|
|
|
<Spin spinning={this.state.loading}>
|
|
@@ -1082,6 +1493,7 @@ const approvedOutsourcing = React.createClass({
|
|
|
scroll={{ x: true, y: 0 }}
|
|
|
pagination={this.state.pagination}
|
|
|
onRowClick={this.tableRowClick.bind(this)}
|
|
|
+ rowSelection={rowSelection}
|
|
|
/>
|
|
|
</Spin>
|
|
|
</div>
|
|
@@ -1532,6 +1944,117 @@ const approvedOutsourcing = React.createClass({
|
|
|
showDesc={this.state.assignVisibleX}
|
|
|
closeDesc={this.closeAssignX.bind(this)}
|
|
|
/>
|
|
|
+ <Modal
|
|
|
+ visible={this.state.bvisible}
|
|
|
+ footer=""
|
|
|
+ title="开票历史记录"
|
|
|
+ className="admin-desc-content"
|
|
|
+ width="900px"
|
|
|
+ onCancel={this.inRecordCanl}
|
|
|
+ >
|
|
|
+ <Spin spinning={this.state.loading}>
|
|
|
+ <div className="patent-table">
|
|
|
+ <Table
|
|
|
+ columns={this.state.columnsDate}
|
|
|
+ dataSource={this.state.recordData}
|
|
|
+ pagination={false}
|
|
|
+ bordered
|
|
|
+ />
|
|
|
+ <div className="clearfix" style={{ marginTop: "20px" }}>
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={<span style={{ fontSize: "14px" }}>开票总计</span>}
|
|
|
+ >
|
|
|
+ <span>{this.state.sum + "(万元)"}</span>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </Spin>
|
|
|
+ </Modal>
|
|
|
+ <Modal
|
|
|
+ visible={this.state.cvisible}
|
|
|
+ footer=""
|
|
|
+ title="详细收款流水"
|
|
|
+ className="admin-desc-content"
|
|
|
+ width="1300px"
|
|
|
+ onCancel={this.waterCanl}
|
|
|
+ >
|
|
|
+ <Spin spinning={this.state.loading}>
|
|
|
+ <div className="patent-table">
|
|
|
+ <Table
|
|
|
+ columns={this.state.waterlistDate}
|
|
|
+ dataSource={this.state.waterData}
|
|
|
+ pagination={false}
|
|
|
+ bordered
|
|
|
+ />
|
|
|
+ <div className="clearfix" style={{ marginTop: "20px" }}>
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={<span style={{ fontSize: "14px" }}>总计金额</span>}
|
|
|
+ >
|
|
|
+ <span>{this.state.waterSum + "(万元)"}</span>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </Spin>
|
|
|
+ </Modal>
|
|
|
+ <Modal
|
|
|
+ visible={this.state.dvisible}
|
|
|
+ footer=""
|
|
|
+ title="所有列表信息"
|
|
|
+ className="admin-desc-content"
|
|
|
+ width="1300px"
|
|
|
+ onCancel={() => {
|
|
|
+ this.loadData();
|
|
|
+ this.setState({
|
|
|
+ dvisible: false
|
|
|
+ });
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Spin spinning={this.state.loading}>
|
|
|
+ <div
|
|
|
+ className="patent-table"
|
|
|
+ style={{
|
|
|
+ // width: 900,
|
|
|
+ // position: "relative",
|
|
|
+ // left: "50%",
|
|
|
+ // transform: "translate(-50%)",
|
|
|
+ padding: "25px 0 30px 30px"
|
|
|
+ }}
|
|
|
+ ref={e => {
|
|
|
+ this.refs = e;
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Table
|
|
|
+ columns={this.state.printColumns}
|
|
|
+ dataSource={this.state.dataSource}
|
|
|
+ pagination={this.state.pagination}
|
|
|
+ bordered
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </Spin>
|
|
|
+
|
|
|
+ <ReactToPrint
|
|
|
+ trigger={() => (
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ style={{
|
|
|
+ float: "right",
|
|
|
+ marginTop: 10,
|
|
|
+ position: "absolute",
|
|
|
+ top: 0,
|
|
|
+ right: 30
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ 打印
|
|
|
+ </Button>
|
|
|
+ )}
|
|
|
+ content={() => this.refs}
|
|
|
+ />
|
|
|
+ </Modal>
|
|
|
</div>
|
|
|
);
|
|
|
}
|