forked from Trustie/forgeplus
新增:删除时间和删除人
This commit is contained in:
parent
e084c0dad9
commit
ea611bd0c2
|
|
@ -7,7 +7,7 @@ class Admins::UsersController < Admins::BaseController
|
|||
params[:sort_direction] = params[:sort_direction].presence || 'desc'
|
||||
|
||||
users = Admins::UserQuery.call(params)
|
||||
@users = paginate users.includes(:user_extension, projects: :members)
|
||||
@users = paginate users.includes(:user_extension, :delete_by_user, projects: :members)
|
||||
end
|
||||
|
||||
def edit
|
||||
|
|
@ -54,12 +54,12 @@ class Admins::UsersController < Admins::BaseController
|
|||
end
|
||||
|
||||
def soft_delete
|
||||
@user.update!(is_delete: true)
|
||||
@user.update!(is_delete: true, delete_at: Time.current, delete_by: current_user.id)
|
||||
render_ok
|
||||
end
|
||||
|
||||
def restore
|
||||
@user.update!(is_delete: false)
|
||||
@user.update!(is_delete: false, delete_at: nil, delete_by: nil)
|
||||
render_ok
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ class User < Owner
|
|||
enumerize :platform, in: [:forge, :educoder, :trustie, :military, :github, :gitee, :qq, :wechat, :bot, :acge], default: :forge, scope: :shallow
|
||||
|
||||
belongs_to :laboratory, optional: true
|
||||
belongs_to :delete_by_user, class_name: 'User', foreign_key: 'delete_by', optional: true
|
||||
has_one :user_extension, dependent: :destroy
|
||||
has_many :open_users, dependent: :destroy
|
||||
has_one :wechat_open_user, class_name: 'OpenUsers::Wechat'
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@
|
|||
<th width="10%"><%= sort_tag('创建于', name: 'created_on', path: admins_users_path) %></th>
|
||||
<th width="10%"><%= sort_tag('最后登录', name: 'last_login_on', path: admins_users_path) %></th>
|
||||
<th width="8%">状态</th>
|
||||
<th width="10%">删除时间</th>
|
||||
<th width="10%">删除人</th>
|
||||
<th width="8%">项目数</th>
|
||||
<th width="14%">操作</th>
|
||||
</tr>
|
||||
|
|
@ -33,6 +35,10 @@
|
|||
<span class="badge badge-success">正常</span>
|
||||
<% end %>
|
||||
</td>
|
||||
<td><%= display_text(user.delete_at&.strftime('%Y-%m-%d %H:%M')) %></td>
|
||||
<td>
|
||||
<%= user.delete_by_user ? overflow_hidden_span(user.delete_by_user.real_name, width: 100) : '' %>
|
||||
</td>
|
||||
<td><%= link_to user.projects_count, "/#{user.login}/projects", target: "_blank" %></td>
|
||||
<td class="action-container">
|
||||
<%= link_to '编辑', edit_admins_user_path(user), class: 'action' %>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,6 @@
|
|||
class AddDeleteAtToUsers < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
add_column :users, :delete_at, :datetime
|
||||
add_column :users, :delete_by, :integer
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue