|
@@ -6,7 +6,7 @@
|
|
|
* @FilePath : \spfm-market-front\src\pages\main\performance\components\sheet.vue
|
|
|
-->
|
|
|
<template>
|
|
|
- <fullscreen :fullscreen.sync="fullscreen" class="container" style=" background-color: #ffffff">
|
|
|
+ <fullscreen :fullscreen.sync="fullscreen" class="containerClass" style=" background-color: #ffffff">
|
|
|
<div class="sheet-container" id="full-container">
|
|
|
<div style=" margin-top: 20px; margin-left: 30px;" >
|
|
|
<span style=" font-size: small;margin-right: 10px;">控制权限</span>
|
|
@@ -53,7 +53,7 @@
|
|
|
<el-button size="mini" type="primary" @click="returnList">返回</el-button>
|
|
|
<el-button size="mini" type="primary" @click="handleFullscreen()">全屏显示</el-button>
|
|
|
</div>
|
|
|
- <div id="luckysheet" class="sheet-container-block" ></div>
|
|
|
+ <div id="luckysheet" class="sheet-container-block_class" ></div>
|
|
|
</div>
|
|
|
</fullscreen>
|
|
|
</template>
|
|
@@ -248,9 +248,9 @@ export default {
|
|
|
switch (type) {
|
|
|
case "file":
|
|
|
if (file) {
|
|
|
- window.luckysheet.destroy();
|
|
|
await new Promise((resolve) => {
|
|
|
luckyexcel.transformExcelToLucky(file, (export_json) => {
|
|
|
+ window.luckysheet.destroy();
|
|
|
window.luckysheet.create({
|
|
|
container: "luckysheet",
|
|
|
lang: "zh",
|
|
@@ -353,18 +353,19 @@ export default {
|
|
|
// 判断数组是否有值
|
|
|
confirmArrayData(data) {
|
|
|
if (data instanceof Array) {
|
|
|
- let flag = 0;
|
|
|
if (data.length) {
|
|
|
- data.forEach((el) => {
|
|
|
- if (el instanceof Object) {
|
|
|
- flag = flag + 1;
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
+ if (data[i] instanceof Array){
|
|
|
+ for (let j = 0; j < data[i].length; j++) {
|
|
|
+ if (data[i][j] && data[i][j].v){
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ return false;
|
|
|
}
|
|
|
- });
|
|
|
- if (flag) {
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- return false;
|
|
|
}
|
|
|
+ return false;
|
|
|
} else {
|
|
|
return false;
|
|
|
}
|
|
@@ -382,8 +383,17 @@ export default {
|
|
|
return arr.join(",");
|
|
|
},
|
|
|
handleFullscreen() {
|
|
|
+ const sheet_name = window.luckysheet.getSheet().name;
|
|
|
+ const data = window.luckysheet.getSheet(sheet_name);
|
|
|
+ const workbook_name = window.luckysheet.getWorkbookName();
|
|
|
this.fullscreen = !this.fullscreen
|
|
|
-
|
|
|
+ this.$nextTick(()=>{
|
|
|
+ this.handleCreate({
|
|
|
+ json: data,
|
|
|
+ name: workbook_name,
|
|
|
+ type: "json",
|
|
|
+ });
|
|
|
+ })
|
|
|
// const element = document.getElementById("full-container");
|
|
|
// const is_fullscreen =
|
|
|
// document.fullScreen ||
|
|
@@ -411,7 +421,14 @@ export default {
|
|
|
const sheet_name = window.luckysheet.getSheet().name;
|
|
|
const data = window.luckysheet.getSheet(sheet_name);
|
|
|
const workbook_name = window.luckysheet.getWorkbookName();
|
|
|
-
|
|
|
+ let empty = this.confirmArrayData(data.data);
|
|
|
+ if (!empty){
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: '文档内容为空',
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
let value = {
|
|
|
// templateId: this.id,
|
|
|
templateContent: JSON.stringify(data), //文件内容
|
|
@@ -500,4 +517,17 @@ export default {
|
|
|
// }
|
|
|
//}
|
|
|
}
|
|
|
+.containerClass{
|
|
|
+ background: #fff;
|
|
|
+ border-radius: 5px;
|
|
|
+ height: calc(100vh - 220px);
|
|
|
+ width: calc(100% - 6px);
|
|
|
+ float: left;
|
|
|
+ display: inline-block;
|
|
|
+ overflow: hidden;
|
|
|
+}
|
|
|
+.sheet-container-block_class{
|
|
|
+ height: 80%;
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
</style>
|