| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325 | import React from 'react';import { Spin, Button, Tabs, Table } from 'antd';import ajax from 'jquery/src/ajax/xhr.js'import $ from 'jquery/src/ajax';import DemandDesc from '../../portal/search/demandDesc';import AchievementDesc from '../../portal/search/achievementDesc';import { getOrderStatus } from '../../tools';import './content.less';const TabPane = Tabs.TabPane;const Content = React.createClass({    achievementLoadData (pageNo) {        this.state.data = [];        this.setState({            loading: true        });        $.ajax({            method: "get",            dataType: "json",            crossDomain: false,            url: globalConfig.context + "/api/user/portal/order/achievementOrderList",            data: {                pageNo: pageNo || 1,                pageSize: this.state.achievementPagination.pageSize            },            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,                            orderId: thisdata.id,                            serialNumber: thisdata.serialNumber,                            id: thisdata.achievementId,                            createTime: thisdata.createTime,                            status: thisdata.status,                            name: thisdata.name,                            achievementSerialNumber: thisdata.achievementSerialNumber,                            deletedSign: thisdata.deletedSign,                            auditStatus: thisdata.auditStatus,                            createTimeFormattedDate: thisdata.createTimeFormattedDate,                            paymentId: thisdata.paymentId,                            paymentTime: thisdata.paymentTime,                            paymentTimeFormattedDate: thisdata.paymentTimeFormattedDate,                            paymentType: thisdata.paymentType,                            paymentValue: thisdata.paymentValue,                            transferPrice: thisdata.transferPrice                        });                    };                }                this.state.achievementPagination.current = data.data.pageNo;                this.state.achievementPagination.total = data.data.totalCount;                this.setState({                    achievementDataSource: theArr,                    achievementPagination: this.state.achievementPagination                });            }.bind(this),        }).always(function () {            this.setState({                loading: false            });        }.bind(this));    },    demandLoadData (pageNo) {        this.state.data = [];        this.setState({            loading: true        });        $.ajax({            method: "get",            dataType: "json",            crossDomain: false,            url: globalConfig.context + "/api/user/portal/order/demandOrderList",            data: {                pageNo: pageNo || 1,                pageSize: this.state.demandPagination.pageSize            },            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,                            orderId: thisdata.id,                            name: thisdata.name,                            demandSerialNumber: thisdata.demandSerialNumber,                            id: thisdata.demandId,                            createTime: thisdata.createTime,                            createTimeFormattedDate: thisdata.createTimeFormattedDate,                            serialNumber: thisdata.serialNumber,                            status: thisdata.status,                            auditStatus: thisdata.auditStatus,                            deletedSign: thisdata.deletedSign,                            intentionMoney: thisdata.intentionMoney,  //意向金                            contractMoney: thisdata.contractMoney,  //合同金                            commission: thisdata.commission,  //佣金                            serviceMoney: thisdata.serviceMoney  //服务金                        });                    };                }                this.state.demandPagination.current = data.data.pageNo;                this.state.demandPagination.total = data.data.totalCount;                this.setState({                    demandDataSource: theArr,                    demandPagination: this.state.demandPagination                });            }.bind(this),        }).always(function () {            this.setState({                loading: false            });        }.bind(this));    },    getInitialState () {        return {            loading: false,            demandShowDesc: false,            achievementShowDesc: false,            achievementPagination: {                defaultCurrent: 1,                defaultPageSize: 10,                showQuickJumper: true,                pageSize: 10,                onChange: function (page) {                    this.achievementLoadData(page);                }.bind(this),                showTotal: function (total) {                    return '共' + total + '条数据';                }            },            achievementColumns: [                {                    title: '编号',                    dataIndex: 'serialNumber',                    key: 'serialNumber',                }, {                    title: '成果名称',                    dataIndex: 'name',                    key: 'name',                }, {                    title: '订单状态',                    dataIndex: 'auditStatus',                    key: 'auditStatus',                    render: (text, record) => {                        if (record.deletedSign == 1) {                            return "已删除"                        } else if (record.auditStatus != 3) {                            return "已下架"                        } else {                            return "正常"                        }                    }                }, {                    title: '流程状态',                    dataIndex: 'status',                    key: 'status',                    render: (text, record) => { return getOrderStatus(text); }                }, {                    title: '接单时间',                    dataIndex: 'createTimeFormattedDate',                    key: 'createTimeFormattedDate',                }, {                    title: '订单金额',                    dataIndex: 'paymentValue',                    key: 'paymentValue',                }, {                    title: '支付时间',                    dataIndex: 'paymentTimeFormattedDate',                    key: 'paymentTimeFormattedDate',                }, {                    title: '支付流水',                    dataIndex: 'paymentId',                    key: 'paymentId',                }            ],            achievementDataSource: [],            demandPagination: {                defaultCurrent: 1,                defaultPageSize: 10,                showQuickJumper: true,                pageSize: 10,                onChange: function (page) {                    this.demandLoadData(page);                }.bind(this),                showTotal: function (total) {                    return '共' + total + '条数据';                }            },            demandColumns: [                {                    title: '编号',                    dataIndex: 'serialNumber',                    key: 'serialNumber',                }, {                    title: '需求名称',                    dataIndex: 'name',                    key: 'name',                }, {                    title: '订单状态',                    dataIndex: 'auditStatus',                    key: 'auditStatus',                    render: (text, record) => {                        if (record.deletedSign == 1) {                            return "已删除"                        } else if (record.auditStatus != 3) {                            return "已下架"                        } else {                            return "正常"                        }                    }                }, {                    title: '流程状态',                    dataIndex: 'status',                    key: 'status',                    render: (text, record) => { return getOrderStatus(text); }                }, {                    title: '意向金',                    dataIndex: 'intentionMoney',                    key: 'intentionMoney',                }, {                    title: '合同金',                    dataIndex: 'contractMoney',                    key: 'contractMoney',                }, {                    title: '佣金',                    dataIndex: 'commission',                    key: 'commission',                }, {                    title: '服务金',                    dataIndex: 'serviceMoney',                    key: 'serviceMoney',                }, {                    title: '接单时间',                    dataIndex: 'createTimeFormattedDate',                    key: 'createTimeFormattedDate',                }            ],            demandDataSource: [],        };    },    componentWillMount () {        this.achievementLoadData();        this.demandLoadData();    },    tabChange (key) {    },    demandRowClick (record, index) {        this.state.demandRowData = record;        if (record.deletedSign != 1 && record.auditStatus == 3) {            this.setState({                demandShowDesc: true            });        };    },    achievementRowClick (record, index) {        this.state.achievementRowData = record;        if (record.deletedSign != 1 && record.auditStatus == 3) {            this.setState({                achievementShowDesc: true            });        };    },    demandCloseDesc (e) {        this.setState({            demandShowDesc: e        });        this.demandLoadData();    },    achievementCloseDesc (e) {        this.setState({            achievementShowDesc: e        });        this.achievementLoadData();    },    render () {        return (            <div className="collection">                <Spin spinning={this.state.loading} >                    <Tabs defaultActiveKey="1" onChange={this.tabChange}>                        <TabPane tab="我的成果订单" key="1">                            <Table size="middle" columns={this.state.achievementColumns}                                dataSource={this.state.achievementDataSource}                                pagination={this.state.achievementPagination}                                style={{                                   cursor: 'pointer',                                }}                                onRowClick={this.achievementRowClick} />                        </TabPane>                        <TabPane tab="我的需求订单" key="2">                            <Table size="middle" columns={this.state.demandColumns}                                style={{                                   cursor: 'pointer',                                }}                                dataSource={this.state.demandDataSource}                                pagination={this.state.demandPagination}                                onRowClick={this.demandRowClick} />                        </TabPane>                    </Tabs>                </Spin>                <DemandDesc data={this.state.demandRowData}                    showDesc={this.state.demandShowDesc}                    closeDesc={this.demandCloseDesc} />                <AchievementDesc data={this.state.achievementRowData}                    showDesc={this.state.achievementShowDesc}                    closeDesc={this.achievementCloseDesc} />            </div>        )    }});export default Content;
 |