|
@@ -1,87 +1,99 @@
|
|
<template>
|
|
<template>
|
|
- <BasicModal @register="registerModal" :defaultFullscreen="true" title="报表导出" width="1000px" v-bind="$attrs"
|
|
|
|
- :footer="null" :showCancelBtn="false" :showOkBtn="false" destroyOnClose :mask-closable="false">
|
|
|
|
- <div id="fileEdit"></div>
|
|
|
|
- </BasicModal>
|
|
|
|
|
|
+ <BasicModal
|
|
|
|
+ @register="registerModal"
|
|
|
|
+ :defaultFullscreen="true"
|
|
|
|
+ title="报表导出"
|
|
|
|
+ width="1000px"
|
|
|
|
+ v-bind="$attrs"
|
|
|
|
+ :footer="null"
|
|
|
|
+ :showCancelBtn="false"
|
|
|
|
+ :showOkBtn="false"
|
|
|
|
+ destroyOnClose
|
|
|
|
+ :mask-closable="false"
|
|
|
|
+ >
|
|
|
|
+ <div id="fileEdit"></div>
|
|
|
|
+ </BasicModal>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
-import { computed, unref, inject, reactive, ref, watch, defineProps } from 'vue';
|
|
|
|
-import { BasicModal, useModalInner } from '/@/components/Modal';
|
|
|
|
-import { useUserStore } from '/@/store/modules/user';
|
|
|
|
|
|
+ import { computed, unref, inject, reactive, ref, watch, defineProps } from 'vue';
|
|
|
|
+ import { BasicModal, useModalInner } from '/@/components/Modal';
|
|
|
|
+ import { useUserStore } from '/@/store/modules/user';
|
|
|
|
|
|
-let props = defineProps({
|
|
|
|
|
|
+ let props = defineProps({
|
|
editID: {
|
|
editID: {
|
|
- type: String,
|
|
|
|
- default: () => {
|
|
|
|
- return ''
|
|
|
|
- }
|
|
|
|
|
|
+ type: String,
|
|
|
|
+ default: () => {
|
|
|
|
+ return '';
|
|
|
|
+ },
|
|
},
|
|
},
|
|
fileType: {
|
|
fileType: {
|
|
- type: String,
|
|
|
|
- default: () => {
|
|
|
|
- return ''
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-})
|
|
|
|
|
|
+ type: String,
|
|
|
|
+ default: () => {
|
|
|
|
+ return '';
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ });
|
|
|
|
|
|
-const remoteUrl = import.meta.env.DEV ? 'http://182.92.126.35' : 'http://' + window.location.hostname;
|
|
|
|
-const userStore = useUserStore(); //获取用户信息
|
|
|
|
-let userId = unref(userStore.getUserInfo).id;
|
|
|
|
-let userName = unref(userStore.getUserInfo).username;
|
|
|
|
-// const emit = defineEmits(['register']);
|
|
|
|
|
|
+ const remoteUrl = import.meta.env.DEV ? 'http://182.92.126.35' : 'http://' + window.location.hostname;
|
|
|
|
+ const userStore = useUserStore(); //获取用户信息
|
|
|
|
+ let userId = unref(userStore.getUserInfo).id;
|
|
|
|
+ let userName = unref(userStore.getUserInfo).username;
|
|
|
|
+ // const emit = defineEmits(['register']);
|
|
|
|
|
|
-let [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
|
|
|
|
|
|
+ let [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
|
|
//重置表单
|
|
//重置表单
|
|
setModalProps({ confirmLoading: false });
|
|
setModalProps({ confirmLoading: false });
|
|
// Object.assign(deviceData, data.record);
|
|
// Object.assign(deviceData, data.record);
|
|
-});
|
|
|
|
|
|
+ });
|
|
|
|
|
|
-watch(() => props.editID, (newV, oldV) => {
|
|
|
|
- console.log(newV,'newV----------')
|
|
|
|
- new DocsAPI.DocEditor(
|
|
|
|
|
|
+ watch(
|
|
|
|
+ () => props.editID,
|
|
|
|
+ (newV, oldV) => {
|
|
|
|
+ console.log(newV, 'newV----------');
|
|
|
|
+ new DocsAPI.DocEditor(
|
|
'fileEdit', // 元素id
|
|
'fileEdit', // 元素id
|
|
{
|
|
{
|
|
- type: 'desktop',
|
|
|
|
- width: '100%',
|
|
|
|
- height: '860px',
|
|
|
|
- document: {
|
|
|
|
- title: '文档管理',
|
|
|
|
- url: remoteUrl + ':9999/ventanaly-device/safety/reportInfo/onlyOffice/read?id=' + props.editID + '&type=' + '', //id表示文件id,后端接口用这个id来加载文件
|
|
|
|
- fileType: props.fileType == 'doc' ? 'docx' : props.fileType == 'xls' ? 'xlsx' : props.fileType == 'ppt' ? 'pptx' : props.fileType, //当文件类型为doc、xls、ppt时,对应用docx、xlsx、pptx否则会保存异常。
|
|
|
|
- key: '',
|
|
|
|
- lang: 'zh-CN',
|
|
|
|
- permissions: {
|
|
|
|
- download: true, //是否可下载
|
|
|
|
- edit: true,
|
|
|
|
- fillForms: true,
|
|
|
|
- print: true, //是否可打印
|
|
|
|
- },
|
|
|
|
|
|
+ type: 'desktop',
|
|
|
|
+ width: '100%',
|
|
|
|
+ height: '860px',
|
|
|
|
+ document: {
|
|
|
|
+ title: '文档管理',
|
|
|
|
+ url: remoteUrl + ':9999/ventanaly-device/safety/reportInfo/onlyOffice/read?id=' + props.editID + '&type=' + '', //id表示文件id,后端接口用这个id来加载文件
|
|
|
|
+ fileType: props.fileType == 'doc' ? 'docx' : props.fileType == 'xls' ? 'xlsx' : props.fileType == 'ppt' ? 'pptx' : props.fileType, //当文件类型为doc、xls、ppt时,对应用docx、xlsx、pptx否则会保存异常。
|
|
|
|
+ key: '',
|
|
|
|
+ lang: 'zh-CN',
|
|
|
|
+ permissions: {
|
|
|
|
+ download: true, //是否可下载
|
|
|
|
+ edit: true,
|
|
|
|
+ fillForms: true,
|
|
|
|
+ print: true, //是否可打印
|
|
},
|
|
},
|
|
- editorConfig: {
|
|
|
|
- lang: 'zh-CN',
|
|
|
|
- mode: 'view', //view:只读且可复制内容,edit:可编辑
|
|
|
|
- callbackUrl: remoteUrl + ':9999/ventanaly-device/safety/reportInfo/onlyOffice/save?id=' + props.editID + '&type=' + '', //id表示文件id,后端接口用这个id来加载文件
|
|
|
|
- coEditing: {
|
|
|
|
- mode: 'fast',
|
|
|
|
- change: true,
|
|
|
|
- },
|
|
|
|
- customization: {
|
|
|
|
- toolbarNoTabs: true,
|
|
|
|
- autosave: false, //是否自动保存
|
|
|
|
- forcesave: true, //定义保存按钮是否显示
|
|
|
|
- hideRightMenu: true,
|
|
|
|
- },
|
|
|
|
- //用户信息
|
|
|
|
- user: {
|
|
|
|
- id: userId, //用户ID
|
|
|
|
- name: userName, //用户名称
|
|
|
|
- },
|
|
|
|
|
|
+ },
|
|
|
|
+ editorConfig: {
|
|
|
|
+ lang: 'zh-CN',
|
|
|
|
+ mode: 'view', //view:只读且可复制内容,edit:可编辑
|
|
|
|
+ callbackUrl: remoteUrl + ':9999/ventanaly-device/safety/reportInfo/onlyOffice/save?id=' + props.editID + '&type=' + '', //id表示文件id,后端接口用这个id来加载文件
|
|
|
|
+ coEditing: {
|
|
|
|
+ mode: 'fast',
|
|
|
|
+ change: true,
|
|
},
|
|
},
|
|
|
|
+ customization: {
|
|
|
|
+ toolbarNoTabs: true,
|
|
|
|
+ autosave: false, //是否自动保存
|
|
|
|
+ forcesave: true, //定义保存按钮是否显示
|
|
|
|
+ hideRightMenu: true,
|
|
|
|
+ },
|
|
|
|
+ //用户信息
|
|
|
|
+ user: {
|
|
|
|
+ id: userId, //用户ID
|
|
|
|
+ name: userName, //用户名称
|
|
|
|
+ },
|
|
|
|
+ },
|
|
}
|
|
}
|
|
- );
|
|
|
|
-})
|
|
|
|
-
|
|
|
|
|
|
+ );
|
|
|
|
+ }
|
|
|
|
+ );
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="less" scoped></style>
|
|
<style lang="less" scoped></style>
|