From 015aeab7a6a99afd0b24ee6ea7b5e4a9c950c3b5 Mon Sep 17 00:00:00 2001
From: qinxianzhangyao <11053546+qinxianzhangyao@user.noreply.gitee.com>
Date: 星期一, 27 五月 2024 18:05:52 +0800
Subject: [PATCH] qxtj

---
 src/views/reservation/groupcheck/index.vue |   48 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 47 insertions(+), 1 deletions(-)

diff --git a/src/views/reservation/groupcheck/index.vue b/src/views/reservation/groupcheck/index.vue
index ab5ff8c..8ee5333 100644
--- a/src/views/reservation/groupcheck/index.vue
+++ b/src/views/reservation/groupcheck/index.vue
@@ -65,7 +65,7 @@
     </el-form>
 
     <el-row :gutter="20" style="margin: 5px 20px">
-      <el-col :span="12" style="margin-left: 50%;">
+      <el-col :span="12" style="margin-left: 50%">
         <el-button
           type="primary"
           class="btn"
@@ -730,6 +730,37 @@
     submitforms() {
       this.open2 = true;
     },
+
+    base64ToBlob({ b64data = "", contentType = "", sliceSize = 512 } = {}) {
+      return new Promise((resolve, reject) => {
+        // 浣跨敤 atob() 鏂规硶灏嗘暟鎹В鐮�
+        let byteCharacters = atob(b64data);
+        let byteArrays = [];
+        for (
+          let offset = 0;
+          offset < byteCharacters.length;
+          offset += sliceSize
+        ) {
+          let slice = byteCharacters.slice(offset, offset + sliceSize);
+          let byteNumbers = [];
+          for (let i = 0; i < slice.length; i++) {
+            byteNumbers.push(slice.charCodeAt(i));
+          }
+          // 8 浣嶆棤绗﹀彿鏁存暟鍊肩殑绫诲瀷鍖栨暟缁勩�傚唴瀹瑰皢鍒濆鍖栦负 0銆�
+          // 濡傛灉鏃犳硶鍒嗛厤璇锋眰鏁扮洰鐨勫瓧鑺傦紝鍒欏皢寮曞彂寮傚父銆�
+          byteArrays.push(new Uint8Array(byteNumbers));
+        }
+        let result = new Blob(byteArrays, {
+          type: contentType,
+        });
+        result = Object.assign(result, {
+          // jartto: 杩欓噷涓�瀹氳澶勭悊涓�涓� URL.createObjectURL
+          preview: URL.createObjectURL(result),
+          // name: `鍥剧墖绀轰緥.png`,
+        });
+        resolve(result);
+      });
+    },
     submitType() {
       let cusIds = [];
       this.selectList.forEach((item) => {
@@ -742,6 +773,21 @@
       addPlOrderAndDetail(data).then((res) => {
         this.open2 = false;
         this.$modal.msgSuccess("绛惧埌鎴愬姛");
+        let base64 = res.file;
+        this.base64ToBlob({
+          b64data: base64,
+          contentType: "application/pdf",
+        }).then((res) => {
+          this.dialogVisible = true;
+          // 杞悗鍚庣殑blob瀵硅薄
+          console.log("blob", res.preview);
+         try {
+          this.url =res.preview;
+         } catch (error) {
+          this.url = window.webkitURL.createObjectURL(res.preview);
+         }
+                });
+
         this.handleQuery();
         this.selectList = [];
       });

--
Gitblit v1.8.0