Commit ca307105 authored by tanghao's avatar tanghao

设置合并

parent cba51fe9
......@@ -172,6 +172,18 @@
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否合并" width="70">
<template #default="{ row }">
<el-checkbox
size="small"
true-label="Y"
false-label="N"
v-model="row.mergeFlag"
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }">
<el-checkbox
......
......@@ -250,7 +250,8 @@
<vxe-column :title="item" :field="item" cell-type="string"
show-overflow
width="150"
></vxe-column>
>
</vxe-column>
</template>
</vxe-table>
</vxe-modal>
......
......@@ -29,6 +29,18 @@
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否合并" width="70">
<template #default="{ row }">
<el-checkbox
size="small"
true-label="Y"
false-label="N"
v-model="row.mergeFlag"
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }">
<el-checkbox
......@@ -59,6 +71,7 @@
>设置拆分</el-button
>
<el-button size="small" type="primary" @click="setFill">设置填充</el-button>
<el-button size="small" type="primary" @click="setMerge">设置合并</el-button>
<el-button size="small" type="primary" @click="resetAreaTitle">重置</el-button>
<el-button size="small" type="success" @click="nextStep()">下一步</el-button>
<el-button size="small" type="success" @click="save">保存</el-button>
......@@ -145,6 +158,28 @@ const setFill = () => {
}
}
/**设置合并 */
const setMerge = () => {
if (!excelAreaTitle.value.length) return
const rangeData = luckysheet.getRangeValue()
const titles = handleRangeTitle(rangeData)
// 匹配到的第一个单元格下标
const idx = excelAreaTitle.value.findIndex((item) => {
return compareSameCell(item, titles[0])
})
if (idx == -1) return
for (let i = 0; i <= titles.length - 1; i++) {
const cell = excelAreaTitle.value[i + idx]
if (!cell) return
Reflect.set(cell, 'mergeFlag', 'Y')
}
}
const setAreaTitle = () => {
const sheet = luckysheet.getSheet()
// 判断是否在同一sheet
......@@ -162,6 +197,7 @@ const setAreaTitle = () => {
Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N')
Reflect.set(item, 'fillFlag', 'N')
Reflect.set(item, 'mergeFlag', 'N')
Reflect.set(item, 'only', 'N')
return item
})
......
......@@ -168,6 +168,18 @@
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否合并" width="70">
<template #default="{ row }">
<el-checkbox
size="small"
true-label="Y"
false-label="N"
v-model="row.mergeFlag"
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }">
<el-checkbox
......
......@@ -29,6 +29,17 @@
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否合并" width="70">
<template #default="{ row }">
<el-checkbox
size="small"
true-label="Y"
false-label="N"
v-model="row.mergeFlag"
></el-checkbox>
</template>
</vxe-column>
<vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }">
<el-checkbox
......@@ -59,6 +70,8 @@
>设置拆分</el-button
>
<el-button size="small" type="primary" @click="setFill">设置填充</el-button>
<el-button size="small" type="primary" @click="setMerge">设置合并</el-button>
<el-button size="small" type="primary" @click="resetAreaTitle">重置</el-button>
<el-button size="small" type="success" @click="nextStep()">下一步</el-button>
<el-button size="small" type="success" @click="save">保存</el-button>
......@@ -145,6 +158,26 @@ const setFill = () => {
}
}
/**设置合并 */
const setMerge = () => {
if (!excelAreaTitle.value.length) return
const rangeData = luckysheet.getRangeValue()
const titles = handleRangeTitle(rangeData)
// 匹配到的第一个单元格下标
const idx = excelAreaTitle.value.findIndex((item) => {
return compareSameCell(item, titles[0])
})
if (idx == -1) return
for (let i = 0; i <= titles.length - 1; i++) {
const cell = excelAreaTitle.value[i + idx]
if (!cell) return
Reflect.set(cell, 'mergeFlag', 'Y')
}
}
const setAreaTitle = () => {
const sheet = luckysheet.getSheet()
// 判断是否在同一sheet
......@@ -164,6 +197,7 @@ const setAreaTitle = () => {
Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N')
Reflect.set(item, 'fillFlag', 'N')
Reflect.set(item, 'mergeFlag', 'N')
Reflect.set(item, 'only', 'N')
return item
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment