/**
|
* 柯礼钦<kelq@hugeinfo.com.cn>
|
* 2018年9月4日 16:00
|
*
|
*/
|
|
import React from "react";
|
import { Input, Button, message, Breadcrumb } from "antd";
|
import moment from "moment";
|
import BusDetailView from "../view/BusDetailView";
|
import LineView from "../view/LineView";
|
import HeadView from "../view/HeadView";
|
|
import Fetch from "../fetch";
|
const { TextArea } = Input;
|
const replyAdmin = {
|
display: 'block',
|
float: 'left',
|
color: 'green',
|
}
|
|
const replyUser = {
|
display: 'block',
|
float: 'left',
|
color: '#1790ff'
|
}
|
|
const timeUser = {
|
display: 'block',
|
color: '#1790ff'
|
}
|
|
const timeAdmin = {
|
display: 'block',
|
color: 'green'
|
}
|
function sexOfName(sexOfName) {
|
switch (sexOfName) {
|
case 0:
|
return "未知"
|
case 1:
|
return '男'
|
case 2:
|
return '女'
|
}
|
}
|
export default class LawSubscribeDetail extends React.Component {
|
constructor(props) {
|
super(props);
|
this.state = {
|
savedate: {},
|
sweeping: {},
|
userInfo: {},
|
data: {},
|
ReplyLogs: [],
|
};
|
}
|
|
componentDidMount() {
|
const { id } = this.props.match.params;
|
Fetch.appointmentDetail(id).then(data => {
|
console.log(data.lawAppointment)
|
this.setState(
|
{
|
data: data.lawAppointment,
|
ReplyLogs: data.ReplyLogs || [],
|
userInfo: data.userInfo,
|
sweeping: data.crimeCrackdown,
|
savedate:
|
{
|
businessId: id,
|
businessType: 27,
|
approvalStatus: 2
|
}
|
}
|
);
|
})
|
}
|
|
goBack = () => {
|
this.props.history.goBack();
|
};
|
|
|
onInputChange = ({ target: { value, name } }) => {
|
this.setState(({ savedate }) => ({
|
savedate: {
|
...savedate,
|
[name]: value
|
}
|
}))
|
}
|
|
submitAudit = () => {
|
|
const { savedate } = this.state;
|
console.log(savedate);
|
if (!savedate.opinion) {
|
message.warning("回复内容不能为空!");
|
return;
|
}
|
|
Fetch.snapshotReply(savedate).then(res => {
|
if (res.code === 0) {
|
message.success("回复成功", 2, () => {
|
this.props.history.goBack();
|
});
|
} else {
|
message.error("回复失败,请联系管理员", 2);
|
}
|
});
|
};
|
|
render() {
|
|
// 居中样式
|
const center = {
|
display: "flex",
|
alignItems: "center",
|
justifyContent: "center"
|
};
|
const { sweeping, data, userInfo, ReplyLogs } = this.state;
|
const { flag } = this.props.match.params;
|
return (
|
<div className="app-page">
|
<HeadView history={this.props.history} />
|
<Breadcrumb style={{ padding: '20px' }}>
|
<Breadcrumb.Item><a href="index.html#/lawSubscribe">普法预约</a></Breadcrumb.Item>
|
<Breadcrumb.Item>普法预约详情</Breadcrumb.Item>
|
</Breadcrumb>
|
<BusDetailView>
|
<div>
|
<LineView title="申请信息" style="14vh" lineHeight="34px">
|
|
<table>
|
<tbody>
|
<tr>
|
<td className="table-vaule1">联系人</td>
|
<td className="table-vaule2">{data.contactName}</td>
|
<td className="table-vaule3">联系电话</td>
|
<td className="table-vaule4">{data.contactPhone}</td>
|
</tr>
|
<tr>
|
<td className="table-vaule1">学校名称</td>
|
<td className="table-vaule2">{data.schoolName}</td>
|
<td className="table-vaule3">学校地址</td>
|
<td className="table-vaule4">{data.schoolAddress}</td>
|
</tr>
|
</tbody>
|
</table>
|
|
</LineView>
|
<LineView title="详细说明" style="13vh" lineHeight="20px">
|
<span>{data.content}</span>
|
</LineView>
|
</div>
|
{
|
ReplyLogs ?
|
<LineView title="回复记录" style="15vh">
|
{ReplyLogs.map((contacts, key) => (
|
<div style={{ width: '100%', height: '70px' }} key={key}>
|
{contacts.userType === 1 ?
|
<React.Fragment>
|
<div style={timeUser} >{moment(contacts.createTime).format('YYYY/MM/DD HH:mm:ss')}</div>
|
<div style={replyUser}>{contacts.content}</div>
|
</React.Fragment>
|
:
|
<React.Fragment>
|
<div style={timeAdmin} > {contacts.replyerName}:{moment(contacts.createTime).format('YYYY/MM/DD HH:mm:ss')}</div>
|
<div style={replyAdmin}>{contacts.content}</div>
|
</React.Fragment>
|
}
|
|
</div>
|
))}
|
</LineView>
|
: null}
|
{flag == "do" ?
|
(data.status ? (
|
<LineView title="回复" lineHeight="50px">
|
<table>
|
<tbody>
|
<tr>
|
<td>回复内容</td>
|
<td>
|
<TextArea
|
placeholder="请输入回复内容"
|
autosize={{ minRows: 2, maxRows: 6 }}
|
onChange={({ target: { value } }) => this.onInputChange({ target: { name: 'opinion', value } })}
|
/>
|
</td>
|
</tr>
|
</tbody>
|
</table>
|
<div>
|
<Button
|
type="primary"
|
className="app-btn"
|
onClick={this.submitAudit}
|
>
|
提交回复
|
</Button>
|
<Button className="app-btn" onClick={this.goBack}>
|
返回
|
</Button>
|
</div>
|
</LineView>
|
) : <div style={{ textAlign: 'center' }}><Button className="app-btn" onClick={this.goBack}>返回</Button></div>
|
) : <div style={{ textAlign: 'center' }}><Button className="app-btn" onClick={this.goBack}>返回</Button></div>
|
}
|
</BusDetailView>
|
</div>
|
);
|
}
|
}
|