feat: 灾毁
This commit is contained in:
parent
c7d7271da9
commit
a08695997f
@ -9,13 +9,13 @@
|
||||
|
||||
<el-form :model="formData" v-if="formData.report">
|
||||
<BlockItem title="处置情况">
|
||||
<el-form-item label="处理措施">
|
||||
<el-form-item label="处理措施" required>
|
||||
<el-select v-model="formData.report.disposalMeasures" placeholder="请选择" style="width: 100%">
|
||||
<el-option v-for="(option, idx) in options['iceDisposalMeasures']" :key="idx" :label="option.label" :value="option.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="预计恢复时间">
|
||||
<el-form-item label="预计恢复时间" required>
|
||||
<el-date-picker
|
||||
v-model="formData.report.expectRecoverTime"
|
||||
type="datetime"
|
||||
@ -40,19 +40,19 @@
|
||||
|
||||
<BlockItem title="实施情况">
|
||||
<MaterialList v-model="formData.yhzMaterialList" :yhzId="formData.event.serviceStationId" :col-span="24" />
|
||||
<el-form-item label="投入资金">
|
||||
<el-form-item label="投入资金" required>
|
||||
<NumberInput v-model="formData.report.inputFunds" :precision="2" placeholder="请填写" style="width: 300px">
|
||||
<template #append>万元</template>
|
||||
</NumberInput>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="投入人力">
|
||||
<el-form-item label="投入人力" required>
|
||||
<NumberInput v-model="formData.report.inputManpower" :precision="0" placeholder="请填写" style="width: 300px">
|
||||
<template #append>人次</template>
|
||||
</NumberInput>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="投入设备">
|
||||
<el-form-item label="投入设备" required>
|
||||
<NumberInput v-model="formData.report.inputEquipment" :precision="1" placeholder="请填写" style="width: 300px">
|
||||
<template #append>台/班</template>
|
||||
</NumberInput>
|
||||
@ -85,7 +85,6 @@
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleAddSubmit">追加记录</el-button>
|
||||
<el-button type="primary" @click="handleCompleteSubmit">解除事件</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
@ -137,6 +136,18 @@ const validate = () => {
|
||||
ElMessage.warning('请选择预计恢复时间')
|
||||
return false
|
||||
}
|
||||
if (form.report.inputFunds === null || form.report.inputFunds === undefined || form.report.inputFunds === '') {
|
||||
ElMessage.warning('请填写投入资金')
|
||||
return false
|
||||
}
|
||||
if (form.report.inputManpower === null || form.report.inputManpower === undefined || form.report.inputManpower === '') {
|
||||
ElMessage.warning('请填写投入人力')
|
||||
return false
|
||||
}
|
||||
if (form.report.inputEquipment === null || form.report.inputEquipment === undefined || form.report.inputEquipment === '') {
|
||||
ElMessage.warning('请填写投入设备')
|
||||
return false
|
||||
}
|
||||
if (!form.report.siteDescription) {
|
||||
ElMessage.warning('请填写现场情况描述')
|
||||
return false
|
||||
@ -182,15 +193,26 @@ const handleAddSubmit = async () => {
|
||||
}
|
||||
|
||||
try {
|
||||
let apiUrl = '/snow-ops-platform/event/dispose'
|
||||
if (formData.value.report?.disposalMeasures === '正常通行') {
|
||||
apiUrl = '/snow-ops-platform/event/release'
|
||||
}
|
||||
|
||||
const res = await request({
|
||||
url: '/snow-ops-platform/event/dispose',
|
||||
url: apiUrl,
|
||||
method: 'post',
|
||||
data: getFormData()
|
||||
})
|
||||
|
||||
if (res?.code === '00000') {
|
||||
ElMessage.success('提交成功')
|
||||
if (apiUrl === '/snow-ops-platform/event/release') {
|
||||
setTimeout(() => {
|
||||
router.replace({ path: '/iceDisasterDetail', query: { id: formData.value.event.id } })
|
||||
}, 500)
|
||||
} else {
|
||||
emit('refresh')
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(res?.message || '提交失败')
|
||||
}
|
||||
@ -200,24 +222,6 @@ const handleAddSubmit = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
const handleCompleteSubmit = async () => {
|
||||
const res = await request({
|
||||
url: '/snow-ops-platform/event/release',
|
||||
method: 'post',
|
||||
data: {
|
||||
...formData.value
|
||||
}
|
||||
})
|
||||
if (res?.code === '00000') {
|
||||
ElMessage.success('提交成功')
|
||||
setTimeout(()=>{
|
||||
router.replace({ path: '/iceDisasterDetail', query: { id: formData.value.event.id } })
|
||||
}, 500)
|
||||
} else {
|
||||
ElMessage.error(res.message)
|
||||
}
|
||||
}
|
||||
|
||||
defineExpose({
|
||||
validate,
|
||||
initFormData,
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
<el-form :model="formData" >
|
||||
<BlockItem title="处置情况">
|
||||
<!-- 处置措施 -->
|
||||
<el-form-item label="处置措施">
|
||||
<el-form-item label="处置措施" required>
|
||||
<el-select v-model="formData.report.disposalMeasures">
|
||||
<el-option label="半幅封闭" value="半幅封闭" />
|
||||
<el-option label="全副封闭" value="全副封闭" />
|
||||
@ -22,7 +22,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<!-- 预计恢复时间 -->
|
||||
<el-form-item label="预计恢复时间">
|
||||
<el-form-item label="预计恢复时间" required>
|
||||
<el-date-picker
|
||||
v-model="formData.report.expectRecoverTime"
|
||||
type="datetime"
|
||||
@ -134,7 +134,6 @@
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleAddSubmit">追加记录</el-button>
|
||||
<el-button type="primary" @click="handleCompleteSubmit">解除事件</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
@ -243,6 +242,14 @@ const calibrateTime = () => {
|
||||
|
||||
// 表单验证
|
||||
const validate = () => {
|
||||
if (!formData.value.report?.disposalMeasures) {
|
||||
ElMessage.warning('请选择处理措施')
|
||||
return false
|
||||
}
|
||||
if (!formData.value.report?.expectRecoverTime) {
|
||||
ElMessage.warning('请选择预计恢复时间')
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
@ -273,16 +280,26 @@ const handleAddSubmit = async () => {
|
||||
// 可以在这里添加站点信息等其他数据
|
||||
}
|
||||
|
||||
let apiUrl = '/snow-ops-platform/water-damage/dispose'
|
||||
if (formData.value.report?.disposalMeasures === '正常通行') {
|
||||
apiUrl = '/snow-ops-platform/water-damage/release'
|
||||
}
|
||||
|
||||
const res = await request({
|
||||
url: '/snow-ops-platform/water-damage/dispose',
|
||||
url: apiUrl,
|
||||
method: 'post',
|
||||
data: submitData
|
||||
})
|
||||
|
||||
if (res?.code === '00000') {
|
||||
ElMessage.success('提交成功')
|
||||
|
||||
if (apiUrl === '/snow-ops-platform/water-damage/release') {
|
||||
setTimeout(() => {
|
||||
router.replace({ path: '/waterDisasterDetail', query: { id: formData.value.event.id } })
|
||||
}, 500)
|
||||
} else {
|
||||
emit('refresh')
|
||||
}
|
||||
} else {
|
||||
ElMessage.error(res.message)
|
||||
}
|
||||
@ -293,24 +310,6 @@ const handleAddSubmit = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
const handleCompleteSubmit = async () => {
|
||||
const res = await request({
|
||||
url: '/snow-ops-platform/water-damage/release',
|
||||
method: 'post',
|
||||
data: {
|
||||
...formData.value
|
||||
}
|
||||
})
|
||||
if (res?.code === '00000') {
|
||||
ElMessage.success('提交成功')
|
||||
setTimeout(()=>{
|
||||
router.replace({ path: '/waterDisasterDetail', query: { id: formData.value.event.id } })
|
||||
}, 500)
|
||||
} else {
|
||||
ElMessage.error(res.message)
|
||||
}
|
||||
}
|
||||
|
||||
// 暴露方法给父组件
|
||||
defineExpose({
|
||||
validate,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user