import React from 'react';
import './index.less';
import Page from '@src/containers/Page';
import { asyncSMessage } from '@src/services/AsyncTools';
import UserLayout from '../../../layouts/User';
import menu from '../index';
import UserTable from '../../../components/UserTable';
import UserAction from '../../../components/UserAction';
import Tabs from '../../../components/Tabs';
import { My } from '../../../stores/my';
import { MessageType } from '../../../../Constant';
import { getMap, formatDate } from '../../../../../src/services/Tools';
const MessageTypeMap = getMap(MessageType, 'value', 'label');
const columns = [{ title: '消息', key: 'content' }, { title: '类型', key: 'type' }, { title: '发送时间', key: 'date' }];
export default class extends Page {
constructor(props) {
props.size = 15;
super(props);
}
initState() {
return {
tab: '',
filterMap: {},
};
}
initData() {
const data = Object.assign(this.state, this.state.search);
if (data.order) {
data.sortMap = { [data.order]: data.direction };
}
data.filterMap = this.state.search;
data.messageTypeSelect = MessageType.map(row => {
row.title = row.label;
row.key = row.value;
return row;
});
data.messageTypeSelect.unshift({
title: '消息类型',
key: '',
});
this.setState(data);
My.message(Object.assign({ read: data.tab === 'unread' ? 0 : null }, this.state.search)).then(result => {
result.list = result.list.map(row => {
row.type = MessageTypeMap[row.type];
row.date = formatDate(row.createTime, 'YYYY-MM-DD\n HH:mm:ss');
return row;
});
result.page = data.page;
this.setState(result);
});
}
onFilter(value) {
this.search(value);
}
onTabChange(tab) {
const data = { tab };
this.refreshQuery(data);
}
onChangePage(page) {
this.search({ page });
}
readAllMessage() {
My.readAllMessage().then(() => {
asyncSMessage('操作成功');
});
}
renderView() {
const { config } = this.props;
return