Procházet zdrojové kódy

Merge branch 'master' of http://192.168.0.130:13000/huangxingxing/disaster

huangxingxing před 1 rokem
rodič
revize
2d81dae26c

+ 7 - 6
src/view/components/MenuCheck.vue

@@ -1,7 +1,7 @@
 <template>
     <div class="l_Dialog">
         <el-dialog v-model="sendialogVisible" width="470" align-center :modal="false" :close-on-click-modal="false"
-            modal-class="summary-dlg" draggable class="dialog_class bgcolor zhucentent">
+            modal-class="summary-dlg" draggable class="dialog_class bgcolor zhucentent chuanjianc">
             <template #header="{ titleId, titleClass }">
                 <div class="my-header xinxi_header">
                     <el-image :src="icon" fit="contain"></el-image>
@@ -21,7 +21,7 @@
                                     @row-click="handleDelete($event)"
                                     :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.9) ' }">
                                     <el-table-column type="index" label="编号"  />
-                                    <el-table-column prop="pid" label="所在巷道" />
+                                    <el-table-column prop="pname" label="所在巷道" />
                                     <el-table-column prop="site" label="位置" />
                                 </el-table>
                             </div>
@@ -165,7 +165,6 @@
   layout="prev, total,pager, next, jumpe,"      
   :total="parseInt(total)"
   class="mt-4"
-  @size-change="handleSizeChange"
   @current-change="handleCurrentChange"
 />
 </div>
@@ -234,13 +233,14 @@ const handleDelete = (val) => {
     currentrow.value=true;
     tableobj.value = val;
     cid.value=val.cid
+    console.log( tableobj.value );
 }
 // 删除
 const shanchu = () => {
     if (JSON.stringify(tableobj.value) == '{}') {
         ElMessage.error("你还没有选中修改的项目")
     } else {
-        zqname.value = tableobj.value.pid;
+        zqname.value = tableobj.value.pname;
         dialogsgdelect.value = true;
  
     }
@@ -285,7 +285,7 @@ const addsg = () => {
     source.value.site='';
     firepid.value='';
     cid.value='';
-
+    tableobj.value=[];
 }
 // 添加修改的接口
 const addEditaip=()=>{
@@ -315,7 +315,8 @@ const amend = () => {
         sdialog.value.dianadddialog= true; 
         cid.value = tableobj.value.cid;
         source.value.site = tableobj.value.site;
-        source.value.selectstr=tableobj.value.pid;
+        source.value.selectstr=tableobj.value.pname;
+        firepid.value=tableobj.value.pid;
     }
 }
 // 选择巷道

+ 588 - 52
src/view/components/MenuMine.vue

@@ -1,6 +1,6 @@
 <template>
     <div class="l_Dialog">
-        <el-dialog v-model="dialogVisible" width="470" align-center :modal="false" :close-on-click-modal="false"
+        <el-dialog v-model="dialogVisible" width="480" align-center :modal="false" :close-on-click-modal="false"
             draggable :fullscreen="false" :modal-append-to-body="false" modal-class="summary-dlg"
             class="dialog_class bgcolor zhucentent  ">
             <template #header="{ titleId, titleClass }">
@@ -11,34 +11,39 @@
                 </div>
             </template>
             <div class="classtab">
-                <el-tabs v-model="resultactiveName" type="card" class="demo-tabs" @tab-click="handleClick">
+                <el-tabs v-model="resultactiveName" type="card" class="demo-tabs" @tab-click="handleClick" :stretch="true">
                     <el-tab-pane label="节点信息" name="first">
                         <div class="asides_content">
                             <div class="jc_content tablecolor jc_content">
 
                                 <div class="font12 my_content1">
-                                    <div class="xian btncolor tablefocus bmar">
+                                    <div class=" btncolor tablefocus bmar">
 
-                                        <el-table :data="ftableData" style="width:468px" :max-height="tableHeight"
-                                            :highlight-current-row="true" :row-class-name="tableRowClassName"
+                                        <el-table :data="tableData2" style="width:480px" :max-height="tableHeight"
+                                            :highlight-current-row="currentrow" :row-class-name="tableRowClassName"
                                             @row-click="handleDelete($event)"
                                             :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.9) ' }">
-                                            <el-table-column prop="nid" label="节点编号" />
-                                            <el-table-column prop="type" label="X" />
-                                            <el-table-column prop="nid" label="Y" />
-                                            <el-table-column prop="type" label="Z" />
+                                            <el-table-column type="index" label="节点编号" width="80px" />
+                                            <el-table-column prop="name" label="节点名称" />
+                                            <el-table-column prop="x" label="X" />
+                                            <el-table-column prop="y" label="Y" />
+                                            <el-table-column prop="z" label="Z" />
                                         </el-table>
+                                        <div class="demo-pagination-block pagination" style="margin-top: 20px;">
+                                            <el-pagination v-model:current-page="currentPage4"
+                                                v-model:page-size="pageSize4" small background
+                                                layout="prev, total,pager, next, jumpe," :total="parseInt(total)"
+                                                class="mt-4" @current-change="handleCurrentChange" />
+                                        </div>
                                     </div>
                                 </div>
                                 <div class="dialog-footer footer_div l_btn">
                                     <div class="footerbtn flex1">
-                                        <div class="borderimg"><el-button @click="addsg('1');">添加</el-button></div>
+                                        <div class="borderimg"><el-button @click="addsg();">添加</el-button></div>
                                     </div>
-                                    <!-- <div class="footerbtn flex1"><div class="borderimg"><el-button  @click="addsg('2')">
-                                修改
-                                    </el-button></div></div> -->
                                     <div class="footerbtn flex1">
-                                        <div class="borderimg"><el-button @click="dialog.dialogsgdelect = true">
+                                        <div class="borderimg"><el-button
+                                                @click="nodedelete()">
                                                 删除
                                             </el-button></div>
                                     </div>
@@ -53,24 +58,218 @@
                                             </el-button></div>
                                     </div>
                                 </div>
-                                <!-- <div class="asdis_btn padingcla">
-                                                <div class="flex_a">
-                                                    <div class="btns" @click="bounadd();dialog.dialogVisible = true;">
-                                                        <span class="spantext">添加</span></div>
-                                                </div>
-                                                <div class="flex_a">
-                                                    <div class="btns" @click="xiugai();" ><span class="spantext">修改</span></div>
-                                                </div>
-                                                <div class="flex_a">
-                                                    <div class="btns"  @click="sdialog.dialogsgdelect=true"><span class="spantext">删除</span></div>
-                                                </div>
-                                            </div> -->
 
                             </div>
-
                         </div>
+                        <!-- 添加 -->
+                        <el-dialog v-model="sdialog.adddialog" width="400" class="dialog_class bgcolor tianjia">
+
+                            <template #header="{ titleId, titleClass }">
+                                <div class="my-header ">
+                                    <el-image :src="icon" fit="contain"></el-image>
+                                    <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
+                                </div>
+                            </template>
+                            <div>
+
+                                <el-form>
+                                    <el-form-item label="名称" :label-width="formLabelWidth6">
+                                        <el-input v-model="nodeobj.name" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="X" :label-width="formLabelWidth6">
+                                        <el-input v-model="nodeobj.x" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="Y" :label-width="formLabelWidth6">
+                                        <el-input v-model="nodeobj.y" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="Z" :label-width="formLabelWidth6">
+                                        <el-input v-model="nodeobj.z" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+
+                                </el-form>
+                            </div>
+                            <div class="dialog-footer footer_div l_btn">
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button @click="sdialog.adddialog = false">取消</el-button>
+                                    </div>
+                                </div>
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button @click="nodeconfirm(); sdialog.adddialog = false">
+                                            确定
+                                        </el-button></div>
+                                </div>
+                            </div>
+                        </el-dialog>
+                        <!-- 删除 -->
+                        <el-dialog v-model="sdialog.dialogsgdelect" width="400" class="dialog_class bgcolor tianjia">
+
+                            <template #header="{ titleId, titleClass }">
+                                <div class="my-header ">
+                                    <el-image :src="icon" fit="contain"></el-image>
+                                    <h4 :id="titleId" :class="titleClass">删除框</h4>
+
+                                </div>
+                            </template>
+                            <h4 class="delecttitle"> 是否确认删除 <span class="spanclad">{{ zqname }}</span></h4>
+                            <div class="dialog-footer footer_div l_btn">
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button
+                                            @click="sdialog.dialogsgdelect = false">取消</el-button></div>
+                                </div>
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button
+                                            @click="nodedeleteapi(); sdialog.dialogsgdelect = false">
+                                            确定
+                                        </el-button></div>
+                                </div>
+                            </div>
+                        </el-dialog>
                     </el-tab-pane>
                     <el-tab-pane label="巷道信息" name="second">
