管理者新增指定類別功能,新增審核者紀錄功能,修復錯誤

This commit is contained in:
chiu committed 2023-05-20 23:25:00 +08:00
1 parent 8eaa74ec9c
commit 102a4f49cc
16 files changed
+181 -89

No files matched your search

+47
View File
@@ -41,6 +41,28 @@ module Ask
if ask_setting.email_regex_enable
AskCategorySetting.all.update_all(email_regex_enable: ask_setting.email_regex_enable,email_regex: ask_setting.email_regex)
end
AskCategorySetting.all.each do |ask_category_setting|
sort_number = ask_category_setting.sort_number
have_custom_key = false
sort_number.keys.each do |sort_number_key|
have_default_key ||= sort_number_key.include?("default@default@")
have_custom_key ||= sort_number_key.include?("custom@")
end
if !have_custom_key
new_sort_number = {}
sort_number.keys.each do |sort_number_key|
new_sort_number_key = sort_number_key
if sort_number_key.include?("default@default@")
new_sort_number_key = sort_number_key.sub(/default@/, '')
else
new_sort_number_key = sort_number_key.sub(/default@/, "custom@#{ask_category_setting.id}@")
end
new_sort_number[new_sort_number_key] = sort_number[sort_number_key]
end
ask_category_setting.sort_number = new_sort_number
ask_category_setting.save
end
end
end
if defined?(AskListSetting)
ask_list_setting = AskListSetting.first
@@ -64,6 +86,31 @@ module Ask
rescue => e
puts ['AskSetting not found',e]
end
require File.expand_path('../../../app/models/ask_question', __FILE__)
require File.expand_path('app/models/user_action', Rails.root)
def fix_reviewer
ask_question_no_reviewer_len = AskQuestion.where(:id.in => UserAction.where(controller: 'admin/asks', action: 'update').pluck(:request_path).map{|v| v.split('/')[-1]}, :reviewer_id => nil).count
if ask_question_no_reviewer_len==0
return
end
UserAction.where(controller: 'admin/asks', action: 'update').each do |user_action|
user = user_action.user
askquestion_id = user_action.request_path.split('/')[-1]
askquestion = AskQuestion.where(id: askquestion_id).first
if askquestion && user.member_profile_id
askquestion.update_attributes(reviewer_id: user.member_profile_id, review_time: user_action.created_at)
end
end
if defined?(AskListSetting)
AskListSetting.each do |ask_list_setting|
if ask_list_setting.default_fields.length != AskListSetting::DefaultEnabled.length
ask_list_setting.default_fields += ['reviewer', 'review_time']
ask_list_setting.save
end
end
end
end
fix_reviewer
OrbitApp.registration "Ask", :type => "ModuleApp" do
module_label "ask.ask"
base_url File.expand_path File.dirname(__FILE__)