Parcourir la source

Merge branch 'master' of http://94.191.59.107:3000/houwenfeng/scd_tools_ui into liling

liling il y a 1 an
Parent
commit
9bc086c91a

+ 6 - 1
src/pages/mission/components/HistoryMis.vue

@@ -45,7 +45,7 @@
                     </template>
                 </el-table-column>
             </el-table>
-            <PageNation :totals="totals" :pageNum="pageNum" :pageSize="pageSize" @pageBack="pageBack"></PageNation>
+            <PageNation :totals="totals" :pageNum="pageNum" :pageSize="pageSize" @pageBack="pageBack" @currentBack="currentBack"></PageNation>
         </div>
         <DelHistory v-if="delModal" :delModal="delModal" :delId="delId" :reload="reload" @delBack="delBack">
         </DelHistory>
@@ -87,6 +87,7 @@ export default {
             startTime.value = ''
             endTime.value = ''
             getTime.value = ''
+            pageNum.value = 1
             task.getTask({ pageno: 1, pagesize: 10 }).then(res => {
                 tableData.value = res.data
                 totals.value = res.count
@@ -156,6 +157,9 @@ export default {
         function delBack(data) {
             delModal.value = data
         }
+        function currentBack(data){
+            pageNum.value = data
+        }
         onMounted(() => {
             reload()
         })
@@ -182,6 +186,7 @@ export default {
             totals,//总条数
             relady,//重新检测
             loading,
+            currentBack,
         }
     },
     components: {

+ 14 - 6
src/pages/mission/components/PageNation.vue

@@ -1,8 +1,9 @@
 <template>
     <div style="position: absolute;bottom: -60px;right: 20px;">
         <el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 20, 30, 40]"
-            :small="small" :disabled="disabled" :background="background" layout="total, sizes, prev, pager, next, jumper"
-            :total="total" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
+            :small="small" :disabled="disabled" :background="background"
+            layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange"
+            @current-change="handleCurrentChange" />
     </div>
 </template>
 
@@ -31,14 +32,20 @@ export default {
         let disabled = ref(false)
         let background = ref(false)
         let total = ref(100)//总数
-        watch(()=>props.totals,(newVal)=>{
+        watch(() => props.totals, (newVal) => {
             total.value = newVal
         })
+        watch(() => props.pageNum, (newVal) => {
+            currentPage.value = newVal
+            console.log(currentPage.value,'watch');
+        },{
+            deep:true
+        })
         function reload() {
             currentPage.value = props.pageNum
             pageSize.value = props.pageSize
             total.value = props.totals
-            console.log(total.value,'total');
+            console.log(currentPage.value,'页码');
         }
         function handleSizeChange(e) {//每页条数
             pageSize.value = e
@@ -47,7 +54,7 @@ export default {
                 pagesize: pageSize.value - 0
             }).then(res => {
                 total.value = res.count
-                emit("pageBack",res.data)
+                emit("pageBack", res.data)
             })
         }
         function handleCurrentChange(e) {//页码
@@ -57,7 +64,8 @@ export default {
                 pagesize: pageSize.value - 0
             }).then(res => {
                 total.value = res.count
-                emit("pageBack",res.data)
+                emit("currentBack",currentPage.value)
+                emit("pageBack", res.data)
             })
         }
         onMounted(() => {

+ 1 - 0
src/pages/netStructPicture/components/CidTree.vue

@@ -332,6 +332,7 @@ const tagClick = (row, num) => {
   })
   tagChoose.value = num;
   clickTage.value = row;
+  emit("treeBack", row)
   // cid
   //   .findFile({
   //     scd_id: route.query.id,

+ 26 - 30
src/pages/netStructPicture/components/Gsix.vue

@@ -10,7 +10,6 @@ import newly0 from "@/assets/image/CID/newly0.png";
 import LeaderLine from "../../../../public/leader-line.min.js";
 import AnimEvent from "../../../../public/anim-event.min.js";
 import { hiddenLine2, hiddenLineDialog } from "@/utils/linesPosition";
-import cid from "@/api/cid/cid";
 import jiantou from "@/assets/image/CID/jiantou.png";
 import { useRoute } from "vue-router";
 const route = useRoute();
@@ -164,7 +163,7 @@ const getData = async () => {
     comptype: "u",
     itemcode: cClickCode.value,
   });
-  if (!res.data || !res.data.length) return (loading.value = false);
+  if (!res||!res.data || !res.data.length) return (loading.value = false);
   if (res.data && cClickCode.value != "scd.ied") {
     res.data.forEach((item) => {
       let text;
@@ -222,7 +221,7 @@ const clickTypeImg = (item, event) => {
   setTimeout(() => {
     setLeaderlines("add");
     newPositionLine2(leaderLineShow.value);
-  }, 100);
+  }, 200);
   comonTypeImg(item, event);
 };
 const clickTypeImgDel = (item, event) => {
@@ -909,7 +908,7 @@ onMounted(() => {
   if (props.iedRelation) {
     tagList.value = Object.values(props.iedRelation)[0];
   }
-  if (clickRow.value && clickRow.value.id) {
+  if (clickRow.value && clickRow.value.id&&!props.isCid) {
     getData();
   }
 });
@@ -947,20 +946,19 @@ onMounted(() => {
             v-for="(item, index) in dataU"
             :key="index"
             class="left-item-cont"
-            @click="
+            :ref="(el) => setdomLeftMain(el, item.diff_object_name)"
+            :id="item.diff_object_name.replace(/[^\w\s]/g, '')"
+          >
+            <div class="item-img">
+              <img :src="codeImg" alt="" class="type-img"   @click="
               clickUpTypeImgLeft(
                 item.diff_desc,
                 $event,
                 item.diff_object_name,
                 item
               )
-            "
-            :ref="(el) => setdomLeftMain(el, item.diff_object_name)"
-            :id="item.diff_object_name.replace(/[^\w\s]/g, '')"
-          >
-            <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="modify0" alt="" class="type-img-mini" />
+            "/>
+              <img loading="lazy" :src="modify0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">{{ item.diff_object_name }}</div>
           </div>
@@ -972,8 +970,8 @@ onMounted(() => {
             id="leftBasic"
           >
             <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="modify0" alt="" class="type-img-mini" />
+              <img loading="lazy"  :src="codeImg" alt="" class="type-img" />
+              <img loading="lazy"  :src="modify0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">基本信息</div>
           </div>
@@ -984,12 +982,11 @@ onMounted(() => {
             v-for="(item, index) in leftI"
             :key="index"
             class="left-item-cont"
-            @click="clickTypeImg(item, $event)"
             :ref="(el) => setdomLeftMain(el, item.diff_object_name)"
           >
             <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="newly0" alt="" class="type-img-mini" />
+              <img loading="lazy" :src="codeImg" alt="" class="type-img"  @click="clickTypeImg(item, $event)"/>
+              <img loading="lazy" :src="newly0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">{{ item.diff_object_name }}</div>
           </div>
@@ -1036,20 +1033,20 @@ onMounted(() => {
             v-for="(item, index) in dataU"
             :key="index"
             class="left-item-cont"
-            @click="
+            
+            :id="item.diff_object_name.replace(/[^\w\s]/g, '')"
+            :ref="(el) => setdomRightMain(el, item.diff_object_name)"
+          >
+            <div class="item-img">
+              <img :src="codeImg" alt="" class="type-img" @click="
               clickUpTypeImgRight(
                 item.diff_desc,
                 $event,
                 item.diff_object_name,
                 item
               )
-            "
-            :id="item.diff_object_name.replace(/[^\w\s]/g, '')"
-            :ref="(el) => setdomRightMain(el, item.diff_object_name)"
-          >
-            <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="modify0" alt="" class="type-img-mini" />
+            "/>
+              <img loading="lazy" :src="modify0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">{{ item.diff_object_name }}</div>
           </div>
@@ -1061,8 +1058,8 @@ onMounted(() => {
             id="rightBasic"
           >
             <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="modify0" alt="" class="type-img-mini" />
+              <img loading="lazy" :src="codeImg" alt="" class="type-img" />
+              <img loading="lazy" :src="modify0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">基本信息</div>
           </div>
@@ -1073,12 +1070,11 @@ onMounted(() => {
             v-for="(item, index) in rightD"
             :key="index"
             class="left-item-cont"
-            @click="clickTypeImgDel(item, $event)"
             :ref="(el) => setdomRightMain(el, item.diff_object_name)"
           >
             <div class="item-img">
-              <img :src="codeImg" alt="" class="type-img" />
-              <img :src="del0" alt="" class="type-img-mini" />
+              <img loading="lazy" :src="codeImg" alt="" class="type-img" @click="clickTypeImgDel(item, $event)" />
+              <img loading="lazy" :src="del0" alt="" class="type-img-mini" />
             </div>
             <div class="wraps">{{ item.diff_object_name }}</div>
           </div>

+ 4 - 1
src/pages/netStructPicture/components/ScdNow.vue

@@ -79,6 +79,7 @@
     <div v-else-if="!clickRow" class="no-data">
       请选择比对记录或创建新的比对
     </div>
+    <!-- 新增和 删除 -->
     <dialog-index
       :openBig="openBig"
       @done="done"
@@ -87,6 +88,7 @@
       :scdView="scdView"
       :delScdId="delScdId"
     ></dialog-index>
+    <!-- 点击修改的弹窗  -->
     <scl-update
       :openScl="openScl"
       @doneScl="doneScl"
@@ -271,7 +273,8 @@ const lookAddOrDel = async (comData, del) => {
   if (del == "del" && clickRowData.value.target_id) {
     delScdId.value = clickRowData.value.target_id; //点击删除的scdid要用对比文件的
   } else if (del == "add") {
-    delScdId.value = route.query.id;
+    // delScdId.value = route.query.id;
+    delScdId.value = clickRowData.value.source_id;
   } else if (del == "edit") {
     recordDelIedVer.value = iedVer.value&&iedVer.value.d ? iedVer.value.d.list : null;
   }

+ 1 - 1
src/pages/netStructPicture/components/basicInfo.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="treedom4" v-loading="loading" style="overflow: hidden">
+  <div id="treedom4" v-loading="loading">
     <div style="position: relative">
       <div class="nav" id="topLine">
         <div

+ 3 - 2
src/pages/netStructPicture/components/inoutControl.vue

@@ -178,7 +178,7 @@ const getIedChild = async () => {
     ied_name: props.checkData.ied_name,
     forcerefresh: 0,
   });
-  if (!listData2.value.list || !childRes.data) return;
+  if (!listData2.value.list || !childRes.data) return loading.value = false;
   if (childRes.data) {
     //左右侧内部侧数据组装
     listData2.value.list.forEach((item, index) => {
@@ -224,7 +224,7 @@ const getNetworkInfo = async () => {
     scd_id: scdIdValue,
     ied_name: listData2.value.ied_name,
   });
-  if (!svResInfoCtrl.data || !svResInfo.data) return;
+  if (!svResInfoCtrl.data || !svResInfo.data) return loading.value = false;
   if (svResInfoCtrl.data && svResInfoCtrl.data.GSEControl) {
     //处理数据得到APPID
     svResInfo.data.forEach((item) => {
@@ -325,6 +325,7 @@ const processArray = (arr) => {
 const clickImg = async (dataItem) => {
   loading.value = true;
   listData2.value = await clickImgEvent(props, dataItem, scdIdValue);
+  if(!listData2.value) return loading.value = false
 };
 
 //点击后重置数据和线条

+ 3 - 2
src/pages/netStructPicture/components/relationShip.vue

@@ -300,12 +300,13 @@ const middleLinePosition = () => {
         setElementMarginTop(leftElement, 92);
         setElementMarginTop(middleElement, 150);
         break;
+       
       default:
         if (!middleElement.value) return;
-        if (rightListLength <= 3 && leftListLength <= 3) {
+        if (rightListLength <= 4 && leftListLength <= 4) {
           setElementMarginTop(middleElement, 150);
         }
-        if (leftListLength > 2 || rightListLength > 2) {
+        if (leftListLength > 4 || rightListLength > 4) {
           setElementMarginTop(rightElement, 0);
           setElementMarginTop(leftElement, 0);
           middleElement.value.style.marginTop = `${(heights - 60) / 2}px`; // 设置元素的垂直位置

+ 1 - 0
src/pages/netStructPicture/components/virtualnformation.vue

@@ -200,6 +200,7 @@ const processBoth = (list, svResInfo, inoutType) => {
           ied_name: item.ied_name,
           reset: 1,
         });
+        if(!item.ied_name||!iedRes.data[item.ied_name]) return;
         item.descName = iedRes.data[item.ied_name].desc;
       } else {
         const iedRes = await scdIedRelation({

+ 3 - 1
src/pages/netStructPicture/index.vue

@@ -183,6 +183,7 @@ const navtopData = ref([
   { name: "虚端子关系图", code: "virtual" },
 ]);
 const activeNav = ref(null);
+const upload = ref(null);//上传按钮的ref
 const backName = ref({}); //树组件返回名称
 let mustVal = ref(false);
 let upName = ref(""); //上传的文件名称
@@ -237,6 +238,7 @@ const closeX = () => {
 };
 const allCidStart = ref([]);
 const nowUpload = (file, e) => {
+  upload.value.clearFiles();
   console.log('files====', file)
   upFile.value = file.file;
   upName.value = file.file.name;
@@ -277,7 +279,7 @@ const nowUpload = (file, e) => {
             })
             .then((res) => {
               ElNotification.closeAll();
-              if (res.code == 0) {
+              if (res&&res.code == 0) {
                 ElMessage({
                   type: "success",
                   message: "对比成功!",

+ 2 - 5
src/pages/netStructPicture/newTitle/SlcCheck.vue

@@ -7,7 +7,7 @@
       <div v-else>SLC效验</div>
       <span class="closeX" @click="closeX">×</span>
     </div>
-    <div class="main">
+    <div class="main" v-loading="tableLoading">
       <div class="treeBox">
         <div class="tree-title">
           <img :src="HardDrives" alt="" />
@@ -71,7 +71,6 @@
       </div>
       <div
         class="tableBox"
-        v-loading="tableLoading"
         element-loading-text="正在查询校验信息中"
       >
         <div class="allMis">
@@ -373,9 +372,7 @@ const common = async () => {
     node_id: nodeId,
     level: levels,
   });
-  if (res.code == 0) {
-    tableLoading.value = false;
-  }
+  if(res||!res)  tableLoading.value = false;
   tableData.value = res;
 };
 //点击全部、错误等

+ 1 - 1
src/pages/system/SystemPage.vue

@@ -21,7 +21,7 @@
                 </div>
                 <!-- 切换box -->
                 <div class="changeBox" :style="selectIndex == 1 && ourNum == 1 ? 'width:96%' : ''" v-loading="loading">
-                    <LitLine v-if="selectIndex == 0" :fuckList="fuckList" :moduleTotal="moduleTotal"></LitLine>
+                    <LitLine v-if="selectIndex == 0" :fuckList="fuckList" :moduleTotal="moduleTotal" :lineId="lineId"></LitLine>
                     <InsideModule v-if="selectIndex == 1 && ourNum == 1" :tfType="tfType" :insideNeed="insideNeed"
                         :lineId="lineId" :setName="setName" :setId="setId" @closeDraw="closeDraw"></InsideModule>
                     <SetModule v-if="selectIndex == 1 && ourNum == 0" @backNum="backNum" :linkstyleid="lineId"

+ 45 - 3
src/pages/system/components/LitLine.vue

@@ -46,9 +46,10 @@
             </div>
             <div>
                 <AddLine v-if="alModal" :alModal="alModal" :sunSearch="sunSearch" @alBack="alBack"></AddLine>
-                <LookLine v-if="lookModal" :lookModal="lookModal" :needList="needList" :search="search"
+                <LookLine v-if="lookModal" :lookModal="lookModal" :flashId="flashId" :checkFlash="checkFlash" :needList="needList" :search="search"
                     @lookBack="lookBack" :listNum="listNum"></LookLine>
-                <DelLine v-if="delModal" :delModal="delModal" :needList="needList" :sunSearch="sunSearch" @delBack=delBack>
+                <DelLine v-if="delModal" :delModal="delModal" :flashId="flashId" :checkFlash="checkFlash" :needList="needList" :sunSearch="sunSearch"
+                    @delBack=delBack>
                 </DelLine>
                 <PicLook v-if="picModal" :picModal="picModal" :needList="needList" @picBack="picBack"></PicLook>
             </div>
@@ -73,7 +74,11 @@ export default {
         moduleTotal: {
             type: Number,
             required: true
-        }
+        },
+        lineId:{
+            type:String,
+            required:true,
+        },//电压等级的id
     },
     setup(props, { emit }) {
         let lineList = ref([])//
@@ -86,16 +91,51 @@ export default {
         let listNum = ref(0)//0为查看,1为编辑
         let totals = ref(0)//总条数
         let loading = ref(false)
+        let flashId = ref("")//本组件电压等级id
         watch(() => props.fuckList, (newVal) => {
             lineList.value = newVal
         })
         watch(() => props.moduleTotal, (newVal) => {
             totals.value = newVal
         })
+        watch(()=>props.lineId,(newVal)=>{
+            flashId.value = newVal
+        })
+        function checkFlash(num){
+            loading.value = true
+            litLine.getAllLine({ pageno: 1, pagesize: 20, vol_id: num - 0 }).then(res => {
+                if (res.code == 0) {
+                    loading.value = false
+                    lineList.value = res.data
+                    totals.value = res.count
+                    // counts.value = res.count
+                    // emit("lineBack", loading.value)
+                    // emit("listBack", res.data, e.id, counts.value)
+                } else {
+                    ElMessage({
+                        message: res.msg,
+                        type: "error"
+                    })
+                }
+            })
+        }
         function search() {
+            flashId.value = props.lineId
             if (totals.value) {
                 console.log('调用了search的if');
                 totals.value = props.moduleTotal
+                loading.value = true
+                litLine.getAllLine({ pageno: 1, pagesize: 10 }).then(res => {
+                    if (res.data != null) {
+                        lineList.value = res.data
+                        totals.value = res.count
+                        loading.value = false
+                    } else {
+                        lineList.value = []
+                        totals.value = 0
+                        loading.value = false
+                    }
+                })
             } else {
                 console.log('调用了search的else');
                 loading.value = true
@@ -210,6 +250,8 @@ export default {
             pageBack,//Pagination.vue返回数据
             loading,
             sunSearch,//DelLine.VUE需要的刷新
+            flashId,//本组件变电站id
+            checkFlash,//便于刷新的函数
         }
     },
     components: {

+ 20 - 2
src/pages/system/modalComp/DelLine.vue

@@ -38,7 +38,15 @@ export default {
         sunSearch: {
             type: Function,
             required: true
-        }
+        },
+        flashId: {
+            type: String,
+            required: true,
+        },//litline.vue传过来的电压id
+        checkFlash: {
+            type: Function,
+            required: true,
+        },//litline.vue传过来的便于刷新页面的方法
     },
     setup(props, { emit }) {
         let dialogVisible = ref(false)
@@ -46,9 +54,14 @@ export default {
         let lastList = props.needList
         let delId = ref('')
         let { cancels, sureClick } = toRefs(props)
+        let flashIds = ref("")//本组件的电压等级id
+        watch(() => props.flashId, (newVal) => {
+            flashIds.value = newVal
+        })
         function lineList() {
             delId.value = lastList.id
             dialogVisible.value = result
+            flashIds.value = props.flashId
         }
         function canBack() {
             dialogVisible.value = false
@@ -62,7 +75,11 @@ export default {
                         message: "删除成功",
                         duration: 1500
                     })
-                    props.sunSearch()
+                    if (flashIds.value) {
+                        props.checkFlash(flashIds.value)
+                    } else {
+                        props.sunSearch()
+                    }
                     dialogVisible.value = false
                     emit("delBack", dialogVisible.value)
                 }
@@ -77,6 +94,7 @@ export default {
             cancels: canBack,
             sureClick: sureGet,
             closes: canBack,
+            flashIds,
         }
     }
 }

+ 22 - 3
src/pages/system/modalComp/LookLine.vue

@@ -1,7 +1,8 @@
 <template>
     <div>
         <div>
-            <el-dialog v-model="dialogVisible" :title="titles" width="30%" @close="closes" :close-on-click-modal="false">
+            <el-dialog v-model="dialogVisible" :title="titles" width="30%" @close="closes"
+                :close-on-click-modal="false">
                 <!--  -->
                 <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm"
                     status-icon>
@@ -51,7 +52,15 @@ export default {
         search: {
             type: Function,
             required: true
-        }
+        },
+        flashId: {
+            type: String,
+            required: true,
+        },//litline.vue传过来的电压id
+        checkFlash: {
+            type: Function,
+            required: true,
+        },//litline.vue传过来的便于刷新页面的方法
     },
     setup(props, { emit }) {
         let dialogVisible = ref(false)
@@ -62,6 +71,7 @@ export default {
         let selectList = ref([])
         let editId = ref("")
         let disNum = ref(false)
+        let flashIds = ref("")//本组件的电压等级id
         let { cancels, sureClick } = toRefs(props)
         let ruleForm = ref({
             name: "",
@@ -76,7 +86,11 @@ export default {
             careNum.value = newVal
             console.log(careNum.value, 'watch');
         })
+        watch(() => props.flashId, (newVal) => {
+            flashIds.value = newVal
+        })
         function searchFlashLel() {
+            flashIds.value = props.flashId
             systemRow.getChildren({ code: "voltage_level" }).then(res => {
                 if (res.data != null) {
                     selectList.value = res.data
@@ -127,7 +141,11 @@ export default {
                                     message: "修改成功",
                                     duration: 1500
                                 })
-                                props.search()
+                                if (flashIds.value) {
+                                    props.checkFlash(flashIds.value)
+                                } else {
+                                    props.search()
+                                }
                             }
                         })
                     }
@@ -158,6 +176,7 @@ export default {
             selectList,
             ruleFormRef,
             rules,
+            flashIds,//本组件的电压id
         }
     }
 }