From 554ea194fa4332e97c3def7e010acecde26b48d5 Mon Sep 17 00:00:00 2001 From: yanjinhui <3306209981@qq.com> Date: 星期四, 28 八月 2025 10:17:04 +0800 Subject: [PATCH] 前端页面的修改 --- 项目代码/前端/单机版/src/views/tts/UserManagement/Usermanagement.vue | 47 +++ 项目代码/前端/后台/src/views/Login/components/LoginForm.vue | 8 项目代码/前端/后台/src/views/tts/PickAndDrop/PickAndDrop.vue | 300 ++++++++++++++++-------- 项目代码/前端/单机版/src/utils/index.js | 3 项目代码/前端/后台/src/api/newapi/user.js | 3 项目代码/前端/单机版/src/api/newapi/Parameters.js | 3 项目代码/前端/单机版/src/layout/index.vue | 70 ++++- 项目代码/前端/单机版/src/api/user.js | 4 项目代码/前端/单机版/src/views/tts/PickAndDrop/PickAndDrop.vue | 130 ++++------ 项目代码/前端/后台/src/api/newapi/Parameters.js | 5 项目代码/前端/单机版/src/assets/index/icon/主页图片.png | 0 项目代码/前端/后台/src/views/Authorization/iPaddress/iPaddress.vue | 18 + 项目代码/前端/后台/src/permission.ts | 12 项目代码/前端/单机版/src/views/tts/AlarmReset/AlarmReset.vue | 1 项目代码/前端/后台/src/axios/service.ts | 2 项目代码/前端/后台/src/views/Authorization/Team/Team.vue | 2 项目代码/前端/单机版/src/views/tts/PickAndDrop/Manualcontrol.vue | 69 ++++- 17 files changed, 446 insertions(+), 231 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/newapi/Parameters.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/newapi/Parameters.js" index feaabef..9e5167d 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/newapi/Parameters.js" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/newapi/Parameters.js" @@ -11,3 +11,6 @@ export const Pouse = () => http.post(`/api/Parameters/PauseButton`); //鑾峰彇褰撳墠浼哥缉鏉嗕綅缃� export const GetPosition = () => http.post(`/api/Parameters/CurrentLocation`); + +//鑾峰彇褰撳墠瀹㈡埛绔殑ip鍦板潃鏉ュ喅瀹氳棰戞祦 +export const GetStandid=()=>http.post(`/api/IPaddress/GetStandid`); diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/user.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/user.js" index 2304916..551bcf3 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/user.js" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/api/user.js" @@ -24,7 +24,9 @@ //淇敼瀵嗙爜 id=${data.id}& export const UpdatePassword = (data) => http.post(`/api/User/modifyPwd?newPwd=${data.newPwd}&oldPwd=${data.oldPwd}`) // -export const UpdatePwd = (data) => http.post(`/api/User/UpdatePwd?id=${data.id}&newPwd=${data.newPwd}&oldPwd=${data.oldPwd}`) +// export const UpdatePwd = (data) => http.post(`/api/User/UpdatePwd?id=${data.id}&newPwd=${data.newPwd}&oldPwd=${data.oldPwd}`) +export const UpdatePwd = (data) =>http.post(`/api/User/UpdatePwd?id=${encodeURIComponent(data.id)}&newPwd=${encodeURIComponent(data.newPwd)}&oldPwd=${encodeURIComponent(data.oldPwd)}`) + //瀵煎嚭鐢ㄦ埛鍒楄〃 export const ExportApi = (data) => http.download("/api/User/Export", data, "鐢ㄦ埛鍒楄〃鏁版嵁.xlsx", "鍔犺浇涓�"); diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/assets/index/icon/\344\270\273\351\241\265\345\233\276\347\211\207.png" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/assets/index/icon/\344\270\273\351\241\265\345\233\276\347\211\207.png" new file mode 100644 index 0000000..2de6313 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/assets/index/icon/\344\270\273\351\241\265\345\233\276\347\211\207.png" Binary files differ diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/layout/index.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/layout/index.vue" index 26a8b4c..1447849 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/layout/index.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/layout/index.vue" @@ -34,17 +34,34 @@ alt="" /> </div> - <!-- <div style="color: red;font-size:1.8rem; align-items: center"> - 鎶ヨ锛�<span>{{ - isfalsedata.length <= 0 ? "" : isfalsedata[0].AlarmContent - }}</span> - </div> --> <!-- 鎷挎渶鏂扮殑涓�鏉℃暟鎹� --> - <div style="color: red;font-size:1.8rem; align-items: center"> + <!-- <div style="color: red;font-size:1.8rem; align-items: center"> <span>{{ isfalsedata.length <= 0 ? "" : isfalsedata[isfalsedata.length - 1].AlarmContent }}</span> + </div> --> + <div style=" + display: flex; + justify-content: center; + align-items: center; + width: 45%; + "> + <img + style=" + width: 3.88rem; + height: 3.88rem; + cursor: pointer; + " + src="@/assets/index/icon/涓婚〉鍥剧墖.png" + alt="" + @click="router.push({ path: '/index' })" + /> + <!--@/assets/index/icon/home.png + <span style="margin-right: 1.81rem;font-size: 2.88rem;color: rgb(255, 255, 255)" + @click="router.push({ path: '/index' })" + >杩斿洖</span> --> </div> + <!-- 鍗犱綅 --> @@ -70,7 +87,8 @@ >鏉冮檺淇敼</span > --> - <img + <!-- 鍏ㄥ眬 --> + <!-- <img v-if="!isFullscreen" style=" width: 2.88rem; @@ -81,7 +99,7 @@ src="@/assets/screen.png" alt="" @click="screenonToggle" - /> + /> --> <img v-if="isFullscreen" style=" @@ -94,20 +112,23 @@ alt="" @click="screenonToggle" /> - <img + <!-- 杩斿洖涓婚〉 --> + <!-- <img style=" width: 2.88rem; height: 2.88rem; - margin-right: 1.81rem; cursor: pointer; " src="@/assets/index/icon/home.png" alt="" @click="router.push({ path: '/index' })" - /> + /> --> + <!-- <span style="margin-right: 1.81rem;font-size: 1.88rem;color: rgb(255, 255, 255)" + @click="router.push({ path: '/index' })" + >杩斿洖</span> --> <div> <span - style="color: rgb(255, 255, 255); font-size: 1.88rem" + style="color: rgb(255, 255, 255);cursor: pointer; font-size: 1.88rem; ;" class="tetxsize" >瑙掕壊锛歿{ acountInfo.roleName }}</span > @@ -119,7 +140,8 @@ >濮撳悕锛歿{ acountInfo.userTrueName }}</span > </div> - <img + <!-- 澶村儚 --> + <!-- <img v-if="avatar" @click="to(links[0])" :src="avatar" @@ -146,9 +168,10 @@ overflow: hidden; box-shadow: 0rem 0.13rem 0.38rem 0rem rgba(0, 0, 0, 0.4); " - /> + /> --> - <div + <!-- 鐢ㄦ埛鍚� --> + <!-- <div style=" cursor: pointer; line-height: 1.25rem; @@ -159,8 +182,10 @@ class="tetxsize" > {{ userName }} - </div> + </div> --> </div> + + <!--閫�鍑哄浘鐗� --> <img @click="to(links[1])" src="@/assets/index/loginout.png" @@ -169,9 +194,22 @@ height: 2.44rem; height: 2.44rem; margin-left: 0.69rem; + margin-right: 1.81rem; " alt="" /> + <!-- 鍏ㄥ眬鏂规硶鍥剧墖 --> + <img + v-if="!isFullscreen" + style=" + width: 2.88rem; + height: 2.88rem; + cursor: pointer; + " + src="@/assets/screen.png" + alt="" + @click="screenonToggle" + /> </div> </div> </header> diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/utils/index.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/utils/index.js" index 5ab22c0..07301a1 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/utils/index.js" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/utils/index.js" @@ -1,11 +1,12 @@ import { dayjs } from "element-plus"; // import XLSX from "xlsx"; //瀵煎叆xlsx -export const baseUrl = "http://127.0.0.1:1598" +export const baseUrl = "http://192.168.1.103:9093" // http://127.0.0.1:1598 // http://192.168.1.103:9093 浠ュ墠绾夸笂鍦板潃 export const faceRecognitionUrl = "http://192.168.1.103:9095" +// export const faceRecognitionUrl = "http://127.0.0.1:1598" //瀵硅薄杞現ormData鐢熸垚鏂规硶 export function objToFormData(obj) { diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/AlarmReset/AlarmReset.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/AlarmReset/AlarmReset.vue" index a4a8bf5..7662d84 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/AlarmReset/AlarmReset.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/AlarmReset/AlarmReset.vue" @@ -103,6 +103,7 @@ clearInterval(timer.value); // 鍒涘缓WebSocket杩炴帴 //"ws://127.0.0.1:9295/admin" + //ws://192.168.1.103:5173 //192.168.1.103 client.value = new WebSocket("ws://192.168.1.103:5173/"); client.value.onopen = function () { diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/Manualcontrol.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/Manualcontrol.vue" index 7e9a5b3..8162b30 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/Manualcontrol.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/Manualcontrol.vue" @@ -565,6 +565,7 @@ AutoPickAndDrop, Pouse, GetParameter, + GetStandid, } from "@/api/newapi/Parameters.js"; // import EZUIKit from "ezuikit-js"; @@ -778,26 +779,63 @@ const webRtcServer_left = ref(null) const webRtcServer_right = ref(null) -// 鎽勫儚澶� RTSP 鍦板潃锛屾敞鎰� %23 鏇夸唬 #锛岃繖鏄� URL 缂栫爜 瑙嗛缂栫爜鏍煎紡 浠� H.265 淇敼涓� H.264锛�265涓嶆敮鎸� -const rtspLeft = 'rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/101' -const rtspRight = 'rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/201' +// 鎽勫儚澶� RTSP 鍦板潃锛屾敞鎰� %23 鏇夸唬 #锛岃繖鏄� URL 缂栫爜 ;瑙嗛缂栫爜鏍煎紡 浠� H.265 淇敼涓� H.264锛�265涓嶆敮鎸� +const videoStreamList = [ + // index = StationID - 1锛屽搴� StationID = 1 鏃跺彇绗� 0 椤� + { + left: "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/201" + }, + { + left: "rtsp://admin:MXmx2380%23@192.168.1.169:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.169:554/Streaming/Channels/201" + }, + { + left: "rtsp://admin:MXmx2380%23@192.168.1.170:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.170:554/Streaming/Channels/201" + } + // 鍙互缁х画娣诲姞鏇村绔欑偣娴佸湴鍧� +]; +const getStationId = async () => { + try { + const res = await GetStandid() + console.log("鎵嬪姩瑙嗛鐩戞帶绔欑偣",res) + if (res.status) { + const stationId = parseInt(res.data); + initVideoByStationId(stationId); + } else { + ElMessage.error("鑾峰彇绔欑偣缂栧彿澶辫触锛�" + res.message); + } + } catch (err) { + ElMessage.error("璇锋眰澶辫触锛�" + err.message); + } +}; // WebRtcStreamer 鏈嶅姟鍦板潃 const serverUrl = 'http://192.168.1.103:8000' // 鈫� 鏀逛负浣犺繍琛岀殑閭e彴鐢佃剳鐨� IP -const initVideo = () => { - try { - webRtcServer_left.value = new WebRtcStreamer('video_left', serverUrl) - webRtcServer_left.value.connect(rtspLeft) +const initVideoByStationId = (stationId) => { + const index = stationId - 1; - webRtcServer_right.value = new WebRtcStreamer('video_right', serverUrl) - webRtcServer_right.value.connect(rtspRight) - - console.log('瑙嗛鍒濆鍖栧畬鎴�') - } catch (err) { - ElMessage.error('瑙嗛鍒濆鍖栧け璐�: ' + err.message) + if (index < 0 || index >= videoStreamList.length) { + ElMessage.error("鏃犳晥鐨勭珯鐐圭紪鍙凤細" + stationId); + return; } -} + + const rtspUrls = videoStreamList[index]; + + try { + webRtcServer_left.value = new WebRtcStreamer("video_left", serverUrl); + webRtcServer_left.value.connect(rtspUrls.left); + + webRtcServer_right.value = new WebRtcStreamer("video_right", serverUrl); + webRtcServer_right.value.connect(rtspUrls.right); + + console.log("瑙嗛鍒濆鍖栧畬鎴愶細", rtspUrls); + } catch (err) { + ElMessage.error("瑙嗛鍒濆鍖栧け璐�: " + err.message); + } +}; //閿�姣佽棰戝嚱鏁� const destroyVideo = () => { @@ -835,7 +873,8 @@ onMounted(() => { - initVideo(), + getStationId(); // 椤甸潰鍔犺浇鏃惰嚜鍔ㄨ幏鍙栧苟鎾斁瑙嗛 + // initVideo(), isStart.value = true; // 璁剧疆涓哄紑濮嬬姸鎬� createSocket(); getParameter(); diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/PickAndDrop.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/PickAndDrop.vue" index bddf55c..79db6ef 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/PickAndDrop.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/PickAndDrop/PickAndDrop.vue" @@ -37,25 +37,9 @@ <div class="item">缂╁埌浣�:{{ 0 }}</div> <div class="item">浼稿嚭閫熷害:{{ ruleForm.extendSpeed }}</div> <div class="item">缂╁洖閫熷害:{{ ruleForm.extendSpeed }}</div> - <!-- <div class="open"> - <div class="city"> - <div class="dotted"></div> - <div class="pulse1"></div> - <div class="pulse2"></div> - <div class="pulse3"></div> - </div> - </div> --> </div> <!-- 瑙嗛妗� --> <div style="display: flex; justify-content: center"> - <!-- <div - style=" - display: flex; - flex-direction: column; - align-items: center; - width: 80%; - " - > --> <!-- 妯睆瑙嗛鐩戞帶宸︿晶 --> <div class="video_l"> <video @@ -82,30 +66,12 @@ <span>鍙充晶璀︽儠鏈烘瀯</span> <span></span> </div> - <!-- 瑙嗛妗� --> - - <!-- <div - style=" - display: flex; - flex-direction: column; - align-items: center; - width: 80%; - " - > --> <div class="operate"> <div class="item">浼稿埌浣�:{{ ruleForm.leftPosition }}</div> <!-- ruleForm.leftPosition --> <div class="item">缂╁埌浣�:{{ 0 }}</div> <div class="item">浼稿嚭閫熷害:{{ ruleForm.extendSpeed }}</div> <div class="item">缂╁洖閫熷害:{{ ruleForm.extendSpeed }}</div> - <!-- <div class="open"> - <div class="city"> - <div class="dotted"></div> - <div class="pulse1"></div> - <div class="pulse2"></div> - <div class="pulse3"></div> - </div> - </div> --> </div> <div style="display: flex; justify-content: center;"> <!-- 妯睆瑙嗛鐩戞帶鍙充晶 --> @@ -120,8 +86,6 @@ height="100%" ></video> </div> - <!-- </div> --> - </div> </div> </div> @@ -144,18 +108,8 @@ <div class="item">缂╁埌浣�:{{ 0 }}</div> <div class="item">浼稿嚭閫熷害:{{ ruleForm.extendSpeed }}</div> <div class="item">缂╁洖閫熷害:{{ ruleForm.extendSpeed }}</div> - <!-- <div class="open"> - <div class="city"> - <div class="dotted"></div> - <div class="pulse1"></div> - <div class="pulse2"></div> - <div class="pulse3"></div> - </div> - </div> --> </div> - <!-- <span style="color: #fff; font-size: 2.5rem; font-weight: bold" - >瑙嗛鐩戞帶宸︿晶</span - > --> + <div style="display: flex; flex-direction: column; align-items: center"> <div class="video_l"> <video @@ -186,18 +140,7 @@ <div class="item">缂╁埌浣�:{{ 0 }}</div> <div class="item">浼稿嚭閫熷害:{{ ruleForm.retractionSpeed }}</div> <div class="item">缂╁洖閫熷害:{{ ruleForm.retractionSpeed }}</div> - <!-- <div class="open"> - <div class="city"> - <div class="dotted"></div> - <div class="pulse1"></div> - <div class="pulse2"></div> - <div class="pulse3"></div> - </div> - </div> --> </div> - <!-- <span style="color: #fff; font-size: 2.5rem; font-weight: bold" - >瑙嗛鐩戞帶鍙充晶</span - > --> <div style="display: flex; flex-direction: column; align-items: center"> <div class="video_r"> <video @@ -233,6 +176,7 @@ Pouse, GetPosition, GetParameter, + GetStandid } from "@/api/newapi/Parameters.js"; const router = useRouter(); @@ -251,8 +195,6 @@ retractionSpeed: 0, manualExtend: 0, manualRetraction: 0, - // depid: userInfo.depid, - // account: userInfo.userName, leftPosition: 0, rightPosition: 0, }); @@ -347,31 +289,66 @@ const webRtcServer_right = ref(null); // 鎽勫儚澶� RTSP 鍦板潃锛屾敞鎰� %23 鏇夸唬 #锛岃繖鏄� URL 缂栫爜 -const rtspLeft = - "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/101"; -const rtspRight = - "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/201"; +const videoStreamList = [ + // index = StationID - 1锛屽搴� StationID = 1 鏃跺彇绗� 0 椤� + { + left: "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.168:554/Streaming/Channels/201" + }, + { + left: "rtsp://admin:MXmx2380%23@192.168.1.169:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.169:554/Streaming/Channels/201" + }, + { + left: "rtsp://admin:MXmx2380%23@192.168.1.170:554/Streaming/Channels/101", + right: "rtsp://admin:MXmx2380%23@192.168.1.170:554/Streaming/Channels/201" + } + // 鍙互缁х画娣诲姞鏇村绔欑偣娴佸湴鍧� +]; +const getStationId = async () => { + try { + const res = await GetStandid() + console.log("瑙嗛鐩戞帶绔欑偣",res) + if (res.status) { + const stationId = parseInt(res.data); + initVideoByStationId(stationId);/// 浼犻�掑埌瑙嗛鍒濆鍖栧嚱鏁帮紙璋冪敤鏂规硶锛� + } else { + ElMessage.error("鑾峰彇绔欑偣缂栧彿澶辫触锛�" + res.message); + } + } catch (err) { + ElMessage.error("璇锋眰澶辫触锛�" + err.message); + } +}; + + // WebRtcStreamer 鏈嶅姟鍦板潃 const serverUrl = "http://192.168.1.103:8000"; // 鈫� 鏀逛负浣犺繍琛岀殑閭e彴鐢佃剳鐨� IP -const initVideo = () => { +//鏍规嵁鍚庣杩斿洖鐨勪笉鍚屾暟瀛楁潵璇诲彇涓嶅悓鐨勮棰戠洃鎺ф祦 +const initVideoByStationId = (stationId) => { + const index = stationId - 1; + + if (index < 0 || index >= videoStreamList.length) { + ElMessage.error("鏃犳晥鐨勭珯鐐圭紪鍙凤細" + stationId); + return; + } + + const rtspUrls = videoStreamList[index]; + try { webRtcServer_left.value = new WebRtcStreamer("video_left", serverUrl); - webRtcServer_left.value.connect(rtspLeft); + webRtcServer_left.value.connect(rtspUrls.left); webRtcServer_right.value = new WebRtcStreamer("video_right", serverUrl); - webRtcServer_right.value.connect(rtspRight); + webRtcServer_right.value.connect(rtspUrls.right); - console.log( - "瑙嗛鍒濆鍖栧畬鎴�", - webRtcServer_left.value, - webRtcServer_right.value - ); + console.log("瑙嗛鍒濆鍖栧畬鎴愶細", rtspUrls); } catch (err) { ElMessage.error("瑙嗛鍒濆鍖栧け璐�: " + err.message); } }; + const destroyVideo = () => { if (webRtcServer_left.value) { @@ -386,7 +363,8 @@ // 浠ヤ笂鏄棰戠洃鎺� onMounted(() => { - initVideo(); + getStationId(); // 椤甸潰鍔犺浇鏃惰嚜鍔ㄨ幏鍙栧苟鎾斁瑙嗛 + // initVideoByStationId(); //鐩戝惉绐楀彛澶у皬鍙樺寲 window.addEventListener("resize", () => { nextTick(() => { @@ -430,9 +408,6 @@ const isPortrait = ref(checkOrientation() === 'portrait'); onActivated(() => { - // 缂撳瓨椤甸潰 鎵撳紑椤甸潰 瀹炵幇鎾斁 - // const video = document.getElementById("video"); - // video.paused && video.play(); ["video_left", "video_right"].forEach((id) => { const video = document.getElementById(id); if (video && video.paused) video.play(); @@ -441,9 +416,6 @@ // 椤甸潰鍋滅敤 onDeactivated(() => { - // 缂撳瓨椤甸潰 绂诲紑椤甸潰 瀹炵幇鏆傚仠 - // const video = document.getElementById("video"); - // video.play && video.pause(); ["video_left", "video_right"].forEach((id) => { const video = document.getElementById(id); if (video && !video.paused) video.pause(); diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/UserManagement/Usermanagement.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/UserManagement/Usermanagement.vue" index f18e391..dc40136 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/UserManagement/Usermanagement.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\215\225\346\234\272\347\211\210/src/views/tts/UserManagement/Usermanagement.vue" @@ -1,6 +1,6 @@ <template> <div class="Usermanagement"> - <div class="content"> + <div class="content" > <div class="checkbox"> <div :class="['item', isactive == 1 ? 'isactive' : '']" @@ -208,7 +208,7 @@ > </div> </div> - <div style="margin-top: 1rem; height: 100%"> + <div style="margin-top: 1rem; height: 90%"> <!-- 鐢ㄦ埛鍒楄〃 --> <el-table empty-text="鏆傛棤鏁版嵁" @@ -575,7 +575,7 @@ <el-table-column prop="unitName" label="鍗曚綅鍚嶇О" align="center" /> <el-table-column prop="creater" label="鍒涘缓鑰�" align="center" /> <el-table-column prop="createDate" label="鍒涘缓鏃ユ湡" align="center" /> - <el-table-column label="鎿嶄綔" align="center"> + <el-table-column label="鎿嶄綔" > <template #default="scope"> <span v-if=" @@ -638,7 +638,8 @@ > <el-table-column type="selection" align="center" /> <el-table-column prop="iPaddress" label="ip鍦板潃" align="center" /> - <el-table-column prop="addressname" label="妫�淇亾" align="center" /> + <el-table-column prop="addressname" label="璁惧鍚嶇О" align="center" /> + <el-table-column prop="stationID" label="妫�淇亾" align="center" /> <el-table-column label="鎿嶄綔" align="center"> <template #default="scope"> <span @@ -1387,7 +1388,7 @@ fontSize: isMin ? '2rem' : '1rem', fontWeight: 'bold', }" - >鐢ㄦ埛ip</span + >璁惧ip</span > </div> </template> @@ -1444,14 +1445,44 @@ color: 'black', fontWeight: bold, }" - >妫�淇亾</span + >璁惧鍚嶇О</span > + </div> </template> <el-input style="height: 2rem" size="small" v-model="formip.addressname" + placeholder="璇疯緭鍏�" + /> + </el-form-item> + <el-form-item prop="stationID"> + <template #label> + <div style="display: flex; align-items: flex-end"> + <span + :style="{ + color: 'red', + marginRight: '0.2rem', + fontSize: '2rem', + }" + >*</span + > + <span + :style="{ + fontSize: isMin ? '2rem' : '0.88rem', + color: 'black', + fontWeight: bold, + }" + >杞ㄩ亾绔�</span + > + + </div> + </template> + <el-input + style="height: 2rem" + size="small" + v-model="formip.stationID" placeholder="璇疯緭鍏�" /> </el-form-item> @@ -2446,6 +2477,7 @@ getIpData(); } }; +//绂佹椤甸潰婊戝姩 //鎵归噺鍒犻櫎 const ids = ref([]); @@ -2718,6 +2750,7 @@ id: 0, iPaddress: "", addressname: "", + stationID:0 }); const formipRef = ref(null); //鑾峰彇ip鏁版嵁 @@ -2780,6 +2813,7 @@ onMounted(() => { if (window.innerWidth <= 1080) { isMin.value = true; + // document.body.style.overflow = "hidden"; } //鎵撳嵃褰撳墠灞忓箷瀹藉害 userInfo.value = JSON.parse(localStorage.getItem("user")); @@ -2802,6 +2836,7 @@ width: 100%; display: flex; flex-direction: column; + .checkbox { width: 25rem; diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/Parameters.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/Parameters.js" index 7b1ac95..1674fc5 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/Parameters.js" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/Parameters.js" @@ -8,4 +8,7 @@ //鏆傚仠 export const Pause = (data) => request.post({ url: `/api/Parameters/PauseButton?deptid=${data}` }); //鍥炲幓浼哥缉鏉嗗綋鍓嶄綅缃� -export const GetPosition = (data) => request.post({ url: `/api/Parameters/CurrentLocation?deptid=${data}` }); \ No newline at end of file +export const GetPosition = (data) => request.post({ url: `/api/Parameters/CurrentLocation?deptid=${data}` }); + +//杩斿洖浼哥缉鏉嗘瘡鍙皃lc璁剧疆鐨勫弬鏁� +export const BackfillSpeed=(data)=>request.post({ url: `/api/Parameters/BackfillSpeed?plank=${data}` }); \ No newline at end of file diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/user.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/user.js" index 208b74c..8e7eb85 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/user.js" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/api/newapi/user.js" @@ -24,7 +24,8 @@ //淇敼瀵嗙爜 id=${data.id}& export const UpdatePassword = (data) => request.post({ url: `/api/User/modifyPwd?newPwd=${data.newPwd}&oldPwd=${data.oldPwd}` }) // -export const UpdatePwd = (data) => request.post({ url: `/api/User/UpdatePwd?id=${data.id}&newPwd=${data.newPwd}&oldPwd=${data.oldPwd}` }) +// export const UpdatePwd = (data) => request.post({ url: `/api/User/UpdatePwd?id=${data.id}&newPwd=${data.newPwd}&oldPwd=${data.oldPwd}` }) +export const UpdatePwd = (data) =>http.post(`/api/User/UpdatePwd?id=${encodeURIComponent(data.id)}&newPwd=${encodeURIComponent(data.newPwd)}&oldPwd=${encodeURIComponent(data.oldPwd)}`) //瀵煎嚭鐢ㄦ埛鍒楄〃 export const ExportApi = (data) => http.download("/api/User/Export", data, "鐢ㄦ埛鍒楄〃鏁版嵁.xlsx", "鍔犺浇涓�"); diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/axios/service.ts" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/axios/service.ts" index 9354273..2054b3a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/axios/service.ts" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/axios/service.ts" @@ -20,7 +20,7 @@ // 'http://192.168.1.103:9090' //涓婄嚎鍦板潃 // 'http://192.168.0.80:1596' axiosInstance.interceptors.request.use((res: InternalAxiosRequestConfig) => { - const controller = new AbortController() + const controller = new AbortController() const url = res.url || '' res.signal = controller.signal abortControllerMap.set( diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/permission.ts" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/permission.ts" index a14c3a8..9ef315d 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/permission.ts" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/permission.ts" @@ -39,9 +39,17 @@ await permissionStore.generateRoutes('static') } + // permissionStore.getAddRouters.forEach((route) => { + // router.addRoute(route as unknown as RouteRecordRaw) // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� + // }) + //涓嬮潰鏄垜鑷繁淇敼鐨勮矾鐢辫闂柟寮忥紙涓婇潰璁块棶4000璺緞鎬绘槸鎶ラ敊锛� permissionStore.getAddRouters.forEach((route) => { - router.addRoute(route as unknown as RouteRecordRaw) // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� - }) + const normalizedRoute = { + ...route, + path: route.path.startsWith('/') ? route.path : `/${route.path}` // [!code ++] + }; + router.addRoute(normalizedRoute as unknown as RouteRecordRaw); // [!code ++] + }); const redirectPath = from.query.redirect || to.path const redirect = decodeURIComponent(redirectPath as string) const nextData = to.path === redirect ? { ...to, replace: true } : { path: redirect } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/Team/Team.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/Team/Team.vue" index 1c5c494..3aa45d1 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/Team/Team.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/Team/Team.vue" @@ -111,7 +111,7 @@ }) } -// 缂栬緫鐝粍 +// 缂栬緫鐝粍 const EditTream = (val) => { Treamtype.value = "淇敼" formTeam.value = Object.assign({}, val) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/iPaddress/iPaddress.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/iPaddress/iPaddress.vue" index ffa329f..cf1bf53 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/iPaddress/iPaddress.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Authorization/iPaddress/iPaddress.vue" @@ -160,6 +160,7 @@ formIP.value = { iPaddress: '', addressname: '', + stationID:0, createDate: formatTime(new Date()), creater: JSON.parse(localStorage.getItem('user')).userName } @@ -236,7 +237,8 @@ > <el-table-column type="selection" align="center" /> <el-table-column prop="iPaddress" label="IP鍦板潃" align="center" /> - <el-table-column prop="addressname" label="妫�淇亾" align="center" /> + <el-table-column prop="addressname" label="璁惧鍚嶇О" align="center" /> + <el-table-column prop="stationID" label="妫�淇亾" align="center" /> <!-- <el-table-column prop="creater" label="鍒涘缓鑰�" align="center" /> --> <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" align="center" /> <el-table-column label="鎿嶄綔" align="center"> @@ -335,6 +337,20 @@ placeholder="璇疯緭鍏ユ淇亾鍚嶇О" /> </el-form-item> + <el-form-item prop="stationID"> + <template #label> + <div style="display: flex; align-items: flex-end"> + <span style="color: red; margin-right: 0.2rem">*</span> + <span style="font-size: 0.88rem; color: black; font-weight: bold">妫�淇亾鍙�</span> + </div> + </template> + <el-input + style="height: 2rem" + size="small" + v-model="formIP.stationID" + placeholder="璇疯緭鍏ユ淇亾鍙�" + /> + </el-form-item> </el-form> <template #footer> <div class="dialog-footer" style="text-align: center"> diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Login/components/LoginForm.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Login/components/LoginForm.vue" index 53a8486..d2f38c7 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Login/components/LoginForm.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/Login/components/LoginForm.vue" @@ -197,7 +197,9 @@ addRoute(route as RouteRecordRaw) // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� }) permissionStore.setIsAddRouters(true) - push({ path: redirect.value || permissionStore.addRouters[0].path }) + // push({ path: redirect.value || permissionStore.addRouters[0].path }) + + push({ path: '/PickAndDrop' }) } } } finally { @@ -228,7 +230,9 @@ addRoute(route as RouteRecordRaw) // 鍔ㄦ�佹坊鍔犲彲璁块棶璺敱琛� }) permissionStore.setIsAddRouters(true) - push({ path: redirect.value || permissionStore.addRouters[0].path }) + // push({ path: redirect.value || permissionStore.addRouters[0].path }) + + push({ path: '/tts/PickAndDrop' }) } } diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/tts/PickAndDrop/PickAndDrop.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/tts/PickAndDrop/PickAndDrop.vue" index 1729b30..0383d24 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/tts/PickAndDrop/PickAndDrop.vue" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\211\215\347\253\257/\345\220\216\345\217\260/src/views/tts/PickAndDrop/PickAndDrop.vue" @@ -115,7 +115,7 @@ <div v-if="isMobile" class="content"> <div class="content_l"> <div class="model">宸︿晶浼哥缉鏉�</div> - <div class="operate" style="opacity: 0"> + <div class="operate" style="opacity: 100"> <div class="item">浼稿埌浣�</div> <div class="item">缂╁埌浣�</div> <div class="item">浼稿嚭閫熷害</div> @@ -138,7 +138,7 @@ </div> <div class="content_r"> <div class="model">鍙充晶浼哥缉鏉�</div> - <div class="operate" style="opacity: 0"> + <div class="operate" style="opacity: 100"> <div class="item">浼稿埌浣�</div> <div class="item">缂╁埌浣�</div> <div class="item">浼稿嚭閫熷害</div> @@ -164,9 +164,9 @@ <div v-else class="content_mobile"> <div class="content_l"> <div style="display: flex; align-items: center"> - <div class="model">宸︿晶浼哥缉鏉�</div> + <div class="model">宸︿晶绔栧睆浼哥缉鏉�</div> <div class="mode"></div> - <div class="operate" style="opacity: 0"> + <div class="operate" style="opacity:100"> <div class="item">浼稿埌浣�</div> <div class="item">缂╁埌浣�</div> <div class="item">浼稿嚭閫熷害</div> @@ -190,9 +190,9 @@ </div> <div class="content_r"> <div style="display: flex; align-items: center"> - <div class="model">鍙充晶浼哥缉鏉�</div> + <div class="model">鍙充晶绔栧睆浼哥缉鏉�</div> <div class="mode"></div> - <div class="operate" style="opacity: 0"> + <div class="operate" style="opacity: 100"> <div class="item">浼稿埌浣�</div> <div class="item">缂╁埌浣�</div> <div class="item">浼稿嚭閫熷害</div> @@ -221,6 +221,7 @@ <!-- 閫氳繃鏍囩椤靛垏鎹㈤儴闂紝骞跺姩鎬佸姞杞借閮ㄩ棬鐨勪綅缃暟鎹�� --> <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> <el-tab-pane v-for="item in list" :key="item.id" :label="item.name" :name="item.id"> + <!-- Manualcontrol锛氭帶鍒舵í灞� --> <div class="Manualcontrol"> <div class="button"> <el-button @@ -304,10 +305,10 @@ </div> </div> <div class="operate"> - <div class="item">浼稿埌浣�</div> - <div class="item">缂╁埌浣�</div> - <div class="item">浼稿嚭閫熷害</div> - <div class="item">缂╁洖閫熷害</div> + <div class="item">浼稿埌浣峽{ruleForm.leftPosition}}</div> + <div class="item">缂╁埌浣峽{0}}</div> + <div class="item">浼稿嚭閫熷害{{ruleForm.extendSpeed}}</div> + <div class="item">缂╁洖閫熷害{{ruleForm.extendSpeed}}</div> <!-- <div class="open"> <div class="city"> <div class="dotted"></div> @@ -406,10 +407,10 @@ </div> </div> <div class="operate"> - <div class="item">浼稿埌浣�</div> - <div class="item">缂╁埌浣�</div> - <div class="item">浼稿嚭閫熷害</div> - <div class="item">缂╁洖閫熷害</div> + <div class="item">浼稿埌浣峽{ruleForm.leftPosition}}</div> + <div class="item">缂╁埌浣峽{0}}</div> + <div class="item">浼稿嚭閫熷害{{ruleForm.extendSpeed}}</div> + <div class="item">缂╁洖閫熷害{{ruleForm.extendSpeed}}</div> <!-- <div class="open"> <div class="city"> <div class="dotted"></div> @@ -499,17 +500,17 @@ <span style="font-size: 1.25rem; text-align: center">鐐瑰姩缂�</span> </el-button> </div> - <div style="color: #fff; font-size: 1.5rem"> 宸︿晶浼哥缉鏉� </div> + <div style="color: #fff; font-size: 1.5rem"> 宸︿晶绔栧睆鎵嬪姩浼哥缉鏉� </div> <div style="color: #fff; font-size: 1.5rem"> <!-- 褰撳墠浼哥缉鏉嗕綅缃�:{{ Position.left }} --> </div> </div> <!-- 鎶� style鍘绘帀灏辨樉绀轰簡--> - <div class="operate" style="opacity: 0"> - <div class="item">浼稿埌浣�</div> - <div class="item">缂╁埌浣�</div> - <div class="item">浼稿嚭閫熷害</div> - <div class="item">缂╁洖閫熷害</div> + <div class="operate" style="opacity: 100"> + <div class="item">浼稿埌浣峽{ruleForm.leftPosition}}</div> + <div class="item">缂╁埌浣峽{0}}</div> + <div class="item">浼稿嚭閫熷害{{ruleForm.extendSpeed}}</div> + <div class="item">缂╁洖閫熷害{{ruleForm.extendSpeed}}</div> <!-- <div class="open"> <div class="city"> <div class="dotted"></div> @@ -521,11 +522,21 @@ </div> <div style="display: flex; flex-direction: column; align-items: center"> <div class="video_l"> - <span style="color: #fff; font-size: 1.25rem; font-weight: bold" + <!-- <span style="color: #fff; font-size: 1.25rem; font-weight: bold" >绔栧睆鎵嬪姩瑙嗛鐩戞帶宸︿晶</span > - <img src="@/assets/imgs/right.png" alt="" /> + <img src="@/assets/imgs/right.png" alt="" /> --> + <video + id="video_left" + autoplay + muted + controls + playsinline + width="100%" + height="100%" + ></video> </div> + </div> </div> <div class="content_r"> @@ -596,16 +607,16 @@ <span style="font-size: 1.25rem; text-align: center">鐐瑰姩缂�</span> </el-button> </div> - <div style="color: #fff; font-size: 1.5rem"> 鍙充晶浼哥缉鏉� </div> + <div style="color: #fff; font-size: 1.5rem"> 鍙充晶绔栧睆鎵嬪姩浼哥缉鏉� </div> <div style="color: #fff; font-size: 1.5rem"> <!-- 褰撳墠浼哥缉鏉嗕綅缃�:{{ Position.right }} --> </div> </div> - <div class="operate" style="opacity: 0"> - <div class="item">浼稿埌浣�</div> - <div class="item">缂╁埌浣�</div> - <div class="item">浼稿嚭閫熷害</div> - <div class="item">缂╁洖閫熷害</div> + <div class="operate" style="opacity:100"> + <div class="item">浼稿埌浣峽{ruleForm.leftPosition}}</div> + <div class="item">缂╁埌浣峽{0}}</div> + <div class="item">浼稿嚭閫熷害{{ruleForm.extendSpeed}}</div> + <div class="item">缂╁洖閫熷害{{ruleForm.extendSpeed}}</div> <!-- <div class="open"> <div class="city"> <div class="dotted"></div> @@ -617,11 +628,20 @@ </div> <div style="display: flex; flex-direction: column; align-items: center"> <div class="video_r"> - <span style="color: #fff; font-size: 1.25rem; font-weight: bold" + <!-- <span style="color: #fff; font-size: 1.25rem; font-weight: bold" >瑙嗛鐩戞帶鍙充晶58</span > - <img src="@/assets/imgs/left.png" alt="" /> + <img src="@/assets/imgs/left.png" alt="" /> --> + <video + id="video_left" + autoplay + muted + controls + playsinline + width="100%" + height="100%" + ></video> </div> </div> </div> @@ -639,6 +659,7 @@ <el-radio :value="3">妫�淇亾涓�</el-radio> <el-radio :value="4">妫�淇亾鍥�</el-radio> <el-radio :value="5">妫�淇亾浜�</el-radio> + <el-radio :value="6">妫�淇亾鍏�</el-radio> </el-radio-group> </div> <template #footer> @@ -653,7 +674,7 @@ import { ref, onMounted, nextTick ,onUnmounted,onActivated,onDeactivated ,onBeforeUnmount} from 'vue' import { useRouter } from 'vue-router' import { ElMessage } from 'element-plus' -import { AutoPickAndDrop, ManualOperation, Pause, GetPosition } from '@/api/newapi/Parameters.js' +import { AutoPickAndDrop, ManualOperation, Pause, GetPosition,BackfillSpeed } from '@/api/newapi/Parameters.js' const activeName = ref('first') const router = useRouter() const isShow = ref(false) @@ -749,6 +770,49 @@ console.log(res) }, 2000) +//瀹氫箟浼哥缉鏉嗚繑鍥為�熷害鍙傛暟 +const ruleForm = ref({ + id: 0, + extendSpeed: 0, + retractionSpeed: 0, + manualExtend: 0, + manualRetraction: 0, + leftPosition: 0, + rightPosition: 0, +}); + +//璋冪敤杩斿洖浼哥缉鏉嗚缃弬鏁� +const GetfillSpeed= async(DeptId)=>{ + try{ + const res = await BackfillSpeed(DeptId) + // console.log('DeptId',DeptId) + console.log("杩斿洖閫熷害淇℃伅",res) + if(res.status === true){ + if(res.code === 0){ + ruleForm.value.extendSpeed = res.data == null ? 0 : res.data.extendSpeed; + ruleForm.value.retractionSpeed = + res.data == null ? 0 : res.data.retractionSpeed; + ruleForm.value.manualExtend = + res.data == null ? 0 : res.data.manualExtend; + ruleForm.value.manualRetraction = + res.data == null ? 0 : res.data.manualRetraction; + ruleForm.value.leftPosition = + res.data == null ? 0 : res.data.leftPosition; + ruleForm.value.rightPosition = + res.data == null ? 0 : res.data.rightPosition; + }else{ + ElMessage.error(res.message) + } + }else{ + ElMessage.error('鑾峰彇浼哥缉鏉嗛�熷害澶辫触') + } + } + catch(error){ + console.error(error) + ElMessage.error('鑾峰彇浼哥缉鏉嗛�熷害澶辫触') + } +} + // 閫氳繃鏍囩椤靛垏鎹㈤儴闂紝骞跺姩鎬佸姞杞借閮ㄩ棬鐨勪綅缃暟鎹�� @@ -781,17 +845,17 @@ const webRtcServer_left = ref(null) const webRtcServer_right = ref(null) + //鍒囨崲鏍囩 const handleClick = (tab, event) => { destroyVideo()//鍒囨崲鐨勬椂鍊欐秷闄や笂娆$殑瑙嗛鐩戞帶娴� - console.log(tab.index); + console.log("褰撳墠鏍囩涓嬭〃",tab.index); DeptId.value = Number(tab.index) + 1 - // GetPosition(DeptId.value).then((res) => { - // Position.value.left = res.data.lift - // Position.value.right = res.data.right - // }) + console.log('褰撳墠閮ㄩ棬ID:', DeptId.value) + GetfillSpeed(DeptId.value) + rstp.value=srtpaddres[tab.index].left rstp1.value=srtpaddres[tab.index].right } @@ -895,12 +959,13 @@ } onMounted(() => { + GetfillSpeed(1) //鑾峰彇浼哥缉鏉嗛�熷害 initVideo()//寮�濮嬬殑鏃跺�欏鍏ヨ棰戠洃鎺ф祦 // 鐩戝惉绐楀彛澶у皬鍙樺寲 window.addEventListener('resize', () => { nextTick(() => { if (window.innerWidth > 1200) { - isMobile.value = true + isMobile.value = true //榛樿鏄í灞� } else { isMobile.value = false } @@ -980,20 +1045,6 @@ top: -0.25rem; border-radius: 50%; } - - // .Aspan::after { - // content: ''; - // position: absolute; - // height: 0.66rem; - // /* 璁剧疆杈规鐨勯暱搴� */ - // width: 0.66rem; - // /* 璁剧疆杈规鐨勫搴� */ - // background-color: rgba(102, 255, 255, 1); - // /* 璁剧疆杈规鐨勯鑹� */ - // right: -9.5rem; - // top: -0.25rem; - // border-radius: 50%; - // } } .btn::after { @@ -1033,9 +1084,9 @@ .content { display: flex; .content_l { - display: flex; - flex-direction: column; - justify-content: space-between; + // display: flex; + // flex-direction: column; + // justify-content: space-between; width: 50%; height: 45rem; background-color: rgba(9, 48, 104, 1); @@ -1050,11 +1101,19 @@ font-size: 2rem; } + //妯睆鑷姩椤甸潰宸﹁竟 .operate { + // display: flex; + // margin-left: auto; + // flex-direction: column; + // align-items: flex-end; + // padding: 0.58rem 0.58rem; display: flex; - flex-direction: column; - align-items: flex-end; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 padding: 0.58rem 0.58rem; + margin-bottom: 10px; .item { display: flex; @@ -1074,6 +1133,7 @@ font-size: 1.13rem; padding-left: 0.69rem; margin-top: 0.88rem; + margin-left: 1rem; } .open { @@ -1176,10 +1236,11 @@ } } + //妯睆鑷姩椤甸潰鍙宠竟 .content_r { - display: flex; - flex-direction: column; - justify-content: space-between; + // display: flex; + // flex-direction: column; + // justify-content: space-between; width: 50%; height: 45rem; background-color: rgba(9, 48, 104, 1); @@ -1195,11 +1256,18 @@ font-size: 2rem; } + //妯睆鑷姩椤甸潰鍙宠竟 .operate { - display: flex; - flex-direction: column; - align-items: flex-end; + // display: flex; + // flex-direction: column; + // align-items: flex-end; + // padding: 0.58rem 0.58rem; + display: flex; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 padding: 0.58rem 0.58rem; + margin-bottom: 10px; .item { display: flex; flex-direction: column; @@ -1218,6 +1286,7 @@ font-size: 1.13rem; padding-left: 0.69rem; margin-top: 0.88rem; + margin-left: 10px; } .open { @@ -1321,6 +1390,7 @@ } } +// 鎺у埗绔栧睆鏍峰紡 .content_mobile { display: flex; flex-direction: column; @@ -1343,10 +1413,15 @@ } .operate { + // display: flex; + // flex-direction: column; + // align-items: flex-end; + // padding: 0 0.88rem; display: flex; - flex-direction: column; - align-items: flex-end; - padding: 0 0.88rem; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 + padding: 0.58rem 0.58rem; .item { display: flex; flex-direction: column; @@ -1365,6 +1440,7 @@ font-size: 1.13rem; padding-left: 0.69rem; margin-top: 0.88rem; + margin-right: 1rem; } .open { @@ -1483,10 +1559,15 @@ } .operate { - display: flex; - flex-direction: column; - align-items: flex-end; - padding: 0 0.88rem; + // display: flex; + // flex-direction: column; + // align-items: flex-end; + // padding: 0 0.88rem; + display: flex; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 + padding: 0.58rem 0.58rem; .item { display: flex; flex-direction: column; @@ -1505,6 +1586,7 @@ font-size: 1.13rem; padding-left: 0.69rem; margin-top: 0.88rem; + margin-right: 1rem; } .open { @@ -1639,20 +1721,6 @@ top: -0.25rem; border-radius: 50%; } - - // .Aspan::after { - // content: ''; - // position: absolute; - // height: 0.66rem; - // /* 璁剧疆杈规鐨勯暱搴� */ - // width: 0.66rem; - // /* 璁剧疆杈规鐨勫搴� */ - // background-color: rgba(102, 255, 255, 1); - // /* 璁剧疆杈规鐨勯鑹� */ - // right: -11.8rem; - // top: -0.25rem; - // border-radius: 50%; - // } } .btn::after { @@ -1691,9 +1759,9 @@ .content { display: flex; .content_l { - display: flex; - flex-direction: column; - justify-content: space-between; + // display: flex; + // flex-direction: column; + // // justify-content: space-between; width: 50%; height: 45rem; background-color: rgba(9, 48, 104, 1); @@ -1723,8 +1791,11 @@ .operate { display: flex; - flex-direction: column; - align-items: flex-end; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 + padding: 0.58rem 0.58rem; + .item { display: flex; flex-direction: column; @@ -1732,6 +1803,7 @@ width: 8.75rem; height: 3.19rem; border-radius: 0.31rem; + margin-left:0.5rem ; background: linear-gradient( 90deg, rgba(0, 224, 255, 0.74) 0%, @@ -1742,7 +1814,8 @@ color: rgb(255, 255, 255); font-size: 1.13rem; padding-left: 0.69rem; - margin-top: 0.88rem; + margin-top: 1rem; + margin-bottom: 1rem; } .open { @@ -1846,9 +1919,9 @@ } .content_r { - display: flex; - justify-content: space-between; - flex-direction: column; + // display: flex; + // justify-content: space-between; + // flex-direction: column; width: 50%; height: 45rem; background-color: rgba(9, 48, 104, 1); @@ -1880,9 +1953,14 @@ } .operate { - display: flex; - align-items: flex-end; - flex-direction: column; + // display: flex; + // align-items: flex-end; + // flex-direction: column; + // padding: 0.58rem 0.58rem; + display: flex; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 padding: 0.58rem 0.58rem; .item { @@ -1891,6 +1969,7 @@ justify-content: center; width: 8.75rem; height: 3.19rem; + margin-left:0.5rem ; border-radius: 0.31rem; background: linear-gradient( 90deg, @@ -1902,7 +1981,8 @@ color: rgb(255, 255, 255); font-size: 1.13rem; padding-left: 0.69rem; - margin-top: 0.88rem; + margin-top: 1rem; + margin-bottom: 1rem; } .open { @@ -2043,10 +2123,15 @@ } .operate { - display: flex; - flex-direction: column; - align-items: flex-end; - padding: 0.88rem 0.58rem; + // display: flex; + // flex-direction: column; + // align-items: flex-end; + // padding: 0.88rem 0.58rem; + display: flex; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 + padding: 0.58rem 0.58rem; .item { display: flex; flex-direction: column; @@ -2054,6 +2139,7 @@ width: 8.75rem; height: 4.19rem; border-radius: 0.31rem; + margin-right: 1rem; background: linear-gradient( 90deg, rgba(0, 224, 255, 0.74) 0%, @@ -2199,10 +2285,15 @@ } .operate { - display: flex; - flex-direction: column; - padding: 0 0.88rem; - align-items: flex-end; + // display: flex; + // flex-direction: column; + // padding: 0 0.88rem; + // align-items: flex-end; + display: flex; + flex-direction: row; // 妯悜鎺掑垪 + align-items: center; // 鍨傜洿灞呬腑 + justify-content: flex-start; // 闈犲乏 + padding: 0.58rem 0.58rem; .item { display: flex; flex-direction: column; @@ -2210,6 +2301,7 @@ width: 8.75rem; height: 4.19rem; border-radius: 0.31rem; + margin-right: 1rem; background: linear-gradient( 90deg, rgba(0, 224, 255, 0.74) 0%, -- Gitblit v1.9.3