From fb8343e9c193eed6343904ce5089711e9b834a99 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 28 六月 2024 11:55:44 +0800
Subject: [PATCH] 完成报告预览
---
src/components/view/b1-report-preparation.vue | 64 ++++++++++++++++++++++----------
src/components/do/b1-inspect-order-plan/Inspection.vue | 1
src/components/tool/onlyoffice.vue | 34 ++++++++++++-----
3 files changed, 68 insertions(+), 31 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index f4a882f..09e8c64 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -627,7 +627,6 @@
this.componentData.entity.sonLaboratory = this.sonLaboratory;
this.id = this.orderId;
this.getUserInfo()
- // excelFunction.compute('SUM(MAX(SUM(A1,B1,C1),2,3)*2-MIN(A1:D3),1,2)')
},
mounted() {
this.getTypeDicts()
diff --git a/src/components/tool/onlyoffice.vue b/src/components/tool/onlyoffice.vue
index db2ccb5..209b12a 100644
--- a/src/components/tool/onlyoffice.vue
+++ b/src/components/tool/onlyoffice.vue
@@ -6,6 +6,7 @@
<script>
export default {
name: "VabOnlyOffice",
+ props: ['options'],
data() {
return {
doctype: "",
@@ -24,16 +25,29 @@
};
},
created() {
- const option = this.$route.query
- this.option.url = option.url
- this.option.isEdit = option.isEdit === "true" ? true : false
- this.option.fileType = option.fileType
- this.option.title = option.title
- this.option.lang = option.lang
- this.option.isPrint = option.isPrint
- this.option.user.id = option.user_id
- this.option.user.name = option.user_name
- this.option.editUrl = option.editUrl
+ if(this.options){
+ const option = this.options
+ this.option.url = option.url
+ this.option.isEdit = option.isEdit === "true" ? true : false
+ this.option.fileType = option.fileType
+ this.option.title = option.title
+ this.option.lang = option.lang
+ this.option.isPrint = option.isPrint
+ this.option.user.id = option.user_id
+ this.option.user.name = option.user_name
+ this.option.editUrl = option.editUrl
+ }else{
+ const option = this.$route.query
+ this.option.url = option.url
+ this.option.isEdit = option.isEdit === "true" ? true : false
+ this.option.fileType = option.fileType
+ this.option.title = option.title
+ this.option.lang = option.lang
+ this.option.isPrint = option.isPrint
+ this.option.user.id = option.user_id
+ this.option.user.name = option.user_name
+ this.option.editUrl = option.editUrl
+ }
},
beforeDestroy() {
if (this.docEditor !== null) {
diff --git a/src/components/view/b1-report-preparation.vue b/src/components/view/b1-report-preparation.vue
index f161dfe..7d50577 100644
--- a/src/components/view/b1-report-preparation.vue
+++ b/src/components/view/b1-report-preparation.vue
@@ -101,16 +101,15 @@
<el-button type="primary" @click="confirmClaim">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog title="鎶ュ憡瀹℃牳" :visible.sync="issuedVisible" width="400px" :modal-append-to-body="false"
+ <el-dialog title="鎶ュ憡瀹℃牳" :visible.sync="issuedVisible" width="80vw" :modal-append-to-body="false"
:fullscreen="fullscreen">
- <!-- <div class="full-screen">
+ <div class="full-screen">
<i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
<img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
- </div> -->
- <!-- <div class="btns">
- <el-button type="primary" size="small">閫氳繃</el-button>
- <el-button size="small">涓嶉�氳繃</el-button>
- </div> -->
+ </div>
+ <div style="height: 80vh;">
+ <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
+ </div>
<span slot="footer" class="dialog-footer">
<el-button @click="issuedReasonVisible=true" :disabled="loadingIssued">涓嶉�氳繃</el-button>
<el-button type="primary" @click="subIssued" :loading="loadingIssued">閫� 杩�</el-button>
@@ -126,15 +125,14 @@
<el-button type="primary" @click="handleIssuedReason" :loading="loadingIssuedReason">纭畾</el-button>
</span>
</el-dialog>
- <el-dialog title="鎶ュ憡鎵瑰噯" :visible.sync="approveVisible" width="400px" :modal-append-to-body="false" :fullscreen="fullscreen">
- <!-- <div class="full-screen">
+ <el-dialog title="鎶ュ憡鎵瑰噯" :visible.sync="approveVisible" width="80vw" :modal-append-to-body="false" :fullscreen="fullscreen">
+ <div class="full-screen">
<i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen=true;" v-if="!fullscreen"></i>
<img src="../../../static/img/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen=false;" >
- </div> -->
- <!-- <div class="btns">
- <el-button type="primary" size="small">鎵瑰噯</el-button>
- <el-button size="small">涓嶆壒鍑�</el-button>
- </div> -->
+ </div>
+ <div style="height: 80vh;">
+ <onlyoffice ref="onlyoffice" :options="option" style="width: 100%;height: 100%;" />
+ </div>
<span slot="footer" class="dialog-footer">
<el-button @click="approveReasonVisible=true" :disabled="loadingApprove">涓嶆壒鍑�</el-button>
<el-button type="primary" @click="subApprove" :loading="loadingApprove">鎵� 鍑�</el-button>
@@ -156,15 +154,12 @@
<script>
import ValueTable from '../tool/value-table.vue'
import Word from '../tool/word.vue'
- import file from '../../util/file';
- import {
- convertToHtml
- } from 'mammoth';
- import axios from "axios";
+ import onlyoffice from '../tool/onlyoffice.vue'
export default {
components: {
ValueTable,
Word,
+ onlyoffice
},
data() {
return {
@@ -302,6 +297,7 @@
value: ``,
reason: '',
currentInfo: null,
+ option:null
}
},
mounted() {
@@ -454,7 +450,21 @@
},
handleIssued(row) {
this.currentInfo = row;
- this.issuedVisible = true;
+ let fileName = (row.urlS===null||row.urlS==='')?row.url:row.urlS
+ fileName = fileName.replace('/word/','')
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ this.option = {
+ url: this.javaApi + "/word/" + fileName,
+ isEdit: false,
+ fileType: "docx",
+ title: fileName,
+ lang: 'zh-CN',
+ isPrint: false,
+ user_id: 1,
+ user_name: userName,
+ editUrl: this.javaApi + "/insReport/onlyOffice/save?fileName=" + fileName
+ }
+ this.issuedVisible = true;
},
subIssued() {
this.loadingIssued = true;
@@ -477,6 +487,20 @@
},
handleApprove(row) {
this.currentInfo = row;
+ let fileName = (row.urlS===null||row.urlS==='')?row.url:row.urlS
+ fileName = fileName.replace('/word/','')
+ const userName = JSON.parse(localStorage.getItem("user")).name;
+ this.option = {
+ url: this.javaApi + "/word/" + fileName,
+ isEdit: false,
+ fileType: "docx",
+ title: fileName,
+ lang: 'zh-CN',
+ isPrint: false,
+ user_id: 1,
+ user_name: userName,
+ editUrl: this.javaApi + "/insReport/onlyOffice/save?fileName=" + fileName
+ }
this.approveVisible = true;
},
subApprove() {
--
Gitblit v1.9.3