diff --git a/app/models/user_action.rb b/app/models/user_action.rb
index 0dba93da4..d0a5a6605 100644
--- a/app/models/user_action.rb
+++ b/app/models/user_action.rb
@@ -25,6 +25,8 @@
class UserAction < ApplicationRecord
+ belongs_to :user, optional: true
+
after_save :add_user_info
serialize :data_bank, JSON
@@ -36,6 +38,7 @@ class UserAction < ApplicationRecord
when "Login" then "登录"
when "Logout" then "退出登录"
when "DestroyOrganization" then "删除组织"
+ when "Attachment" then "上传附件"
else self.action_type
end
end
@@ -43,7 +46,7 @@ class UserAction < ApplicationRecord
def opt_user_name
user = User.find_by(id: self.user_id)
if user.present?
- user&.login
+ user&.real_name
else
del_user = UserAction.find_by(action_type: "DestroyUser", action_id: self.user_id)
del_user.present? ? del_user.user.login : "不存在用户:#{user_id}"
@@ -55,6 +58,13 @@ class UserAction < ApplicationRecord
when "DestroyUser" then "账号:#{user&.login}
邮箱:#{user&.mail}
手机号:#{user&.phone}
昵称:#{user&.nickname}
"
when "DestroyProject" then "项目名称:#{project&.name}
项目标识:#{project&.identifier}
"
when "DestroyOrganization" then "组织名称:#{organization&.nickname}
组织标识:#{organization&.login}
"
+ when 'Attachment'
+ issue = Issue.find_by_id(attachment.container_id)
+ if attachment.container_type == "Issue" && issue&.issue_classify == "issue"
+ return "上传附件issue地址:#{issue&.subject}"
+ else
+ return "上传附件地址:#{attachment.title}"
+ end
else "--"
end
end
@@ -86,6 +96,15 @@ class UserAction < ApplicationRecord
action_organization
end
+ def attachment
+ action_attachment = if action_type == "Attachment" && data_bank.present?
+ build_mode("Attachment")
+ else
+ Attachment.find_by(id: self.action_id)
+ end
+ action_attachment
+ end
+
def build_mode(model_name)
model = model_name.constantize.new
diff --git a/app/views/admins/user_actions/index.html.erb b/app/views/admins/user_actions/index.html.erb
index 3be99282a..371633b58 100644
--- a/app/views/admins/user_actions/index.html.erb
+++ b/app/views/admins/user_actions/index.html.erb
@@ -5,9 +5,9 @@