| | |
| | | <template> |
| | | <div class="listCard"> |
| | | <!-- <div>方案数量: {{ simStore.schemCard.length }}</div> --> |
| | | <el-card v-for="(item, key) in simStore.schemCard" :key="key" :class="{ selected: selectedId === item.id }" |
| | | @click="selectScheme(item.id)"> |
| | | <!-- 接口版本删除该代码块 --> |
| | | <el-card |
| | | v-for="(item, key) in simStore.schemCard" |
| | | :key="key" |
| | | :class="{ selected: selectedId === item.id }" |
| | | @click="selectScheme(item.id)" |
| | | > |
| | | <!-- <el-card |
| | | v-for="(item, key) in schemeList" |
| | | :key="key" |
| | | @click="selectScheme(item.id)" |
| | | > --> |
| | | <div> |
| | | <p>方案名称 : {{ item.name }}</p> |
| | | <p>创建时间 : {{ formatTime(item.createTime) }}</p> |
| | | <p> |
| | | 方案状态 : |
| | | <span style="color: aquamarine">{{ statusText[item.taskStatus] || "未知" }}</span> |
| | | <span style="color: aquamarine">{{ |
| | | statusText[item.taskStatus] || "未知" |
| | | }}</span> |
| | | </p> |
| | | </div> |
| | | <div class="cardMenu"> |
| | | <div style="float: right; margin-top: 3px"> |
| | | <el-button size="small" @click="setSchemClick(item)">方案详情</el-button> |
| | | <el-button size="small" @click="setSchemClick(item)" |
| | | >方案详情</el-button |
| | | > |
| | | <el-button size="small" @click="startPlay(item)">进入模拟</el-button> |
| | | <!-- :disabled="item.taskStatus !== 2" --> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref } from "vue"; |
| | | import { onMounted, ref, watch } from "vue"; |
| | | import dayjs from "dayjs"; |
| | | import { initeWaterPrimitiveView } from "@/utils/water"; |
| | | import Message from "@/components/tools/Message.vue"; |
| | | import { useSimStore } from "@/store/simulation.js"; |
| | | import { ElMessage, ElMessageBox } from "element-plus"; |
| | | |
| | | const simStore = useSimStore(); |
| | | // 选中的方案 ID |
| | |
| | | initeWaterPrimitiveView(); |
| | | emit("start"); |
| | | } |
| | | const emit = defineEmits(["start", "end"]); |
| | | const emit = defineEmits(["start", "end", "reset"]); |
| | | function endPlay() { |
| | | emit("end"); |
| | | } |
| | | // 暴露选中的 ID 给父组件 |
| | | |
| | | //////////////////////////////////// 暴露选中的 ID 给父组件(接口版本删除)//////////////////////////////////// |
| | | defineExpose({ |
| | | getSelectedId: () => selectedId.value, |
| | | }); |
| | | |
| | | /////////////////////// 调用接口(使用时打开) /////////////////////// |
| | | // import { getData, getSimData, deleteSimData } from "@/api/trApi.js"; |
| | | // onMounted(() => { |
| | | // getScheme(); |
| | | // }); |
| | | |
| | | // const props = defineProps({ |
| | | // deleteSim: Boolean, // 接收父组件传递的函数 |
| | | // }); |
| | | |
| | | // watch( |
| | | // () => props.deleteSim, |
| | | // (newVal) => { |
| | | // if (newVal) { |
| | | // console.log(newVal); |
| | | // deleteSim(); |
| | | // emit("reset"); |
| | | // } |
| | | // } |
| | | // ); |
| | | |
| | | // const schemeList = ref([]); |
| | | |
| | | // async function getScheme() { |
| | | // try { |
| | | // const res = await getSimData(); |
| | | // schemeList.value = res.data; |
| | | // } catch (error) { |
| | | // console.error("Error fetching data:", error); |
| | | // } |
| | | // } |
| | | |
| | | // const deleteSim = () => { |
| | | // ElMessageBox.confirm("确定要删除该方案吗?", "删除方案", { |
| | | // confirmButtonText: "OK", |
| | | // cancelButtonText: "Cancel", |
| | | // }) |
| | | // .then(() => { |
| | | // deleteSimData(selectedId.value).then((res) => { |
| | | // getScheme(); |
| | | // }); |
| | | // ElMessage({ |
| | | // type: "success", |
| | | // message: "删除成功", |
| | | // }); |
| | | // }) |
| | | // .catch(() => { |
| | | // ElMessage({ |
| | | // type: "info", |
| | | // message: "已取消删除", |
| | | // }); |
| | | // }); |
| | | // }; |
| | | /////////////////////// 调用接口结束 /////////////////////// |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |