停车场项目web, 互联网仓库, 开发完成后, 需要将代码回传云桌面.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1144 lines
48 KiB

import React, { useState, useRef, useEffect } from "react";
import { ResultFlowResult, QuickMenu } from "@/components"
import { Select, Button, Table, message, Pagination, Input, Modal, Image, DatePicker, Space, Upload } from 'antd'
import {
pageSizeOptions
} from '@/config/character.config.js'
import "./index.scss";
import { SearchOutlined, DeleteOutlined, PlusOutlined, DownOutlined, UpOutlined } from '@ant-design/icons';
import ajax from '@/services'
import moment from 'moment'
import copy from 'copy-to-clipboard';
const { RangePicker } = DatePicker;
const { TextArea } = Input;
function CallbackSuggestion(props) {
const [ajaxLoading, setAjaxLoading] = useState(false)
const [resultData, setResultData] = useState({
data: [],
total_records: 0,
export_url: '',
process_url: ""
})
const parameter = {
carAppealId: '', //意见ID
mobile: '',//手机号
content: '',//标题
adviseType: 0,//意见类型
operateType: 0,//意见状态
start_time: moment().subtract(30, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
end_time: moment().format('YYYY-MM-DD 23:59:59'),
pn: 1,
page_size: Number(pageSizeOptions[0]), // 每页条数
}
const [formData, setFormData] = useState(parameter)
const [lastFormData, setLastFormData] = useState(formData)
const lastFormDataRef = useRef(formData)
const [imgVisible, setImgVisible] = useState(false)
const [orderVisible, setOrderVisible] = useState(false)
const [evidenceVisible, setEvidenceVisible] = useState(false)
//物品型号
const handleAdviseType = (value) => {
setFormData({ ...formData, adviseType: value })
}
//申诉ID
const handleCarAppealId = (v) => {
setFormData({ ...formData, carAppealId: v.target.value })
}
//手机号
const handleMobile = (v) => {
setFormData({ ...formData, mobile: v.target.value })
}
//车牌号
const handleContent = (v) => {
setFormData({ ...formData, content: v.target.value })
}
const onChange = (value, dateString) => {
setFormData({
...formData,
start_time: dateString[0],
end_time: dateString[1]
})
};
//审核状态
const handleStatus = (value) => {
setFormData({ ...formData, operateType: value })
}
const addChild = (child, res) => {
if (child.children) {
child.children.forEach((item) => {
addChild(item, res);
});
} else {
res.push(child.id);
}
};
//列表
const handleColumns = (tab) => {
let result = [...deployListColumns];
switch (tab) {
case '1':
result.splice(5, 1)
break;
}
return result;
}
const handleDealData = (tab) => {
let result = [...dealListColumns];
switch (tab) {
case '1':
result.splice(5, 1)
break;
}
return result;
}
const [rotate, setRotate] = useState(false)
const dealListColumns = [
{
title: '停车订单ID',
dataIndex: 'parkRecordId',
key: 'parkRecordId',
render: (text, record) => {
return <>
<div>
<span className="iconLined" onClick={handleTrans}>{rotate === false ? <DownOutlined /> : <UpOutlined />} </span>
<a onClick={() => { navigator.clipboard.writeText(`${record.park_id}`).then(() => { message.success("已复制到剪切板") }); }}>{record.park_id}</a>
</div>
</>
}
},
{
title: '车牌号',
dataIndex: 'plateNumber',
key: 'plateNumber',
},
{
title: '停车场名称',
dataIndex: 'parkName',
key: 'parkName',
},
{
title: '入场时间',
dataIndex: 'strEntryTime',
key: 'strEntryTime',
},
{
title: '出场时间',
dataIndex: 'strExitTime',
key: 'strExitTime',
},
]
//列表
const deployListColumns = [
{
title: '意见ID',
dataIndex: 'memberAdviseId',
key: 'memberAdviseId',
},
{
title: '手机号',
dataIndex: 'mobile',
key: 'mobile',
},
{
title: '标题',
dataIndex: 'content',
key: 'content',
},
{
title: '意见状态',
dataIndex: 'adviseStatus',
key: 'adviseStatus',
},
{
title: '意见类型',
dataIndex: 'adviseType',
key: 'adviseType',
},
{
title: '停车订单ID',
dataIndex: 'parkRecordsId',
key: 'parkRecordsId',
},
{
title: '最后信息时间',
dataIndex: 'updatedTime',
key: 'updatedTime',
},
{
title: '操作',
render: (text, record) => {
return <>
<a onClick={() => { CheckImg(record) }}>查看详情</a>
</>
}
}]
//图片
const [getImg, setGetImg] = useState({})
const [getImgList, setGetImgList] = useState([])
const [getId, setGetId] = useState({})
const CheckImg = (record) => {
setGetId(record.id)
let data = {
id: record.id
}
ajax.checkFeedData(data).then(res => {
if (res.status === 20000) {
setImgVisible(true)
setGetImg(res.data)
setGetImgList(res.data.dialogueDetail)
} else {
message.error(res.message)
}
})
}
const imgModal = () => {
setImgVisible(false)
setRepairData({
content: '',
image: []
})
setFileList([])
}
const cancelImg = () => {
setImgVisible(false)
setRepairData({
content: '',
image: []
})
setFileList([])
}
const getParkId = (record) => {
if (copy(record.parkRecordId)) {
message.success("复制成功");
} else message.error("复制失败,请手动复制");
}
// 获取列表数据
const getData = (data = formData) => {
if (moment(data.end_time) - moment(data.start_time) > 180 * 3600 * 24000) {
if (!(data.carAppealId || data.mobile)) {
message.error('查询时间范围大于半年,需填写手机号或意见ID!')
return
}
}
setAjaxLoading(true)
ajax.getFeedbackList(data).then(res => {
setAjaxLoading(false)
if (res.status === 20000) {
let resDataArr = res.data.list.map((item) => {
item.key = item.id
return item
})
setResultData({
...resultData,
data: resDataArr,
total_records: res.data.total_records
})
} else {
setResultData({
data: [],
total_records: 0,
export_url: '',
process_url: ""
})
message.error(res.message)
}
}, err => {
console.log(err)
})
}
//切换分页
const changePn = (pn, length) => {
if (lastFormData.page_size === length) {
setFormData(Object.assign({}, formData, { pn: pn, page_size: length }))
setLastFormData(Object.assign({}, lastFormData, { pn: pn, page_size: length }))
lastFormDataRef.current = Object.assign({}, lastFormData, { pn: pn, page_size: length })
getData(Object.assign({}, formData, { pn: pn, page_size: length }))
}
}
//切换每页条数
const changeLength = (pn, length) => {
setFormData(Object.assign({}, formData, { pn: 1, page_size: length }))
setLastFormData(Object.assign({}, lastFormData, { pn: 1, page_size: length }))
lastFormDataRef.current = Object.assign({}, lastFormData, { pn: 1, page_size: length })
getData(Object.assign({}, formData, { pn: 1, page_size: length }))
}
//检索数据
const getSearchData = (data = formData) => {
// getData(data)
setFormData({ ...formData, pn: 1 })
getData(Object.assign({}, formData, { pn: 1 }))
}
//重置数据
const getResetData = () => {
setFormData({
...parameter
})
getData({ ...parameter, pn: 1 })
}
//详情回复
const onChangeText = (value) => {
setRepairData({ ...repairData, content: value.target.value })
}
const getBase64 = (file) =>
new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = (error) => reject(error);
});
const [previewOpen, setPreviewOpen] = useState(false);
const [previewImage, setPreviewImage] = useState('');
const [previewTitle, setPreviewTitle] = useState('');
const [repairData, setRepairData] = useState({})
const handleCancel = () => setPreviewOpen(false);
const [fileList, setFileList] = useState([])
console.log(fileList);
const imgData = () => {
let imgUrl = []
fileList.map(res => {
imgUrl.push(res.response?.data)
})
setRepairData(
Object.assign({}, repairData, { image: imgUrl })
);
}
//撤回
const handleReject = (res) => {
let data = {
dialogueId: res.dialogueId,
id: getId
}
ajax.getRejectData(data).then(res => {
if (res.status === 20000) {
console.log(res.data);
setGetImgList(res.data.dialogueDetail)
} else {
message.error(res.message)
}
})
}
// 日期转换
const parseDate = (val, format) => {
if (val) {
return moment(val, format ? format : "YYYY-MM-DD HH:mm:ss");
} else {
return null;
}
};
const handleAgain = (res) => {
setRepairData({ content: res.replyContent })
}
const handleRepair = () => {
let data = {
...repairData,
id: getId
}
let dataId = {
id: getId
}
ajax.replyData(data).then(res => {
if (res.status === 20000) {
ajax.checkFeedData(dataId).then(res => {
if (res.status === 20000) {
setGetImg(res.data)
setGetImgList(res.data.dialogueDetail)
setRepairData({
content: '',
image: []
})
setFileList([])
} else {
message.error(res.message)
}
})
} else {
message.error(res.message)
}
})
}
useEffect(() => {
imgData()
}, [fileList])
// 在上传前进行文件类型检查
const beforeUpload = (file) => {
const isValidType = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg';
if (!isValidType) {
message.error(`请上传png,jpeg,jpg类型图片`);
}
return isValidType || Upload.LIST_IGNORE;
};
const handlePreview = async (file) => {
if (!file.url && !file.preview) {
file.preview = await getBase64(file.originFileObj);
}
setPreviewImage(file.url || file.preview);
setPreviewOpen(true);
setPreviewTitle(file.name || file.url.substring(file.url.lastIndexOf('/') + 1));
};
const handleChange = ({ fileList: newFileList }) => setFileList(newFileList);
const uploadButton = (
<div>
<PlusOutlined />
<div
style={{
marginTop: 8,
}}
>
点击上传
</div>
</div>
);
const handleTrans = () => {
if (rotate === false) {
setRotate(true)
}
if (rotate === true) {
setRotate(false)
}
console.log(rotate);
}
//去处理
const orderModal = () => {
setOrderVisible(false)
setSubmitDeploy({ change_content: '', update_value: '', plate_type: '', deal_reason: '' })
setGetAdjustTimeValue(1)
setGetValueList({})
}
const [getDealData, setGetDealData] = useState({
data: []
})
const [getOrderData, setGetOrderData] = useState({})
const handleDeal = () => {
let data = {
id: getImg.parkRecordId
}
ajax.dealData(data).then(res => {
if (res.status === 20000) {
let resDataArr = res.data.map((item) => {
setGetOrderData(item)
item.key = item.id
return item
})
setOrderVisible(true)
setGetDealData({
...getDealData,
data: resDataArr
})
} else {
message.error(res.message)
}
})
}
const [submitDeploy, setSubmitDeploy] = useState({
change_content: '',
update_value: '',
plate_type: '',
deal_reason: '',
adjustTime:1
})
//提交审核
const onChangeReason = (value) => {
setSubmitDeploy({ ...submitDeploy, deal_reason: value.target.value })
}
const [getValueList, setGetValueList] = useState({})
const handleChoose = (value) => {
setGetValueList(value)
// setSubmitDeploy({ ...submitDeploy, change_content: value })
if (value) {
setSubmitDeploy({
...submitDeploy,
update_value: '',
plate_type: '',
change_content: value
})
}
}
const [getAdjustTimeValue, setGetAdjustTimeValue] = useState(1)
const handleAdjust = (value) => {
setGetAdjustTimeValue(value)
submitDeploy.update_value = ''
}
const handleAdjustTime = (v, dateString) => {
setSubmitDeploy({ ...submitDeploy, update_value: dateString })
}
const handlePlateColor = (v) => {
setSubmitDeploy({ ...submitDeploy, plate_type: v })
}
const handlePlateNumber = (v) => {
setSubmitDeploy({ ...submitDeploy, update_value: v.target.value })
}
const handleAdd = (v) => {
setSubmitDeploy({ ...submitDeploy, add: v })
}
const handleAddCount = (v) => {
setSubmitDeploy({ ...submitDeploy, update_value: v.target.value })
}
const handleComeTime = (v) => {
setSubmitDeploy({ ...submitDeploy, update_value: v.target.value })
}
const cancelBtn = () => {
setOrderVisible(false)
setSubmitDeploy({ change_content: '', update_value: '', plate_type: '', deal_reason: '' })
setGetAdjustTimeValue(1)
setGetValueList({})
}
const submitBtn = () => {
let data = {
...submitDeploy,
id: [getImg.parkRecordId],
examine_reason_id: submitDeploy.change_content,
examine_reason: submitDeploy.deal_reason
}
if (submitDeploy.deal_reason === '') {
message.error('请输入处理理由')
} else if (submitDeploy.change_content === '') {
message.error('请选择对应的更改项')
}else if (submitDeploy.update_value === '') {
message.error('请输入对应的更改项')
}else {
ajax.submitData(data).then(res => {
if (res.status === 20000) {
setOrderVisible(false)
setImgVisible(false)
setSubmitDeploy({ change_content: '', update_value: '', plate_type: '', deal_reason: '' })
setGetAdjustTimeValue(1)
setGetValueList({})
} else {
message.error(res.message)
}
})
}
}
const exportData = () => {
let data = {
...formData
}
ajax.exportDataList(data).then(res => {
window.open(res.data.export_url)
})
}
const checkPic = () => {
setEvidenceVisible(true)
}
const evidenceModal = () => {
setEvidenceVisible(false)
}
const closePic = () => {
setEvidenceVisible(false)
}
useEffect(() => {
getData()
}, [])
return <>
<div className="paid-CallbackSuggestion">
<div className="paid-search">
<label className="search">查询条件</label>
<div className="yisa-search">
<label>意见ID</label>
<Input
placeholder="请输入准确信息"
value={formData.carAppealId}
style={{ width: 270, marginLeft: 14 }}
onChange={handleCarAppealId}
/>
</div>
<div className="yisa-search">
<label>手机号</label>
<Input
placeholder="请输入准确信息"
value={formData.mobile}
style={{ width: 270, marginLeft: 14 }}
onChange={handleMobile}
/>
</div>
<div className="yisa-search">
<label>标题</label>
<Input
placeholder="请输入准确信息"
value={formData.content}
style={{ width: 270, marginLeft: 28 }}
onChange={handleContent}
/>
</div>
<div className="yisa-search">
<label>意见状态</label>
<Select
style={{ width: 270 }}
placeholder="请选择"
value={formData.operateType}
options={[
{
value: 0,
label: '全部'
},
{
value: 1,
label: '待回复'
}, {
value: 2,
label: '已回复'
}
]}
onChange={handleStatus}
/>
</div>
<div className="yisa-search">
<label>意见类型</label>
<Select
style={{ width: 270 }}
placeholder="请选择"
value={formData.adviseType}
options={sysConfig.feedbackType}
onChange={handleAdviseType}
/>
</div>
<div className="yisa-time">
<label>最后信息时间</label>
<Space direction="vertical" size={12}>
<RangePicker
value={[moment(formData.start_time), moment(formData.end_time)]}
showTime={{
format: 'HH:mm:ss',
}}
allowClear={false}
style={{ width: 344 }}
format="YYYY-MM-DD HH:mm:ss"
onChange={onChange}
/>
</Space>
<QuickMenu
dropdownData={[
{ text: '昨日', value: 1 },
{ text: '今日', value: 0 },
{ text: '近三日', value: 2 },
{ text: '近一周', value: 6 },
{ text: '近一月', value: 29 },
{ text: '近半年', value: 180 },
{ text: '近一年', value: 365 },
{ text: '近两年', value: 730 },
]}
onChange={(v) => {
setFormData({ ...formData, start_time: v.startDateTime, end_time: v.endDateTime })
}} />
</div>
<div className="timePicker ">
<div className="btnBox">
<Button className="yisa-btn colorReset reset" onClick={() => { getResetData() }}>
重置
</Button>
<Button type="primary" className="yisa-btn colorBtn submit" onClick={() => { getSearchData() }}>
查询
</Button>
</div>
</div>
</div>
<div className="paid-result">
<div className="result">
<div className="result-info-row">
<span className="font">共检索到<em>{resultData.total_records}</em></span>
<Button type="primary" className="yisa-btn colorBtn" onClick={() => { exportData() }}>
导出
</Button>
</div>
<ResultFlowResult ajaxLoad={ajaxLoading} resultData={resultData.data ? resultData.data : []}>
<Table
bordered
// className='yisa-table'
dataSource={resultData.data}
columns={
handleColumns()
}
pagination={false}
loading={ajaxLoading}
/>
<Pagination
className="pagination-common"
showSizeChanger
showQuickJumper
showTotal={() => `${resultData.total_records}`}
total={resultData.total_records}
current={formData.pn}
pageSize={formData.page_size}
pageSizeOptions={pageSizeOptions}
onChange={changePn}
onShowSizeChange={changeLength}
/>
</ResultFlowResult>
</div>
</div>
</div>
<Modal
visible={imgVisible}
onCancel={imgModal}
footer={null}
className="checkMsg"
title='查看详情'
>
<div className="car-error">
<div className="car-msg">
<div className="plate">
意见ID<span className="font">{getImg.memberAdviseId}</span>
</div>
<div className="plate">
停车订单ID<span className="font">{getImg.parkRecordId}</span>
</div>
<div className="plate">
出场时间<span className="font">{getImg.strExitTime}</span>
</div>
</div>
<div className="car-msg">
<div className="plate">
手机号<span className="font">{getImg.memberName}</span>
</div>
<div className="plate">
车牌号<span className="font">{getImg.plateNumber}</span>
</div>
</div>
<div className="car-msg">
<div className="plate">
类型<span className="font">{getImg.adviseType}</span>
</div>
<div className="plate">
停车场名称<span className="font">{getImg.parkName}</span>
</div>
</div>
<div className="car-msg">
<div className="plate">
状态<span className="font">{getImg.adviseStatus}</span>
</div>
<div className="plate">
入场时间<span className="font">{getImg.strEntryTime}</span>
</div>
</div>
</div>
<div className="deal"><button onClick={handleDeal}>去处理</button></div>
<div className="id-msg">
<div className="feedback">
<div className="title"><span>意见反馈</span></div>
<div className="message">
{
getImgList.map((res, index) => {
console.log(res);
return (
<div className="content">
{res.type == '1' ?
<div className="feedbackMsg">
<div className="margin-msg">
<div className="time">{res.adviseTime}</div>
<div className="concent">意见内容<span>{res.content}</span></div>
<div className="picFlex">
<div className="pic">
{res.answerImgMap.length ?
res.answerImgMap.map(res => {
return (
<Image src={res} />
)
}) : ''
}
</div>
</div>
</div>
</div>
:
<div className="reject">
{
res.status == 0 ? <div className="content">
<div className="reply">
<div className="margin-msg">
<div className="time">{res.replyTime}</div>
<div className="concent">{res.sysUserName}回复<span>{res.replyContent}</span>
</div>
<div className="picFlex">
{res.answerImgMap.length ?
res.answerImgMap.map(res => {
return (
<div className="pic"><Image src={res} /></div>
)
})
: ''
}
</div>
</div>
</div>
<div className="rejectContent" onClick={() => { handleReject(res) }}>撤回</div>
</div>
:
<div className="reapir">你撤回了一条消息
<span className="again" onClick={() => { handleAgain(res) }}>重新编辑</span>
</div>
}
</div>
}
</div>
)
})
}
<TextArea showCount maxLength={200} value={repairData.content} className="text" onChange={onChangeText} />
<div className="uploadBtn">
<div className="upload">
<Upload
action="/PMS/api/com/common/file_upload"
listType="picture-card"
fileList={fileList}
// accept=".doc,.docx,.xml,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document"
onPreview={handlePreview}
beforeUpload={beforeUpload}
onChange={handleChange}
>
{fileList.length >= 8 ? null : uploadButton}
</Upload>
<Modal open={previewOpen} title={previewTitle} footer={null} onCancel={handleCancel}>
<img
alt="example"
style={{
width: '100%',
}}
src={previewImage}
/>
</Modal>
</div>
<div className="repairBtn">
<button onClick={handleRepair}>回复</button>
</div>
</div>
</div>
</div>
</div>
<div className="btn"><button className="passBtn" onClick={cancelImg}>返回</button></div>
</Modal>
<Modal
visible={orderVisible}
onCancel={orderModal}
footer={null}
className="checkOrder"
title='异常订单处理记录审核'
>
<div className="error-order">
<div className="carTitle">
<span className="font">停车订单列表</span>
</div>
<Table
bordered
// className='yisa-table'
dataSource={getDealData.data}
columns={
handleDealData()
}
pagination={false}
loading={ajaxLoading}
/>
{
rotate === false ? <div className="order-detail">
<div className="park-detail">
<div className="title">车场详情</div>
<div className="park-area">
<div className="car-msg">
<div className="plate">
停车车名称<span className="font">{getOrderData.parkName}</span>
</div>
<div className="plate">
商户名称<span className="font">{getOrderData.operationName}</span>
</div>
<div className="plate">
车场类型:<span className="font">{getOrderData.parkTypeName}</span>
</div>
</div>
<div className="car-msg">
<div className="plate">
区域<span className="font">{getOrderData.areaName}</span>
</div>
<div className="plate">
泊位号<span className="font">{getOrderData.berthCode}</span>
</div>
</div>
</div>
</div>
<div className="park-detail">
<div className="title">车场详情</div>
<div className="park-area">
<div className="car-msg">
<div className="plate">
车牌号<span className="font">{getOrderData.plateNumber}</span>
</div>
<div className="plate">
入场时间<span className="font">{getOrderData.strEntryTime}</span>
</div>
<div className="plate">
入场记录来源:<span className="font">{getOrderData.entryDataSourceName}</span>
</div>
<div className="plate">
出入场图像:<span className="font"><a onClick={checkPic}>查看</a></span>
</div>
</div>
<div className="car-msg">
<div className="plate">
停车时长<span className="font">{getOrderData.parkTime}</span>
</div>
<div className="plate">
出场时间<span className="font">{getOrderData.strExitTime}</span>
</div>
<div className="plate">
出场记录来源<span className="font">{getOrderData.exitDataSourceName}</span>
</div>
</div>
</div>
</div>
<div className="park-detail">
<div className="title">车辆详情</div>
<div className="park-area">
<div className="car-msg">
<div className="plate">
应收金额<span className="font">{getOrderData.shouldPayMoney}</span>
</div>
<div className="plate">
优惠券<span className="font">{getOrderData.coupon}</span>
</div>
</div>
<div className="car-msg">
<div className="plate">
优惠总计<span className="font">{getOrderData.totalCoupon}</span>
</div>
<div className="plate">
实付总计<span className="font">{getOrderData.totalPreMoney}</span>
</div>
<div className="plate">
欠费总计<span className="font">{getOrderData.sumActualPay}</span>
</div>
</div>
</div>
</div>
</div> : ''
}
<div className="carTitle">
<span className="font">异常停车处理信息</span>
</div>
<div className="deal-reason">
<div className="logpTip">
<div className="redLogo">*</div>
<div className="title">处理理由</div>
</div>
<TextArea showCount maxLength={30} value={submitDeploy.deal_reason} className="text" onChange={onChangeReason} />
</div>
<div className="deal-style">
<div className="title">处理方式</div>
<div className="yisa-search">
<div className="redLogo">*</div>
<label style={{width:56}}> 更改项</label>
<Select
style={{ width: 200 }}
placeholder="请选择"
placement='topRight'
value={submitDeploy.change_content}
options={[
{
value: 1,
label: '调整出场时间'
},
{
value: 2,
label: '变更车牌号'
},
{
value: 3,
label: '变更订单金额'
},
{
value: 4,
label: '免费该订单'
},
// {
// value: 5,
// label: '作废该订单'
// }
]}
onChange={handleChoose}
/>
{getValueList === 1 ?
<>
<label style={{width:76,marginLeft: 30 }}>调整基于</label>
<Select
style={{ width: 200 }}
placeholder="请选择"
placement='topRight'
value={submitDeploy.adjustTime}
options={[
{
value: 1,
label: '具体时间日期'
},
{
value: 2,
label: '记录入场时间'
}
]}
onChange={handleAdjust}
/>
<div className="redLogo" style={{ marginLeft: 30 }}>*</div>
<label style={{width:60}}>调整为</label>
{
getAdjustTimeValue === 1 ?
<DatePicker
format="YYYY-MM-DD HH:mm:ss"
placement='topRight'
value={parseDate(submitDeploy?.update_value, 'YYYY-MM-DD HH:mm:ss')}
style={{ width: 300 }}
showTime
onChange={handleAdjustTime}
/> : ''
}
{
getAdjustTimeValue === 2 ?
<div className="comeTime" style={{ display: "contents" }}>
<label>入场时间+</label>
<Input
placeholder="请输入数字"
value={submitDeploy.update_value}
style={{ width: 150 }}
onChange={handleComeTime}
/>
<label></label>
</div> : ''
}
</> : ''
}
{
getValueList === 2 ?
<>
<div className="redLogo" style={{ marginLeft: 30 }}>*</div>
<label >车牌号:</label>
<Select
style={{ width: 100 }}
placeholder="请选择"
placement='topRight'
value={submitDeploy.plate_type}
options={sysConfig.plateColor}
onChange={handlePlateColor}
/>
<Input
placeholder="请输入内容"
value={submitDeploy.update_value}
style={{ width: 150 }}
onChange={handlePlateNumber}
/>
</> : ''
}
{
getValueList === 3 ? <>
<div className="redLogo" style={{ marginLeft: 30 }}>*</div>
<label >/:</label>
<Select
style={{ width: 100 }}
placeholder="请选择"
value={1}
disabled={true}
options={[
{
value: 1,
label: '减'
},
{
value: 2,
label: '增'
}
]}
onChange={handleAdd}
/>
<div className="redLogo" style={{ marginLeft: 30 }}>*</div>
<label>金额-</label>
<Input
placeholder="请输入内容"
value={submitDeploy.update_value}
style={{ width: 150 }}
onChange={handleAddCount}
/>
</> : ''
}
</div>
</div>
<div className="deal-btn">
<button className="submit" onClick={submitBtn}>提交审核</button>
<button className="cancel" onClick={cancelBtn}>关闭窗口</button>
</div>
</div>
</Modal>
<Modal
visible={evidenceVisible}
onCancel={evidenceModal}
footer={null}
className="checkevidence"
title='证据图像查看'
>
<div className="admissionPic">
<div className="pic">
<div className="carTitle">
<span className="font">入场图像</span>
</div>
<div className="car-plate">
<div className="carPic">
<div className="name">车辆照片</div>
<div className="pic">
{
getOrderData.admissionPic === '' ? <div className="nodate">暂无数据</div> : <Image src={getOrderData.admissionPic} />
}
</div>
</div>
<div className="plate">
<div className="name">车牌照片</div>
<div className="pic">
{
getOrderData.admissionPicPlate === '' ? <div className="nodate">暂无数据</div> : <Image src={getOrderData.admissionPicPlate} />
}
</div>
</div>
</div>
</div>
<div className="exitPic">
<div className="carTitle">
<span className="font">出场图像</span>
</div>
<div className="car-plate">
<div className="carPic">
<div className="name">车辆照片</div>
<div className="pic">
{
getOrderData.exitionPic === '' ? <div className="nodate">暂无数据</div> : <Image src={getOrderData.exitionPic} />
}
</div>
</div>
<div className="plate">
<div className="name">车牌照片</div>
<div className="pic">
{
getOrderData.exitionPicPlate === '' ? <div className="nodate">暂无数据</div> : <Image src={getOrderData.exitionPicPlate} />
}
</div>
</div>
</div>
</div>
<div className="btn">
<button onClick={closePic}>关闭窗口</button>
</div>
</div>
</Modal>
</>
}
export default CallbackSuggestion;