소스 검색

修改bug

“yueshang” 1 년 전
부모
커밋
1c021f121e

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

@@ -222,6 +222,7 @@ const codeStatic = async () => {
     ied_name: names,
     comptype: "u",
   });
+  if(!res) return;
   updateNum(treeData.value, res.data);
 };
 const updateNum = (treeNode, data) => {

+ 2 - 0
src/pages/netStructPicture/components/Gsix.vue

@@ -189,6 +189,7 @@ const getDataCid = () => {
     //除开装置信息
     mapList.value = cidsnode;
     dones();
+    if(!mapList.value) return;
     mapList.value.forEach((item) => {
       commonGetData(item);
     });
@@ -397,6 +398,7 @@ const clickUpTypeImgUpAdd = (arr, event) => {
   }
   //新增 的数据
   let itemsToAdd = [];
+  if(! CommunicationS1.value) return;
   CommunicationS1.value.forEach((item) => {
     if (item.nnerTextRight == "空") {
       itemsToAdd.push({ ...item, add: true });

+ 2 - 2
src/pages/netStructPicture/components/ScdNow.vue

@@ -189,7 +189,7 @@ watch(
       detailData.value = null;
       lineList.value = [];
       const elmWrapper = document.getElementById("wrapperscd");
-      if (elmWrapper) {
+      if (elmWrapper&&elmWrapper.querySelectorAll(".leader-line")) {
         elmWrapper.querySelectorAll(".leader-line").forEach((node) => {
           node.remove();
         });
@@ -286,7 +286,7 @@ const lookAddOrDel = async (comData, del) => {
     ied_name: comData[0].ied_name,
     reset: 1,
   });
-  checkDialogData.value = iedRes.data ? iedRes.data[comData[0].ied_name] : null;
+  checkDialogData.value = iedRes&&iedRes.data ? iedRes.data[comData[0].ied_name] : null;
   if (del != "edit") {
     openBig.value = true;
   }

+ 9 - 3
src/pages/netStructPicture/components/basicInfo.vue

@@ -10,7 +10,7 @@
         >
           <img :src="cylinder" alt="" class="nav-img" />
           <div>{{ item.attr_name }}</div>
-          <div class="describe-text">{{ `(${item.attr_desc})` }}</div>
+          <div class="describe-text" v-if="item.attr_desc">{{ `(${item.attr_desc})` }}</div>
         </div>
       </div>
     </div>
@@ -382,6 +382,7 @@ const getMainTitle = async () => {
     ied_name: props.checkData.ied_name,
     name: "AccessPoint",
   });
+  if(!mainRes||!mainRes.data) return;
   //得到每个方框中LDevice中的内容
   Promise.all(
     mainRes.data.map(async (item) => {
@@ -390,6 +391,7 @@ const getMainTitle = async () => {
         accessPointId: item.node_id,
         scd_id: scdIdValue,
       });
+      if(!res) return;
       item.childList.push(res.data);
     })
   ).then(() => {
@@ -410,7 +412,7 @@ const getMainList = async () => {
     scd_id: scdIdValue,
     ied_name: props.checkData.ied_name,
   });
-
+   if(!infoRes||!infoRes.data) return;
   //处理分类数据
   for (let i = 0; i < infoRes.data.length; i++) {
     if (infoRes.data[i].address_json != "") {
@@ -605,6 +607,7 @@ const getNode = async () => {
     ied_name: props.checkData.ied_name,
     node_id: props.checkData.node_id,
   });
+  if(!attrRes) return;
   attrsData.value = attrRes.data;
 };
 let scdIdValue = '';
@@ -682,6 +685,7 @@ const clickNav = async (item) => {
     pagesize: 10000,
     name: "FCDA",
   });
+  if(!navRes) return;
   clickNavData.value = navRes.data;
 };
 const cancelClickNav = () => {
@@ -703,7 +707,9 @@ const clickMain = async (item) => {
     pagesize: 10000,
     name: "LN",
   });
-  clickMainData.value = [...navRes.data, ...navRes2.data];
+  if(navRes&&navRes2){
+    clickMainData.value = [...navRes.data, ...navRes2.data];
+  }
 };
 const cancelClickMain = () => {
   clickMainData.value = null;

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

@@ -204,6 +204,7 @@ const clickLeft = async (item, navIndex) => {
       ied_name: item.ied_name,
       reset: 1,
     });
+    if(!iedRes||!iedRes.data) return
     loading.value = false
     checkData.value = iedRes.data[item.ied_name];
   }

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

@@ -73,7 +73,7 @@ const getDingzhisList = async () => {
     ied_name: props.checkData.ied_name,
   })
   loading.value = false;
-  if(dingRes.data.length>0){
+  if(dingRes&&dingRes.data&&dingRes.data.length>0){
     dingzhiData.value = dingRes.data;
     dingzhiDataChild.value = dingRes.data[0].list;
     myTable5.value.setCurrentRow(dingzhiData.value[0]);

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

@@ -68,7 +68,7 @@ const getDingzhisList = async () => {
     ied_name: props.checkData.ied_name,
   });
   loading.value = false;
-  if (dingRes.data.length > 0) {
+  if (dingRes&&dingRes.data.length > 0) {
     dingzhiData.value = dingRes.data;
     dingzhiDataChild.value = dingRes.data[0].list;
     myTable5.value.setCurrentRow(dingzhiData.value[0]);

+ 5 - 4
src/pages/netStructPicture/components/inoutControl.vue

@@ -357,6 +357,7 @@ const titleUnusual = ref("input"); //区分点击输入还是输出
 //统一调整数据圆圈的显示位置
 const moveNumerCircePositon=()=>{
   const lineWrapper = document.getElementById('wrapper');
+  if(!lineWrapper) return;
   let svgs = lineWrapper.getElementsByClassName('leader-line')
   let numbers = lineWrapper.getElementsByClassName('circel-name')
   let getDiagonalMidpoint=function(p1, p2) {
@@ -410,8 +411,8 @@ const circelSet = (colors, numnerValue, posit, keys, startDom, keyMiddle, mark)
         ied_name: keyMiddle.ref_ied_name,
         reset: 1,
       });
-      dilogData.value = ResInput.data;
-      dilogRightData.value = resRla.data;
+      dilogData.value = ResInput?ResInput.data:null;
+      dilogRightData.value = resRla?resRla.data:null;
       dilogTitie.value = keyMiddle;
       dilogLeftTitle.value = keys;
       titleUnusual.value = "inout";
@@ -429,8 +430,8 @@ const circelSet = (colors, numnerValue, posit, keys, startDom, keyMiddle, mark)
         ied_name: keys.target_ied_name,
         reset: 1,
       });
-      dilogData.value = ResInput.data;
-      dilogRightData.value = resRla.data;
+      dilogData.value = ResInput?ResInput.data:null;
+      dilogRightData.value = resRla?resRla.data:null;
       dilogTitie.value = keys;
       titleUnusual.value = "input";
     }

+ 7 - 5
src/pages/netStructPicture/components/inoutSendOrRv.vue

@@ -248,10 +248,10 @@ const getSvSendCtrl = async () => {
     scd_id: scdIdValue,
     ied_name: props.checkData.ied_name,
   });
-  svTableCtrl.value = svResCtrl.data ? svResCtrl.data.SampledValueControl : [];
+  svTableCtrl.value = svResCtrl&&svResCtrl.data ? svResCtrl.data.SampledValueControl : [];
   ctrlId.value =
     svTableCtrl.value.length > 0 ? svTableCtrl.value[0].node_id : null;
-  gooseCtrl.value = svResCtrl.data ? svResCtrl.data.GSEControl : [];
+  gooseCtrl.value = svResCtrl&&svResCtrl.data ? svResCtrl.data.GSEControl : [];
   goodCtrlId.value =
     gooseCtrl.value.length > 0 ? gooseCtrl.value[0].node_id : null;
   if (ctrlId.value) {
@@ -268,6 +268,7 @@ const getSvSendFcd = async () => {
     ied_name: props.checkData.ied_name,
     ctrlid: ctrlId.value,
   });
+  if(!svResFcd) return;
   svTableFcd.value = svResFcd.data;
 };
 const svSendRowClick = (row, column) => {
@@ -283,6 +284,7 @@ const smvCtrlblockRe = async () => {
     scd_id: scdIdValue,
     ied_name: props.checkData.ied_name,
   });
+  if(!svRecResCtrl) return;
   svReceiveTableCtrl.value = svRecResCtrl.data;
   svReceive.value = [];
   if (svRecResCtrl.data && svRecResCtrl.data.length > 0) {
@@ -301,6 +303,7 @@ const getGooseList = async () => {
     ied_name: props.checkData.ied_name,
     ctrlid: goodCtrlId.value,
   });
