| | |
| | | /** 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 { |
| | |
| | | }; |
| | | this.state = { |
| | | loading: false, |
| | | iconLoading: false, |
| | | savedate: {}, |
| | | fileList: [], |
| | | disabled: false, |
| | | }; |
| | | } |
| | | |
| | | componentWillMount() { } |
| | | |
| | | componentDidMount() { |
| | | // this.loadData() |
| | | this.loadData() |
| | | } |
| | | |
| | | loadData = () => { |
| | | console.log('111') |
| | | const { id } = 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, |
| | | }); |
| | | }); |
| | |
| | | submit = () => { |
| | | const { savedate } = this.state; |
| | | console.log(savedate) |
| | | if (savedate.documentType == 'DT00001') { |
| | | if (!savedate.documentItle) { |
| | | return message.warning('规章制度标题不能为空') |
| | | } |
| | | } else { |
| | | if (!savedate.documentItle) { |
| | | 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, |
| | | }); |
| | | }); |
| | | // Fetch.savePatrolCom(savedate) |
| | | // .then(res => { |
| | | // if (res.code === 0) { |
| | |
| | | } |
| | | |
| | | 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, |
| | | onChange: ({ file, fileList }) => { |
| | | if (file.status !== 'uploading') { |
| | | console.log(file); |
| | |
| | | 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" > |
| | |
| | | </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> |
| | |
| | | </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='documentItle' onChange={this.saveInputChange} value={savedate.documentItle || ""} /> |
| | | </Col> |
| | | </Row> |
| | | |
| | | <Row gutter={16} style={{ marginTop: '12px' }}> |
| | | <Col className="gutter-row" style={{ margin: '12px 0' }} > |
| | | 规章制度源文件: |
| | | { |
| | | savedate.documentType == 'DT00002' && |
| | | <Row gutter={16}> |
| | | <Col className="gutter-row" > |
| | | 通知内容: |
| | | </Col> |
| | | </Row> |
| | | <Row gutter={16} > |
| | | <Col className="gutter-row" > |
| | | <Upload {...props}> |
| | | <Button> |
| | | <Icon type="upload" />上传文件</Button> |
| | | </Upload> |
| | | </Col> |
| | | </Row> |
| | | </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 disabled={disabled} {...props}> |
| | | <Button> |
| | | <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 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 disabled={disabled} style={{ marginRight: '15px', width: '100px' }} type="primary" loading={this.state.iconLoading} onClick={this.submit}>发布</Button></Col> |
| | | <Col span={2} className="gutter-row" ><Button style={{ marginLeft: '15px', width: '100px' }} onClick={this.cancle}>返回</Button></Col> |
| | | </Row> |
| | | </Card> |