Эх сурвалжийг харах

新增下载功能,修改bug

“yueshang” 1 жил өмнө
parent
commit
b480b2c4ec

+ 6 - 0
src/api/scdCheck/scdCheck2.js

@@ -68,4 +68,10 @@ export function  compResult(data){
       params:data,
   })
 }
+export function getFile(id,name){
+  return request({
+      url:`/file/download?path=static/upload/ied/${id}/${name}.icd`,
+      method:"get"
+  })
+}
 

+ 4 - 4
src/pages/netStructPicture/components/CidTree.vue

@@ -30,14 +30,14 @@
           @mouseleave="clearCounting"
         >
           <div class="tagP">
-            <span v-if="!OpensclTrue">{{
+            <span v-if="!OpensclTrue" :title="`(${item.ied_name})${item.desc}`">{{
               `(${item.ied_name})${item.desc}`
             }}</span>
-            <span v-else>{{ `(${item.ied_name})${item.ied_desc}` }}</span>
+            <span v-else :title="`(${item.ied_name})${item.ied_desc}`">{{ `(${item.ied_name})${item.ied_desc}` }}</span>
           </div>
-          <div v-if="istooltip && showFullNameIndex == index" class="tooltips">
+          <!-- <div v-if="istooltip && showFullNameIndex == index" class="tooltips">
             {{ nametip }}
-          </div>
+          </div> -->
         </div>
       </div>
       <div class="setting">

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

@@ -92,6 +92,7 @@ watch(
       cClickCode.value = "";
       clickLineResult();
       clickLineResultMain();
+      loading.value = true;
       if (clickRow.value && clickRow.value.id) {
         getData();
       } else if (CodeInfoCid.value) {

+ 37 - 5
src/pages/netStructPicture/index.vue

@@ -58,8 +58,15 @@
             <div>
               <span style="border-right: 1px solid #516380; padding-right: 30px"
                 >基准文件:
-                <span style="color: #09162c">{{ newChicken }}</span></span
-              >
+                <span style="color: #09162c">{{ newChicken }}</span>
+                <el-button
+                  style="margin-left: 5px; color: #255ce7; margin-bottom: 2px"
+                  type="text"
+                  plain
+                  @click="downFile"
+                  >下载文件</el-button
+                >
+              </span>
             </div>
             <div style="padding-left: 30px">
               <span
@@ -155,6 +162,7 @@
       </div>
     </div>
   </div>
+  <pre id="xmlData"></pre>
 </template>
   
 
@@ -174,6 +182,8 @@ import cid from "@/api/cid/cid";
 import { ElMessage, ElMessageBox, ElNotification } from "element-plus";
 import systemRow from "@/api/systemRow";
 import scdCheck from "@/api/scdCheck/scdCheck";
+import { getFile } from "@/api/scdCheck/scdCheck2";
+
 let route = useRoute();
 const isCid = ref(true); //判断是否是CID界面
 const isCidLoading = ref(false); //判断是否正在解析CID文件
@@ -237,7 +247,8 @@ const treeBack = (data, val) => {
   isContrast.value = "";
   upName.value = "";
   backName.value = data; //返回的点击行的信息
-  arrName.value = data;
+  arrName.value = newChicken;
+  console.log("newChicken", newChicken);
   uploadAnniu.value = false;
   // backId.value = val.id;
 };
@@ -318,7 +329,7 @@ const nowUpload = (file, e) => {
     .catch((err) => {});
 };
 const isloadingEv = (value) => {
-  if (value==false) {
+  if (value == false) {
     isCidLoading.value = false;
   } else {
     isCidLoading.value = true;
@@ -371,7 +382,28 @@ const portExcel = () => {
       }
     });
 };
-
+// cid下载文件
+const downFile = async () => {
+  const xmlData = await getFile(nowScdId.value, backName.value.ied_name);
+  if (!xmlData)
+    return ElMessage({
+      message: "下载失败",
+      type: "error",
+    });
+  // 创建Blob对象
+  var blob = new Blob([xmlData], { type: "application/xml" });
+  // 创建下载链接
+  var url = window.URL.createObjectURL(blob);
+  // 创建下载标签
+  var a = document.createElement("a");
+  a.href = url;
+  a.download = `${backName.value.ied_name}.icd.xml`;
+  document.body.appendChild(a);
+  // 触发点击下载
+  a.click();
+  // 清理URL对象
+  window.URL.revokeObjectURL(url);
+};
 onMounted(() => {
   reload();
   // Object.values(props.iedRelation)[0]

+ 1 - 0
src/styles/index.scss

@@ -7,6 +7,7 @@
     border-radius: 6px;
     border: 2px solid transparent;
     background-color: #d9d9d9;
+    cursor: pointer;
     background-clip: padding-box;
   }
   ::-webkit-scrollbar-thumb:hover {