moved hashtags location in xls
This commit is contained in:
parent
2691864954
commit
9dcafd268c
|
|
@ -10,6 +10,15 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
row1 = ['uid']
|
row1 = ['uid']
|
||||||
row2 = ['Use to update existing entries. Leave blank to create new.']
|
row2 = ['Use to update existing entries. Leave blank to create new.']
|
||||||
|
|
||||||
|
# 加入 hashtags 與 related_entries 欄位
|
||||||
|
row << t("universal_table.hashtags")
|
||||||
|
row1 << "table_tags"
|
||||||
|
row2 << "Separate tags by ;"
|
||||||
|
|
||||||
|
row << t("universal_table.related_entries")
|
||||||
|
row1 << "related_entries"
|
||||||
|
row2 << "Separate UIDs with ;"
|
||||||
|
|
||||||
@table.table_columns.asc(:order).each do |column|
|
@table.table_columns.asc(:order).each do |column|
|
||||||
case column.type
|
case column.type
|
||||||
when "text", "editor"
|
when "text", "editor"
|
||||||
|
|
@ -59,14 +68,6 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
end # <-- 正確結束 case 區塊
|
end # <-- 正確結束 case 區塊
|
||||||
end
|
end
|
||||||
|
|
||||||
# 加入 hashtags 與 related_entries 欄位
|
|
||||||
row << t("universal_table.hashtags")
|
|
||||||
row1 << "table_tags"
|
|
||||||
row2 << "Separate tags by ;"
|
|
||||||
|
|
||||||
row << t("universal_table.related_entries")
|
|
||||||
row1 << "related_entries"
|
|
||||||
row2 << "Separate UIDs with ;"
|
|
||||||
|
|
||||||
sheet.add_row row, style: heading
|
sheet.add_row row, style: heading
|
||||||
sheet.add_row row1
|
sheet.add_row row1
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,14 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
row1 << "uid"
|
row1 << "uid"
|
||||||
row2 << "uid"
|
row2 << "uid"
|
||||||
|
|
||||||
|
row << t("universal_table.hashtags")
|
||||||
|
row1 << "table_tags"
|
||||||
|
row2 << "Separate tags by ;"
|
||||||
|
|
||||||
|
row << t("universal_table.related_entries")
|
||||||
|
row1 << "related_entries"
|
||||||
|
row2 << "Separate UIDs with ;"
|
||||||
|
|
||||||
table.table_columns.asc(:order).each do |column|
|
table.table_columns.asc(:order).each do |column|
|
||||||
case column.type
|
case column.type
|
||||||
when "text", "editor"
|
when "text", "editor"
|
||||||
|
|
@ -53,13 +61,6 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
row << t("universal_table.hashtags")
|
|
||||||
row1 << "table_tags"
|
|
||||||
row2 << "Separate tags by ;"
|
|
||||||
|
|
||||||
row << t("universal_table.related_entries")
|
|
||||||
row1 << "related_entries"
|
|
||||||
row2 << "Separate UIDs with ;"
|
|
||||||
|
|
||||||
sheet.add_row row, style: heading
|
sheet.add_row row, style: heading
|
||||||
sheet.add_row row1
|
sheet.add_row row1
|
||||||
|
|
@ -68,6 +69,8 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
table.table_entries.asc(:created_at).each do |entry|
|
table.table_entries.asc(:created_at).each do |entry|
|
||||||
row = []
|
row = []
|
||||||
row << entry.uid
|
row << entry.uid
|
||||||
|
row << entry.hashtags_for_export
|
||||||
|
row << entry.get_related_entries_uid
|
||||||
|
|
||||||
table.table_columns.asc(:order).each do |col|
|
table.table_columns.asc(:order).each do |col|
|
||||||
column = entry.column_entries.where(table_column_id: col.id).first
|
column = entry.column_entries.where(table_column_id: col.id).first
|
||||||
|
|
@ -137,9 +140,6 @@ wb.add_worksheet(name: "Structure") do |sheet|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
row << entry.hashtags_for_export
|
|
||||||
row << entry.get_related_entries_uid
|
|
||||||
|
|
||||||
sheet.add_row row, style: wrap
|
sheet.add_row row, style: wrap
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,8 @@ namespace :universal_table_tasks do
|
||||||
[i, tc]
|
[i, tc]
|
||||||
end.to_h
|
end.to_h
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
sheet.each_with_index do |row, i|
|
sheet.each_with_index do |row, i|
|
||||||
if i >= 3 && row.cells.all? { |c| c.nil? || c.value.to_s.strip.blank? }
|
if i >= 3 && row.cells.all? { |c| c.nil? || c.value.to_s.strip.blank? }
|
||||||
table.inc(current_xlsx_value: 1)
|
table.inc(current_xlsx_value: 1)
|
||||||
|
|
@ -85,11 +87,18 @@ namespace :universal_table_tasks do
|
||||||
|
|
||||||
next if i < 3
|
next if i < 3
|
||||||
uid_val = row[0].value.to_s.strip rescue nil
|
uid_val = row[0].value.to_s.strip rescue nil
|
||||||
|
|
||||||
te = uid_val.present? ? TableEntry.where(uid: uid_val, u_table_id: table.id).first_or_initialize : TableEntry.new
|
te = uid_val.present? ? TableEntry.where(uid: uid_val, u_table_id: table.id).first_or_initialize : TableEntry.new
|
||||||
te.u_table = table
|
te.u_table = table
|
||||||
skip = 0
|
skip = 3
|
||||||
tc_idx = 0
|
tc_idx = 3
|
||||||
|
|
||||||
|
tags_text = row.cells[1].value.to_s rescue ""
|
||||||
|
module_app = ModuleApp.find_by_key("universal_table")
|
||||||
|
create_get_table_tags(te, tags_text.split(";"), module_app) if row.cells.count >= 2
|
||||||
|
|
||||||
|
related_uids = row.cells[2].value.to_s.split(";").map(&:strip) rescue []
|
||||||
|
related_ids = TableEntry.where(:uid.in => related_uids).pluck(:id)
|
||||||
|
te.related_entries = related_ids.join(",") if row.cells.count >= 1
|
||||||
|
|
||||||
row.cells.each_with_index do |cell, col_idx|
|
row.cells.each_with_index do |cell, col_idx|
|
||||||
next if skip > 0 && (skip -= 1) >= 0
|
next if skip > 0 && (skip -= 1) >= 0
|
||||||
|
|
@ -156,14 +165,6 @@ namespace :universal_table_tasks do
|
||||||
te.column_entries << ce
|
te.column_entries << ce
|
||||||
end
|
end
|
||||||
|
|
||||||
tags_text = row.cells[-2].value.to_s rescue ""
|
|
||||||
module_app = ModuleApp.find_by_key("universal_table")
|
|
||||||
create_get_table_tags(te, tags_text.split(";"), module_app) if row.cells.count >= 2
|
|
||||||
|
|
||||||
related_uids = row.cells[-1].value.to_s.split(";").map(&:strip)
|
|
||||||
related_ids = TableEntry.where(:uid.in => related_uids).pluck(:id)
|
|
||||||
te.related_entries = related_ids.join(",") if row.cells.count >= 1
|
|
||||||
|
|
||||||
te.save!
|
te.save!
|
||||||
te.fix_have_data
|
te.fix_have_data
|
||||||
te.uid = uid_val if uid_val.present?
|
te.uid = uid_val if uid_val.present?
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue