Explorar el Código

12.20完成工具栏

liuqiao hace 8 meses
padre
commit
580376a760

+ 4 - 0
src/components/header.vue

@@ -74,7 +74,10 @@ const timeFn=()=> {
     headertime.value.dateWeek =  headertime.value.weekday[new Date().getDay()];
       }, 1000);
     }
+   
  const handleSelect = (key) => {
+  //emitter.on('checkeclear');
+  emitter.emit('handleSelect',(key));
     headerid.value=key;
     headeractive.value= headerid.value;
     emit('handleSelect', key);
@@ -83,6 +86,7 @@ const timeFn=()=> {
 const hname=(val)=>{
   headername.value=val// 获取项目名称
 }
+
 defineExpose({headeractive,hname});
    </script>
    <style  lang="scss" scoped>

+ 8 - 3
src/style/style.css

@@ -19,6 +19,11 @@ body,html{
   .maopading{
     padding: 20px;
   }
+  .txt{
+    color: #00FFF0;
+    cursor: pointer;
+    margin-top: 5px;
+  }
   .re_tele1{
 
   }
@@ -133,7 +138,7 @@ background-color: none !important;
     right: 0;
   }
   .line {
-    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
+    /* border-bottom: 1px solid rgba(255, 255, 255, 0.2); */
     box-sizing: border-box;
   }
   .el-overlay-dialog {
@@ -1621,7 +1626,7 @@ z-index: 1;
 }
 .timers .logimg{
    position: absolute;
-   left:40px;
+   left:0.2083rem;
    top:16px;
    font-size: .0729rem;
    display: flex;
@@ -2151,10 +2156,10 @@ border-image: linear-gradient(324deg, rgba(201, 0, 0, 1), rgba(255, 252, 252, 1)
 border-radius: 0px 0px 0px 0px; */
 }
 .htmlclass_txte{
-  color: #fff;
   font-size: 13px;
   font-weight: bold;
   text-align: left;
+ 
 }
 .telet{
   color: #fff !important;

+ 63 - 37
src/view/InfoDialoges.vue

@@ -190,49 +190,62 @@
                                                     </div>
                                                 </div>
                                             </li>
-                                         <el-tooltip class="box-item" effect="dark" content="求解器求解物理时间步长"
+                                            <el-tooltip  class="box-item" effect="dark" content="用户关心的灾情持续总时长"
                                             placement="right">
-                                            <li>  
-                                                <span class="inputtext_1">时间步长</span>  
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dt" />
+                                            <li >
+                                            
+                                                <span class="inputtext_1">模拟时长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.totaltime" />
                                                     <span class="righttext">s</span>
-                                                </div> 
-                                            </li>
-                                        </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="求解器求解空间推进步长"
-                                            placement="right">
-                                            <li><span class="inputtext_1">空间步长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dx" />
-                                                    <span class="righttext">m</span>
                                                 </div>
+                                           
                                             </li>
                                         </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="用户关心的灾情持续总时长"
+                                            <el-tooltip class="box-item" effect="dark" content="演化结果输出频率"
                                             placement="right">
-                                            <li><span class="inputtext_1">模拟时长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.totaltime" />
+                                            <li>
+                                            
+                                                <span class="inputtext_1">输出步长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.reportstep" />
                                                     <span class="righttext">s</span>
                                                 </div>
+                                           
                                             </li>
                                         </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="演化结果输出频率"
+                                            <el-tooltip  class="box-item" effect="dark" content="求解器求解物理时间步长"
                                             placement="right">
-                                            <li><span class="inputtext_1">输出步长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.reportstep" />
+                                            <li v-show="iskeynum">  
+                                              
+                                                <span class="inputtext_1">时间步长</span>  
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dt" />
                                                     <span class="righttext">s</span>
+                                                </div> 
+                                           
+                                            </li>
+                                        </el-tooltip>
+                                          <el-tooltip  class="box-item" effect="dark" content="求解器求解空间推进步长"
+                                               placement="right">
+                                            <li v-show="iskeynum">
+                                              
+                                                <span class="inputtext_1">空间步长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dx" />
+                                                    <span class="righttext">m</span>
                                                 </div>
                                             </li>
                                         </el-tooltip>
-                                            <li><span class="inputtext_1">交互步长</span>
+                                     
+                                            <li v-show="iskeynum" ><span class="inputtext_1">交互步长</span>
                                                 <div class="inputkuang"> <el-input disabled
                                                         v-model="tuiyanobj.interactionstep" />
                                                     <span class="righttext">s</span>
                                                 </div>
                                             </li>
                                         </ul>
+                                        <div @click="showMore" class="txt">{{txt}}</div>
                                     </div>
                                     <div class="asdis_btn">
                                         <div class="btn"   :class="{chuactive: isActive === 1}" @click="changeClass(1)"><span class="spantext" @click="initial();">初始数据</span></div>
+                                        <div class="btn" :class="{chuactive: isActive === 3}" @click="changeClass(3)" ><span class="spantext" >停止计算</span></div>
                                         <div class="btn"  :class="{chuactive: isActive === 2}" @click="changeClass(2)"><span class="spantext" @click="calculate();">开始计算</span></div>
                                     </div>
 
@@ -282,51 +295,53 @@
                                                         </div>
                                                 </div>
                                             </li>
-                                            <el-tooltip class="box-item" effect="dark" content="求解器求解物理时间步长"
+                                            <el-tooltip class="box-item" effect="dark" content="用户关心的灾情持续总时长"
                                             placement="right">
-                                            <li>
-                                                <span class="inputtext_1">时间步长</span>  
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dt"   oninput ="value=value.replace(/[^0-9]/g,'')"   />
+                                            <li><span class="inputtext_1">模拟时长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.totaltime"  oninput ="value=value.replace(/[^0-9]/g,'')"  />
                                                     <span class="righttext">s</span>
                                                 </div>
-                                         
                                             </li>
                                         </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="求解器求解空间推进步长"
+                                        <el-tooltip class="box-item" effect="dark" content="演化结果输出频率"
                                             placement="right">
-                                            <li><span class="inputtext_1">空间步长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dx"   oninput ="value=value.replace(/[^0-9]/g,'')"  />
-                                                    <span class="righttext">m</span>
+                                            <li><span class="inputtext_1">输出步长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.reportstep"   oninput ="value=value.replace(/[^0-9.]/g,'')"  />
+                                                    <span class="righttext">s</span>
                                                 </div>
                                             </li>
                                         </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="用户关心的灾情持续总时长"
+                                            <el-tooltip class="box-item" effect="dark" content="求解器求解物理时间步长"
                                             placement="right">
-                                            <li><span class="inputtext_1">模拟时长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.totaltime"  oninput ="value=value.replace(/[^0-9]/g,'')"  />
+                                            <li v-show="iskeynum">
+                                                <span class="inputtext_1">时间步长</span>  
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dt"   oninput ="value=value.replace(/[^0-9]/g,'')"   />
                                                     <span class="righttext">s</span>
                                                 </div>
+                                         
                                             </li>
                                         </el-tooltip>
-                                        <el-tooltip class="box-item" effect="dark" content="演化结果输出频率"
+                                        <el-tooltip class="box-item" effect="dark" content="求解器求解空间推进步长"
                                             placement="right">
-                                            <li><span class="inputtext_1">输出步长</span>
-                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.reportstep"   oninput ="value=value.replace(/[^0-9.]/g,'')"  />
-                                                    <span class="righttext">s</span>
+                                            <li v-show="iskeynum"><span class="inputtext_1">空间步长</span>
+                                                <div class="inputkuang"> <el-input v-model="tuiyanobj.dx"   oninput ="value=value.replace(/[^0-9]/g,'')"  />
+                                                    <span class="righttext">m</span>
                                                 </div>
                                             </li>
                                         </el-tooltip>
-                                            <li><span class="inputtext_1">交互步长</span>
+                                            <li v-show="iskeynum"><span class="inputtext_1">交互步长</span>
                                                 <div class="inputkuang"> <el-input disabled
                                                         v-model="tuiyanobj.interactionstep"    oninput ="value=value.replace(/[^0-9.]/g,'')"   />
                                                     <span class="righttext">s</span>
                                                 </div>
                                             </li>
                                         </ul>
+                                        <div @click="showMore" class="txt">{{txt}}</div>
                                     </div>
                                     <!-- //@click="changeClass(1)"  @click="initial();"  @click="calculate();"-->
                                     <div class="asdis_btn">
                                         <div class="btn" :class="{chuactive: isActive === 1}" @click="changeClass(1)" ><span class="spantext" >初始数据</span></div>
+                                        <div class="btn" :class="{chuactive: isActive === 3}" @click="changeClass(3)" ><span class="spantext" >停止计算</span></div>
                                         <div class="btn" :class="{chuactive: isActive === 2}" @click="changeClass(2)" ><span class="spantext" >开始计算</span></div>
                                     </div>
 
@@ -439,6 +454,8 @@ const changeModel= ()=>  {
   vtkmodel.clearJgAddMode();
   vtkmodel.renderWindow.render();
 }
+let txt=ref('展开全部');
+let iskeynum=ref(false);
 let currentrow=ref(false);
 let placeholder=ref('某次某事件火灾事故');
 let emit = defineEmits(['headerclick', 'childfun', 'imgonclock','moxingclick','handleSelect','leftsimulation','resulysucss','websockfrist','funcfirst'])
@@ -603,6 +620,7 @@ const formInline = ref({
     date: '',
 
 })
+
 const value = ref([])
 const options = ref([])
 let arrvalue=ref([]);
@@ -641,6 +659,14 @@ const tableData2 = [
     },
 
 ]
+//显示更多
+const showMore= ()=>{
+    // iskeynum.value=true;
+    // txt.value="收起"
+    iskeynum.value=!iskeynum.value;
+    txt.value=iskeynum.value?'收起':'展开全部'
+ 
+}
 const handleCurrentChange = ({ row, rowIndex }) => {
     // console.log(row);
 }
@@ -672,7 +698,7 @@ const handleClose = () => {
 // 事故确定列表
 const accident = () => {
     if (idobj.value.name == '') {
-        ElMessage.error('请选择项目')
+        ElMessage.error('请选择事故项目')
     } else {
      // router.push({ path: "/appmian" });
         if(props.valzaiqing=='模拟数据'){

+ 8 - 1
src/view/appmian.vue

@@ -120,7 +120,7 @@ import s3 from "@/assets/img/s3.png";
 import s4 from "@/assets/img/s4.png";
 import b from "@/assets/img/Group1317.png";
 import { timestampToTime,formatTime } from "@/js/lindex.js";
-import mitts from "@/utils/Bus";
+import emitter from "@/utils/emitter";
 import { contains } from "@kitware/vtk.js/Common/DataModel/BoundingBox";
 
 // import { vtkmodel } from "@/control/vtkModel.js";
@@ -347,12 +347,19 @@ const imgonclock=()=>{
 
   activeIndeximg.value=null;
 }
+
 const handleSelect = (key) => {
+  emitter.emit('handleSelect',(key));
   // window.location.reload();
  //indexref.value.changeColor("0")
 //  indexref.value.changeColor(0);
 //  indexref.value.clearconst(0,'claer');
 // indexref.value.changeColor(0);
+// emitter.on('checke_clear',(data)=>{
+//     console.log(123456);
+//     console.log(data);
+
+//   });
  titleclick();
   activeIndeximg.value=key;
   bgk2false.value=true;

+ 21 - 0
src/view/components/InfoDisaster.vue

@@ -2228,6 +2228,7 @@ const Gassgetdata=(aidval)=>{
 
   request(params)
     .then((res) => {
+  
       tableDataws.value=res.rows;
       tableobj.value={};
     })
@@ -2353,6 +2354,7 @@ const handlook=(data)=>{
 }
 // // 瓦斯爆炸区域查询
 const wsblastget=()=>{
+  vtkmodel.delSoures();
   const params = {
     transCode: "D10023",
     gid: wasi.value.gid,
@@ -2360,6 +2362,15 @@ const wsblastget=()=>{
   };
   request(params)
     .then((res) => {
+      if(res.row!=[]){
+      res.rows.forEach((item,index)=>{
+        let ssite=Number(item.ssite)/1000;
+        let esite=Number(item.esite)/1000;
+        vtkmodel.addSoures(item.pid,ssite)
+        vtkmodel.addSoures(item.pid,esite)
+     
+      })
+    }
       gtableData.value=res.rows;
       wasi.value.blastdata={}
     
@@ -2884,6 +2895,7 @@ const delline=()=>{
 //一维查询
 
 const yiweiget=()=>{
+  vtkmodel.delSoures();
   const params = {
     transCode:"D30001",
     aid: aid.value,
@@ -2891,6 +2903,15 @@ const yiweiget=()=>{
   };
   request(params)
     .then((res) => {
+      console.log( res.row)
+      if(res.row!=[]){
+        res.row.forEach((item,index)=>{
+        vtkmodel.addSoures(item.pid,item.ssite)
+        vtkmodel.addSoures(item.pid,item.esite)
+     
+      })
+      }
+    
       yiweitable.value=res.row;
     })
     .catch((err) => {

+ 2 - 2
src/view/components/SetPipe.vue

@@ -23,11 +23,11 @@
         <li><span>名称:</span>{{msg.name}}</li>
         <li><span>粗糙系数:</span>{{msg.roughCoe}}</li>
         <li><span>截面类型:</span>{{msg.sectionType}}</li>
-        <li><span>截面参数1:</span>{{msg.sectionPara1}}</li>
+        <!-- <li><span>截面参数1:</span>{{msg.sectionPara1}}</li>
         <li><span>截面参数2:</span>{{msg.sectionPara2}}</li>
         <li><span>截面参数3:</span>{{msg.sectionPara3}}</li>
         <li><span>截面参数4:</span>{{msg.sectionPara4}}</li>
-        <li><span>截面参数5:</span>{{msg.sectionPara5}}</li>
+        <li><span>截面参数5:</span>{{msg.sectionPara5}}</li> -->
       </ul>
     </div>
       <div class="dialog-footer footer_div l_btn">

+ 41 - 9
src/view/components/tool.vue

@@ -4,9 +4,10 @@
       <ul>
         <li class="list" v-for="(item,index) in toolarr" :key="index" @click="clicklist(index)">{{ item.name }}</li>
       </ul>
-      <div>
-        <el-checkbox v-model="checked1" label="巷道" size="large" @change="changecheckbox($event)" />
-        <el-checkbox v-model="checked2" label="灾源" size="large" @change="changecheckbox2($event)" />
+      <div class="elcheckbox">
+        <el-checkbox v-model="checked1" label="巷道名称" size="large" @change="changecheckbox($event)" />
+        <el-checkbox v-model="checked2" label="灾源点" size="large" @change="changecheckbox2($event)" />
+        <el-checkbox v-model="checked3" label="监测点" size="large" @change="changecheckbox3($event)" />
   </div>
     </div>
   </template>
@@ -15,13 +16,14 @@
   import { RouterView, RouterLink } from "vue-router";
   import { request, uploadFile } from "@/utils/request";
   import { vtkmodel } from "@/control/vtkModel.js";
-
+  import emitter from "@/utils/emitter";
   
   onMounted(() => {
-
+ 
   });
   let checked1=ref(false);
   let checked2=ref(false);
+  let checked3=ref(false);
   let toolarr=ref([
     {
       name:'X+'
@@ -73,6 +75,19 @@
 
    }
    }
+   emitter.on('handleSelect',(data)=>{
+    checkeclear();
+
+  });
+  //  emitter.emit('checkeclear',(90));
+  const checkeclear=()=>{
+    checked2.value=false;
+    checked3.value=false;
+    vtkmodel.removeSoure();
+    vtkmodel.removejc();
+  }
+
+
   const changecheckbox=(val)=>{
     if(checked1.value){
       vtkmodel.showPname();
@@ -87,6 +102,18 @@
       vtkmodel.removeSoure();
     }
   }
+  const changecheckbox3=(val)=>{
+    console.log(checked3.value);
+    if(checked3.value){
+      vtkmodel.showjc();
+    }else{
+      vtkmodel.removejc();
+    }
+  }
+  onUnmounted(() =>{
+
+emitter.off('handleSelect')
+})
   </script>
   <style scoped>
 .vktool{
@@ -94,7 +121,6 @@
     top: 90px;
     left: 30%;
     z-index: 200;
-    
   }
   .vktool ul{
     display: flex;
@@ -109,8 +135,6 @@
     position: relative;
     margin-left: 5px;
     padding: 3px 6px;
-  
-  
   }
   .vktool .list::before {
       content: " ";
@@ -123,12 +147,20 @@
       transform-origin: 0 0;
       transform: scale(0.5);
   }
-
+.elcheckbox{
+  width: 245px;
+  display: flex;
+}
   </style>
   <style>
   
   .vktool .el-checkbox.el-checkbox--large .el-checkbox__label{
       color: #fff !important;
     }
+.vktool  .el-checkbox{
+  flex: 1;
+  margin-right:23px;
+
+}
   </style>