refactor: deprecate event_date and fully migrate to recruitment_date

This commit is contained in:
rulingcom 2026-07-24 18:08:49 +08:00
parent dd2420b52d
commit bfa8c2dcad
5 changed files with 59 additions and 59 deletions

View File

@ -94,7 +94,7 @@ class RecruitmentModsController < ApplicationController
"statuses" => statuses,
"category" => (a.category.title rescue ""),
"postdate" => event_time,
"event_start_date" => a.event_date_frontend,
"event_start_date" => a.recruitment_date_frontend,
"event_end_date" => a.event_end_date_frontend,
"event-time-formated" => event_time_formated,
"event-time-css" => (event_time_formated.blank? ? "display: none;" : ""),
@ -133,8 +133,8 @@ class RecruitmentModsController < ApplicationController
"salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'),
"notes-head" => RecruitmentCustomTitle.get_trans('notes'),
"contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'),
"event_date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'),
"event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'),
"status-head" => t('recruitment.table.status'),
@ -439,8 +439,8 @@ class RecruitmentModsController < ApplicationController
"salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'),
"notes-head" => RecruitmentCustomTitle.get_trans('notes'),
"contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'),
"event_date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'),
"event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'),
"author-head" => t('recruitment.table.author'),
@ -730,8 +730,8 @@ class RecruitmentModsController < ApplicationController
"salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'),
"notes-head" => RecruitmentCustomTitle.get_trans('notes'),
"contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'),
"event_date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"event-time-css" => (event_time.blank? ? "display: none;" : ""),
"education_requirement" => recruitment.education_requirement,
"experience_requirement" => recruitment.experience_requirement,
@ -823,9 +823,9 @@ class RecruitmentModsController < ApplicationController
end
OrbitHelper.render_meta_tags(metas)
event_date = DateTime.parse(recruitment["event_date"].to_s) rescue nil
recruitment_date = DateTime.parse(recruitment["recruitment_date"].to_s) rescue nil
event_end_date = DateTime.parse(recruitment["event_end_date"].to_s) rescue nil
event_time = RecruitmentSetting.event_time_formated_for_frontend(event_date, event_end_date)
event_time = RecruitmentSetting.event_time_formated_for_frontend(recruitment_date, event_end_date)
recruitment_carousel_images = Array(recruitment["recruitment_carousel_images"])
resume_btn_title = (I18n.locale.to_s =="zh_tw") ? "繼續播放" : "resume"
pause_btn_title = (I18n.locale.to_s =="zh_tw") ? "暫停播放" : "pause"
@ -858,8 +858,8 @@ class RecruitmentModsController < ApplicationController
"title-head" => RecruitmentCustomTitle.get_trans('title'),
"place-head" => RecruitmentCustomTitle.get_trans('place'),
"notes-head" => RecruitmentCustomTitle.get_trans('notes'),
"event_date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"event-time-css" => (event_time.blank? ? "display: none;" : ""),
"notes" => (recruitment["notes_translations"][locale].to_s rescue ""),
"image" => recruitment["image"]["original"],
@ -948,7 +948,7 @@ class RecruitmentModsController < ApplicationController
"statuses" => statuses,
"category" => (a.category.title rescue ""),
"postdate" => event_time,
"event_start_date" => a.event_date_frontend,
"event_start_date" => a.recruitment_date_frontend,
"event_end_date" => a.event_end_date_frontend,
"author" => author,
"is_top" => (a.is_top? ? 1 : 0),
@ -979,8 +979,8 @@ class RecruitmentModsController < ApplicationController
"title-head" => RecruitmentCustomTitle.get_trans('title'),
"place-head" => RecruitmentCustomTitle.get_trans('place'),
"notes-head" => RecruitmentCustomTitle.get_trans('notes'),
"event_date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"date-head" => RecruitmentCustomTitle.get_trans('event_date'),
"recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'),
"event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'),
"event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'),
"status-head" => t('recruitment.table.status'),

View File

@ -128,7 +128,7 @@ module Admin::RecruitmentHelper
end
anns.tags=new_tags
when 2
anns.event_date = val
anns.recruitment_date = val
when 3
anns.postdate = val
when 4

View File

