From 7cd6587d43dfda47b043c775ea9e67ee4c1bbd08 Mon Sep 17 00:00:00 2001
From: Mr Ke <kelq@hugeinfo.com.cn>
Date: Tue, 14 Apr 2020 14:09:55 +0800
Subject: [PATCH] 跳转问题
---
src/components/page/DocumentEditPage/index.jsx | 184 ++++++++++++++++++++++++++++++++++++----------
1 files changed, 144 insertions(+), 40 deletions(-)
diff --git a/src/components/page/DocumentEditPage/index.jsx b/src/components/page/DocumentEditPage/index.jsx
index b75e628..1e4bcc1 100644
--- a/src/components/page/DocumentEditPage/index.jsx
+++ b/src/components/page/DocumentEditPage/index.jsx
@@ -7,11 +7,13 @@
/** Happy Coding */
import React, { ReactNode, ReactEventHandler, Component } from 'react';
// import { Link } from 'react-router-dom';
-import { Card, Row, Col, Select, Button, Input, Upload, Icon, Spin } from 'antd';
+import { Card, Row, Col, Select, Button, Input, Upload, Icon, Spin, message } from 'antd';
import './index.scss';
const Option = Select.Option;
+const { TextArea } = Input;
import fetch from '../../../api/request';
+import { BASE_URL } from '../../../api/httpurl'
const param = [{ value: 'DT00002', name: '通知公告' }, { value: 'DT00001', name: '规章制度' }]
export default class DocumentEditPage extends Component {
@@ -21,33 +23,42 @@
};
this.state = {
loading: false,
+ iconLoading: false,
savedate: {},
fileList: [],
+ disabled: false,
};
}
componentWillMount() { }
componentDidMount() {
- // this.loadData()
+ this.loadData()
}
loadData = () => {
- console.log('111')
+ const { id } = this.props.match.params;
+ console.log(this.props)
+ console.log(id)
let _this = this;
_this.setState({
- loading: true
- })
+ loading: true,
+ disabled: id ? true : false
+ })
fetch({
- url: 'api/document/getNewId',
+ url: 'api/document/findDetail',
params: {
- id: 'new'
+ id: id || 'new'
}
}).then(res => {
console.log(res)
_this.setState({
- savedate: res.content,
+ savedate: {
+ ...res,
+ documentType: res.documentType || 'DT00002'
+ },
loading: false,
+ fileList: res.attachmentList && res.attachmentList.map((a) => ({ ...a, key: a.id, uid: a.id, name: a.fileName + '.' + a.suffix})) || []
});
});
}
@@ -65,6 +76,34 @@
submit = () => {
const { savedate } = this.state;
console.log(savedate)
+ if (savedate.documentType == 'DT00001') {
+ if (!savedate.documentTitle) {
+ return message.warning('规章制度标题不能为空')
+ }
+ } else {
+ if (!savedate.documentTitle) {
+ return message.warning('通知标题不能为空')
+ } else if (!savedate.documentContent) {
+ return message.warning('通知内容不能为空')
+ }
+ }
+ let _this = this;
+ _this.setState({
+ iconLoading: true
+ })
+ fetch({
+ url: 'api/document/saveOrUpdateNotice',
+ method: 'POST',
+ data: savedate
+ }).then(res => {
+ console.log(res)
+ _this.setState({
+ iconLoading: false,
+ });
+ message.success("提交成功!");
+ this.props.history.push("/index/rules")
+ // this.props.history.goBack()
+ });
// Fetch.savePatrolCom(savedate)
// .then(res => {
// if (res.code === 0) {
@@ -77,13 +116,23 @@
}
cancle = () => {
- this.props.history.push("/index/workbench");
+ // this.props.history.push("/index/workbench");
+ const { id } = this.props.match.params;
+ if (id) {
+ this.props.history.goBack()
+ } else {
+ this.props.history.push("/index/workbench");
+ }
+ // console.log(this.props)
}
render() {
- const { savedate, fileList, loading } = this.state;
+ const { savedate, fileList, loading, disabled } = this.state;
const props = {
- action: `api/v1/attachment/materials?associateTypeId=1019&entityId=` + savedate.id,
+ action: BASE_URL + `api/attachment/materials?associateId=${savedate.documentType == 'DT00002' ? 1001 : 1002}&entityId=` + savedate.id,
+ header: {
+ Authorization: window.localStorage.getItem('token')
+ },
onChange: ({ file, fileList }) => {
if (file.status !== 'uploading') {
console.log(file);
@@ -93,6 +142,10 @@
this.setState({ fileList });
},
fileList: fileList,
+ onPreview: (file) => {
+ console.log(file)
+ },
+ showUploadList: { showPreviewIcon: true, showDownloadIcon: true, showRemoveIcon: disabled ? false : true }
// onDownload: (file) => {
// console.log(file)
// Fetch.attachmentDownload(file.uid)
@@ -118,15 +171,16 @@
return (
<div className="document-edit-page-main">
<Spin spinning={loading}>
+
<Card style={{ border: 20, margin: 20, padding: 20 }}>
<Row gutter={16}>
<Col className="gutter-row" >
文档类型:
- </Col>
+ </Col>
</Row>
<Row gutter={16}>
<Col className="gutter-row" style={{ margin: '12px 0' }} >
- <Select style={{ width: "300px" }} onChange={(value) => this.saveInputChange({ target: { name: 'documentType', value } })} value={savedate.documentType || "DT00002"}>
+ <Select disabled={disabled} style={{ width: "300px" }} onChange={(value) => this.saveInputChange({ target: { name: 'documentType', value } })} value={savedate.documentType}>
{
param.map((data, key) => (
<Option key={key} value={data.value}>{data.name}</Option>
@@ -136,38 +190,88 @@
</Col>
</Row>
- <Row gutter={16} style={{ marginTop: '12px' }}>
- <Col className="gutter-row" style={{ marginTop: '12px' }}>
- 规章制度标题:
- </Col>
- </Row>
+ {
+ savedate.documentType == 'DT00002' &&
+ <Row gutter={16} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" style={{ marginTop: '12px' }}>
+ 通知标题:
+ </Col>
+ </Row>
+ }
+ {
+ savedate.documentType == 'DT00001' &&
+ <Row gutter={16} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" style={{ marginTop: '12px' }}>
+ 规章制度标题:
+ </Col>
+ </Row>
+ }
<Row gutter={16}>
<Col className="gutter-row" style={{ margin: '12px 0' }} >
- <Input style={{ width: '300px' }} name='documentItle' onChange={this.saveInputChange} value={savedate.documentItle || ""} />
+ <Input disabled={disabled} style={{ width: '300px' }} name='documentTitle' onChange={this.saveInputChange} value={savedate.documentTitle || ""} />
</Col>
</Row>
- <Row gutter={16} style={{ marginTop: '12px' }}>
- <Col className="gutter-row" style={{ margin: '12px 0' }} >
- 规章制度源文件:
- </Col>
- </Row>
- <Row gutter={16} >
- <Col className="gutter-row" >
- <Upload {...props}>
- <Button>
- <Icon type="upload" />上传文件</Button>
- </Upload>
- </Col>
- </Row>
- <Row gutter={16} style={{ marginTop: '12px' }}>
- <Col className="gutter-row" >
- 支持扩展名:.pdf
- </Col>
- </Row>
- <Row gutter={16} style={{ marginTop: '12px' }}>
- <Col span={2} className="gutter-row" ><Button style={{ marginRight: '15px', width: '100px' }} type="primary" onClick={this.submit}>发布</Button></Col>
- <Col span={2} className="gutter-row" ><Button style={{ marginLeft: '15px', width: '100px' }} onClick={this.cancle}>返回</Button></Col>
+ {
+ savedate.documentType == 'DT00002' &&
+ <Row gutter={16}>
+ <Col className="gutter-row" >
+ 通知内容:
+ </Col>
+ </Row>
+ }
+ {
+ savedate.documentType == 'DT00002' &&
+ <Row gutter={16}>
+ <Col className="gutter-row" style={{ margin: '12px 0' }} >
+ <TextArea disabled={disabled} style={{ width: '500px' }} name='documentContent' onChange={this.saveInputChange} value={savedate.documentContent || ""} />
+ </Col>
+ </Row>
+ }
+ {
+ savedate.documentType == 'DT00001' &&
+ <Row gutter={16} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" style={{ margin: '12px 0' }} >
+ 规章制度源文件:
+ </Col>
+ </Row>
+ }
+ {savedate.documentType == 'DT00001' &&
+ <Row gutter={16} >
+ <Col className="gutter-row" >
+ <Upload {...props} >
+ <Button disabled={disabled} style={{ display: disabled ? 'none' : 'inline-block' }}>
+ <Icon type="upload" />上传文件</Button>
+ </Upload>
+ </Col>
+ </Row>
+ }
+ {
+ savedate.documentType == 'DT00001' &&
+ <Row gutter={16} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" >
+ 通知范围:
+ </Col>
+ </Row>
+ }
+ {
+ savedate.documentType == 'DT00002' &&
+ <Row gutter={16} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" style={{ margin: '12px 0' }} >
+ 通知范围:
+ </Col>
+ </Row>
+ }
+ {savedate.documentType == 'DT00002' &&
+ <Row gutter={16} >
+ <Col className="gutter-row" >
+ 目前仅支持全员通知
+ </Col>
+ </Row>
+ }
+ <Row type="flex" gutter={20} style={{ marginTop: '12px' }}>
+ <Col className="gutter-row" ><Button onClick={this.cancle}>返回</Button></Col>
+ <Col className="gutter-row" ><Button disabled={disabled} type="primary" loading={this.state.iconLoading} onClick={this.submit}>发布</Button></Col>
</Row>
</Card>
</Spin>
--
Gitblit v1.8.0