import React from 'react'; import { Icon, Button, Input, Select, Spin, Table, message, DatePicker } from 'antd'; import $ from 'jquery/src/ajax'; import moment from 'moment'; import NewDesc from '@/administration/messagePush/messageIn/messageDesc'; import '@/account/demand/techDemand.less'; import '@/administration/news/news.less'; import {getCouponCome,getCouponAuthStates} from '@/tools.js'; import {couponCome} from '@/dataDic.js'; const DemandList = React.createClass({ loadData(pageNo) { this.state.data = []; this.setState({ selectedRowKeys:[], page:pageNo, loading: true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/open/api/admin/voucherDetail/selectList", data: { pageNo: pageNo || 1, pageSize: this.state.pagination.pageSize, name: this.state.name, //名称 source: this.state.source, //来源 status: this.state.status, //状态 userMobile: this.state.userMobile, //用户手机号 }, 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, id: thisdata.id, name: thisdata.name,//名称 money: thisdata.money,//面额 source: thisdata.source,//来源 starTime: thisdata.starTime,//领取时间 endTime: thisdata.endTime,//截止时间 useTime: thisdata.useTime, //使用时间 status: thisdata.status,//状态 userMobile: thisdata.userMobile,//使用人手机号 durationDay: thisdata.durationDay,//期限 }); }; }; 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=0; this.state.pagination.total=0; }; this.setState({ dataSource: theArr, pagination: this.state.pagination }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, getInitialState() { return { searchMore: true, validityPeriodDate: [], releaseDate: [], selectedRowKeys: [], selectedRows: [], loading: 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: 'name', key: 'name', }, { title: '面额', dataIndex: 'money', key: 'money', }, { title: '领用时间', dataIndex: 'starTime', key: 'starTime' }, { title: '截止时间', dataIndex: 'endTime', key: 'endTime' }, { title: '来源', dataIndex: 'source', key: 'source', render: text => { return getCouponCome(text); } }, { title: '状态', dataIndex: 'status', key: 'status', render: text => { return getCouponAuthStates(text); } }, { title: '所属用户', dataIndex: 'userMobile', key: 'userMobile' }, { title: '有效期限', dataIndex: 'durationDay', key: 'durationDay' } ], dataSource: [], searchTime: [,] }; }, //发布 submission(record){ this.setState({ loading:true }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/message/sendMessage", data: { messageId:record.id, } }).done(function (data) { if (!data.error.length) { message.success('推送成功.'); this.setState({ loading: false, }); this.loadData(this.state.page) } else { message.warning(data.error[0].message); }; }.bind(this)); }, componentWillMount() { this.loadData(); }, tableRowClick(record, index) { this.state.RowData = record; this.setState({ showDesc: true }); }, del(recard) { this.setState({ loading:true }) $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/message/updMessageById", data: { id: recard.id, title: recard.title, subject:0, //消息类别 0-系统消息 isDraft:1, //是否草稿 0-否 1-是 deleteSign:1, //删除标识 0-否 ,1-是 isSend:0, //是否发送0-否 1-是 body:recard.body } }).done(function (data) { if (!data.error.length) { message.success('删除成功!'); this.setState({ loading: false }); if(this.state.pagination.total%10==1){ this.loadData((this.state.page)-1); }else{ this.loadData(this.state.page); } } else { message.warning(data.error[0].message); }; }.bind(this)); }, addClick() { this.state.RowData = {}; this.setState({ showDesc: true }); }, closeDesc(e, s) { this.state.showDesc = e; if (s) { this.loadData(this.state.page); }; }, search() { this.loadData(); }, reset() { this.state.name = undefined; this.state.userMobile = undefined; this.state.status = undefined; this.state.source = undefined; this.loadData(); }, searchSwitch() { this.setState({ searchMore: !this.state.searchMore }); }, render() { const rowSelection = { selectedRowKeys: this.state.selectedRowKeys, onChange: (selectedRowKeys, selectedRows) => { this.setState({ selectedRows: selectedRows.slice(-1), selectedRowKeys: selectedRowKeys.slice(-1) }); } }; const { RangePicker } = DatePicker; const hasSelect = this.state.selectedRowKeys.length; return (