123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- import React from 'react';
- import { Icon, Button, Input, Select, Spin, Table, Switch, message,DatePicker } from 'antd';
- import ajax from 'jquery/src/ajax/xhr.js';
- import $ from 'jquery/src/ajax';
- import './userList.less';
- import UserDesc from './userDesc.jsx';
- import { auditStatusList } from '../../dataDic.js';
- const UserList = React.createClass({
- loadData(pageNo) {
- this.state.data = [];
- this.setState({
- loading: true
- });
- $.ajax({
- method: "post",
- dataType: "json",
- crossDomain: false,
- url: globalConfig.context + "/api/admin/userList",
- data: {
- pageNo: pageNo || 1,
- pageSize: this.state.pagination.pageSize,
- mobile:this.state.searchLoginId, //登录名
- email: this.state.searchEmail,
- createTime: this.state.searchTime,
- number: this.state.searchAftId, //阿凡提号
- aftUsername : this.state.searchAftUsername,
- auditStatus: this.state.searchAuditStatus
- },
- success: function (data) {
- if (data.error.length || !data.data || !data.data.list) {
- message.warning(data.error[0].message);
- return;
- }
- for (let i = 0; i < data.data.list.length; i++) {
- let thisdata = data.data.list[i];
- this.state.data.push({
- key: i,
- id: thisdata.id,
- mobile: thisdata.mobile,
- email: thisdata.email,
- createTime: thisdata.createTime,
- aftUsername:thisdata.aftUsername,
- number: thisdata.number,
- createTimeFormattedDate: thisdata.createTimeFormattedDate
- });
- };
- this.state.pagination.current = data.data.pageNo;
- this.state.pagination.total = data.data.totalCount;
- this.setState({
- dataSource: this.state.data,
- pagination: this.state.pagination
- });
- }.bind(this),
- }).always(function () {
- this.setState({
- loading: false
- });
- }.bind(this));
- },
- getInitialState() {
- return {
- searchMore: true,
- data: [],
- 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: 'number',
- key: 'number',
- }, {
- title: '登录名',
- dataIndex: 'mobile',
- key: 'mobile',
- }, {
- title: '认证状态',
- dataIndex: 'auditStatus',
- key: 'auditStatus',
- render: text => {
- if (text == 5) {
- return "已认证"
- } else {
- return "未认证"
- }
- },
- }, {
- title: '注册时间',
- dataIndex: 'createTimeFormattedDate',
- key: 'createTimeFormattedDate',
- }, {
- title: '认证名称',
- dataIndex: 'aftUsername',
- key: 'aftUsername',
- }, {
- title: '联系方式',
- dataIndex: 'email',
- key: 'email',
- }, {
- title: '业务员',
- dataIndex: 'author',
- key: 'author',
- }
- ],
- dataSource: []
- };
- },
- componentWillMount() {
- this.loadData();
- },
- tableRowClick(record, index) {
- this.state.RowData = record;
- this.setState({
- showDesc: true
- });
- },
- closeDesc(e) {
- this.state.showDesc = e;
- this.loadData();
- },
- search() {
- this.loadData();
- },
- reset() {
- this.state.searchAftId = "";
- this.state.searchLoginId = "";
- this.state.searchAuditStatus = "";
- this.state.searchAftUsername = "";
- this.state.searchEmail = "";
- this.state.searchTime = [];
- this.loadData();
- },
- searchSwitch() {
- this.setState({
- searchMore: !this.state.searchMore
- });
- },
- searchcreateTime(date, dateString) {
- this.state.createTime = dateString;
- },
- render() {
- const { RangePicker } = DatePicker;
- return (
- <div className="user-content" >
- <div className="content-title">
- <span>个人用户管理</span>
- </div>
- <div className="user-search">
- <Input placeholder="阿凡提号" onChange={(e) => { this.state.searchAftId = e.target.value; }} />
- <Input placeholder="登录号" onChange={(e) => { this.state.searchLoginId = e.target.value; }} />
- <Select placeholder="选择认证状态" style={{ width: 200 }}
- onChange={(e) => { this.state.searchAuditStatus = e }}>
- {
- auditStatusList.map(function (item, i) {
- return <Select.Option key={i} value={item.value} >{item.key}</Select.Option>
- })
- }
- </Select>
- <Input placeholder="认证名称" onChange={(e) => { this.state.searchAftUsername = e.target.value; }} />
- <Input placeholder="联系方式" onChange={(e) => { this.state.searchEmail = e.target.value; }} />
- <Button type="primary" onClick={this.search}>搜索</Button>
- <Button onClick={this.reset}>重置</Button>
- <span>更多搜索<Switch defaultChecked={false} onChange={this.searchSwitch} /></span>
- <div className="search-more" style={this.state.searchMore ? { display: 'none' } : {}}>
- <p>
- <span>注册时间:</span><RangePicker onChange={(data,dataString)=>{this.state.searchTime = dataString }} />
- </p>
- </div>
- </div>
- <div className="patent-table">
- <Spin spinning={this.state.loading}>
- <Table columns={this.state.columns}
- dataSource={this.state.dataSource}
- pagination={this.state.pagination}
- onRowClick={this.tableRowClick} />
- </Spin>
- </div>
- <UserDesc data={this.state.RowData} showDesc={this.state.showDesc} closeDesc={this.closeDesc} />
- </div >
- );
- }
- });
- export default UserList;
|