add feed output hashtag

This commit is contained in:
chiu 2025-11-20 11:49:41 +00:00
parent 0fe1e2d4a5
commit a08e66d53d
1 changed files with 6 additions and 1 deletions

View File

@ -120,6 +120,10 @@ class BulletinFeed
cat_ids = announcements.collect{|a| a.category_id.blank? ? nil : a.category_id.to_s}.compact.uniq cat_ids = announcements.collect{|a| a.category_id.blank? ? nil : a.category_id.to_s}.compact.uniq
tag_ids = announcements.collect{|a| a.tag_ids.collect{|v| v.blank? ? nil : v.to_s}}.flatten.compact.uniq tag_ids = announcements.collect{|a| a.tag_ids.collect{|v| v.blank? ? nil : v.to_s}}.flatten.compact.uniq
tag_names = tag_ids.map{|tag_id| Tag.find(tag_id).name_translations rescue nil}.compact tag_names = tag_ids.map{|tag_id| Tag.find(tag_id).name_translations rescue nil}.compact
all_hashtags = announcements.map(&:hashtags).flatten.compact.uniq rescue []
hashtag_names = all_hashtags.map do |h|
{"name_translations" => h.name_translations} rescue nil
end.compact rescue []
category_titles = cat_ids.map{|cat_id| Category.find(cat_id).title_translations rescue nil}.compact category_titles = cat_ids.map{|cat_id| Category.find(cat_id).title_translations rescue nil}.compact
basic_query = {:module => 'announcement',:enabled_for=>I18n.locale} basic_query = {:module => 'announcement',:enabled_for=>I18n.locale}
if !cat_ids.blank? if !cat_ids.blank?
@ -147,7 +151,8 @@ class BulletinFeed
anns = { anns = {
"announcements" => all_anns, "announcements" => all_anns,
"tags" => tag_names, "tags" => tag_names,
"categories" => category_titles "categories" => category_titles,
"hashtags" => hashtag_names
}.to_json }.to_json
BulletinFeedCache.where(uid: uid,start: startdt,end: enddt,date: dt).destroy BulletinFeedCache.where(uid: uid,start: startdt,end: enddt,date: dt).destroy
feed_cache = BulletinFeedCache.create(uid: uid,content: anns,start: startdt,end: enddt,date: dt,invalid_date: invalid_date) feed_cache = BulletinFeedCache.create(uid: uid,content: anns,start: startdt,end: enddt,date: dt,invalid_date: invalid_date)