Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
tallty_import_export
Project
Overview
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
open-source
tallty_import_export
Commits
d24a60ff
Commit
d24a60ff
authored
Nov 08, 2021
by
liyijie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 解决each_method的逻辑错误
parent
6b0916d9
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
3 deletions
+7
-3
export.rb
lib/tallty_import_export/export.rb
+7
-3
No files found.
lib/tallty_import_export/export.rb
View file @
d24a60ff
...
@@ -65,7 +65,7 @@ module TalltyImportExport
...
@@ -65,7 +65,7 @@ module TalltyImportExport
end
end
end
end
def
export_workbook
workbook
,
records
def
export_workbook
workbook
,
association_
records
# excel导出样式
# excel导出样式
alignment
=
{
vertical: :center
,
horizontal: :center
}
alignment
=
{
vertical: :center
,
horizontal: :center
}
border
=
{
color:
'969696'
,
style: :thin
}
border
=
{
color:
'969696'
,
style: :thin
}
...
@@ -89,10 +89,13 @@ module TalltyImportExport
...
@@ -89,10 +89,13 @@ module TalltyImportExport
merge_column_hash
=
{}
merge_column_hash
=
{}
first_content_row_index
=
respond_to?
(
:first_header
)
?
2
:
1
first_content_row_index
=
respond_to?
(
:first_header
)
?
2
:
1
each_method
=
@each_method
||
:each
index
=
0
records
.
try_method
(
each_method
).
with_index
do
|
record
,
index
|
association_records
.
each
do
|
association_record
|
row
=
[]
row
=
[]
headers
.
each_with_index
do
|
header
,
col_index
|
headers
.
each_with_index
do
|
header
,
col_index
|
records
=
@each_method
.
present?
?
association_record
.
try_method
(
@each_method
)
:
[
association_record
]
records
.
each
do
|
record
|
index
+=
1
_data
=
handle_data
(
record
,
header
,
index
)
_data
=
handle_data
(
record
,
header
,
index
)
if
header
[
:merge
].
present?
&&
last_row
.
present?
&&
_data
==
last_row
[
col_index
]
if
header
[
:merge
].
present?
&&
last_row
.
present?
&&
_data
==
last_row
[
col_index
]
# 这里使用二维数组,每个数组里都是列内容相同的各行
# 这里使用二维数组,每个数组里都是列内容相同的各行
...
@@ -109,6 +112,7 @@ module TalltyImportExport
...
@@ -109,6 +112,7 @@ module TalltyImportExport
sheet
.
add_row
row
,
style:
title3
,
height:
@row_height
,
types:
headers
.
map
{
|
header
|
header
[
:format
]
&
.
to_sym
}
sheet
.
add_row
row
,
style:
title3
,
height:
@row_height
,
types:
headers
.
map
{
|
header
|
header
[
:format
]
&
.
to_sym
}
last_row
=
row
last_row
=
row
end
end
end
# 需要根据column进行多行的内容合并
# 需要根据column进行多行的内容合并
if
merge_column_hash
.
present?
if
merge_column_hash
.
present?
merge_column_hash
.
each
do
|
col_index
,
row_arr
|
merge_column_hash
.
each
do
|
col_index
,
row_arr
|
...
...
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