-
-
-
-
-
-
-
-
-
-
-
- 事件类型:
- 冰雪事件
-
-
-
-
- 路况类别:
- {{ detailData.roadConditionType || '-' }}
-
-
-
-
- 是否阻断:
- {{ detailData.event?.isBlocked ? '是' : '否' }}
-
-
-
-
-
-
-
- 抢险进度:
- {{ detailData.event?.repairProgress || '-' }}
-
-
-
-
- 处理措施:
- {{ getBaseDisposalMeasures() }}
-
-
-
-
- 水毁处数:
- {{ detailData.event?.damageCount || 0 }}
-
-
-
-
-
-
-
- 阻断里程:
- {{ detailData.event?.blockedMileage ? detailData.event.blockedMileage + '公里' : '-' }}
-
-
-
-
-
-
-
- 地点路线:
- {{ detailData.occurLocation || '-' }}
-
-
-
-
- 起点桩号:
- {{ detailData.event?.startStakeNo || '-' }}
-
-
-
-
- 止点桩号:
- {{ detailData.event?.endStakeNo || '-' }}
-
-
-
-
-
-
-
- 路况位置:
- {{ detailData.event?.blockedPointName || detailData.occurLocation || '-' }}
-
-
-
-
- 阻断点小地名:
- {{ detailData.event?.blockedPointName || '-' }}
-
-
-
-
-
-
-
- 所属区县:
- {{ detailData.event?.district || '-' }}
-
-
-
-
- 发生时间:
- {{ detailData.occurTime || '-' }}
-
-
-
-
-
-
-
- 是否恢复重建:
- {{ detailData.event?.needsRecovery ? '是' : '否' }}
-
-
-
-
- 恢复重建预估费用:
- {{ detailData.event?.estimatedRecoveryCost ? detailData.event.estimatedRecoveryCost + '万元' : '-' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 现场描述:
- {{ report.siteDescription || '-' }}
-
-
- 处置措施:
- {{ report.disposalMeasures || '-' }}
-
-
- 实际恢复时间:
- {{ report.actualRecoverTime || '-' }}
-
-
- 预计恢复时间:
- {{ report.expectRecoverTime || '-' }}
-
-
-
- 填报人:
- {{ report.reporterName ? report.reporterName : '-' }}
-
-
-
- 联系电话:
- {{ report.phone ? report.phone : '-' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
- 投入机械:
- {{ report.investedMachinery ? report.investedMachinery + '台/班' : '-'}}
-
-
-
-
- 投入人力:
- {{ report.investedManpower ? report.investedManpower + '人次' : '-'}}
-
-
-
-
- 投入资金:
- {{ report.investedFunds ? report.investedFunds + '万元' : '-'}}
-
-
-
-
-
-
- {{ report.showDetail ? '点击关闭详情' : '点击查看详情' }}
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -245,6 +20,8 @@ import { ArrowLeft, Picture, VideoCamera } from '@element-plus/icons-vue'
import ContinueReport from './IceDisasterContinueReportPC.vue'
import { request } from '@shared/utils/request'
import FileUpload from '@/component/FileUpload/FileUpload.vue'
+import detailConfig from './detailConfig'
+import DynamicDetail from '@/component/DynamicDetail/DynamicDetail.vue'
const router = useRouter()
const route = useRoute()
@@ -291,57 +68,6 @@ const hasReportData = computed(() => {
return allReports.value.length > 0
})
-// 获取事件状态文本
-const getEventStatusText = () => {
- return eventStatus.value === 1 ? '已解除' : '未解除'
-}
-
-// 获取事件状态类型
-const getEventStatusType = () => {
- return eventStatus.value === 1 ? 'success' : 'danger'
-}
-
-const getBaseDisposalMeasures = () => {
- const firstItem = allReports.value[0]
- if (!firstItem) return '-'
- return formatDisposalMeasures(firstItem.disposalMeasures || '') || '-'
-}
-
-// 格式化处置措施
-const formatDisposalMeasures = (measures) => {
- if (!measures) return ''
- const measureMap = {
- 半幅封闭: '半幅封闭',
- 全副封闭: '全副封闭',
- 便道通行: '便道通行',
- 正常通行: '正常通行'
- }
- return measures
- .split(',')
- .map((m) => measureMap[m.trim()] || m.trim())
- .join('、')
-}
-
-// 获取损失描述
-const getLossDescription = (report) => {
- const lossList = report?.lossList
- if (!lossList || lossList.length === 0) return '-'
-
- const totalVolume = lossList.reduce((sum, loss) => {
- const volume = (loss.length || 0) * (loss.width || 0) * (loss.height || 0)
- return sum + volume
- }, 0)
-
- const totalAmount = lossList.reduce((sum, loss) => sum + (loss.totalAmount || 0), 0)
-
- return `${totalVolume}方,共损失${totalAmount}万元`
-}
-
-// 获取车辆滞留文本
-const getVehicleStrandedText = (report) => {
- const count = report?.strandedVehicleCount || 0
- return count > 0 ? `有车滞留,共${count}辆` : '无车滞留'
-}
// 获取灾毁详情
const getDisasterDetail = async () => {
@@ -353,9 +79,8 @@ const getDisasterDetail = async () => {
try {
const result = await request({
- url: `/snow-ops-platform/water-damage/getById`,
+ url: `/snow-ops-platform/event/getById?id=${route.query.id}`,
method: 'get',
- params: { id }
})
if (result?.data) {
@@ -601,6 +326,5 @@ onMounted(() => {
overflow: hidden;
}
.file-list {
-
}
diff --git a/packages/screen/src/views/DisasterManagement/IceDisasterDetail/detailConfig.js b/packages/screen/src/views/DisasterManagement/IceDisasterDetail/detailConfig.js
new file mode 100644
index 0000000..d6035af
--- /dev/null
+++ b/packages/screen/src/views/DisasterManagement/IceDisasterDetail/detailConfig.js
@@ -0,0 +1,111 @@
+export default [
+ {
+ type: 'card',
+ label: '基础信息',
+ children: [
+ {
+ type: 'row',
+ children: [
+ {
+ span: 8,
+ label: '事件类型',
+ value: '冰雪事件',
+ },
+ {
+ span: 8,
+ label: '路况类别',
+ prop: 'event.routeNo'
+ },
+ {
+ span: 8,
+ label: '处理措施',
+ prop: 'event.disposalMeasures'
+ }
+ ]
+ },
+ {
+ type: 'row',
+ children: [
+ {
+ span: 8,
+ label: '地点路线',
+ prop: 'event.occurLocation'
+ },
+ {
+ span: 8,
+ label: '起点桩号',
+ prop: 'event.startStakeNo'
+ },
+ {
+ span: 8,
+ label: '止点桩号',
+ prop: 'event.endStakeNo'
+ }
+ ]
+ },
+ {
+ type: 'row',
+ children: [
+ {
+ span: 8,
+ label: '路况位置',
+ prop: 'event.occurLocation'
+ },
+ {
+ span: 8,
+ label: '阻断点小地名',
+ prop: 'event.occurLocation'
+ },
+ {
+ span: 8,
+ label: '地点路线',
+ prop: 'event.occurLocation'
+ }
+ ]
+ },
+ {
+ type: 'row',
+ children: [
+ {
+ span: 24,
+ label: '受灾里程',
+ prop: 'event.disasterMileage'
+ }
+ ]
+ },
+ {
+ type: 'row',
+ children: [
+ {
+ span: 8,
+ label: '所属区县',
+ prop: 'event.district'
+ },
+ {
+ span: 8,
+ label: '发现时间',
+ prop: 'event.occurTime'
+ }
+ ]
+ },
+ {
+ type: 'row',
+ children: [
+ {
+ span: 8,
+ label: '是否需要恢复重建',
+ prop: 'event.actualRecoverTime'
+ },
+ {
+ show: (formData) => {
+ return formData.event?.actualRecoverTime
+ },
+ span: 8,
+ label: '恢复重建预估费用(万元)',
+ prop: 'event.estimatedRecoveryCost'
+ }
+ ]
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/packages/screen/src/views/DisasterManagement/IceDisasterReport/IceDisasterReportPC.vue b/packages/screen/src/views/DisasterManagement/IceDisasterReport/IceDisasterReportPC.vue
index 243d343..c9fb246 100644
--- a/packages/screen/src/views/DisasterManagement/IceDisasterReport/IceDisasterReportPC.vue
+++ b/packages/screen/src/views/DisasterManagement/IceDisasterReport/IceDisasterReportPC.vue
@@ -1,11 +1,5 @@
-
-
diff --git a/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterContinueReportPC.vue b/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterContinueReportPC.vue
index a031a06..a19d11a 100644
--- a/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterContinueReportPC.vue
+++ b/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterContinueReportPC.vue
@@ -149,7 +149,7 @@ const props = defineProps({
})
// Emits 定义
-const emit = defineEmits(['input', 'change', 'submit'])
+const emit = defineEmits(['input', 'change'])
// 表单数据
const formData = reactive({
@@ -293,14 +293,6 @@ const calibrateTime = () => {
// 表单验证
const validate = () => {
- if (!formData.occurTime) {
- ElMessage.warning('请填写发生时间')
- return false
- }
- if (!formData.routeNo) {
- ElMessage.warning('请填写线路编号')
- return false
- }
return true
}
@@ -354,13 +346,6 @@ const resetForm = () => {
disposalMeasureValue.value = ''
}
-// 提交方法
-const submit = () => {
- if (validate()) {
- emit('submit', getFormData())
- }
-}
-
const handleSubmit = async () => {
// 验证表单
if (!validate()) {
diff --git a/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterDetailPC.vue b/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterDetailPC.vue
index 736ca85..af86d14 100644
--- a/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterDetailPC.vue
+++ b/packages/screen/src/views/DisasterManagement/WaterDisasterDetail/WaterDisasterDetailPC.vue
@@ -1,17 +1,5 @@
-
-
@@ -293,16 +281,6 @@ const hasReportData = computed(() => {
return allReports.value.length > 0
})
-// 获取事件状态文本
-const getEventStatusText = () => {
- return eventStatus.value === 1 ? '已解除' : '未解除'
-}
-
-// 获取事件状态类型
-const getEventStatusType = () => {
- return eventStatus.value === 1 ? 'success' : 'danger'
-}
-
const getBaseDisposalMeasures = () => {
const firstItem = allReports.value[0]
if (!firstItem) return '-'
diff --git a/packages/screen/src/views/DisasterManagement/WaterDisasterReport/WaterDisasterReportPC.vue b/packages/screen/src/views/DisasterManagement/WaterDisasterReport/WaterDisasterReportPC.vue
index ea46833..2b4c4e7 100644
--- a/packages/screen/src/views/DisasterManagement/WaterDisasterReport/WaterDisasterReportPC.vue
+++ b/packages/screen/src/views/DisasterManagement/WaterDisasterReport/WaterDisasterReportPC.vue
@@ -1,11 +1,5 @@
-
-
diff --git a/packages/screen/src/views/WarningManagement/law/dutyManagement/addDialog.vue b/packages/screen/src/views/WarningManagement/law/dutyManagement/addDialog.vue
index 4319242..5d9bb1c 100644
--- a/packages/screen/src/views/WarningManagement/law/dutyManagement/addDialog.vue
+++ b/packages/screen/src/views/WarningManagement/law/dutyManagement/addDialog.vue
@@ -2,91 +2,46 @@
-
-
- 气象信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+ {{ node.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/screen/src/views/WarningManagement/law/dutyManagement/index.js b/packages/screen/src/views/WarningManagement/law/dutyManagement/index.js
index e486415..bcca8fb 100644
--- a/packages/screen/src/views/WarningManagement/law/dutyManagement/index.js
+++ b/packages/screen/src/views/WarningManagement/law/dutyManagement/index.js
@@ -102,7 +102,7 @@ const getTableData = async (filterData = {}) => {
// 打开发布预警弹窗
const openAddDialog = () => {
- model.title = '发布预警';
+ model.title = '立即排班';
Object.assign(form, INIT_FORM);
model.props = {
form: form,
@@ -113,14 +113,14 @@ const openAddDialog = () => {
};
model.onConfirm = async () => {
await dialogRef?.value?.dynamicComponentRef?.formRef.validate().then(async () => {
- console.log('@@@@@发布预警', form);
+ console.log('@@@@@立即排班', form);
// await publishWarning(form)
})
.catch((err) => {
ElMessage.error('请处理表单中的错误项');
});
};
- model.width = "50%"
+ model.width = "70%"
modelVisible.value = true;
}
diff --git a/packages/screen/src/views/WarningManagement/law/dutyManagement/index.vue b/packages/screen/src/views/WarningManagement/law/dutyManagement/index.vue
index 404248a..b464213 100644
--- a/packages/screen/src/views/WarningManagement/law/dutyManagement/index.vue
+++ b/packages/screen/src/views/WarningManagement/law/dutyManagement/index.vue
@@ -7,7 +7,7 @@
value-format="YYYY-MM-DD HH:mm:ss" />
- 立即排班
+ 立即排班