| | |
| | | //æ°æ®è®°å½ |
| | | export const Add = (data) => http.post("api/Putake/Add", data); |
| | | |
| | | //æ°æ®è®°å½æ¥ç详æ
|
| | | //å¥çå¼é¨ |
| | | export const ChanegOpenDoor = (data) => http.post(`/api/Putake/OpenDoor?group=${data}`); |
| | | //å¥çå
³é¨ |
| | | export const ChanegCloseDoor = (data) => http.post(`/api/Putake/ClosedDoor?group=${data}`); |
| | |
| | | clearInterval(timer.value); |
| | | // å建WebSocketè¿æ¥ |
| | | //"ws://127.0.0.1:9295/admin" |
| | | client.value = new WebSocket("ws://115.159.85.185:9098/"); |
| | | client.value = new WebSocket("ws://115.159.85.185:5173/"); |
| | | |
| | | client.value.onopen = function () { |
| | | console.log("WebSocket è¿æ¥æå"); |
| | |
| | | <el-button size="small" style="height: 2rem" @click="resetQuery" |
| | | >éç½®</el-button |
| | | > |
| | | <el-button |
| | | @click="opendoor" |
| | | type="primary" |
| | | size="small" |
| | | style="margin-left: 0.98rem; height: 2rem" |
| | | >å¥çæå¼é¨</el-button |
| | | > |
| | | <el-button |
| | | @click="closeDoor" |
| | | type="primary" |
| | | size="small" |
| | | style="margin-left: 0.98rem; height: 2rem" |
| | | >å¥çæå
³é¨</el-button |
| | | > |
| | | </div> |
| | | <div class="btns"> |
| | | <div style="display: flex; align-items: center"> |
| | |
| | | GetPageDataNew, |
| | | } from "@/api/newapi/Thecurrentjob"; |
| | | import { GetSleeveandStep } from "@/api/newapi/Process"; |
| | | import { ChanegOpenDoor, ChanegCloseDoor } from "@/api/newapi/Putake"; |
| | | import { GetUserInfo } from "@/api/user"; |
| | | |
| | | const router = useRouter(); |
| | |
| | | userId: JSON.parse(localStorage.getItem("user")).id, |
| | | group: isactive.value, |
| | | }; |
| | | console.log(obj); |
| | | |
| | | // GetPageDataNew(obj).then((res) => { |
| | | // tableData.value = res.data; |
| | | // pageTotal.value = res.data.length; |
| | |
| | | }); |
| | | }; |
| | | |
| | | const opendoor = () => { |
| | | ChanegOpenDoor(isactive.value).then((res) => { |
| | | if (res.status == true) { |
| | | ElMessage({ |
| | | message: "å¼é¨æå", |
| | | type: "success", |
| | | }); |
| | | } else { |
| | | ElMessage({ |
| | | message: res.msg, |
| | | type: "error", |
| | | }); |
| | | } |
| | | }); |
| | | initData(); |
| | | }; |
| | | const closeDoor = () => { |
| | | ChanegCloseDoor(isactive.value).then((res) => { |
| | | if (res.status == true) { |
| | | ElMessage({ |
| | | message: "å
³é¨æå", |
| | | type: "success", |
| | | }); |
| | | } else { |
| | | ElMessage({ |
| | | message: res.msg, |
| | | type: "error", |
| | | }); |
| | | } |
| | | }); |
| | | initData(); |
| | | }; |
| | | |
| | | //æ°æ®åå§å |
| | | onMounted(() => { |
| | | initData(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import http from "../http"; |
| | | |
| | | //ç»å½è®°å½ |
| | | export const BecomeTrue = (data) => http.post(`/api/AlarmResetHsy/BecomeTrue`); |
| | |
| | | import http from "../http"; |
| | | |
| | | export const AddData = (data) => http.post("/api/Parameters/AddData", data); |
| | | //èªå¨ä¼¸åºç¼©å |
| | | export const AutoPickAndDrop = (data) => http.post(`/api/Parameters/automation?ExtendedState=${data.ExtendedState}`); |
| | | //æå¨ä¼¸åºç¼©å |
| | | export const ManualOperation = (data) => http.post(`/api/Parameters/ManualOperation?position=${data.position}&ExtendedState=${data.ExtendedState}`); |
| | |
| | | padding: 0 0.69rem 0 0; |
| | | " |
| | | > |
| | | <span |
| | | style=" |
| | | font-size: 1.25rem; |
| | | font-weight: bold; |
| | | color: #fff; |
| | | margin-right: 0.69rem; |
| | | cursor: pointer; |
| | | " |
| | | @click="router.push({ path: '/AlarmReset' })" |
| | | >æ¥è¦å¤ä½</span |
| | | > |
| | | <img |
| | | v-if="!isFullscreen" |
| | | style=" |
| | |
| | | name: "PDAAuth", |
| | | component: () => import("@/views/system/PDAAuth.vue"), |
| | | }, |
| | | // //å·¥èºä¸å¿ |
| | | // { |
| | | // path: "/Craftcenter", |
| | | // name: "Craftcenter", |
| | | // component: () => import("@/views/tts/CraftCenter/Craftcenter.vue"), |
| | | // }, |
| | | // //ä»»å¡ç®¡ç |
| | | // { |
| | | // path: "/Taskmanagement", |
| | | // name: "Taskmanagement", |
| | | // component: () => import("@/views/tts/TaskManagement/Taskmanagement.vue"), |
| | | // }, |
| | | // //任塿¨¡æ¿ |
| | | // { |
| | | // path: "/Tasktemplates", |
| | | // name: "Tasktemplates", |
| | | // component: () => import("@/views/tts/TaskManagement/Tasktemplates.vue"), |
| | | // }, |
| | | // //å½åä½ä¸ |
| | | // { |
| | | // path: "/Thecurrentjob", |
| | | // name: "Thecurrentjob", |
| | | // component: () => import("@/views/tts/TheCurrentJob/Thecurrentjob.vue"), |
| | | // }, |
| | | // //å¼å§ä½ä¸ |
| | | // { |
| | | // path: "/Startjob", |
| | | // name: "Startjob", |
| | | // component: () => import("@/views/tts/TheCurrentJob/Startjob.vue"), |
| | | // }, |
| | | |
| | | //æ°æ®è®°å½ |
| | | { |
| | | path: "/Datalogging", |
| | |
| | | name: "Enteroverhaul", |
| | | component: () => import("@/views/tts/Enteroverhaul/Enteroverhaul.vue"), |
| | | }, |
| | | // //æ°åå¤§å± |
| | | // æ°åå¤§å± |
| | | { |
| | | path: "/LargeScreen", |
| | | name: "LargeScreen", |
| | | component: () => import("@/views/tts/LargeScreen/Largescreen.vue"), |
| | | }, |
| | | //æ¥è¦å¤ä½ |
| | | { |
| | | path: "/AlarmReset", |
| | | name: "AlarmReset", |
| | | component: () => import("@/views/tts/AlarmReset/AlarmReset.vue"), |
| | | } |
| | | |
| | | ]; |
| | | |
| | | export default viewgird; |
| | |
| | | <img src="@/assets/index/icon/icon6.png" alt="" /> |
| | | </div> |
| | | </div> |
| | | <!-- <div |
| | | class="item" |
| | | style="background-color: #78909c" |
| | | @click="router.push('/Basicinformation')" |
| | | > |
| | | <span>åºç¡ä¿¡æ¯</span> |
| | | <div class="count"> |
| | | <img src="@/assets/index/icon/icon6.png" alt="" /> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="item" |
| | | style="background-color: #2200de" |
| | | @click="router.push('/Largescreen')" |
| | | > |
| | | <span>æ°å大å±</span> |
| | | <div class="count"> |
| | | <img src="@/assets/index/icon/icon6.png" alt="" /> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | <div v-else class="mian_mobile"> |
| | |
| | | <img src="@/assets/index/icon/icon3.png" alt="" /> |
| | | </div> |
| | | </div> |
| | | <!-- <div |
| | | class="item" |
| | | style="background-color: #78909c" |
| | | @click="router.push('/Basicinformation')" |
| | | > |
| | | <span>åºç¡ä¿¡æ¯</span> |
| | | <div class="count"> |
| | | <img src="@/assets/index/icon/icon6.png" alt="" /> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="item" |
| | | style="background-color: #2200de" |
| | | @click="router.push('/Largescreen')" |
| | | > |
| | | <span>æ°å大å±</span> |
| | | <div class="count"> |
| | | <img src="@/assets/index/icon/icon6.png" alt="" /> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | <div class="main_c"> |
| | | <div |
| | |
| | | import { |
| | | GetPageDataApi, |
| | | GetAddUserApi, |
| | | UpdateUserApi, |
| | | Upuserbase, |
| | | DelApi, |
| | | } from "@/api/user.js"; |
| | | import { GetRoleInfo } from "@/api/role.js"; |
| | |
| | | return ElMessage({ message: "两次å¯ç ä¸ä¸è´", type: "error" }); |
| | | if (formUser.value.userId != undefined) { |
| | | const formData = objToFormData(formUser.value); |
| | | UpdateUserApi(formData).then((res) => { |
| | | Upuserbase(formData).then((res) => { |
| | | ElMessage({ message: res.message, type: "success" }); |
| | | drawer.open = false; |
| | | reset(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="AlarmReset"> |
| | | <div style="width: 100%; text-align: center; font-size: 5rem; color: #fff"> |
| | | æ¥è¦å¤ä½ |
| | | </div> |
| | | <div style="margin-top: 3rem"> |
| | | <el-table :data="tableData" style="width: 100%" height="800"> |
| | | <el-table-column prop="Id" label="åºå·" /> |
| | | <el-table-column prop="AlarmContent" label="æ¥è¦å
容" /> |
| | | <el-table-column prop="ResetStatus" label="å¤ä½ç¶æ" /> |
| | | <el-table-column prop="AlarmTime" label="æ¥è¦æ¶é´"> |
| | | <template #default="scope"> |
| | | {{ formatTime(scope.row.AlarmTime) }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="ResetTime" label="å¤ä½æ¶é´"> |
| | | <template #default="scope"> |
| | | {{ formatTime(scope.row.ResetTime) }} |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div |
| | | style=" |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: center; |
| | | margin-top: 2rem; |
| | | " |
| | | > |
| | | <el-pagination |
| | | size="large" |
| | | :page-size="10" |
| | | layout="prev, pager, next" |
| | | :total="total" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | class="mt-4" |
| | | background |
| | | /> |
| | | </div> |
| | | <div |
| | | style=" |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: center; |
| | | margin-top: 4rem; |
| | | " |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | style="width: 10rem; height: 3rem" |
| | | @click="handleBecomeTrue" |
| | | >æ¥è¦å¤ä½</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <script setup> |
| | | import { ref, onMounted, onUnmounted } from "vue"; |
| | | import { ElMessage } from "element-plus"; |
| | | import { BecomeTrue } from "@/api/newapi/AlarmReset.js"; |
| | | import { formatTime } from "@/utils/index.js"; |
| | | |
| | | const timer = ref(null); |
| | | const client = ref(null); |
| | | const tableData = ref([]); |
| | | const pageSize = ref(10); // æ¯é¡µæ¾ç¤ºçæ¡æ° |
| | | const currentPage = ref(0); // å½å页ç |
| | | const total = ref(0); // æ»æ¡æ° |
| | | const createSocket = (url) => { |
| | | clearInterval(timer.value); |
| | | // å建WebSocketè¿æ¥ |
| | | //"ws://127.0.0.1:9295/admin" |
| | | client.value = new WebSocket("ws://192.168.0.80:5173/"); |
| | | client.value.onopen = function () { |
| | | console.log("WebSocket è¿æ¥æå"); |
| | | }; |
| | | client.value.onmessage = function (event) { |
| | | let data = JSON.parse(event.data); |
| | | tableData.value = data.Data.slice( |
| | | currentPage.value * pageSize.value, |
| | | (currentPage.value + 1) * pageSize.value |
| | | ); |
| | | total.value = data.Data.length; // æ´æ°æ»æ¡æ° |
| | | console.log("WebSocket æ¥æ¶å°æ¶æ¯", tableData.value); |
| | | }; |
| | | client.value.onclose = function () { |
| | | console.log("WebSocket è¿æ¥å
³é"); |
| | | timer.value = setTimeout(createSocket, 1000); |
| | | }; |
| | | |
| | | client.value.onerror = function () {}; |
| | | }; |
| | | const handleCurrentChange = (val) => { |
| | | currentPage.value = val - 1; // æ´æ°å½å页ç |
| | | }; |
| | | //å¤ä½æé®æ¹æ³ |
| | | const handleBecomeTrue = (val) => { |
| | | BecomeTrue().then((res) => { |
| | | if (res.data.code == 0) { |
| | | ElMessage({ |
| | | message: "å¤ä½æå", |
| | | type: "success", |
| | | }); |
| | | } else { |
| | | ElMessage({ |
| | | message: "å¤ä½å¤±è´¥", |
| | | type: "error", |
| | | }); |
| | | } |
| | | }); |
| | | }; |
| | | |
| | | onMounted(() => { |
| | | createSocket(); |
| | | }); |
| | | |
| | | onUnmounted(() => { |
| | | clearInterval(timer.value); |
| | | if (client.value) { |
| | | client.value.close(); |
| | | } |
| | | }); |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .AlarmReset { |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | background-color: rgba(0, 0, 0, 0.2); |
| | | box-sizing: border-box; |
| | | } |
| | | </style> |
| | |
| | | <div class="Enteroverhaul"> |
| | | <div class="btns"> |
| | | <el-button class="btn" type="primary" @click="startMaintenceTask"> |
| | | <div style=" |
| | | <div |
| | | style=" |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | "> |
| | | <img style="width: 4.75rem; height: 4.75rem" src="@/assets/Enteroverhaul/start.png" alt="" /> |
| | | <span style=" |
| | | " |
| | | > |
| | | <img |
| | | style="width: 4.75rem; height: 4.75rem" |
| | | src="@/assets/Enteroverhaul/start.png" |
| | | alt="" |
| | | /> |
| | | <span |
| | | style=" |
| | | color: rgba(0, 239, 248, 1); |
| | | font-size: 1.25rem; |
| | | margin-top: 1.6rem; |
| | | ">å¼å§æ£ä¿®</span> |
| | | " |
| | | >å¼å§æ£ä¿®</span |
| | | > |
| | | </div> |
| | | </el-button> |
| | | <el-button class="btn" type="primary" style="margin-left: 6.81rem" @click="stopMaintenceTask"> |
| | | <div style=" |
| | | <el-button |
| | | class="btn" |
| | | type="primary" |
| | | style="margin-left: 6.81rem" |
| | | @click="stopMaintenceTask" |
| | | > |
| | | <div |
| | | style=" |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | "> |
| | | <img style="width: 4.75rem; height: 4.75rem" src="@/assets/Enteroverhaul/pause.png" alt="" /> |
| | | <span style=" |
| | | " |
| | | > |
| | | <img |
| | | style="width: 4.75rem; height: 4.75rem" |
| | | src="@/assets/Enteroverhaul/pause.png" |
| | | alt="" |
| | | /> |
| | | <span |
| | | style=" |
| | | color: rgba(0, 239, 248, 1); |
| | | font-size: 1.25rem; |
| | | margin-top: 1.6rem; |
| | | ">ç»ææ£ä¿®</span> |
| | | " |
| | | >ç»ææ£ä¿®</span |
| | | > |
| | | </div> |
| | | </el-button> |
| | | </div> |
| | | <div v-if="isStart" class="content_box"> |
| | | <el-table empty-text="ææ æ°æ®" :data="tableData" style="width: 100%" :header-cell-style="{ |
| | | <el-table |
| | | empty-text="ææ æ°æ®" |
| | | :data="tableData" |
| | | style="width: 100%" |
| | | :header-cell-style="{ |
| | | height: '1.61rem', |
| | | color: '#1AC8FE', |
| | | background: '#0A5B91', |
| | | fontSize: '0.88rem', |
| | | }" :cell-style="{ |
| | | }" |
| | | :cell-style="{ |
| | | color: '#fff', |
| | | background: '#147BAF', |
| | | }"> |
| | | }" |
| | | > |
| | | <el-table-column prop="userAccount" label="ç¨æ·è´¦å·" align="center" /> |
| | | <el-table-column prop="modifier" label="ä¿®æ¹äºº" /> |
| | | <el-table-column prop="modifyDate" label="ä¿®æ¹æ¶é´" align="center" /> |
| | | <el-table-column prop="maintenanceStatus" label="æ£ä¿®ç¶æ" align="center"> |
| | | <el-table-column |
| | | prop="maintenanceStatus" |
| | | label="æ£ä¿®ç¶æ" |
| | | align="center" |
| | | > |
| | | <template #default="scope"> |
| | | <span v-if="scope.row.maintenanceStatus === 0">æªå¼å§</span> |
| | | <span v-else-if="scope.row.maintenanceStatus === 1">è¿è¡ä¸</span> |
| | | <span v-else-if="scope.row.maintenanceStatus === 2">å·²ç»æ</span></template> |
| | | <span v-else-if="scope.row.maintenanceStatus === 2" |
| | | >å·²ç»æ</span |
| | | ></template |
| | | > |
| | | </el-table-column> |
| | | <el-table-column prop="maintenanceDate" label="æ´¾å任塿¶é´" align="center" /> |
| | | <el-table-column |
| | | prop="maintenanceDate" |
| | | label="æ´¾å任塿¶é´" |
| | | align="center" |
| | | /> |
| | | |
| | | <el-table-column prop="maintenancStartTime" label="å¼å§æ£ä¿®æ¶é´" align="center" /> |
| | | <el-table-column prop="maintenancEendTime" label="ç»ææ£ä¿®æ¶é´" align="center" /> |
| | | <el-table-column |
| | | prop="maintenancStartTime" |
| | | label="å¼å§æ£ä¿®æ¶é´" |
| | | align="center" |
| | | /> |
| | | <el-table-column |
| | | prop="maintenancEendTime" |
| | | label="ç»ææ£ä¿®æ¶é´" |
| | | align="center" |
| | | /> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | |
| | | <template> |
| | | <div class="Manualcontrol"> |
| | | <div class="button"> |
| | | <el-button @click="jumpRouter('/PickAndDrop')" class="btn" type="primary" size="small" |
| | | style="width: 27.52rem; height: 4.29rem; color: rgba(255, 255, 255, 1)"> |
| | | <span class="Aspan" style="font-size: 2.25rem; text-align: center">è¿å</span> |
| | | <el-button |
| | | @click="jumpRouter('/PickAndDrop')" |
| | | class="btn" |
| | | type="primary" |
| | | size="small" |
| | | style="width: 27.52rem; height: 4.29rem; color: rgba(255, 255, 255, 1)" |
| | | > |
| | | <span class="Aspan" style="font-size: 2.25rem; text-align: center" |
| | | >è¿å</span |
| | | > |
| | | </el-button> |
| | | </div> |
| | | <div v-if="isMobile" class="content"> |
| | | <div class="content_l"> |
| | | <div class="model"> |
| | | <div class="model_btn"> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å·¦', '伸åº')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">伸åº</span> |
| | | </el-button> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å·¦', '缩å')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">缩å</span> |
| | | </el-button> |
| | |
| | | <div class="content_r"> |
| | | <div class="model"> |
| | | <div class="model_btn"> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å³', '伸åº')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">伸åº</span> |
| | | </el-button> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å³', '缩å')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">缩å</span> |
| | | </el-button> |
| | | </div> |
| | | |
| | | </div> |
| | | <div class="operate"> |
| | | <div class="item">伸å°ä½</div> |
| | |
| | | <div class="content_l"> |
| | | <div class="model"> |
| | | <div class="model_btn"> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å·¦', '伸åº')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">伸åº</span> |
| | | </el-button> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å·¦', '缩å')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">缩å</span> |
| | | </el-button> |
| | | </div> |
| | | <div style="color:#fff;font-size:2rem;margin-left:20rem">左侧伸缩æ</div> |
| | | <div style="color: #fff; font-size: 2rem; margin-left: 20rem"> |
| | | 左侧伸缩æ |
| | | </div> |
| | | </div> |
| | | <div class="operate"> |
| | | <div class="item">伸å°ä½</div> |
| | |
| | | <div class="content_r"> |
| | | <div class="model"> |
| | | <div class="model_btn"> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å³', '伸åº')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">伸åº</span> |
| | | </el-button> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handManualOperation('å³', '缩å')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">缩å</span> |
| | | </el-button> |
| | | </div> |
| | | <div style="color:#fff;font-size:2rem;margin-left:20rem">å³ä¾§ä¼¸ç¼©æ</div> |
| | | <div style="color: #fff; font-size: 2rem; margin-left: 20rem"> |
| | | å³ä¾§ä¼¸ç¼©æ |
| | | </div> |
| | | </div> |
| | | <div class="operate"> |
| | | <div class="item">伸å°ä½</div> |
| | |
| | | <script setup> |
| | | import { ref, onMounted, nextTick } from "vue"; |
| | | import { useRouter } from "vue-router"; |
| | | import { ElMessage } from "element-plus"; |
| | | import { ManualOperation } from "@/api/newapi/Parameters.js"; |
| | | |
| | | const router = useRouter(); |
| | | const isMobile = ref(false); |
| | | const jumpRouter = (path) => { |
| | | router.push(path); |
| | | }; |
| | | const handManualOperation = async (position, ExtendedState) => { |
| | | try { |
| | | const res = await ManualOperation({ |
| | | position: position, |
| | | ExtendedState: ExtendedState, |
| | | }); |
| | | if (res.code === 0) { |
| | | ElMessage({ |
| | | message: `${position}ä¾§${ExtendedState}æå`, |
| | | type: "success", |
| | | }); |
| | | } else { |
| | | ElMessage({ |
| | | message: `${position}侧${ExtendedState}失败`, |
| | | type: "error", |
| | | }); |
| | | } |
| | | } catch (error) { |
| | | ElMessage({ |
| | | message: "æä½å¤±è´¥", |
| | | type: "error", |
| | | }); |
| | | } |
| | | |
| | | console.log(res); |
| | | }; |
| | | onMounted(() => { |
| | | // çå¬çªå£å¤§å°åå |
| | | window.addEventListener("resize", () => { |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | <div class="PickAndDrop"> |
| | | <div class="button"> |
| | | <div class="button_l"> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handleAutoPickAndDrop('伸åº')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">伸åº</span> |
| | | </el-button> |
| | | <el-button type="primary" size="small" style=" |
| | | <el-button |
| | | @click="handleAutoPickAndDrop('缩å')" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 14.69rem; |
| | | height: 5.06rem; |
| | | color: rgba(64, 253, 240, 1); |
| | | background-color: rgba(6, 229, 231, 0.3); |
| | | border: none; |
| | | border-top: 0.25rem solid rgba(6, 229, 231, 1); |
| | | "> |
| | | " |
| | | > |
| | | <div class="btnicon"> |
| | | <span style=" |
| | | <span |
| | | style=" |
| | | width: 1rem; |
| | | height: 1rem; |
| | | display: flex; |
| | |
| | | color: rgb(0, 0, 0); |
| | | font-size: 0.75rem; |
| | | margin-left: 0.1rem; |
| | | ">i</span> |
| | | " |
| | | >i</span |
| | | > |
| | | </div> |
| | | <span style="font-size: 2.25rem; text-align: center">缩å</span> |
| | | </el-button> |
| | | </div> |
| | | <div class="button_r"> |
| | | <el-button @click="jumpRouter('/Manualcontrol')" class="btn" type="primary" size="small" style=" |
| | | <el-button |
| | | @click="jumpRouter('/Manualcontrol')" |
| | | class="btn" |
| | | type="primary" |
| | | size="small" |
| | | style=" |
| | | width: 27.52rem; |
| | | height: 4.29rem; |
| | | color: rgba(255, 255, 255, 1); |
| | | "> |
| | | <span class="Aspan" style="font-size: 2.25rem; text-align: center">æå¨æ§å¶</span> |
| | | " |
| | | > |
| | | <span class="Aspan" style="font-size: 2.25rem; text-align: center" |
| | | >æå¨æ§å¶</span |
| | | > |
| | | </el-button> |
| | | </div> |
| | | </div> |
| | |
| | | <script setup> |
| | | import { ref, onMounted, nextTick } from "vue"; |
| | | import { useRouter } from "vue-router"; |
| | | import { ElMessage } from "element-plus"; |
| | | import { AutoPickAndDrop } from "@/api/newapi/Parameters.js"; |
| | | |
| | | const router = useRouter(); |
| | | const isMobile = ref(false); |
| | | |
| | | const jumpRouter = (path) => { |
| | | router.push(path); |
| | | }; |
| | | |
| | | const handleAutoPickAndDrop = async (val) => { |
| | | try { |
| | | const response = await AutoPickAndDrop({ |
| | | ExtendedState: val, |
| | | }); |
| | | if (response.code === 0) { |
| | | ElMessage.success(`${val}æå`); |
| | | } else { |
| | | ElMessage.error(`${val}失败`); |
| | | } |
| | | } catch (error) { |
| | | console.error(error); |
| | | ElMessage.error("æä½å¤±è´¥"); |
| | | } |
| | | }; |
| | | onMounted(() => { |
| | | // çå¬çªå£å¤§å°åå |
| | | window.addEventListener("resize", () => { |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | width: 8.75rem; |
| | | height: 4.19rem; |
| | | border-radius: 0.31rem; |
| | | background: linear-gradient(90deg, |
| | | background: linear-gradient( |
| | | 90deg, |
| | | rgba(0, 224, 255, 0.74) 0%, |
| | | rgba(0, 224, 255, 0.4) 60%, |
| | | rgba(235, 242, 243, 0.13) 100%); |
| | | rgba(235, 242, 243, 0.13) 100% |
| | | ); |
| | | color: rgba(16, 16, 16, 1); |
| | | color: rgb(255, 255, 255); |
| | | font-size: 1.13rem; |
| | |
| | | //å
è®¸æ°æ® |
| | | export const RunOperation = (id, ispossible) => http.post(`/api/Maintenance/RunOperation?id=${id}&ispossible=${ispossible}`); |
| | | export const ChangeTasState = (data) => http.post("/api/Maintenance/ChangeTasState", data); |
| | | // |
| | | export const UpstreamInspectionRoad = (data) => http.post("/api/AlarmResetHsy/UpstreamInspectionRoad", data); |
| | |
| | | |
| | | <router-view |
| | | style=" |
| | | height: calc(100vh - 4.38rem - 1.61rem); |
| | | width: calc(100vw - 1.61rem); |
| | | height: calc(100vh - 4.38rem - 10rem); |
| | | width: calc(100vw - 10rem); |
| | | " |
| | | v-slot="{ Component }" |
| | | > |
| | |
| | | .main { |
| | | width: 100%; |
| | | flex: 1; |
| | | background-image: url("../assets/index/bg.png"); |
| | | background-repeat: no-repeat; |
| | | background-size: 100% 100%; |
| | | padding: 0.81rem 0.81rem; |
| | | // background-image: url("../assets/index/bg.png"); |
| | | // background-repeat: no-repeat; |
| | | // background-size: 100% 100%; |
| | | background: linear-gradient(to bottom, #0072c6, #2e6aa7); |
| | | padding: 5rem 5rem; |
| | | box-sizing: border-box; |
| | | } |
| | | |
| | |
| | | display: flex; |
| | | justify-content: center; |
| | | color: #fff; |
| | | font-size: 5rem; |
| | | font-size: 15rem; |
| | | letter-spacing: 5rem; |
| | | font-weight: bold; |
| | | " |
| | | > |
| | | æ£ä¸éæ£ä¿®çæ§ |
| | | æ£13é |
| | | </div> |
| | | <div |
| | | style=" |
| | |
| | | margin-top: 3rem; |
| | | " |
| | | > |
| | | <span>è¡éçµæºç¶æ</span> |
| | | <div |
| | | style=" |
| | | width: 8rem; |
| | | height: 8rem; |
| | | border-radius: 50% 50%; |
| | | margin-top: 2rem; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | width: 50%; |
| | | height: 3rem; |
| | | background-color: #95f204; |
| | | margin-top: 1rem; |
| | | border-radius: 1.5rem; |
| | | " |
| | | :class="true ? 'shadow' : ''" |
| | | > |
| | | <img |
| | | style="width: 8rem; height: 8rem" |
| | | src="@/assets/TheCurrentJob/pouer.png" |
| | | alt="" |
| | | /> |
| | | ></div> |
| | | </div> |
| | | </div> |
| | | <!-- <div |
| | | |
| | | <div |
| | | style=" |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | height: 20rem; |
| | | color: #fff; |
| | | font-size: 3rem; |
| | | |
| | | font-weight: bold; |
| | | margin-top: 5rem; |
| | | font-size: 10rem; |
| | | " |
| | | > |
| | | <span>管ç人åç¶æ</span> |
| | | </div> --> |
| | | <span> CR400AF</span> |
| | | <span>G7237</span> |
| | | </div> |
| | | |
| | | <div |
| | | style=" |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-top: 10%; |
| | | margin-top: 6%; |
| | | padding-bottom: 10%; |
| | | border: 0.15rem solid #fff; |
| | | height: 70%; |
| | | box-sizing: border-box; |
| | | border-radius: 2rem; |
| | | background-color: rgba(39, 136, 214, 0.5); |
| | | box-shadow: 0px 0px 1rem 0rem rgba(18, 150, 219, 0.5); |
| | | " |
| | | > |
| | | <span style="color: #fff; font-size: 3rem; margin-top: 2rem" |
| | | >æ£ä¿®äººåç¶æ</span |
| | | > |
| | | |
| | | <div |
| | | style=" |
| | | display: flex; |
| | |
| | | margin-top: 3rem; |
| | | " |
| | | > |
| | | <div style="color: #fff; font-size: 3rem; width: 90%"> |
| | | <div style="display: flex; flex-direction: column; width: 100%"> |
| | | <div |
| | | style=" |
| | | height: 5rem; |
| | | font-size: 6rem; |
| | | font-weight: bold; |
| | | |
| | | display: flex; |
| | | align-items: center; |
| | | padding-left: 2rem; |
| | | box-sizing: border-box; |
| | | " |
| | | > |
| | | <img |
| | | style="width: 6rem; height: 6rem" |
| | | src="@/assets/imgs/ä¸ä¸ä¸ª.png" |
| | | alt="" |
| | | /> |
| | | <div |
| | | style=" |
| | | width: 30%; |
| | | text-align: justify; |
| | | text-justify: distribute-all-lines; |
| | | text-align-last: justify; |
| | | margin-left: 2rem; |
| | | color: #fff; |
| | | " |
| | | > |
| | | ç»é¡¶äººæ° |
| | | </div> |
| | | </div> |
| | | <div |
| | | style=" |
| | | margin-left: 2rem; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | align-items: center; |
| | | margin-top: 5rem; |
| | | " |
| | | > |
| | | <div |
| | | style=" |
| | | width: 40%; |
| | | font-size: 6rem; |
| | | color: #fff; |
| | | background-color: #058f66; |
| | | border-radius: 1.5rem; |
| | | padding: 0.5rem 1rem; |
| | | text-align: center; |
| | | " |
| | | > |
| | | å·²ç»è®° <span>2人</span> |
| | | </div> |
| | | <div |
| | | style=" |
| | | width: 40%; |
| | | font-size: 6rem; |
| | | color: #fff; |
| | | background-color: #d9001b; |
| | | border-radius: 1.5rem; |
| | | padding: 0.5rem 1rem; |
| | | text-align: center; |
| | | " |
| | | > |
| | | å·²ç»é¡¶ <span>2人</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div |
| | | style=" |
| | | color: #fff; |
| | | font-size: 5rem; |
| | | display: flex; |
| | | width: 90%; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | margin-top: 5rem; |
| | | " |
| | | > |
| | | <div style="color: #fff">æ£ä¿®äººåå表</div> |
| | | <div style="color: #fff"> |
| | | æ£å¨æ£ä¿®äººåæ°é: |
| | | <span style="font-size: 4rem">{{ totalCount }}</span |
| | | >ä½ |
| | | </div> |
| | | </div> |
| | | <div style="width: 90%; margin-top: 2rem"> |
| | | <el-table |
| | | empty-text="ææ æ°æ®" |
| | | :data="tableData" |
| | | style="width: 100%" |
| | | height="750" |
| | | :header-cell-style="{ |
| | | height: '1.61rem', |
| | | color: '#1AC8FE', |
| | | background: '#0A5B91', |
| | | fontSize: '0.88rem', |
| | | color: '#fff', |
| | | background: '#1860A8', |
| | | fontSize: '2rem', |
| | | }" |
| | | :cell-style="{ |
| | | color: '#fff', |
| | | background: '#147BAF', |
| | | background: 'rgba(23, 87, 149, 0.9)', |
| | | }" |
| | | > |
| | | <el-table-column |
| | | prop="userTrueName" |
| | | label="åºå·" |
| | | align="center" |
| | | min-width="1%" |
| | | /> |
| | | <el-table-column |
| | | prop="userTrueName" |
| | | label="å§å" |
| | |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="maintenanceDate" |
| | | label="ä¸çº¿æ¶é´" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | </el-table> |
| | | </div> |
| | | |
| | | <div |
| | | style=" |
| | | position: absolute; |
| | | bottom: 4%; |
| | | color: #fff; |
| | | font-weight: bold; |
| | | font-size: 3rem; |
| | | margin-top: 2rem; |
| | | " |
| | | > |
| | | {{ currentTime }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <script setup> |
| | | import { onMounted, reactive, ref, toRef } from "vue"; |
| | | import { PersonnelMonitoring } from "@/api/newapi/Maintenance"; |
| | | import { onMounted, reactive, ref, toRef, onUnmounted } from "vue"; |
| | | import { |
| | | PersonnelMonitoring, |
| | | UpstreamInspectionRoad, |
| | | } from "@/api/newapi/Maintenance"; |
| | | import { formatTime } from "@/utils/index"; |
| | | |
| | | const tableData = ref([]); |
| | | const pageTotal = ref(0); |
| | |
| | | ).length; |
| | | }); |
| | | }; |
| | | onMounted(() => { |
| | | const currentTime = ref(""); |
| | | const timer = ref(null); |
| | | onMounted(async () => { |
| | | clearInterval(timer.value); |
| | | initData(); |
| | | //è·åå½åæ¶é´ |
| | | const date = new Date(); |
| | | await UpstreamInspectionRoad(); |
| | | timer.value = setInterval(() => { |
| | | currentTime.value = formatTime(date, "yyyy-MM-dd hh:mm:ss"); |
| | | date.setSeconds(date.getSeconds() + 1); |
| | | }, 1000); |
| | | }); |
| | | onUnmounted(() => { |
| | | clearInterval(timer.value); |
| | | }); |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .Largescreen { |
| | | display: flex; |
| | | flex-direction: column; |
| | | background-color: rgba($color: #000000, $alpha: 0.2); |
| | | // background-color: rgba($color: #000000, $alpha: 0.2); |
| | | .shadow { |
| | | box-shadow: 0px 0px 1rem 0.5rem rgb(18, 150, 219); |
| | | } |
| | | } |
| | | :deep(.el-table__empty-block) { |
| | | background-color: rgba(23, 87, 149, 0.9); |
| | | } |
| | | :deep(.el-scrollbar__wrap) { |
| | | background-color: rgba(23, 87, 149, 0.9); |
| | | } |
| | | </style> |