+
+ {{ item.tdata ? '#' : item.content }}
+ |
+
@@ -73,13 +85,24 @@ export default {
BorderColor: '#000000',
AutoHeight: false, // 高度自动(模板在该元素位置以下的元素都关联打印)
BottomMargin: 0 // 距离下边距
- }
+ },
+ tindex: 0,
+ showFooter: false
},
props: [
'val' // 文本对象
],
+ watch: {
+ 'val.lastTrConfig': {
+ handler() {
+ this.indexKey++
+ },
+ deep: true // 深度监听
+ }
+ },
data() {
return {
+ indexKey: 1,
tid: 'table-' + getUUID(8)
}
},
@@ -91,7 +114,10 @@ export default {
item.thid = 'thid-' + getUUID(6)
}
return col
- }
+ },
+ activeElement() {
+ return this.$vptd.state.activeElement
+ },
},
mounted() {
this.$nextTick(() => {
@@ -130,6 +156,9 @@ export default {
modifyTitle(cur, e) {
cur.title = e.target.innerText
},
+ handleColumn(index) {
+ this.activeElement.tindex = index
+ },
// 设置表格列宽
setTableColWidth(item) {
if (item.width) {
@@ -140,7 +169,11 @@ export default {
}
}
return ''
- }
+ },
+ contentBlur(item, e) {
+ item.content = e.target.innerHTML
+ e.target.innerHTML = item.content
+ },
}
}
diff --git a/src/libs/lodop/index.js b/src/libs/lodop/index.js
index 7bae4e1..526d490 100644
--- a/src/libs/lodop/index.js
+++ b/src/libs/lodop/index.js
@@ -319,7 +319,8 @@ function _AddPrintItem(LODOP, tempItem, pageIndex = 0) {
let html = tableTempTohtml(
printItem.columns ? printItem.columns : [],
printItem.defaultValue,
- printItem.style
+ printItem.style,
+ printItem
);
if (lodopStyle.AutoHeight) {
LODOP.ADD_PRINT_TABLE(
diff --git a/src/libs/lodop/tools.js b/src/libs/lodop/tools.js
index 683b8c9..91988da 100644
--- a/src/libs/lodop/tools.js
+++ b/src/libs/lodop/tools.js
@@ -22,7 +22,7 @@ export const tempToPrint = (temp, data) => {
* @param columns 表格列配置信息
* @param data 表格数据
*/
-export const tableTempTohtml = (columns, data, style) => {
+export const tableTempTohtml = (columns, data, style, tableConfig) => {
// 表格全局样式
let styleStr = 'text-align:' + style.Alignment + ';'
styleStr += 'font-size:' + style.FontSize + 'pt;'
@@ -63,7 +63,18 @@ export const tableTempTohtml = (columns, data, style) => {
html += ''
})
}
-
+ // 解析表尾
+ if (tableConfig.showFooter) {
+ html += '