@ -52,9 +52,9 @@ module RecruitmentHelper
"category" => (a.category.title rescue ""),
"tag_ids" => (set_tag_ids.nil? ? (a.tag_ids.map{|id| id.to_s}.to_s.gsub('"',"'") rescue '[]') : set_tag_ids),
"postdate" => event_time_formated,
"event_start_date" => a.event_date_frontend,
"event_start_date" => a.recruitment_date_frontend,
"event_end_date" => a.event_end_date_frontend,
"event_date" => event_time_formated,
"recruitment_date" => event_time_formated,
"author" => author,
"link_to_show" => link_to_show,
"target" => target,
@ -93,13 +93,13 @@ module RecruitmentHelper
if !(defined? SiteFeedAnnc).nil?
sort_maps = nil
if @show_today_data_first
sort_maps = {event_date: :asc, is_top: :desc, postdate: :asc, id: :asc}
sort_maps = {recruitment_date: :asc, is_top: :desc, postdate: :asc, id: :asc}
else
sort_maps = {is_top: :desc}
if is_postdate_sort_first
sort_maps = sort_maps.merge({postdate: :desc, event_date: :desc, id: :desc})
sort_maps = sort_maps.merge({postdate: :desc, recruitment_date: :desc, id: :desc})
else
sort_maps = sort_maps.merge({event_date: :desc, postdate: :desc, id: :desc})
sort_maps = sort_maps.merge({recruitment_date: :desc, postdate: :desc, id: :desc})
end
end
match_cond = {
@ -119,7 +119,7 @@ module RecruitmentHelper
match_cond["$and"] += extra_match_cond
end
if @show_today_data_first
match_cond["event_date"] = {"$gte" => Date.today.to_time}
match_cond["recruitment_date"] = {"$gte" => Date.today.to_time}
end
feeds, feeds_count = get_feed_annc(type,site_source,locale,categories,max_len,sort_maps,match_cond)
end
@ -189,13 +189,13 @@ module RecruitmentHelper
if !params[:stime].blank?
stime = OrbitHelper.get_time_from_str(params[:stime])
extra_match_cond << {
"event_date" => {"$gte" => stime}
"recruitment_date" => {"$gte" => stime}
}
end
if !params[:etime].blank?
etime = OrbitHelper.get_time_from_str(params[:etime]) + 1.days
extra_match_cond << {
"event_date" => {"$lt" => etime}
"recruitment_date" => {"$lt" => etime}
}
end
if !extra_match_cond.empty?
@ -250,20 +250,20 @@ module RecruitmentHelper
if @show_today_data_first || !is_postdate_sort_first
if enable_manually_sort
recruitment_list = recruitment_list.sort_by { |recruitment|
tmp1 = recruitment["event_date"].blank?
tmp1 = recruitment["recruitment_date"].blank?
tmp2 = recruitment["postdate"].blank?
[
(@show_today_data_first ? recruitment['sort_number'].to_i : -recruitment['sort_number'].to_i),
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time,
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time,
tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time
]
}
else
recruitment_list = recruitment_list.sort_by { |recruitment|
tmp1 = recruitment["event_date"].blank?
tmp1 = recruitment["recruitment_date"].blank?
tmp2 = recruitment["postdate"].blank?
[
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time,
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time,
tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time
]
}
@ -274,21 +274,21 @@ module RecruitmentHelper
else
if enable_manually_sort
recruitment_list = recruitment_list.sort_by { |recruitment|
tmp1 = recruitment["event_date"].blank?
tmp1 = recruitment["recruitment_date"].blank?
tmp2 = recruitment["postdate"].blank?
[
-a['sort_number'].to_i,
tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time,
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time
]
}.reverse
else
recruitment_list = recruitment_list.sort_by { |recruitment|
tmp1 = recruitment["event_date"].blank?
tmp1 = recruitment["recruitment_date"].blank?
tmp2 = recruitment["postdate"].blank?
[
tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time,
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time
tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time
]
}.reverse
end

View File

@ -121,13 +121,13 @@ class Recruitment
.valid_time_range
.order(
RecruitmentHelper.is_postdate_sort_first ?
{postdate: :desc, event_date: :desc, id: :desc} :
{event_date: :desc, postdate: :desc, id: :desc}
{postdate: :desc, recruitment_date: :desc, id: :desc} :
{recruitment_date: :desc, postdate: :desc, id: :desc}
)
}
scope :can_display_and_sorted_according_today, ->{
is_approved_and_show
.order(event_date: :asc).valid_time_range.order({postdate: :asc, id: :asc}).where(:event_date.gte => Date.today.to_time)
.order(recruitment_date: :asc).valid_time_range.order({postdate: :asc, id: :asc}).where(:recruitment_date.gte => Date.today.to_time)
}
scope :valid_time_range, ->{
and_any_of([
@ -155,13 +155,13 @@ class Recruitment
self.migrate_title_plain_text
end
index({postdate: 1}, { unique: false, background: true })
index({is_top: -1, postdate: -1, event_date: -1, _id: -1}, { unique: false, background: true })
index({is_top: -1, event_date: 1, postdate: -1, _id: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, postdate: -1, event_date: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, event_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({is_top: -1, postdate: -1, recruitment_date: -1, _id: -1}, { unique: false, background: true })
index({is_top: -1, recruitment_date: 1, postdate: -1, _id: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, postdate: -1, recruitment_date: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, recruitment_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true })
if RecruitmentSetting.pluck(:enable_manually_sort).first == true
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, postdate: -1, event_date: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, event_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, postdate: -1, recruitment_date: -1, _id: -1, deadline: -1}, { unique: false, background: true })
index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, recruitment_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true })
end
field :sort_number, type: Integer
def get_org_model
@ -179,7 +179,7 @@ class Recruitment
end
def date_parse_format
#all_day ? '%Y-%m-%d' : '%Y-%m-%d %H:%M'
event_date_format
recruitment_date_format
end
def get_weekday(w)
trans = self.class::Week_day_trans
@ -189,10 +189,10 @@ class Recruitment
trans[:en][w]
end
end
def event_date_format
@event_date_format ||= (self.event_date_use_default_setting ? RecruitmentSetting.event_date_default_format : self.event_date_custom_format)
def recruitment_date_format
@recruitment_date_format ||= (self.recruitment_date_use_default_setting ? RecruitmentSetting.recruitment_date_default_format : self.recruitment_date_custom_format)
end
def event_date_custom_format
def recruitment_date_custom_format
datetime_format = "%Y-%m-%d"
if self.including_day_of_the_week
datetime_format += " %a"
@ -227,8 +227,8 @@ class Recruitment
"#{st} ~ #{ed}"
end
end
def event_date_frontend
s = self.event_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil
def recruitment_date_frontend
s = self.recruitment_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil
if s.blank?
""
else
@ -246,7 +246,7 @@ class Recruitment
end
end
def event_time_formated
s = self.event_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil
s = self.recruitment_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil
e = self.event_end_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil
if s.blank? && e.blank?
""
@ -433,7 +433,7 @@ class Recruitment
events = self.monthly_event(agenda_start, agenda_end).convert_front(read_more_url)
end
def self.monthly_event(start_date,end_date)
self.any_of({:event_date.lte => start_date,:event_end_date.gte => start_date},{:event_date.gte => start_date,:event_end_date.lte => end_date},{:event_date.lte => end_date,:event_end_date.gte => end_date}).asc(:event_date)
self.any_of({:recruitment_date.lte => start_date,:event_end_date.gte => start_date},{:recruitment_date.gte => start_date,:event_end_date.lte => end_date},{:recruitment_date.lte => end_date,:event_end_date.gte => end_date}).asc(:recruitment_date)
end
def self.convert_front(read_more_url)
self.all.collect do |re|
@ -443,7 +443,7 @@ class Recruitment
:allDay => false,
:color => nil,
:url_linked => (re.is_external_link ? re.external_link : "#{read_more_url}/#{re.to_param}" rescue ""),
:start => re.event_date,
:start => re.recruitment_date,
:end => re.event_end_date}
end
end
@ -501,7 +501,7 @@ class Recruitment
text_translations.each do |l, text|
a["text_translations"][l] = self.class.smart_convertor(text,base_url)
end
a["event_date"] = self.event_date
a["recruitment_date"] = self.recruitment_date
a["event_end_date"] = self.event_end_date
a["postdate"] = self.postdate
a["img_description_translations"] = self.image_description_translations