+  if(!gooseRes) return;
   gooseList.value = gooseRes.data;
 };
 const svSendRowClick3 = (row, column) => {
@@ -316,8 +319,7 @@ const getGooseReList = async () => {
     scd_id: scdIdValue,
     ied_name: props.checkData.ied_name,
   });
-  if (!gooseRes.data) return;
-  if (gooseRes.data.length > 0) {
+  if (gooseRes&&gooseRes.data&&gooseRes.data.length > 0) {
     gooseRes.data.forEach((item) => {
       item.children = [];
       const alreadyExists = gooseReCtrl.value.some((arrItem) => {
@@ -332,7 +334,7 @@ const getGooseReList = async () => {
         gooseReCtrl.value.push(item);
       }
     });
-
+     if(! gooseReCtrl.value) return;
     //子列表的数据
     gooseReCtrl.value.forEach((item) => {
       if (gooseReCtrl.value.length > 0 && gooseRes.data.length > 0) {

+ 9 - 3
src/pages/netStructPicture/components/netWork.vue

@@ -190,7 +190,7 @@ const getNetWork = async () => {
     pagesize: 10000,
     name: "SubNetwork",
   });
-  if (infoRes.code == 1) {
+  if (!infoRes||infoRes.code == 1) {
     // loading.value = false;
     loadDating.value = false;
     return;
@@ -209,7 +209,7 @@ const initLoad = async () => {
     pagesize: 10000,
     name: "ConnectedAP",
   });
-  if (allAP.code == 1) {
+  if (!allAP||allAP.code == 1) {
     // loading.value = false;
     return;
   }
@@ -234,7 +234,7 @@ const initLoad = async () => {
 //处理重复的ip
 const ipNetaddr = async () => {
   const ipRes = await iedNetaddr({ scd_id: scdIdValue });
-  if (ipRes.code == 1) {
+  if (!ipRes||ipRes.code == 1) {
     return;
   }
   //如果有把node_value添加到一个里面,命名从0开始
@@ -277,6 +277,7 @@ const publicRepeat = ref([]); //找到attr_ap_name不同的,attr_ied_name相
 const onChangeMain = (index, clickItem) => {
   handleAllAp.value = [];
   //找到大类下自己的数据
+  if(!allApData.value) return;
   Object.keys(allApData.value).forEach((item) => {
     if (item.includes(clickItem.node_id)) {
       handleAllAp.value = [...handleAllAp.value, ...allApData.value[item].list];
@@ -296,6 +297,7 @@ const getlist = () => {
   if (!clickAllAp.value) {
     handleAllAp.value = [];
     //匹配的所有数据的key值,进行筛选对应的数据,找到大类下自己的数据
+    if(!allApData.value) return;
     Object.keys(allApData.value).forEach((item) => {
       if (
         nodeInfoData.value != null &&
@@ -313,6 +315,7 @@ const getlist = () => {
     ipShow();
   }
   var index = 0;
+  if(!handleAllAp.value) return;
   handleAllAp.value.forEach((item, subindex) => {
     if (!listCat.value.includes(item.attr_ap_name)) {
       listCat.value.push(item.attr_ap_name);
@@ -452,6 +455,7 @@ const setinlineStyle = (data, dataCat) => {
             } else {
               const counts = {};
               //计算每个attr_ied_name出现了多少次重复  { 'CL2207': 2, 'PL2206B': 3 }
+              if(!arr) return;
               arr.forEach((item) => {
                 if (counts[item]) {
                   counts[item]++;
@@ -472,10 +476,12 @@ const setinlineStyle = (data, dataCat) => {
       }
     }
   }
+  if(!newData) return;
   // 长竖线--根据行数计算高度,有多少行length就有多少,是数组包数组的形式,一行9个,
   newData.forEach((item, index) => {
     for (let i = 0; i < item.length; i++) {
       // let num = listCat.value.indexOf(item[i].attr_ap_name) + 1;
+      if(!listCat.value) return;
       listCat.value.forEach((typeItem, typeIndex) => {
         if (item[i][`inlineStyle${typeItem}`]) {
           //可对重复的线进行高度设置

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

@@ -3,9 +3,8 @@
   <div
     v-loading="loading"
     element-loading-text="加载数据中"
-    style="overflow: hidden"
   >
-    <div class="main-cont" ref="myElement" id="treedom">
+    <div class="main-cont" ref="myElement" id="treedom" style="overflow: hidden">
       <div class="main-left" ref="leftElement">
         <div
           v-for="(item, index) in leftList"

+ 4 - 3
src/pages/netStructPicture/components/scdTree.vue

@@ -306,7 +306,7 @@ const uploadFile = async (e) => {
     is_checkin: 0,
     data_type: "a_scd",
   });
-  if (fileRes.code == 0) {
+  if (fileRes&&fileRes.code == 0) {
     fileList.value.push(fileRes.data);
     chooseFile.value = fileRes.data.filename;
     loadingAdd.value = false;
@@ -343,7 +343,7 @@ const searchScdCheck = async (row) => {
   const res = await compstatView({
     comp_id: row.id,
   });
-  if (res.code == 0) {
+  if (res&&res.code == 0) {
     emit("scdJpadList", res.data);
     loading.close();
   }
@@ -361,6 +361,7 @@ const aktType = () => {
     .flashStationDui({ station_id: route.query.stationId })
     .then((res) => {
       //获取差异纪录列表
+      if(!res) return;
       tableList.value = res.data;
     });
 };
@@ -469,7 +470,7 @@ const yesAnalysisClick = () => {
           comp_id: chooseContrast.value.id,
         });
       }
-      if (anRes.code == 0) {
+      if (anRes&&anRes.code == 0) {
         loadingAdd.value = false;
         aktType();
         ElMessage({

+ 5 - 3
src/pages/netStructPicture/components/scdVisual.vue

@@ -176,7 +176,7 @@ const iedRelationData = ref([]);
 const checkDialogData = ref(null);
 const iedRelation = async () => {
   const iedRes = await scdIedRelation({ scd_id: scdIdValue });
-  if (!iedRes.data) return;
+  if (!iedRes||!iedRes.data) return;
   iedRelationData.value = iedRes.data;
 };
 const donesearch = (emits) => {
@@ -219,7 +219,7 @@ const voltageLevel = ref([{ name: "全部", id: "alls" }]); //电压等级
 const areaType = ref([]);
 const getArea = async () => {
   const areaRes = await areaList({ scd_id: scdIdValue });
-  if (!areaRes.data) {
+  if (!areaRes||!areaRes.data) {
     voltageLevel.value = [];
     loading.value = false;
     loadDating.value = false;
@@ -297,6 +297,7 @@ const count = ref(0);
 const iedNameData = async () => {
   //IED编码或名称
   const iedRes = await scdIedRelation({ scd_id: scdIdValue });
+  if(!iedRes) return;
   iedName.value = iedRes.data;
   count.value = iedRes.count;
 };
@@ -313,6 +314,7 @@ const changeLevel = async (value, mainValue) => {
   nextTick(() => {
     checkLabel.value = mainValue ? mainValue : levelRef.value.selectedLabel;
   });
+  if(!queryParams.value) return;
   //如果选中的是当前选项,那么其他搜索框的内容应置为空
   Object.keys(queryParams.value).forEach((item) => {
     if (queryParams.value[item] !== value && item != "scd_id") {
@@ -330,7 +332,7 @@ const changeLevel = async (value, mainValue) => {
     dialogData.value = [];
     //搜索的弹框内容
     const searchLevel = await areaIedList(forms);
-    if (!searchLevel.data) return;
+    if (!searchLevel||!searchLevel.data) return;
     dialogData.value = Object.values(iedName.value).filter((item) => {
       return searchLevel.data.some((levelItem) => {
         return item.node_id == levelItem.ied_id;

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

@@ -106,6 +106,7 @@ const getHtml = async () => {
     scd_id: scdIdValue,
     ied_name: props.checkData.ied_name,
   });
+  if(!res) return;
   text.value = formateXml(res.data);
   if (res) {
     loading.value = false;

+ 3 - 3
src/pages/netStructPicture/components/virtualRelation.vue

@@ -206,7 +206,7 @@ const getNetworkInfo3 = async (names) => {
     isDecollate: true,
   };
   //处理两边的数据
-  if (svResInfo.data.length > 0) {
+  if (svResInfo&&svResInfo.data.length > 0) {
     processBoth(leftList.value, svResInfo, "in");
     processBoth(rightList.value, svResInfo, "out");
   }
@@ -371,7 +371,7 @@ onMounted(() => {
   } else {
     scdIdValue = route.query.id;
   }
-  if (props.checkData != null) {
+  if (props.checkData != null&&listData3.value) {
     getNetworkInfo3(listData3.value.ied_name);
   }
   //不加条件切换下方tab时会出现bug
@@ -386,7 +386,7 @@ watch(
     listData3.value = [];
     svInfo.value = [];
     listData3.value = newValue;
-    if (newValue != null) {
+    if (newValue != null&&listData3.value) {
       getNetworkInfo3(listData3.value.ied_name);
     }
     clickResetLine3();

+ 4 - 3
src/pages/netStructPicture/components/virtualnformation.vue

@@ -200,7 +200,7 @@ const processBoth = (list, svResInfo, inoutType) => {
           ied_name: item.ied_name,
           reset: 1,
         });
-        if(!item.ied_name||!iedRes.data[item.ied_name]) return;
+        if(!iedRes||!item.ied_name||!iedRes.data[item.ied_name]) return;
         item.descName = iedRes.data[item.ied_name].desc;
       } else {
         const iedRes = await scdIedRelation({
@@ -208,6 +208,7 @@ const processBoth = (list, svResInfo, inoutType) => {
           ied_name: item.ied_name,
           reset: 1,
         });
+        if(!iedRes||!item.ied_name||!iedRes.data[item.ied_name]) return;
         item.descName = iedRes.data[item.ied_name].desc;
       }
     }
@@ -296,7 +297,7 @@ const getNetworkInfo3 = async () => {
     ied_name: names,
     reset: 1,
   });
-middleTitelDesc.value = iedRes.data?iedRes.data[names].desc:''
+middleTitelDesc.value = iedRes&&iedRes.data?iedRes.data[names].desc:''
   //省略号===
   const data = {
     attr_ld_inst: "",
@@ -309,7 +310,7 @@ middleTitelDesc.value = iedRes.data?iedRes.data[names].desc:''
     isDecollate: true,
   };
   //省略号===
-  if(!svResInfo.data) return;
+  if(!svResInfo||!svResInfo.data) return;
   svResInfo.data.sort(function (a, b) {
     return a.no - b.no; // 从小到大排序
   });

+ 1 - 0
src/pages/netStructPicture/newTitle/SlcCheck.vue

@@ -463,6 +463,7 @@ const lineNoClick = async (val) => {
     scd_id: scdid.value,
     lineno: val.line_no,
   });
+  if(!res) return;
   lineNoData.value = res.data;
 };
 const handleSizeChange = (val) => {