forked from Trustie/forgeplus
新增:反馈意见新增ip地址
This commit is contained in:
parent
81ce0ca2b4
commit
9ea1f1627a
|
|
@ -4,7 +4,7 @@ class Api::V1::Users::FeedbacksController < Api::V1::BaseController
|
|||
before_action :check_auth_for_observe_user
|
||||
|
||||
def create
|
||||
@result = Api::V1::Users::Feedbacks::CreateService.call(@observe_user, feedback_params)
|
||||
@result = Api::V1::Users::Feedbacks::CreateService.call(@observe_user, feedback_params, request.remote_ip)
|
||||
return render_error("反馈意见创建失败.") if @result.nil?
|
||||
return render_ok
|
||||
end
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
# content :text(65535)
|
||||
# created_at :datetime not null
|
||||
# updated_at :datetime not null
|
||||
# remote_ip :string(255)
|
||||
#
|
||||
# Indexes
|
||||
#
|
||||
|
|
|
|||
|
|
@ -1,14 +1,15 @@
|
|||
class Api::V1::Users::Feedbacks::CreateService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :user, :content
|
||||
attr_reader :user, :content, :remote_ip
|
||||
attr_accessor :feedback
|
||||
|
||||
validates :content, presence: true
|
||||
|
||||
def initialize(user, params)
|
||||
def initialize(user, params, remote_ip="127.0.0.1")
|
||||
@user = user
|
||||
@content = params[:content]
|
||||
@remote_ip = remote_ip
|
||||
end
|
||||
|
||||
def call
|
||||
|
|
@ -16,6 +17,7 @@ class Api::V1::Users::Feedbacks::CreateService < ApplicationService
|
|||
|
||||
begin
|
||||
@feedback = Feedback.new(user: user, content: content)
|
||||
@feedback.remote_ip = @remote_ip
|
||||
@feedback.save!
|
||||
|
||||
return @feedback.valid? ? @feedback : nil
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
<th width="5%">序号</th>
|
||||
<th width="10%">用户名</th>
|
||||
<th width="20%">用户邮箱</th>
|
||||
<th width="20%">ip地址</th>
|
||||
<th width="20%"><%= sort_tag('创建时间', name: 'created_at', path: admins_feedbacks_path) %></th>
|
||||
<th width="25%">反馈意见</th>
|
||||
<th width="15%">操作</th>
|
||||
|
|
@ -16,6 +17,7 @@
|
|||
<td><%= list_index_no((params[:page] || 1).to_i, index) %></td>
|
||||
<td><%= feedback&.user&.login%></td>
|
||||
<td><%= feedback&.user&.mail%></td>
|
||||
<td><%= feedback&.remote_ip%></td>
|
||||
<td><%= feedback.created_at&.strftime('%Y-%m-%d %H:%M') %></td>
|
||||
<td style="word-wrap: break-word;">
|
||||
<%= feedback.content %>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,5 @@
|
|||
class AddRemoteIpToFeedbacks < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
add_column :feedbacks, :remote_ip, :string
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue