|
@@ -39,7 +39,7 @@
|
|
<JointDuty />
|
|
<JointDuty />
|
|
</div>
|
|
</div>
|
|
<StartPlan v-model="startPlanState.show" :title="startPlanState.title" :event-id="eventId" />
|
|
<StartPlan v-model="startPlanState.show" :title="startPlanState.title" :event-id="eventId" />
|
|
- <SelectPlan v-model="selectPlanState.show" :title="selectPlanState.title" />
|
|
|
|
|
|
+ <SelectPlan v-model="selectPlanState.show" :title="selectPlanState.title" :temp-event-id="tempEventId" />
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
@@ -53,6 +53,7 @@ import SelectPlan from './SelectPlan.vue';
|
|
let eventId = ref('');
|
|
let eventId = ref('');
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
|
+let tempEventId = ref<string | null>(null);
|
|
// 启动预案弹窗
|
|
// 启动预案弹窗
|
|
const startPlanState = reactive({
|
|
const startPlanState = reactive({
|
|
show: false,
|
|
show: false,
|
|
@@ -67,32 +68,29 @@ const selectPlanState = reactive({
|
|
plans: [] as { id: number; name: string }[]
|
|
plans: [] as { id: number; name: string }[]
|
|
});
|
|
});
|
|
|
|
|
|
-// 从URL中获取event_id
|
|
|
|
|
|
+// 更新 getEventIdFromUrl 方法
|
|
const getEventIdFromUrl = () => {
|
|
const getEventIdFromUrl = () => {
|
|
- const urlParams = new URLSearchParams(route.query);
|
|
|
|
|
|
+ const urlParams = new URLSearchParams(useRoute().query);
|
|
eventId.value = urlParams.get('event_id') || '';
|
|
eventId.value = urlParams.get('event_id') || '';
|
|
|
|
+ tempEventId.value = urlParams.get('tempEventId') || null;
|
|
};
|
|
};
|
|
-
|
|
|
|
-// 启动预案的方法
|
|
|
|
|
|
+// 更新 startPlan 方法
|
|
const startPlan = () => {
|
|
const startPlan = () => {
|
|
- console.log('Checking eventId:', eventId.value); // 输出 eventId
|
|
|
|
if (eventId.value) {
|
|
if (eventId.value) {
|
|
- // 如果有eventId,则显示StartPlan弹窗,并传递eventId
|
|
|
|
startPlanState.title = '启动预案';
|
|
startPlanState.title = '启动预案';
|
|
startPlanState.eventId = eventId.value;
|
|
startPlanState.eventId = eventId.value;
|
|
startPlanState.show = true;
|
|
startPlanState.show = true;
|
|
console.log('Showing StartPlan with eventId:', eventId.value, 'and state:', startPlanState.show);
|
|
console.log('Showing StartPlan with eventId:', eventId.value, 'and state:', startPlanState.show);
|
|
-
|
|
|
|
- // 使用 nextTick 确保 DOM 更新完成
|
|
|
|
nextTick().then(() => {
|
|
nextTick().then(() => {
|
|
console.log('DOM updated, showing StartPlan:', startPlanState.show);
|
|
console.log('DOM updated, showing StartPlan:', startPlanState.show);
|
|
});
|
|
});
|
|
- } else {
|
|
|
|
- // 如果没有eventId,则显示SelectPlan弹窗
|
|
|
|
|
|
+ } else if (tempEventId.value) {
|
|
|
|
+ // 如果没有eventId但有tempEventId,则显示SelectPlan弹窗并传递tempEventId
|
|
selectPlanState.title = '预案任务下发';
|
|
selectPlanState.title = '预案任务下发';
|
|
selectPlanState.show = true;
|
|
selectPlanState.show = true;
|
|
- console.log('Showing SelectPlan with state:', selectPlanState.show);
|
|
|
|
- // 可选操作:加载预案列表
|
|
|
|
|
|
+ console.log('Showing SelectPlan with state:', selectPlanState.show, 'and tempEventId:', tempEventId.value);
|
|
|
|
+ // 传递 tempEventId 给 SelectPlan
|
|
|
|
+ selectPlanState.tempEventId = tempEventId.value;
|
|
loadPlans();
|
|
loadPlans();
|
|
}
|
|
}
|
|
};
|
|
};
|
|
@@ -111,19 +109,24 @@ const loadPlans = () => {
|
|
const initData = () => {
|
|
const initData = () => {
|
|
getEventIdFromUrl();
|
|
getEventIdFromUrl();
|
|
console.log('Event ID from URL:', eventId.value); // 输出从 URL 获取的 eventId
|
|
console.log('Event ID from URL:', eventId.value); // 输出从 URL 获取的 eventId
|
|
|
|
+ console.log('Temp Event ID from URL:', tempEventId.value); // 新增输出 tempEventId
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+// 监听路由变化
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
initData();
|
|
initData();
|
|
});
|
|
});
|
|
onBeforeRouteUpdate((to, from) => {
|
|
onBeforeRouteUpdate((to, from) => {
|
|
- getEventIdFromUrl(); // 当路由更新时重新获取 event_id
|
|
|
|
|
|
+ getEventIdFromUrl();
|
|
console.log('Event ID from URL on route update:', eventId.value);
|
|
console.log('Event ID from URL on route update:', eventId.value);
|
|
|
|
+ console.log('Temp Event ID from URL on route update:', tempEventId.value);
|
|
});
|
|
});
|
|
|
|
|
|
|
|
+// 每次依赖变化时获取 event_id 和 tempEventId
|
|
watchEffect(() => {
|
|
watchEffect(() => {
|
|
- getEventIdFromUrl(); // 每次依赖变化时获取 event_id
|
|
|
|
|
|
+ getEventIdFromUrl();
|
|
console.log('Event ID from URL on dependency change:', eventId.value);
|
|
console.log('Event ID from URL on dependency change:', eventId.value);
|
|
|
|
+ console.log('Temp Event ID from URL on dependency change:', tempEventId.value);
|
|
});
|
|
});
|
|
</script>
|
|
</script>
|
|
|
|
|