diff --git a/packages/mobile/src/views/Rebuild/RebuildAdd.vue b/packages/mobile/src/views/Rebuild/RebuildAdd.vue
index 3cd431b..25ac8c1 100644
--- a/packages/mobile/src/views/Rebuild/RebuildAdd.vue
+++ b/packages/mobile/src/views/Rebuild/RebuildAdd.vue
@@ -7,10 +7,10 @@
:rules="[{ required: true, message: '请填写区县名称' }]" />
-
-
+
+
@@ -83,11 +83,47 @@ const form = reactive({
const fileList = ref([]);
const formRef = ref();
+// 获取灾害事件详情
+const getDetail = async (id) => {
+ try {
+ const res = await request({
+ url: '/snow-ops-platform/water-damage/getById',
+ method: 'GET',
+ params: {
+ id
+ }
+ })
+ if (res.code === '00000') {
+ form.project.districtName = res.data.event.district
+ form.project.routeNo = res.data.routeNo
+ form.project.startStakeNo = res.data.event.startStakeNo
+ form.project.endStakeNo = res.data.event.endStakeNo
+ form.project.implementMileage = res.data.event.blockedMileage
+ form.project.earthworkLoss = Array.isArray(res.data.lossList) ? res.data.lossList.reduce((sum, item) => sum + (item.totalAmount || 0), 0) : 0
+ form.project.disasterType = res.data.roadConditionType
+ form.project.locationRoute = res.data.occurLocation
+ form.project.roadLocation = res.data.event.blockedPointName
+ form.project.blockedPointName = res.data.event.blockedPointName
+ form.project.estimatedCost = res.data.event.estimatedRecoveryCost
+ form.fileList = res.data.fileList || []
+ fileList.value = res.data.fileList || []
+ } else {
+ throw new Error(res.message)
+ }
+ } catch (error) {
+ showToast({
+ type: "fail",
+ message: error.message,
+ });
+ }
+}
+
onMounted(() => {
if (route.params.data) {
const data = JSON.parse(decodeURIComponent(route.params.data));
console.log('@@@@data', data);
// todo 在有传参的时候 调用接口去获取数据 并且初始化表单
+ getDetail(data);
} else {
// console.log('无传入数据');
}
@@ -95,7 +131,7 @@ onMounted(() => {
const handleClickBack = () => {
if (route.params.data) {
-
+ router.push('/')
} else {
router.push('/rebuild')
}