app-base-web
Version:
web development common base package.
132 lines (129 loc) • 4.29 kB
JavaScript
import React, { Suspense, lazy } from 'react';
import { Table, Form, Row, Col, Button, Input, message } from 'antd';
import File from '../../../library/file';
import Dic from '../../../library/dic';
import api from '../../../library/util-axios';
// 发布管理-图片发布
const title = "图片发布";
const url = "IssueImage/";
export default class FormEdit extends React.Component {
constructor(props) {
super(props);
this.state = {
...props.values
};
this.formRef = React.createRef();
}
onSave = (values) => {
let me = this;
values.id = this.state.id;
api.post(url + "save", values).then(function (rs) {
if (rs.success) {
message.info(rs.msg);
me.props.onSave(values);
} else { message.error(rs.msg); }
});
}
render() {
return (
<Form ref={this.formRef} className="form-edit" layout="vertical" onFinish={this.onSave}>
<div className="form-title">
<i> {title} - {this.state.id ? "编辑" : "录入"}</i>
{this.state.id ? <span><Button className="btn-return" onClick={this.props.onEditReturn}><i className="iconfont icon-return"></i>返回</Button></span> : ""}
</div>
<div className="form-content" style={{ height: this.props.height }}>
<Row>
<Col xs={12}>
<Form.Item
labelCol={{ span: 6 }}
wrapperCol={{ span: 18 }}
name="name"
label="图片名称"
initialValue={this.state.name}
rules={[{
required: true,
message: '请输入图片名称'
}]} >
<Input />
</Form.Item>
</Col>
<Col xs={12}>
<Form.Item
labelCol={{ span: 6 }}
wrapperCol={{ span: 18 }}
name="fileType"
label="图片类型"
initialValue={this.state.fileType}>
<Input />
</Form.Item>
</Col>
</Row>
<Row>
<Col xs={12}>
<Form.Item
labelCol={{ span: 6 }}
wrapperCol={{ span: 18 }}
name="type"
label="业务类型"
initialValue={String(this.state.type || "")}
rules={[{
required: true,
message: '请输入业务类型'
}]} >
<Dic params={{ app: "app", type: "imageType" }} />
</Form.Item>
</Col>
<Col xs={12}>
<Form.Item
labelCol={{ span: 6 }}
wrapperCol={{ span: 18 }}
name="subType"
label="业务子类型"
initialValue={this.state.subType}>
<Input />
</Form.Item>
</Col>
</Row>
<Row>
<Col xs={24}>
<Form.Item
name="url"
label="图片链接"
initialValue={this.state.url}
valuePropName="fileList"
>
<File multiple={true} onChange={(fileList) => { let state = this.state; state.url = fileList; this.setState(state); }} />
</Form.Item>
</Col>
</Row>
<Row>
<Col xs={24}>
<Form.Item
name="memo"
label="图片描述"
initialValue={this.state.memo}
>
<Input.TextArea />
</Form.Item>
</Col>
</Row>
<Row>
<Col xs={24}>
<Form.Item
name="ord"
label="排序号"
initialValue={this.state.ord}
>
<Input />
</Form.Item>
</Col>
</Row>
</div>
<div className="form-toolbar">
<Button className="btn-cancel" onClick={this.props.onCancel}><i className="iconfont icon-cancel"></i>取消</Button>
<Button className="btn-submit" htmlType="submit"><i className="iconfont icon-submit"></i>提交</Button>
</div>
</Form >
);
}
}