Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
T
topsun-baoshen-excel
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
何远江
topsun-baoshen-excel
Commits
ca307105
Commit
ca307105
authored
Jun 23, 2025
by
tanghao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
设置合并
parent
cba51fe9
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
96 additions
and
1 deletion
+96
-1
EditArea.vue
src/views/comment-excel/components/EditArea/EditArea.vue
+12
-0
ExcelOperate.vue
...ws/comment-excel/components/ExcelOperate/ExcelOperate.vue
+2
-1
SetDataAreaTitle.vue
...nt-excel/components/SetDataAreaTitle/SetDataAreaTitle.vue
+36
-0
EditArea.vue
src/views/var/varExcel/components/EditArea/EditArea.vue
+12
-0
SetDataAreaTitle.vue
...varExcel/components/SetDataAreaTitle/SetDataAreaTitle.vue
+34
-0
No files found.
src/views/comment-excel/components/EditArea/EditArea.vue
View file @
ca307105
...
...
@@ -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
...
...
src/views/comment-excel/components/ExcelOperate/ExcelOperate.vue
View file @
ca307105
...
...
@@ -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>
...
...
src/views/comment-excel/components/SetDataAreaTitle/SetDataAreaTitle.vue
View file @
ca307105
...
...
@@ -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
})
...
...
src/views/var/varExcel/components/EditArea/EditArea.vue
View file @
ca307105
...
...
@@ -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
...
...
src/views/var/varExcel/components/SetDataAreaTitle/SetDataAreaTitle.vue
View file @
ca307105
...
...
@@ -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
})
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment