diff --git a/packages/mobile/src/views/DisasterManagement/DisasterManagement.vue b/packages/mobile/src/views/DisasterManagement/DisasterManagement.vue
index 68720bb..86af6ad 100644
--- a/packages/mobile/src/views/DisasterManagement/DisasterManagement.vue
+++ b/packages/mobile/src/views/DisasterManagement/DisasterManagement.vue
@@ -206,7 +206,7 @@ const handleClickItem = (item) => {
router.push({
path: '/waterDisasterDetail',
query: {
- id: item.id
+ id: item.relationId
}
})
}
diff --git a/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisaster.vue b/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisaster.vue
index 28bdc8f..dee7365 100644
--- a/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisaster.vue
+++ b/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisaster.vue
@@ -4,7 +4,7 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
route.query.isContinue);
@@ -169,7 +186,14 @@ const minDate = new Date();
const maxDate = new Date(2050, 11, 31);
const formData = ref({
- event: {},
+ event: {
+ startStakeNo: '',
+ startStakeLng: '',
+ startStakeLat: '',
+ endStakeNo: '',
+ endStakeLng: '',
+ endStakeLat: '',
+ },
report: {},
fileList: [],
yhzMaterialList: [],
@@ -205,25 +229,61 @@ const parsePointValue = point => {
};
const handleRouteNoChange = (item = {}) => {
- formData.routeNo = item.routeCode || formData.routeNo;
- formData.event.startStakeNo = item.startStakeNo;
- formData.event.endStakeNo = item.endStakeNo;
+ formData.value.event.routeNo = item.routeCode;
+ formData.value.event.startStakeNo = item.startStakeNo;
+ formData.value.event.endStakeNo = item.endStakeNo;
const startPoint = parsePointValue(item.startPoint ?? item.startpoint);
const endPoint = parsePointValue(item.endPoint ?? item.endpoint);
- formData.event.startStakeLng = startPoint.longitude;
- formData.event.startStakeLat = startPoint.latitude;
- formData.event.endStakeLng = endPoint.longitude;
- formData.event.endStakeLat = endPoint.latitude;
+ formData.value.event.startStakeLng = startPoint.longitude;
+ formData.value.event.startStakeLat = startPoint.latitude;
+ formData.value.event.endStakeLng = endPoint.longitude;
+ formData.value.event.endStakeLat = endPoint.latitude;
};
const calibrateTime = isShowToast => {
- formData.value.occurTime = formatDate(Date.now());
+ formData.value.event.occurTime = formatDate(Date.now());
if (isShowToast) showToast('时间已校准为当前时间');
};
+const isEmpty = value => {
+ return value === null || value === undefined || value === '';
+};
+
const validate = () => {
+ if (isEmpty(formData.value.report?.disposalMeasures)) {
+ showToast('请选择处置措施');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.occurTime)) {
+ showToast('请选择发生时间');
+ return false;
+ }
+ if (isEmpty(formData.value.report?.expectRecoverTime)) {
+ showToast('请输入预计恢复时间');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.routeNo)) {
+ showToast('请输入线路编号');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.startStakeNo)) {
+ showToast('请输入起点桩号');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.endStakeNo)) {
+ showToast('请输入止点桩号');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.occurLocation)) {
+ showToast('请输入发生地点');
+ return false;
+ }
+ if (isEmpty(formData.value.event?.disasterMileage)) {
+ showToast('请输入受灾里程');
+ return false;
+ }
return true;
};
@@ -239,17 +299,22 @@ const handleSubmit = async () => {
...formData.value,
// 可以在这里添加站点信息等其他数据
};
-
+ submitData.event.serviceStationId = yhzStore.getYHZInfo?.id
+ submitData.event.serviceStationName = yhzStore.getYHZInfo?.mc
+
+ let apiUrl = formData.value.event?.id ? '/snow-ops-platform/event/dispose' : '/snow-ops-platform/event/report'
+ if(formData.value.event?.id && formData.value.report.disposalMeasures == '正常通行') {
+ apiUrl = '/snow-ops-platform/event/release'
+ }
const res = await request({
- url: '/snow-ops-platform/event/addOrUpdate',
+ url: apiUrl,
method: 'post',
data: submitData,
});
-
if (res?.code === '00000') {
showSuccessToast('提交成功');
let isRebuilded = false;
- if (isContinue && detail.value.event.needsRecovery) {
+ if (isContinue.value && detail.value.event.needsRecovery) {
// 如果之前已经进行了项目重建的流程,后续不再进行该流程
isRebuilded = true;
}
@@ -263,7 +328,7 @@ const handleSubmit = async () => {
} else {
// 提交成功后返回列表页
setTimeout(() => {
- if (isContinue) router.go(-1);
+ if (isContinue.value) router.go(-1);
else router.replace('/disasterManagement');
}, 500);
}
@@ -277,7 +342,7 @@ const handleSubmit = async () => {
submitting.value = false;
}
};
-const detailData = ref(null);
+const detail = ref(null);
const getDisasterDetail = async () => {
const id = route.query.id;
if (!id) {
@@ -300,7 +365,7 @@ const getDisasterDetail = async () => {
data.report = {};
data.yhzMaterialList = [];
data.fileList = [];
- detailData.value = data;
+ detail.value = data;
formData.value = data;
} else {
ElMessage.warning(result.message || '获取详情失败');
diff --git a/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisasterDetail.vue b/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisasterDetail.vue
index 93abaf6..04c6c8c 100644
--- a/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisasterDetail.vue
+++ b/packages/mobile/src/views/DisasterManagement/IceDisaster/IceDisasterDetail.vue
@@ -1,5 +1,5 @@
-
+
@@ -28,19 +28,19 @@
线路编号:
- {{ detailData.routeNo || '-' }}
+ {{ detailData.event?.routeNo || '-' }}
发生时间:
- {{ detailData.occurTime || '-' }}
+ {{ detailData.event?.occurTime || '-' }}
路况位置:
- {{ detailData.occurLocation || '-' }}
+ {{ detailData.event?.roadConditionLocation || '-' }}
@@ -136,7 +136,7 @@
-