<script setup>
|
import ComputeCard from "@/views/pp/glassOptimize/page/ComputeCard.vue";
|
import ComputeDetail from "@/views/pp/glassOptimize/page/ComputeDetail.vue";
|
import Compute from "@/views/pp/glassOptimize/page/Compute.vue";
|
import { ref } from 'vue';
|
import {ElMessage} from "element-plus";
|
import request from "@/utils/request";
|
|
|
// 用于存储从后端获取到的数据,初始化为空数组
|
const receivedData = ref([]);
|
const handleFetchData = async (projectNumber) => {
|
try {
|
const res = await request.post(`/glassOptimize/selectProjectCompute/${projectNumber}`);
|
if (Number(res.code) === 200 && res.data && res.data.data) {
|
receivedData.value = res.data.data;
|
} else {
|
console.error('请求出现问题,状态码:', res.code, ',错误信息:', res.msg);
|
if (res.code === 404) {
|
ElMessage.error('未找到对应工程号的数据,请检查输入是否正确');
|
} else if (res.code === 500) {
|
ElMessage.error('服务器内部出现错误,请稍后再试');
|
} else {
|
ElMessage.warning(res.msg);
|
}
|
}
|
} catch (error) {
|
console.error('请求出错', error);
|
ElMessage.error('网络连接出现问题,请检查网络设置');
|
}
|
};
|
|
</script>
|
|
<template>
|
<div style="width: 100%; height: 100%;">
|
|
<div id="compute">
|
<compute @fetch-data="handleFetchData" />
|
</div>
|
|
<div id="computeCard">
|
<compute-card :table-data="receivedData" />
|
</div>
|
|
<div id="computeDetail">
|
<compute-detail/>
|
</div>
|
|
</div>
|
</template>
|
|
<style scoped>
|
#compute{
|
float: left;
|
margin-top: -30px;
|
margin-bottom: 2%;
|
width: 100%;
|
height: 40%;
|
}
|
#computeCard{
|
margin-top: 90px;
|
width: 64%;
|
height: 40%;
|
float: left;
|
}
|
#computeDetail{
|
margin-top: 90px;
|
margin-left: 1%;
|
float: left;
|
width: 35%;
|
height: 40%;
|
}
|
</style>
|