1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
| /* eslint-disable */
| /**柯礼钦
| * 4/6/2020, 5:17:40 PM
| * doc comment for the file goes here
| */
|
| /** 全部通知 */
| import React, { ReactNode, ReactEventHandler, Component } from 'react';
| import TableView from '../../common/TableView';
| import SearchFormView from '../../common/SearchFormView';
| import moment from 'moment';
| import { Modal } from 'antd';
| import FindAlreadyReadOrNotView from '../../common/FindAlreadyReadOrNotView';
|
| import './index.scss';
|
|
| export default class AnnouncementPage extends Component {
| constructor(props) {
| super(props);
| this.config = {
| };
| this.state = {
| formData: {
| __key: Date.now(),
| type: '',
| title: '',
| page: 1,
| size: 10,
| },
| visible: false//modal的可视化状态
| };
| }
|
| componentWillMount() { }
|
| componentDidMount() { }
|
| link = (id) => {
| console.log(id)
| this.props.history.push({ pathname: "/document/detail/" + id });
| }
|
| emoveTAG = (str) => {
| return str.replace(/<[^>]+>/g, "");
| }
|
| renderColumns = () => {
| return [
| { title: '标题', dataIndex: 'documentTitle' },
| {
| title: '通知内容', dataIndex: 'documentContent', ellipsis: true, width: '40%', render: (cur, item) => {
| return this.emoveTAG(cur)
| }
| },
| { title: '接受情况', dataIndex: 'groupType', render: (cur, item) => <a onClick={() => { this.setState({ visible: true, documentId: item.id }) }}><span>{item.readNumber || 0}/{item.noticeNumber || 0}</span></a> },
| { title: '通知时间', dataIndex: 'createTime', render: (cur, item) => cur !== "" && cur != null ? moment(cur).format("YYYY-MM-DD HH:mm") : "" },
| { title: '操作', render: (text, record) => <a onClick={() => this.link(record.id)}>查看</a> }
| ];
| }
|
| setFormData = data => {
| console.log('form', data);
| this.setState({
| formData: data,
| });
| }
|
| render() {
| const { formData, documentId, visible } = this.state;
|
| let tableParams = {
| url: `api/document/getNotice`,
| formData,
| key: formData.__key,
| columns: this.renderColumns(),
| extraFromData: {
| type: 'DT00002',
| },
| setFormData: this.setFormData
| }
| return (
| <div className="rules-list-main">
| <Modal
| visible={visible}
| onCancel={() => this.setState({ visible: false })}
| footer={null}
| title="接收情况"
| >
| {
| documentId &&
| <FindAlreadyReadOrNotView key={documentId} documentId={documentId} />
| }
|
| </Modal>
| <SearchFormView
| formData={formData}
| setFormData={this.setFormData}
| data={[
| { type: 'input', name: '标题', label: '标题', key: 'documentTitle' },
| {
| type: 'rangePicker',
| label: '通知时间',
| name: JSON.stringify(['开始时间', '结束时间']),
| key: JSON.stringify(['startTime', 'endTime']),
| keylistName: 'rangeTimelist',
| },
| ]} />
| <TableView {...tableParams} />
| </div>
| )
| }
| }
|
|