Commit ca307105 authored by tanghao's avatar tanghao

设置合并

parent cba51fe9
...@@ -172,6 +172,18 @@ ...@@ -172,6 +172,18 @@
></el-checkbox> ></el-checkbox>
</template> </template>
</vxe-column> </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"> <vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }"> <template #default="{ row }">
<el-checkbox <el-checkbox
......
...@@ -250,7 +250,8 @@ ...@@ -250,7 +250,8 @@
<vxe-column :title="item" :field="item" cell-type="string" <vxe-column :title="item" :field="item" cell-type="string"
show-overflow show-overflow
width="150" width="150"
></vxe-column> >
</vxe-column>
</template> </template>
</vxe-table> </vxe-table>
</vxe-modal> </vxe-modal>
......
...@@ -29,6 +29,18 @@ ...@@ -29,6 +29,18 @@
></el-checkbox> ></el-checkbox>
</template> </template>
</vxe-column> </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"> <vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }"> <template #default="{ row }">
<el-checkbox <el-checkbox
...@@ -59,6 +71,7 @@ ...@@ -59,6 +71,7 @@
>设置拆分</el-button >设置拆分</el-button
> >
<el-button size="small" type="primary" @click="setFill">设置填充</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="primary" @click="resetAreaTitle">重置</el-button>
<el-button size="small" type="success" @click="nextStep()">下一步</el-button> <el-button size="small" type="success" @click="nextStep()">下一步</el-button>
<el-button size="small" type="success" @click="save">保存</el-button> <el-button size="small" type="success" @click="save">保存</el-button>
...@@ -145,6 +158,28 @@ const setFill = () => { ...@@ -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 setAreaTitle = () => {
const sheet = luckysheet.getSheet() const sheet = luckysheet.getSheet()
// 判断是否在同一sheet // 判断是否在同一sheet
...@@ -162,6 +197,7 @@ const setAreaTitle = () => { ...@@ -162,6 +197,7 @@ const setAreaTitle = () => {
Reflect.set(item, 'numTitle', '') Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N') Reflect.set(item, 'numFlag', 'N')
Reflect.set(item, 'fillFlag', 'N') Reflect.set(item, 'fillFlag', 'N')
Reflect.set(item, 'mergeFlag', 'N')
Reflect.set(item, 'only', 'N') Reflect.set(item, 'only', 'N')
return item return item
}) })
......
...@@ -168,6 +168,18 @@ ...@@ -168,6 +168,18 @@
></el-checkbox> ></el-checkbox>
</template> </template>
</vxe-column> </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"> <vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }"> <template #default="{ row }">
<el-checkbox <el-checkbox
......
...@@ -29,6 +29,17 @@ ...@@ -29,6 +29,17 @@
></el-checkbox> ></el-checkbox>
</template> </template>
</vxe-column> </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"> <vxe-column title="是否拆分" field="numFlag" width="70">
<template #default="{ row }"> <template #default="{ row }">
<el-checkbox <el-checkbox
...@@ -59,6 +70,8 @@ ...@@ -59,6 +70,8 @@
>设置拆分</el-button >设置拆分</el-button
> >
<el-button size="small" type="primary" @click="setFill">设置填充</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="primary" @click="resetAreaTitle">重置</el-button>
<el-button size="small" type="success" @click="nextStep()">下一步</el-button> <el-button size="small" type="success" @click="nextStep()">下一步</el-button>
<el-button size="small" type="success" @click="save">保存</el-button> <el-button size="small" type="success" @click="save">保存</el-button>
...@@ -145,6 +158,26 @@ const setFill = () => { ...@@ -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 setAreaTitle = () => {
const sheet = luckysheet.getSheet() const sheet = luckysheet.getSheet()
// 判断是否在同一sheet // 判断是否在同一sheet
...@@ -164,6 +197,7 @@ const setAreaTitle = () => { ...@@ -164,6 +197,7 @@ const setAreaTitle = () => {
Reflect.set(item, 'numTitle', '') Reflect.set(item, 'numTitle', '')
Reflect.set(item, 'numFlag', 'N') Reflect.set(item, 'numFlag', 'N')
Reflect.set(item, 'fillFlag', 'N') Reflect.set(item, 'fillFlag', 'N')
Reflect.set(item, 'mergeFlag', 'N')
Reflect.set(item, 'only', 'N') Reflect.set(item, 'only', 'N')
return item 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