import React, { useState, useEffect, useCallback } from 'react'; import PropTypes from 'prop-types'; import getCustomHeader from '@/components/token-header'; import PageHead from '@/components/page-head'; import { ajax } from '@/utils'; import { Table, Dialog, Form, Input, Radio, Message, DatePicker, } from '@alifd/next'; import styles from './index.module.scss'; const { Column } = Table; const FormItem = Form.Item; const RadioGroup = Radio.Group; const SEARCHLABEL = {nick:'用户昵称',phone:'联系电话',email:'电子邮件',name:'用户姓名',idCardNumber:'身份证号',level:'用户等级',point:'用户成长值',gender:'性别'}; const GENDERVALUE = ['男','女']; const STATUSVALUE = ['','正常','冻结']; const STATUSMODIFY = ['','冻结','恢复']; const ListMembers = () => { const [contentData, setContent] = useState([]); const [editData, setEditData] = useState({id: '',name: '', birthday:'', gender: ''}); const refreshComment = async() => { const commentData = await ajax({ api: 'getReply', method: 'get', data: { onlyOnline: false, exceptFunction: false } }); if (commentData.success) { setContent(commentData.result); } } const tableRender = (value: any, index: number, record: Object) => { const status = STATUSMODIFY[record.status]; return (
{ setEditData({id: record.id ,name: record.name, birthday: record.birthday, gender: record.gender}); }}> 编辑 { const membersData = await ajax({ api: 'memberModifyState', method: 'post', data: JSON.stringify({userId: record.id, authAccountStatus: record.status === 1 ? 2 : 1}), type: 'json', contentType: 'application/json', headers: getCustomHeader() }); if (membersData.success) { setContent([]); } }}> {status}
); }; const statusRender = (value: any, index: number, record: Object) => { const status = STATUSVALUE[record.status]; return ( {status} ) } const genderRender = (value: any, index: number, record: Object) => { let gender = GENDERVALUE[record.gender] || '保密'; return ( {gender} ) } const EditDialog = () => { console.log(editData); return ( {setEditData({id:'', name: '', birthday: '', gender: ''});}} >
{ Object.keys(editData).map(item => { if (item==='id')return; let content; switch(item) { case 'gender': content = ( 男 女 ) break; case 'birthday': content = (); break; default: content = (); break; } return ( {content} ) }) } { if (!errorData) { const result = await ajax({ api: 'memberModify', method: 'post', type: 'json', data: JSON.stringify({ userId: editData.id, ...successData, modifyName: true, modifyBirthday: true, modifyGender: true, }), contentType: 'application/json', headers: getCustomHeader() }); if (result.success) { setEditData({id:'', name: '', birthday: '', gender: ''}); setContent([]); } } else { console.log(errorData); } }}> 保存
) } const MoreFilter = ({}) => { return (
{ Object.keys(SEARCHLABEL).map(item => { let content; switch(item) { case 'gender': content = ( 男 女 ) break; default: content = (); break; } return ( {content} ) }) } { if (!successData.nick && !successData.phone && !successData.email && !successData.name) { Message.error('昵称、电话、邮箱、姓名不可全为空!'); return; } if (!errorData) { const membersData = await ajax({ api: 'memberList', method: 'post', data: JSON.stringify({ ...successData, page: 1, size: 300}), type: 'json', contentType: 'application/json', headers: getCustomHeader() }); if (membersData.success) { setContent(membersData.result.content); } } else { console.log(errorData); } }}> 查询
) } return (
); }; export default ListMembers;