View File

@ -55,11 +55,11 @@ class RecruitmentSetting
def self.is_pro?
self.first.pro_enabled rescue false
end
def self.event_date_default_format
def self.recruitment_date_default_format
setting = self.first
setting.event_date_default_format
setting.recruitment_date_default_format
end
def event_date_default_format
def recruitment_date_default_format
datetime_format = "%Y-%m-%d"
if self.including_day_of_the_week
datetime_format += " %a"
@ -88,8 +88,8 @@ class RecruitmentSetting
""
end
end
def event_date_format
@event_date_format ||= self.event_date_default_format
def recruitment_date_format
@recruitment_date_format ||= self.recruitment_date_default_format
end
def self.event_time_formated_for_frontend(st,ed)
self.first.event_time_formated_for_frontend(st,ed)
@ -112,11 +112,11 @@ class RecruitmentSetting
if s.blank? && e.blank?
""
elsif e.blank?
custom_strftime(s, self.event_date_format)
custom_strftime(s, self.recruitment_date_format)
elsif s.blank?
"~ " + custom_strftime(e, self.event_date_format)
"~ " + custom_strftime(e, self.recruitment_date_format)
else
parse_format = self.event_date_format
parse_format = self.recruitment_date_format
if s.to_date == e.to_date
parse_format_arr = parse_format.split(/(%d %a|%d) /)
parse_format_arr = parse_format_arr[0..-2].join(""), parse_format_arr[-1]
@ -125,7 +125,7 @@ class RecruitmentSetting
e_time = e.strftime(parse_format_arr[1])
"#{date_str} #{s_time} ~ #{e_time}"
else
custom_strftime(s, self.event_date_format) + " ~ " + custom_strftime(e, self.event_date_format)
custom_strftime(s, self.recruitment_date_format) + " ~ " + custom_strftime(e, self.recruitment_date_format)
end
end
end