+                        <div class="asides_content">
+                            <div class="jc_content tablecolor jc_content">
+
+                                <div class="font12 my_content1">
+                                    <div class="btncolor tablefocus bmar">
+                                        <el-table :row-class-name="tableRowClassName" :max-height="tableHeight"
+                                            ref="multipleTableRef"   :highlight-current-row="currentrow"    @row-click="handleDelete2($event)" :data="tableData3" style="width: 100%"
+                                    
+                                            :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.96) ' }">
+                                            <el-table-column property="snId" label="开始节点" />
+                                            <el-table-column property="enId" label="结束节点" />
+                                            <el-table-column property="id" label="编号" width="70" />
+                                            <el-table-column property="name" label="名称" width="70" />
+                                            <el-table-column property="sectionType" label="截面类型" width="120" />
+                                            <el-table-column property="roughCoe" label="粗糙系数" />
+                                            <el-table-column property="sectionPara1" label="截面参数1" width="90" />
+                                            <el-table-column property="sectionPara2" label="截面参数2" width="90" />
+                                            <el-table-column property="sectionPara3" label="截面参数3" width="90" />
+                                            <el-table-column property="sectionPara4" label="截面参数4" width="90" />
+                                            <el-table-column property="sectionPara5" label="截面参数5" width="90" />
+
+                                        </el-table>
+                                        <div class="demo-pagination-block pagination" style="margin-top: 20px;">
+                                            <el-pagination v-model:current-page="gd.currentPage4"
+                                                v-model:page-size="gd.pageSize4" small background
+                                                layout="prev, total,pager, next, jumpe," :total="parseInt(gd.total)"
+                                                class="mt-4" @current-change="handleCurrentChange2" />
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="dialog-footer footer_div l_btn">
+                                    <div class="footerbtn flex1">
+                                        <div class="borderimg"><el-button @click="guandaoadd();">添加</el-button></div>
+                                    </div>
+                                    <div class="footerbtn flex1">
+                                        <div class="borderimg"><el-button
+                                                @click="nodedelete2();">
+                                                删除
+                                            </el-button></div>
+                                    </div>
+                                    <div class="footerbtn flex1">
+                                        <div class="borderimg"><el-button @click="accident2()">
+                                                修改
+                                            </el-button></div>
+                                    </div>
+                                    <div class="footerbtn flex1">
+                                        <div class="borderimg"><el-button @click="dialogVisible = false">
+                                                确认
+                                            </el-button></div>
+                                    </div>
+                                </div>
+
+                            </div>
+                        </div>
+                        <!-- 添加 -->
+                        <el-dialog v-model="sdialog.gdadddialog" width="400" class="dialog_class bgcolor tianjia">
+
+                            <template #header="{ titleId, titleClass }">
+                                <div class="my-header ">
+                                    <el-image :src="icon" fit="contain"></el-image>
+                                    <h4 :id="titleId" :class="titleClass">{{ zhtext }}</h4>
+                                </div>
+                            </template>
+                            <div>
+                                <el-form>
+
+                                    <el-form-item label="名称" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.name" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <div class="demo-input-suffix firsttitle magintop guand_1">
+                                        <el-form-item label="开始节点" :label-width="formLabelWidth7">
+                                            <el-input v-model="guandaoobj.snId" class="w-50 m-2" placeholder="巷道名称" />
+                                        </el-form-item>
+                                        <div class="btn2">
+                                            <el-button type="primary" @click="nodeclick('start');">选择开始节点</el-button>
+                                        </div>
+                                    </div>
+                                    <div class="demo-input-suffix firsttitle magintop guand_1">
+                                        <el-form-item label="结束节点" :label-width="formLabelWidth7">
+                                            <el-input v-model="guandaoobj.enId" class="w-50 m-2" placeholder="巷道名称" />
+                                        </el-form-item>
+                                        <div class="btn2">
+                                            <el-button type="primary" @click="nodeclick('end');">选择结束节点</el-button>
+                                        </div>
+                                    </div>
+                                    <el-form-item label="粗糙系数" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.roughCoe" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面类型" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionType" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面参数1" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionPara1" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面参数2" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionPara2" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面参数3" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionPara3" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面参数4" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionPara4" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                    <el-form-item label="截面参数5" :label-width="formLabelWidth7">
+                                        <el-input v-model="guandaoobj.sectionPara5" class="w-50 m-2" placeholder="请输入" />
+                                    </el-form-item>
+                                </el-form>
+                            </div>
+                            <div class="dialog-footer footer_div l_btn">
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button @click="sdialog.gdadddialog = false">取消</el-button>
+                                    </div>
+                                </div>
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button @click="guandaoapi(); sdialog.gdadddialog = false">
+                                            确定
+                                        </el-button></div>
+                                </div>
+                            </div>
+                        </el-dialog>
+                        <!-- 删除 -->
+                        <el-dialog v-model="sdialog.guddialogsgdelect" width="400" class="dialog_class bgcolor tianjia">
+
+                            <template #header="{ titleId, titleClass }">
+                                <div class="my-header ">
+                                    <el-image :src="icon" fit="contain"></el-image>
+                                    <h4 :id="titleId" :class="titleClass">删除框</h4>
+
+                                </div>
+                            </template>
+                            <h4 class="delecttitle"> 是否确认删除 <span class="spanclad">{{ zqname }}</span></h4>
+                            <div class="dialog-footer footer_div l_btn">
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button
+                                            @click="sdialog.guddialogsgdelect = false">取消</el-button></div>
+                                </div>
+                                <div class="footerbtn flex1">
+                                    <div class="borderimg"><el-button
+                                            @click="gddelete(); sdialog.guddialogsgdelect = false">
+                                            确定
+                                        </el-button></div>
+                                </div>
+                            </div>
+                        </el-dialog>
                     </el-tab-pane>
                     <el-tab-pane label="设备信息" name="third">
 
@@ -82,6 +281,7 @@
             </div>
 
         </el-dialog>
+        <Node-Select ref="nodeselect" @queding="queding"/>
     </div>
 </template>
 
@@ -90,11 +290,58 @@ import { computed, ref, onMounted, reactive, toRef } from "vue";
 import { request, uploadFile } from "@/utils/request";
 import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
 import icon from "@/assets/img/icon.png";
-import { timestampToTime } from '@/js/lindex.js'
+import { timestampToTime } from '@/js/lindex.js';
+ import NodeSelect from "./NodeLine.vue";
+let nodeselect=ref();
 let dialogVisible = ref(false);
+let tableData2 = ref([]);
 let classradio1 = ref('Fire');
+let formLabelWidth6 = ref(70);
+let formLabelWidth7=ref(100)
 const resultactiveName = ref("first");
 let tableHeight = ref(570);
