Browse Source

添加后台SSO跳转,仅经编模块
底部导航切换过快问题优化

liling 4 months ago
parent
commit
308ddc67ce
3 changed files with 24 additions and 3 deletions
  1. 7 1
      public/conf.js
  2. 16 1
      src/pages/components/Bottom.vue
  3. 1 1
      src/pages/components/In02.vue

+ 7 - 1
public/conf.js

@@ -3,12 +3,18 @@ AutoPlayer = false; //开启自动漫游
 //开发环境接口服务地址
 ApiServer = "http://192.168.1.66:8080"
 //生产环境接口服务地址
-//ApiServer = http://192.168.66.133:8080"; //生产服务器上打开该行注释
+//ApiServer = "http://192.168.66.133:8080"; //生产服务器上打开该行注释
 //----------------------------------------------
 //开发环境模型服务地址
 PLAYER3D_URL = "ws://192.168.1.100:8082"
 //生产环境模型服务地址
 //PLAYER3D_URL = "ws://192.168.66.133:8082"; //生产服务器上打开该行注释
+//-----------------------------------------------
+//开发环境管理后台SSO地址
+//ADMIN_SSO_URL = 'http://localhost/twin/sso';
+//生产环境管理后台SSO地址
+ADMIN_SSO_URL = 'http://192.168.66.133/twin/sso';//生产服务器上打开该行注释
+
 BODY_H_RATE = (window.innerHeight/1080).toFixed(3)*1;
 document.documentElement.style.setProperty('--hRate', BODY_H_RATE);
 DEV_ALAR_COLOR = "ff6c00"; //全局设备告警颜色

+ 16 - 1
src/pages/components/Bottom.vue

@@ -22,6 +22,9 @@ export default {
         }
     },
     setup(props,{emit}) {
+        let clickTime = 0;
+        let ClickTimeLong = 4;//导航间隔时长
+        let clickTimer = null;
         const showIndexData = ref('');
         let dataTimer = null;
         const btnFrontBg = require('@/assets/image/nav_btn_front.png');
@@ -43,6 +46,7 @@ export default {
                         navlist.value[i].active=true;
                     }else navlist.value[i].active=false;
                 }
+                clickTimeCal();
             }
         },{deep:true,immediate:true})
 
@@ -70,8 +74,18 @@ export default {
  
         //const emit = defineEmits(['call']);
 
+        function clickTimeCal(){
+            clickTime = 0;
+            window.clearInterval(clickTimer);
+            clickTimer = setInterval(function(){
+                clickTime++; //切换间隔时长计数器
+                if(clickTime>10000) clickTime = ClickTimeLong;//达到一定时长时后,初始化为最大间隔时长
+            },1000)
+        }
+
         function loadNavModel(item){
-            if(showIndexData.value=='dataindex' && item.code=='IN02'){
+            if(clickTime<ClickTimeLong){
+                //切换间隔小于4秒时,不响应
                 return;
             }
             for(let i=0;i<navlist.value.length;i++){
@@ -85,6 +99,7 @@ export default {
                 DataFull.GetProductionLneInfo();
             }
             emit('loadNavModel',item);
+            clickTimeCal();
         }
 
         onMounted(()=>{

+ 1 - 1
src/pages/components/In02.vue

@@ -1820,7 +1820,7 @@ export default {
         }
         //切换到数据消费后台
         function toAdmin(){
-
+            window.location.href= window.ADMIN_SSO_URL+'?role='+(showIndexData=='index'?"producer":"manager");
         }
         function switchIndex(){
             if(showIndexData.value=='index'){