+let total = ref(1);
+let searchtag = ref("");
+const currentPage4 = ref(1);
+const pageSize4 = ref(5)
+let currentrow = ref(false);
+let sdialog = ref({
+    adddialog: false,
+    dialogsgdelect: false,
+    gdadddialog:false,
+    guddialogsgdelect:false,
+})
+let sideid=ref("");
+let tableData3 = ref();
+let zqname = ref("");
+let zhtext = ref("添加");
+let nodedata = ref({});
+let gddata = ref({});
+let nodeobj = ref({
+    name: "",
+    x: "",
+    y: "",
+    z: "",
+
+})
+let guandaoobj = ref({
+    pid: '',
+    name: '',
+    snId: 0,
+    enId: 0,
+    roughCoe: '',
+    sectionType: '',
+    sectionPara1: '',
+    sectionPara2: '',
+    sectionPara3: '',
+    sectionPara4: '',
+    sectionPara5: '',
+})
+let gd = ref({
+    total: 1,
+    currentPage4: 1,
+    pageSize4: 5,
+})
 const tableRowClassName = ({ row, rowIndex }) => {
     if (rowIndex % 2 != 0) {
         return 'evenRow';
@@ -102,6 +349,267 @@ const tableRowClassName = ({ row, rowIndex }) => {
     return 'oddRow';
 
 }
+onMounted(() => {
+    pipelinedata()
+})
+// tab选项事件
+const handleClick = (Tab, val) => {
+    console.log(Tab.props.name);
+    switch (Tab.props.name) {
+        case 'first':
+            pipelinedata()
+            break;
+        case "second":
+            guandaodata();
+            break;
+        case 'third':
+            break;
+        case 'thirds':
+            break;
+    }
+}
+//  节点分页查询
+const handleCurrentChange = (val) => {
+    pipelinedata();
+}
+// 管道分页查询
+const handleCurrentChange2 = (val) => {
+    guandaodata();
+}
+//节点数据查询
+const pipelinedata = () => {
+    const params = {
+        transCode: 'D00000',
+        count: pageSize4.value,
+        page: currentPage4.value,
+        searchtag: searchtag.value,
+    }
+    request(params)
+        .then((res) => {
+            tableData2.value = res.rows;
+            total.value = res.total;
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+//节点的添加
+const addsg = () => {
+    zhtext.value = '添加';
+    sdialog.value.adddialog = true;
+    nodeobj.value.name = "";
+    nodeobj.value.x = "";
+    nodeobj.value.y = "";
+    nodeobj.value.z = "";
+    nodeobj.value.nid = '';
+
+}
+//节点添加api
+const nodeconfirm = () => {
+    const params = {
+        transCode: 'D10000',
+        nid: nodeobj.value.nid,
+        name: nodeobj.value.name,
+        x: nodeobj.value.x,
+        y: nodeobj.value.y,
+        z: nodeobj.value.z,
+        desc: "",
+        ntype: "mid",
+    }
+    request(params)
+        .then((res) => {
+            pipelinedata();
+            ElMessage({
+                message: res.returnMsg,
+                type: 'success',
+            })
+
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+//选中node节点的一行
+const handleDelete = (val) => {
+    currentrow.value = true;
+    nodedata.value = val;
+
+}
+const handleDelete2 = (val) => {
+    currentrow.value = true;
+    gddata.value = val;
+
+}
+//node删除
+const nodedelete = () => {
+    console.log(nodedata.value);
+    if (JSON.stringify(nodedata.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        sdialog.value.dialogsgdelect=true;
+        zqname.value = nodedata.value.name;
+    }
+}
+const nodedeleteapi = () => {
+    const params = {
+        transCode: 'D10001',
+        nid: nodedata.value.id,
+    }
+    request(params)
+        .then((res) => {
+            pipelinedata();
+            ElMessage({
+                message: res.returnMsg,
+                type: 'success',
+            })
+
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+//节点修改
+const accident = () => {
+    if (JSON.stringify(nodedata.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        zhtext.value = '修改';
+        sdialog.value.adddialog = true;
+        nodeobj.value.name = nodedata.value.name;
+        nodeobj.value.x = nodedata.value.x;
+        nodeobj.value.y = nodedata.value.y;
+        nodeobj.value.z = nodedata.value.z;
+        nodeobj.value.nid = nodedata.value.id;
+    }
+}
+//巷道查询
+const guandaodata = () => {
+    const params = {
+        transCode: 'D00001',
+        count: gd.value.pageSize4,
+        page: gd.value.currentPage4,
+        searchtag: '',
+    }
+    request(params)
+        .then((res) => {
+            tableData3.value = res.rows;
+            gd.value.total = res.total;
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+// 节点选中开始结束
+const nodeclick=(val)=>{
+    nodeselect.value.dialogVisiblenode=true;
+    nodeselect.value.pipelinedata("");
+    sideid.value=val;
+
+}
+//节点确定的方法
+const queding=(row)=>{
+    if( sideid.value=='start'){
+        guandaoobj.value.snId=row.id;
+    }else{
+        guandaoobj.value.enId=row.id;
+    }
+
+}
+// 管道的add
+const guandaoadd=()=>{
+    sdialog.value.gdadddialog=true;
+        guandaoobj.value.pid='';
+        guandaoobj.value.name= '';
+        guandaoobj.value.snId= 0;
+        guandaoobj.value.enId= 0;
+        guandaoobj.value.roughCoe= '';
+        guandaoobj.value.sectionType= '';
+        guandaoobj.value.sectionPara1='';
+        guandaoobj.value.sectionPara2='';
+        guandaoobj.value.sectionPara3='';
+        guandaoobj.value.sectionPara4='';
+        guandaoobj.value.sectionPara5='';
+}
+// 管道增加修改的接口
+const guandaoapi=()=>{
+    const params = {
+        transCode: 'D10002',
+        pid: guandaoobj.value.pid,
+        name:guandaoobj.value.name,
+        snId: guandaoobj.value.snId,
+        enId: guandaoobj.value.enId,
+        roughCoe: guandaoobj.value.roughCoe,
+        sectionType: guandaoobj.value.sectionType,
+        sectionPara1:guandaoobj.value.sectionPara1,
+        sectionPara2: guandaoobj.value.sectionPara2,
+        sectionPara3: guandaoobj.value.sectionPara3,
+        sectionPara4: guandaoobj.value.sectionPara4,
+        sectionPara5: guandaoobj.value.sectionPara5,
+      
+    }
+    request(params)
+        .then((res) => {
+            ElMessage({
+                message: res.returnMsg,
+                type: 'success',
+            })
+            guandaodata();
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+// 管道删除
+//node删除
+const nodedelete2 = () => {
+    console.log(gddata.value);
+    if (JSON.stringify(gddata.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        sdialog.value.guddialogsgdelect=true;
+        zqname.value = gddata.value.name;
+    }
+}
+const gddelete = () => {
+    const params = {
+        transCode: 'D10003',
+        pid: gddata.value.id,
+    }
+    request(params)
+        .then((res) => {
+            guandaodata();
+            ElMessage({
+                message: res.returnMsg,
+                type: 'success',
+            })
+
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+// 管道修改
+const accident2 = () => {
+    if (JSON.stringify(gddata.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        zhtext.value = '修改';
+        sdialog.value.gdadddialog=true;
+        guandaoobj.value.pid=gddata.value.id;
+        guandaoobj.value.name=gddata.value.name;
+        guandaoobj.value.snId= gddata.value.snId;
+        guandaoobj.value.enId= gddata.value.enId;
+        guandaoobj.value.roughCoe=gddata.value.roughCoe;
+        guandaoobj.value.sectionType= gddata.value.sectionType;
+        guandaoobj.value.sectionPara1=gddata.value.sectionPara1;
+        guandaoobj.value.sectionPara2=gddata.value.sectionPara2;
+        guandaoobj.value.sectionPara3=gddata.value.sectionPara3;
+        guandaoobj.value.sectionPara4=gddata.value.sectionPara4;
+        guandaoobj.value.sectionPara5=gddata.value.sectionPara5;;
+    }
+
+}
+
 defineExpose({ dialogVisible, });
 </script>
 
@@ -277,7 +785,7 @@ defineExpose({ dialogVisible, });
 }
 
 .l_btn .borderimg {
-    width: 109px;
+    width: 70px;
     height: 30px;
     background: rgba(104, 173, 255, 0.3);
     box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
@@ -428,7 +936,6 @@ defineExpose({ dialogVisible, });
 
 .dialog_class {
     background-color: rgba(13, 22, 57, 0.9) !important;
-    width: 482px;
 
 }
 
@@ -556,7 +1063,7 @@ border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255,
 }
 
 .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell {
-    background-color: rgba(104, 173, 255, 0) !important;
+    background-color: rgba(255, 255, 25, 0)!important;
 }
 
 .el-button:focus,
@@ -784,16 +1291,31 @@ border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255,
 }
 
 .classtab .el-tabs--card>.el-tabs__header .el-tabs__item {
-    border-top: 1px solid;
+    position: relative;
+    /* border-top: 1px solid;
     border-left: 1px solid;
     border-bottom: 1px solid;
-    border-image: linear-gradient(180deg, rgb(31, 107, 255), rgba(31, 107, 255, 0.48)) 1 1;
-    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
-    border-radius: 0px 0px 0px 0px;
-}
 
+ 
+    border-radius: 0px 0px 0px 0px; */
+}
+.classtab .el-tabs--card>.el-tabs__header .el-tabs__item::after{
+         content: " ";
+        position: absolute;
+        top: 0;
+        left: 0;
+        width: 200%;
+        height: 200%;
+        border-right: 1px solid;
+        border-top: 1px solid;
+        border-bottom: 1px solid;
+        border-image: linear-gradient(180deg, rgb(31, 107, 255), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        transform-origin: 0 0;
+        transform: scale(0.5);
+}
 .classtab .el-tabs__item {
-    width: 117px;
+    /* width:120px; */
     height: 48px;
     padding: 0 10px !important;
     font-weight: bold;
@@ -834,7 +1356,9 @@ border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255,
     border-top-left-radius: 10px !important;
     border-top-right-radius: 10px !important;
 }
-
+.classtab .el-tabs--card>.el-tabs__header .el-tabs__item{
+    border: none !important;
+}
 .classtab .el-tabs__content {
     border: 1px solid;
     color: rgba(255, 15, 15, 1) !important;
@@ -856,12 +1380,12 @@ ol {
 }
 
 /* 新的css */
-.classtab {
+/* .classtab {
     display: flex;
-}
+} */
 
 .classtab .el-tabs__item {
-    flex: 1
+    /* flex: 1 */
 }
 
 .xinxi_header {
@@ -869,7 +1393,7 @@ ol {
 }
 
 .classtab .el-tabs__nav {
-    width: 468px;
+    /* width: 480px; */
 }
 
 .zhucentent .el-table__header tr {
@@ -905,23 +1429,35 @@ ol {
 .el-dialog {
     pointer-events: auto;
 }
-.leftbgimg1 .el-table tr{
-        height: 30px !important;
-        background: rgba(104,173,255,0.3);
-        box-shadow: inset 0px 0px 17px 5px rgba(12,97,197,0.2);
-        border-radius: 0px 0px 0px 0px;
-        border: 1px solid;
-        border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+
+.leftbgimg1 .el-table tr {
+    height: 30px !important;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
 
 
 }
-.guand_1{
+
+.guand_1 {
     display: flex;
 }
-.guand_1 .asdis_btn{
+
+.guand_1 .asdis_btn {
     margin-top: -9px;
 }
-.magintop .el-form-item{
+
+.magintop .el-form-item {
     margin-right: 20px;
 }
+
+.pagination {
+    padding: 0 20px;
+}
+
+.el-pagination__total {
+    color: #fff !important;
+}
 </style>

+ 114 - 53
src/view/components/MenuPhysics.vue

@@ -1,7 +1,7 @@
 <template>
     <div class="l_Dialog">
-        <el-dialog v-model="dialogVisible1" width="470" align-center :modal="false" :close-on-click-modal="false"
-            modal-class="summary-dlg ummary-wuli" draggable class="dialog_class bgcolor zhucentent">
+        <el-dialog v-model="sendialogVisible" width="470" align-center :modal="false" :close-on-click-modal="false"
+            modal-class="summary-dlg" draggable class="dialog_class bgcolor zhucentent wuli">
             <template #header="{ titleId, titleClass }">
                 <div class="my-header xinxi_header">
                     <el-image :src="icon" fit="contain"></el-image>
@@ -14,16 +14,16 @@
                     <div class="jc_content tablecolor jc_content">
 
                         <div class="font12 my_content1">
-                            <div class="xian btncolor tablefocus bmar tianjia">
+                            <div class="btncolor tablefocus bmar">
 
-                                <el-table :data="tableData" style="width:468px" :max-height="tableHeight"
+                                <el-table :data="tableData" style="width:480px" :max-height="tableHeight"
                                     :highlight-current-row="true" :row-class-name="tableRowClassName"
                                     @row-click="handleDelete($event)"
                                     :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.9) ' }">
-                                    <el-table-column prop="pid" label="名称" />
-                                    <el-table-column prop="type" label="密度" />
-                                    <el-table-column prop="seid" label="扩散系数" />
-                                    <el-table-column prop="site" label="比热" />
+                                    <el-table-column prop="name" label="名称" />
+                                    <el-table-column prop="density" label="密度" />
+                                    <el-table-column prop="diffcoe" label="扩散系数" />
+                                    <el-table-column prop="speheat" label="比热" />
                                 </el-table>
                             </div>
                         </div>
@@ -31,11 +31,8 @@
                             <div class="footerbtn flex1">
                                 <div class="borderimg"><el-button @click="addsg();">添加</el-button></div>
                             </div>
-                            <!-- <div class="footerbtn flex1"><div class="borderimg"><el-button  @click="addsg('2')">
-                              修改
-                                  </el-button></div></div> -->
                             <div class="footerbtn flex1">
-                                <div class="borderimg"><el-button @click="shanchu(); dialogsgdelect = true">
+                                <div class="borderimg"><el-button @click="shanchu()">
                                         删除
                                     </el-button></div>
                             </div>
@@ -45,7 +42,7 @@
                                     </el-button></div>
                             </div>
                             <div class="footerbtn flex1">
-                                <div class="borderimg"><el-button @click="dialogVisible1 = false">
+                                <div class="borderimg"><el-button @click="sendialogVisible = false">
                                         确认
                                     </el-button></div>
                             </div>
@@ -64,19 +61,21 @@
 
                 </div>
             </template>
-            <el-form class="demo-form-inline" :inline="true" :model="senobj">
+            <el-form class="demo-form-inline" :inline="true" :model="wuliobj">
                 <el-form-item label="编号" :label-width="formLabelWidth6">
-                    <el-input v-model="senobj.pid" class="w-50 m-2" placeholder="请输入" />
+                    <el-input v-model="wuliobj.code" class="w-50 m-2" placeholder="请输入" />
                 </el-form-item>
-                <el-form-item label="类型" :label-width="formLabelWidth6">
-                    <el-input v-model="senobj.type" class="w-50 m-2" placeholder="请输入" />
+                <el-form-item label="名称" :label-width="formLabelWidth6">
+                    <el-input v-model="wuliobj.name" class="w-50 m-2" placeholder="请输入" />
                 </el-form-item>
-                <el-form-item label="所在巷道" :label-width="formLabelWidth6">
-                    <el-input v-model="senobj.type" class="w-50 m-2" placeholder="请输入" />
+                <el-form-item label="密度" :label-width="formLabelWidth6">
+                    <el-input v-model="wuliobj.density" class="w-50 m-2" placeholder="请输入" />
                 </el-form-item>
-                <el-form-item label="位置" :label-width="formLabelWidth6">
-
-                    <el-input v-model="senobj.site" class="w-50 m-2" placeholder="请输入" />
+                <el-form-item label="扩散系数" :label-width="formLabelWidth6">
+                    <el-input v-model="wuliobj.diffcoe" class="w-50 m-2" placeholder="请输入" />
+                </el-form-item>
+                <el-form-item label="比热" :label-width="formLabelWidth6">
+                    <el-input v-model="wuliobj.speheat" class="w-50 m-2" placeholder="请输入" />
                 </el-form-item>
             </el-form>
             <div class="dialog-footer footer_div l_btn">
@@ -113,6 +112,8 @@
                 </div>
             </div>
         </el-dialog>
+        <!-- 选择管道 -->
+      
     </div>
 </template>
 
@@ -122,7 +123,8 @@ import { request, uploadFile } from "@/utils/request";
 import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
 import icon from "@/assets/img/icon.png";
 import { timestampToTime } from '@/js/lindex.js'
-let dialogVisible1 = ref(false);
+let pipeline = ref();
+let sendialogVisible = ref(false);
 let addVisible = ref(false);
 let dialogsgdelect = ref(false)
 let classradio1 = ref('Fire');
@@ -133,12 +135,19 @@ let tableHeight = ref(570);
 let tableData = ref([]);
 let tableobj = ref({});
 let zqname = ref();
-let senobj = ref({
-    pid: 0,
-    seid: 0,
-    site: 0,
-    type: "温度传感器"
+let wuliobj = ref({
+    coid:'',
+    code: '',
+    name:'',
+    density: "",
+    diffcoe: '',
+    speheat: '',
 })
+let source = ref({
+    selectstr: '',
+    site: ''
+})
+let firepid = ref("")
 const tableRowClassName = ({ row, rowIndex }) => {
     if (rowIndex % 2 != 0) {
         return 'evenRow';
@@ -153,14 +162,19 @@ const handleDelete = (val) => {
 }
 // 删除
 const shanchu = () => {
-    zqname.value = tableobj.value.pid;
+    if (JSON.stringify(tableobj.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        dialogsgdelect.value = true
+        zqname.value = tableobj.value.name;
+    }
 }
 const fundeledata = () => {
 
     console.log(zqname.value);
     const params = {
-        transCode: 'D10012',
-        seid: tableobj.value.seid
+        transCode: 'D10015',
+        coid: tableobj.value.coid
     }
     request(params)
         .then((res) => {
@@ -177,13 +191,11 @@ onMounted(() => {
 const getsensor = () => {
 
     const params = {
-        transCode: 'D10010',
-        type: 'Fire'
+        transCode: 'D10013',
     }
     request(params)
         .then((res) => {
             tableData.value = res.rows;
-
         })
         .catch((err) => {
             ElMessage.error(err.returnMsg)
@@ -193,18 +205,25 @@ const getsensor = () => {
 const addsg = () => {
     add.value = "添加";
     addVisible.value = true;
-    senobj.value.seid = '';
-    senobj.value.pid = '';
+    wuliobj.value.coid = '';
+    wuliobj.value.code = '';
+    wuliobj.value.name = '';
+    wuliobj.value.density = '';
+    wuliobj.value.diffcoe = '';
+    wuliobj.value.speheat = '';
+
 
 }
 // 添加修改的接口
 const addEied = () => {
     const params = {
-        transCode: 'D10011',
-        seid: senobj.value.site.seid,
-        pid: senobj.value.site.pid,
-        site: senobj.value.site,
-        type: senobj.value.type
+        transCode: 'D10014',
+        coid: wuliobj.value.coid,
+        code: wuliobj.value.code,
+        name:  wuliobj.value.name ,
+        density: wuliobj.value.density,
+        diffcoe:wuliobj.value.diffcoe,
+        speheat:wuliobj.value.speheat,
     }
     request(params)
         .then((res) => {
@@ -218,18 +237,21 @@ const addEied = () => {
 //修改
 const amend = () => {
     add.value = "修改";
-
     if (JSON.stringify(tableobj.value) == '{}') {
         ElMessage.error("你还没有选中修改的项目")
     } else {
-        senobj.value.seid = tableobj.value.seid
-        senobj.value.pid = tableobj.value.pid
-        senobj.value.site = tableobj.value.site
-        senobj.value.type = tableobj.value.type
-        addVisible.value = true;
+    addVisible.value = true;
+    wuliobj.value.coid = tableobj.value.coid;
+    wuliobj.value.code =tableobj.value.code;
+    wuliobj.value.name = tableobj.value.name;
+    wuliobj.value.density = tableobj.value.density;
+    wuliobj.value.diffcoe =tableobj.value.diffcoe;
+    wuliobj.value.speheat =tableobj.value.speheat;
     }
 }
-defineExpose({ dialogVisible1, });
+
+
+defineExpose({ sendialogVisible, });
 </script>
 
 <style lang="scss" scoped>
@@ -496,13 +518,52 @@ defineExpose({ dialogVisible1, });
     border: 1px solid;
     border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
 }
-</style>
 
+</style>
 <style>
-.ummary-wuli .el-table .el-table__header tr th{
-    height:48px;
-    border: 1px solid;
-border-image: linear-gradient(237deg, rgba(16, 92, 240, 1), rgba(164, 195, 255, 1)) 1 1;
+ .wuli  .el-table .el-table__header .el-table__cell{
+    height:48px !important;
+    text-align: center;
+
+
+}
+.wuli  .el-table .el-table__header .el-table__cell .cell{
+    text-align: center;
+    position: relative; 
+
+}
+.wuli  .el-table .el-table__header {
+/* 
+   border-top: 1px solid !important;
+    border-bottom: 1px solid !important;
+   border-image: linear-gradient(237deg, rgba(16, 92, 240, 1), rgba(164, 195, 255, 1)) 1 1;  */
+
+}
+.wuli  .el-table .el-table__header .el-table__cell:before{
+    content: ''; 
+      width: 100%;
+      height: 1px;
+      background-color:rgba(16, 92, 240, 1);
+      position: absolute;
+      left: 0;
+      bottom: 0;
+      transform: scaleY(0.5);
+
 }
 
+.wuli  .el-table .el-table__header .el-table__cell::after{
+         content: " ";
+        position: absolute;
+        top: 0;
+        left: 0;
+        width: 200%;
+        height: 200%;
+        border-right: 1px solid;
+        border-top: 1px solid;
+        border-bottom: 1px solid;
+        border-image: linear-gradient(180deg, rgb(31, 107, 255), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        transform-origin: 0 0;
+        transform: scale(0.5);
+}
 </style>

+ 53 - 97
src/view/components/MenuSensor.vue

@@ -1,7 +1,7 @@
 <template>
     <div class="l_Dialog">
         <el-dialog v-model="sendialogVisible" width="470" align-center :modal="false" :close-on-click-modal="false"
-            modal-class="summary-dlg" draggable class="dialog_class bgcolor zhucentent">
+            modal-class="summary-dlg" draggable class="dialog_class bgcolor zhucentent chuanjianc">
             <template #header="{ titleId, titleClass }">
                 <div class="my-header xinxi_header">
                     <el-image :src="icon" fit="contain"></el-image>
@@ -14,15 +14,15 @@
                     <div class="jc_content tablecolor jc_content">
 
                         <div class="font12 my_content1">
-                            <div class="xian btncolor tablefocus bmar tianjia">
+                            <div class="btncolor tablefocus bmar">
 
-                                <el-table :data="tableData" style="width:468px" :max-height="tableHeight"
+                                <el-table :data="tableData" style="width:480px" :max-height="tableHeight"
                                     :highlight-current-row="true" :row-class-name="tableRowClassName"
                                     @row-click="handleDelete($event)"
                                     :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.9) ' }">
-                                    <el-table-column  type="index" label="编号" />
+                                    <el-table-column type="index" label="编号" />
                                     <el-table-column prop="type" label="类型" />
-                                    <el-table-column prop="seid" label="所在巷道" />
+                                    <el-table-column prop="pname" label="所在巷道" />
                                     <el-table-column prop="site" label="位置" />
                                 </el-table>
                             </div>
@@ -35,7 +35,7 @@
                               修改
                                   </el-button></div></div> -->
                             <div class="footerbtn flex1">
-                                <div class="borderimg"><el-button @click="shanchu(); dialogsgdelect = true">
+                                <div class="borderimg"><el-button @click="shanchu()">
                                         删除
                                     </el-button></div>
                             </div>
@@ -69,24 +69,19 @@
                     <el-input v-model="senobj.type" class="w-50 m-2" placeholder="请输入" />
                 </el-form-item>
                 <div class="demo-input-suffix firsttitle magintop guand_1">
-       <el-form-item label="巷道名称" :label-width="formLabelWidth6">
-          <el-input  v-model="source.selectstr"
-              class="w-50 m-2"
-              placeholder="巷道名称"  />
-          </el-form-item>
-          <div class="btn2">
-          <el-button type="primary"  @click="fireclick();sdialog.dialogVisiblenode=true">选择巷道</el-button></div>
-          </div>
-          <div class="input">
-          <el-form-item label="位置" :label-width="formLabelWidth6">
-              <el-input-number v-model="source.site" :min="0" :max="1" 
-              :precision="2" :step="0.1"
-              controls-position="right"
-              class="w-50 m-2"
-              placeholder="位置"
-              />
-          </el-form-item>
-          </div>
+                    <el-form-item label="巷道名称" :label-width="formLabelWidth6">
+                        <el-input v-model="source.selectstr" class="w-50 m-2" placeholder="巷道名称" />
+                    </el-form-item>
+                    <div class="btn2">
+                        <el-button type="primary" @click="fireclick();">选择巷道</el-button>
+                    </div>
+                </div>
+                <div class="input">
+                    <el-form-item label="位置" :label-width="formLabelWidth6">
+                        <el-input-number v-model="senobj.site" :min="0" :max="1" :precision="2" :step="0.1"
+                            controls-position="right" class="w-50 m-2" placeholder="位置" />
+                    </el-form-item>
+                </div>
             </el-form>
             <div class="dialog-footer footer_div l_btn">
                 <div class="footerbtn flex1">
@@ -122,6 +117,8 @@
                 </div>
             </div>
         </el-dialog>
+        <!-- 选择管道 -->
+        <pipelines ref="pipeline" :selectstr="source.selectstr" @pipelineapi="pipelineapi" />
     </div>
 </template>
 
@@ -130,13 +127,14 @@ import { computed, ref, onMounted, reactive, toRef } from "vue";
 import { request, uploadFile } from "@/utils/request";
 import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
 import icon from "@/assets/img/icon.png";
+import pipelines from "./PipeIine.vue"
 import { timestampToTime } from '@/js/lindex.js'
+let pipeline = ref();
 let sendialogVisible = ref(false);
 let addVisible = ref(false);
 let dialogsgdelect = ref(false)
 let classradio1 = ref('Fire');
 const formLabelWidth6 = ref(100);
-
 let add = ref("")
 const resultactiveName = ref("first");
 let tableHeight = ref(570);
@@ -147,16 +145,14 @@ let senobj = ref({
     pid: 0,
     seid: 0,
     site: 0,
-    type: "温度传感器"
+    type: "温度传感器",
+    senobj: ''
 })
-let total = ref(1);
-let searchtaggd = ref("");
-const currentPage4 = ref(1);
-const pageSize4 = ref(5)
-let source=ref({
-    selectstr:'',
-    site:''
+let source = ref({
+    selectstr: '',
+    site: ''
 })
+let firepid = ref("")
 const tableRowClassName = ({ row, rowIndex }) => {
     if (rowIndex % 2 != 0) {
         return 'evenRow';
@@ -171,7 +167,12 @@ const handleDelete = (val) => {
 }
 // 删除
 const shanchu = () => {
-    zqname.value = tableobj.value.pid;
+    if (JSON.stringify(tableobj.value) == '{}') {
+        ElMessage.error("你还没有选中修改的项目")
+    } else {
+        dialogsgdelect.value = true
+        zqname.value = tableobj.value.pname;
+    }
 }
 const fundeledata = () => {
 
@@ -213,14 +214,17 @@ const addsg = () => {
     addVisible.value = true;
     senobj.value.seid = '';
     senobj.value.pid = '';
+    senobj.value.type = '';
+    senobj.value.site = 0.0;
+    source.value.selectstr = '';
 
 }
 // 添加修改的接口
 const addEied = () => {
     const params = {
         transCode: 'D10011',
-        seid: senobj.value.site.seid,
-        pid: senobj.value.site.pid,
+        seid: senobj.value.seid,
+        pid: senobj.value.pid,
         site: senobj.value.site,
         type: senobj.value.type
     }
@@ -236,7 +240,6 @@ const addEied = () => {
 //修改
 const amend = () => {
     add.value = "修改";
-
     if (JSON.stringify(tableobj.value) == '{}') {
         ElMessage.error("你还没有选中修改的项目")
     } else {
@@ -244,73 +247,23 @@ const amend = () => {
         senobj.value.pid = tableobj.value.pid
         senobj.value.site = tableobj.value.site
         senobj.value.type = tableobj.value.type
+        source.value.selectstr = tableobj.value.pname
         addVisible.value = true;
     }
 }
 // 巷道方法
 // 选择巷道
 const fireclick = () => {
-    pipelinedata('');
-}
-// 节点搜索
-function searchgd() {
-    pipelinedata(searchtaggd.value);
-}
-// 节点分页查询
-const handleCurrentChange = (val) => {
-    pipelinedata(searchtaggd.value)
+    pipeline.value.dialogVisiblenode = true;
+    pipeline.value.pipelinedata("");
+
 }
-//节点数据查询
-const pipelinedata = (searchtag) => {
-    const params = {
-        transCode: 'D00001',
-        count: pageSize4.value,
-        page: currentPage4.value,
-        searchtag: searchtag,
-    }
-    request(params)
-        .then((res) => {
-            tableData2.value = res.rows;
-            total.value = res.total;
-        })
-        .catch((err) => {
-            ElMessage.error(err.returnMsg)
-        })
+//点击确定
+const pipelineapi = (row) => {
+    senobj.value.pid = row.id;
+    source.value.selectstr = row.name;
+    tableobj.value.pid = row.id;
 }
-//选中项
-const projectsSelectionSelect=(selection, row)=>{
-       if(selection.length>1){
-        multipleTableRef.value.clearSelection();
-        multipleTableRef.value.toggleRowSelection(row,true);
-        multipleSelection.value=selection[1];
-        return;
-       }
-        if(selection.length==1){
-          multipleSelection.value=selection;
-        
-       }else if(selection.length==0){
-      
-       }
-     }
-     const  selectfun=()=>{
-        source.value.selectstr='';
-     currentPage4.value=1;
-     console.log()
-       if(multipleSelection.value.length!=0){
-      firepid.value=multipleSelection.value[0].id;
-      source.value.selectstr=multipleSelection.value[0].name;
-      console.log(multipleSelection.value[0])
-       }else{
-        // selectstr.value='';
-        
-       }
-  
-     }
-    //  确定
-     const  queding=()=>{
-       selectfun();
-     
-     }
 defineExpose({ sendialogVisible, });
 </script>
 
@@ -621,5 +574,8 @@ defineExpose({ sendialogVisible, });
 .spanclad {
     color: #FFF500;
 }
-
+.chuanjianc .el-dialog__header{
+    border-bottom: 1px solid;
+border-image: linear-gradient(359deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.5)) 1 1;
+}
 </style>

+ 414 - 0
src/view/components/NodeLine.vue

@@ -0,0 +1,414 @@
+<template>
+    <div>
+        <el-dialog v-model="dialogVisiblenode" width="700"
+            class="dialog_class bgcolor tianjia asideg asidegbg leftbgimg">
+            <template #header="{ titleId, titleClass }">
+                <div class="my-header ">
+                    <el-image :src="icon" fit="contain"></el-image>
+                    <h4 :id="titleId" :class="titleClass"> 选择节点</h4>
+
+                </div>
+            </template>
+            <div class="demo-input-suffix firsttitle leftbgimg2 my_content1">
+                <div class="guand_1">
+                    <el-form-item label="节点选择" :label-width="formLabelWidth5">
+                        <el-input v-model="searchtaggd" class="w-50 m-2" placeholder="节点" />
+                    </el-form-item>
+                    <div class="asdis_btn">
+                        <div class="flex_a">
+                            <div class="btns" @click="searchgd"><span class="spantext">搜索</span></div>
+                        </div>
+                    </div>
+                </div>
+
+                <el-table :row-class-name="tableRowClassName" :max-height="tableHeight" ref="multipleTableRef"
+                    :data="tableData2" style="width: 100%" @select="projectsSelectionSelect"
+                    :header-cell-style="{ 'background': 'rgba(13, 22, 57, 0.96) ' }">
+                    <el-table-column type="selection" width="55" />
+                    <el-table-column property="id" label='节点编号' />
+                    <el-table-column property="name" label="名称" />
+                    <el-table-column property="ntype" label="类型" />
+                    <el-table-column property="x" label="x" />
+                    <el-table-column property="y" label="y" />
+                    <el-table-column property="z" label="z" />
+
+                </el-table>
+                <div class="demo-pagination-block" style="margin-top: 20px;">
+                    <el-pagination v-model:current-page="currentPage4" v-model:page-size="pageSize4" small background
+                        layout="prev, total,pager, next, jumpe," :total="parseInt(total)" class="mt-4"
+                        @current-change="handleCurrentChange" />
+                </div>
+                <div class="dialog-footer footer_div l_btn">
+                    <div class="footerbtn flex1">
+                        <div class="borderimg"><el-button @click="dialogVisiblenode = false">取消</el-button></div>
+                    </div>
+                    <div class="footerbtn flex1">
+                        <div class="borderimg"><el-button @click="queding(); dialogVisiblenode = false">
+                                确定
+                            </el-button></div>
+                    </div>
+                </div>
+            </div>
+        </el-dialog>
+    </div>
+</template>
+
+<script setup>
+import { ref, onMounted, reactive, } from "vue";
+import { RouterView, RouterLink } from "vue-router"
+import { request, uploadFile } from "@/utils/request";
+import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
+import icon from "@/assets/img/icon.png";
+const props = defineProps({});
+let emit = defineEmits(['queding'])
+let sdialog = ref({
+    dianadddialog: false,
+
+})
+let formLabelWidth5 = ref(99)
+let tableHeight = ref(500);
+let tableData2 = ref([]);
+const multipleTableRef = ref()
+const multipleSelection = ref([])
+let dialogVisiblenode = ref(false);
+let total = ref(1);
+let searchtaggd = ref("");
+let searchtag=ref("")
+const currentPage4 = ref(1);
+const pageSize4 = ref(5)
+onMounted(() => {
+
+})
+const tableRowClassName = ({ row, rowIndex }) => {
+    if (rowIndex % 2 != 0) {
+        return 'evenRow';
+    }
+    return 'oddRow';
+
+}
+//节点分页查询
+const handleCurrentChange = (val) => {
+    pipelinedata('');
+}
+//节点数据查询
+const pipelinedata = () => {
+    const params = {
+        transCode: 'D00000',
+        count: pageSize4.value,
+        page: currentPage4.value,
+        searchtag: searchtag.value,
+    }
+    request(params)
+        .then((res) => {
+            tableData2.value = res.rows;
+            total.value = res.total;
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+function searchgd() {
+    searchtag.value=searchtaggd.value;
+    pipelinedata();
+}
+
+//选中项
+const projectsSelectionSelect = (selection, row) => {
+    if (selection.length > 1) {
+        multipleTableRef.value.clearSelection();
+        multipleTableRef.value.toggleRowSelection(row, true);
+        multipleSelection.value = selection[1];
+        return;
+    }
+    if (selection.length == 1) {
+        multipleSelection.value = selection;
+
+    } else if (selection.length == 0) {
+
+    }
+}
+const selectfun = () => {
+    emit('queding', '');
+    currentPage4.value = 1;
+    if (multipleSelection.value.length != 0) {
+        emit('queding', multipleSelection.value[0]);
+  
+    } else {
+
+    }
+
+}
+//  确定
+const queding = () => {
+    selectfun();
+}
+defineExpose({ dialogVisiblenode, pipelinedata });
+</script>
+
+<style lang="scss" scoped>
+.vtk {
+    position: absolute;
+    z-index: 150;
+    top: 70px;
+
+}
+
+.jc_padding .el-table tr {
+    height: 30px !important;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+
+.flex_a {
+    flex: 1;
+    padding: 0 19px;
+}
+
+.btns {
+    width: 72px;
+    height: 30px;
+    background-image: url(../../assets/img/Rectangle399.png);
+    background-repeat: no-repeat;
+    line-height: 30px;
+    overflow: hidden;
+    margin: 10px 0;
+
+    .spantext {
+        font-weight: bold;
+        font-size: 12px;
+        color: #FFFFFF;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+}
+
+.header_z {
+    box-shadow: none !important;
+    padding: 10px 20px !important;
+}
+
+.header_l {
+    line-height: 10px;
+    text-align: left;
+    padding: 0 20px;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+
+    .el-image {
+        padding: 10px 10px 0 0;
+    }
+
+    h4 {
+        font-weight: bold;
+        font-size: 12px;
+        color: #68ADFF;
+        line-height: 14px;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+
+}
+
+.jc_padding {
+    padding: 18px 10px;
+}
+
+.line {
+    border-bottom: 1px solid rgba(255, 255, 255, 0.20);
+    box-sizing: border-box;
+}
+
+.L_aside {
+    .iconimg {
+        width: 37px;
+        height: 36px;
+        margin: 0 7px 0 24px;
+    }
+}
+
+.ddd {
+    margin-top: 20px;
+
+    .ddd_div {
+        padding: 20px 0;
+        position: relative;
+    }
+
+    .class_btn {
+        position: absolute;
+        right: 0;
+        top: 21px;
+    }
+
+    .header_l {
+        line-height: 10px;
+        text-align: left;
+        padding: 0 20px;
+        border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+
+        .el-image {
+            padding: 10px 10px 0 0;
+        }
+
+        h4 {
+            font-weight: bold;
+            font-size: 12px;
+            color: #68ADFF;
+            line-height: 14px;
+            text-align: left;
+            font-style: normal;
+            text-transform: none;
+        }
+    }
+}
+
+.el-dialog__title {
+    display: inline-block;
+}
+
+.bgcolor {
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+
+.dialog_class {
+    .my-header {
+        line-height: 10px;
+        height: 40px;
+        text-align: left;
+        padding: 0 20px;
+        border-bottom: 1px solid;
+        border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+
+        .el-image {
+            padding: 10px 10px 0 0;
+        }
+
+        h4 {
+            font-weight: bold;
+            font-size: 12px;
+            color: #68ADFF;
+            line-height: 14px;
+            text-align: left;
+            font-style: normal;
+            text-transform: none;
+        }
+    }
+
+    .my_content {
+        width: 100%;
+        height: 90px;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+        position: relative;
+
+        .radio-group {
+            display: flex;
+            justify-content: center;
+
+            .el-radio {
+                flex: 1;
+                justify-content: center;
+                font-weight: bold;
+                font-size: 12px;
+                color: #FFFFFF;
+                line-height: 14px;
+
+            }
+
+        }
+    }
+
+    .el-dialog__footer {
+        position: absolute;
+        bottom: 17px;
+        display: flex;
+
+        .footerbtn {
+            flex: 1;
+            text-align: center;
+        }
+    }
+}
+
+.my_content1 {
+    .el-table .cell {
+        font-weight: 400;
+        font-size: 12px;
+        color: #FFFFFF !important;
+        line-height: 14px;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+
+}
+
+.l_btn .borderimg {
+    width: 70px;
+    height: 30px;
+    font-size: 12px;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    /* border: 1px solid rgba(31, 107, 255, 1); */
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    font-weight: bold;
+    border-radius: 4px;
+    display: flex;
+    display: inline-block;
+    box-sizing: border-box;
+}
+
+.borderimg {
+    width: 109px;
+    height: 30px;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    /* border: 1px solid rgba(31, 107, 255, 1); */
+    -o-border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    border-radius: 4px;
+    display: flex;
+    display: inline-block;
+    box-sizing: border-box
+}
+
+.el-table,
+.el-table thead th {
+    background-color: rgba(13, 22, 57, 0.96) !important;
+}
+
+.L_aside {
+    height: calc(100vh - 70px);
+    position: absolute;
+    top: 70px;
+    overflow: hidden;
+}
+
+.el-form-item__label {
+    color: #FFFFFF !important;
+}
+
+.jiancedian {
+    width: 380px;
+    position: absolute;
+    right: 0;
+    top: 70px;
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 4px 4px 4px 4px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+</style>

+ 434 - 0
src/view/components/PipeIine.vue

@@ -0,0 +1,434 @@
+<template>
+    <div > 
+        <el-dialog
+     v-model="dialogVisiblenode"
+     width="700"
+     class="dialog_class bgcolor tianjia asideg asidegbg leftbgimg"
+   >
+   <template #header="{titleId, titleClass }">
+          <div class="my-header ">
+              <el-image :src="icon" fit="contain" ></el-image>
+              <h4 :id="titleId" :class="titleClass"> 选择巷道</h4>
+
+          </div>
+          </template>
+   <div class="demo-input-suffix firsttitle leftbgimg2 my_content1">
+      <div class="guand_1">
+         <el-form-item label="节点选择" :label-width="formLabelWidth5">
+       <el-input  v-model="searchtaggd"
+         class="w-50 m-2"
+         placeholder="巷道"
+         />
+     </el-form-item>
+     <div class="asdis_btn">
+      <div class="flex_a"><div class="btns"  @click="searchgd"><span class="spantext">搜索</span></div></div>
+  </div>
+  </div>
+
+   <el-table
+      :row-class-name="tableRowClassName"
+      :max-height="tableHeight"
+     ref="multipleTableRef"
+     :data="tableData2"
+     style="width: 100%"
+     @select="projectsSelectionSelect"
+     :header-cell-style="{'background':'rgba(13, 22, 57, 0.96) '}"
+   >
+     <el-table-column type="selection" width="55" />
+     <el-table-column property="snId" label="开始节点"/>
+     <el-table-column property="enId" label="结束节点"/>
+     <el-table-column property="id" label="编号" width="70"/>
+     <el-table-column property="name" label="名称" width="70"/>
+     <el-table-column property="sectionType" label="截面类型" width="120"/>
+     <el-table-column property="roughCoe" label="粗糙系数"/>
+     <el-table-column property="sectionPara1" label="截面参数1" width="90"/>
+     <el-table-column property="sectionPara2" label="截面参数2" width="90" />
+     <el-table-column property="sectionPara3" label="截面参数3" width="90"/>
+     <el-table-column property="sectionPara4" label="截面参数4" width="90"/>
+     <el-table-column property="sectionPara5" label="截面参数5" width="90"/>
+     
+   </el-table>
+     <div class="demo-pagination-block" style="margin-top: 20px;">
+  <el-pagination
+  v-model:current-page="currentPage4"
+    v-model:page-size="pageSize4"
+  small
+  background
+  layout="prev, total,pager, next, jumpe,"      
+  :total="parseInt(total)"
+  class="mt-4"
+  @current-change="handleCurrentChange"
+/>
+</div>
+       <div class="dialog-footer footer_div l_btn">
+      <div class="footerbtn flex1"><div class="borderimg"><el-button @click="dialogVisiblenode = false">取消</el-button></div></div>
+      <div class="footerbtn flex1"><div class="borderimg"><el-button @click="queding();dialogVisiblenode = false">
+     确定
+      </el-button></div></div>
+    </div>
+   </div>
+   </el-dialog>
+       </div>
+     </template>
+   <script setup>
+import { ref, onMounted, reactive, } from "vue";
+import {RouterView,RouterLink } from "vue-router"
+import { request, uploadFile } from "@/utils/request";
+import { ElMessage, ElButton, ElDialog, ElSelect } from 'element-plus'
+import icon from "@/assets/img/icon.png";
+const props= defineProps({ });
+let emit = defineEmits(['pipelineapi'])
+let sdialog=ref({
+    dianadddialog:false,
+
+})
+let formLabelWidth5=ref(99)
+let tableHeight=ref(500);
+ let tableData2 =ref([]);
+ const multipleTableRef = ref()
+const multipleSelection = ref([])
+let  dialogVisiblenode=ref(false);
+let total = ref(1);
+let searchtaggd = ref("");
+const currentPage4 = ref(1);
+const pageSize4 = ref(5)
+    onMounted(()=>{
+
+})
+// 巷道方法
+// 选择巷道
+const fireclick = () => {
+    pipelinedata('');
+}
+const tableRowClassName = ({ row, rowIndex }) => {
+    if (rowIndex % 2 != 0) {
+        return 'evenRow';
+    }
+    return 'oddRow';
+
+}
+// 管道搜索
+function searchgd() {
+  searchtag.value=searchtaggd.value;
+    pipelinedata();
+}
+// 管道分页查询
+const handleCurrentChange = (val) => {
+    pipelinedata()
+}
+//管道数据查询
+const pipelinedata = (searchtag) => {
+    const params = {
+        transCode: 'D00001',
+        count: pageSize4.value,
+        page: currentPage4.value,
+        searchtag: searchtag,
+    }
+    request(params)
+        .then((res) => {
+            tableData2.value = res.rows;
+            total.value = res.total;
+        })
+        .catch((err) => {
+            ElMessage.error(err.returnMsg)
+        })
+}
+//选中项
+const projectsSelectionSelect=(selection, row)=>{
+       if(selection.length>1){
+        multipleTableRef.value.clearSelection();
+        multipleTableRef.value.toggleRowSelection(row,true);
+        multipleSelection.value=selection[1];
+        return;
+       }
+        if(selection.length==1){
+          multipleSelection.value=selection;
+        
+       }else if(selection.length==0){
+      
+       }
+     }
+     const  selectfun=()=>{
+      emit('pipelineapi', '');
+     currentPage4.value=1;
+       if(multipleSelection.value.length!=0){
+      // firepid.value=multipleSelection.value[0].id;
+      emit('pipelineapi',multipleSelection.value[0]);
+     // console.log(multipleSelection.value[0])
+       }else{
+        
+       }
+  
+     }
+    //  确定
+  const  queding=()=>{
+       selectfun();
+     }
+     defineExpose({dialogVisiblenode,pipelinedata });
+   </script>
+   <style  lang="scss" scoped>
+.vtk{
+  position: absolute;
+  z-index: 150;
+  top:70px;
+
+}
+.jc_padding .el-table tr {
+    height: 30px !important;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+
+.flex_a {
+    flex: 1;
+    padding: 0 19px;
+}
+
+.btns {
+    width: 72px;
+    height: 30px;
+    background-image: url(../../assets/img/Rectangle399.png);
+    background-repeat: no-repeat;
+    line-height: 30px;
+    overflow: hidden;
+    margin: 10px 0;
+
+    .spantext {
+        font-weight: bold;
+        font-size: 12px;
+        color: #FFFFFF;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+}
+
+.header_z {
+    box-shadow: none !important;
+    padding: 10px 20px !important;
+}
+
+.header_l {
+    line-height: 10px;
+    text-align: left;
+    padding: 0 20px;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+
+    .el-image {
+        padding: 10px 10px 0 0;
+    }
+
+    h4 {
+        font-weight: bold;
+        font-size: 12px;
+        color: #68ADFF;
+        line-height: 14px;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+
+}
+
+.jc_padding {
+    padding: 18px 10px;
+}
+
+.line {
+    border-bottom: 1px solid rgba(255, 255, 255, 0.20);
+    box-sizing: border-box;
+}
+
+.L_aside {
+    .iconimg {
+        width: 37px;
+        height: 36px;
+        margin: 0 7px 0 24px;
+    }
+}
+
+.ddd {
+    margin-top: 20px;
+
+    .ddd_div {
+        padding: 20px 0;
+        position: relative;
+    }
+
+    .class_btn {
+        position: absolute;
+        right: 0;
+        top: 21px;
+    }
+
+    .header_l {
+        line-height: 10px;
+        text-align: left;
+        padding: 0 20px;
+        border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+
+        .el-image {
+            padding: 10px 10px 0 0;
+        }
+
+        h4 {
+            font-weight: bold;
+            font-size: 12px;
+            color: #68ADFF;
+            line-height: 14px;
+            text-align: left;
+            font-style: normal;
+            text-transform: none;
+        }
+    }
+}
+
+.el-dialog__title {
+    display: inline-block;
+}
+
+.bgcolor {
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+
+.dialog_class {
+    .my-header {
+        line-height: 10px;
+        height: 40px;
+        text-align: left;
+        padding: 0 20px;
+        border-bottom: 1px solid;
+        border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+
+        .el-image {
+            padding: 10px 10px 0 0;
+        }
+
+        h4 {
+            font-weight: bold;
+            font-size: 12px;
+            color: #68ADFF;
+            line-height: 14px;
+            text-align: left;
+            font-style: normal;
+            text-transform: none;
+        }
+    }
+
+    .my_content {
+        width: 100%;
+        height: 90px;
+        box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+        border-radius: 0px 0px 0px 0px;
+        position: relative;
+
+        .radio-group {
+            display: flex;
+            justify-content: center;
+
+            .el-radio {
+                flex: 1;
+                justify-content: center;
+                font-weight: bold;
+                font-size: 12px;
+                color: #FFFFFF;
+                line-height: 14px;
+
+            }
+
+        }
+    }
+
+    .el-dialog__footer {
+        position: absolute;
+        bottom: 17px;
+        display: flex;
+
+        .footerbtn {
+            flex: 1;
+            text-align: center;
+        }
+    }
+}
+
+.my_content1 {
+    .el-table .cell {
+        font-weight: 400;
+        font-size: 12px;
+        color: #FFFFFF !important;
+        line-height: 14px;
+        text-align: left;
+        font-style: normal;
+        text-transform: none;
+    }
+
+}
+
+.l_btn .borderimg {
+    width: 70px;
+    height: 30px;
+    font-size: 12px;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    /* border: 1px solid rgba(31, 107, 255, 1); */
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    font-weight: bold;
+    border-radius: 4px;
+    display: flex;
+    display: inline-block;
+    box-sizing: border-box;
+}
+
+.borderimg {
+    width: 109px;
+    height: 30px;
+    background: rgba(104, 173, 255, 0.3);
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    /* border: 1px solid rgba(31, 107, 255, 1); */
+    -o-border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+    border-radius: 4px;
+    display: flex;
+    display: inline-block;
+    box-sizing: border-box
+}
+
+.el-table,
+.el-table thead th {
+    background-color: rgba(13, 22, 57, 0.96) !important;
+}
+
+.L_aside {
+    height: calc(100vh - 70px);
+    position: absolute;
+    top: 70px;
+    overflow: hidden;
+}
+
+.el-form-item__label {
+    color: #FFFFFF !important;
+}
+
+.jiancedian {
+    width: 380px;
+    position: absolute;
+    right: 0;
+    top: 70px;
+    box-shadow: inset 0px 0px 17px 5px rgba(12, 97, 197, 0.2);
+    border-radius: 4px 4px 4px 4px;
+    border: 1px solid;
+    border-image: linear-gradient(180deg, rgba(31, 107, 255, 1), rgba(31, 107, 255, 0.48)) 1 1;
+}
+   </style>

+ 4 - 4
src/view/configurator.vue

@@ -90,25 +90,25 @@ const handleSelect = (key,keyPath) => {
     menumine.value.dialogVisible=true;
     menusen.value.sendialogVisible=false;
     menucheck.value.sendialogVisible=false;
-    menuphysics.value.dialogVisible1=false;
+    menuphysics.value.sendialogVisible=false;
         break;
     case '2':
     menumine.value.dialogVisible=false;
     menusen.value.sendialogVisible=true;
     menucheck.value.sendialogVisible=false;
-    menuphysics.value.dialogVisible1=false;
+    menuphysics.value.sendialogVisible=false;
     break;
     case '3':
     menumine.value.dialogVisible=false;
     menucheck.value.sendialogVisible=true;
     menusen.value.sendialogVisible=false;
-    menuphysics.value.dialogVisible1=false;
+    menuphysics.value.sendialogVisible=false;
         break;
      case '4':
      menumine.value.dialogVisible=false;
     menucheck.value.sendialogVisible=false;
     menusen.value.sendialogVisible=false;
-    menuphysics.value.dialogVisible1=true;
+    menuphysics.value.sendialogVisible=true;
     default:
         break;
 }