forked from Trustie/forgeplus
新增:驳回内容
This commit is contained in:
parent
e26ea9f5bc
commit
50682b3668
|
|
@ -26,23 +26,23 @@ class Admins::ResidentExpertsController < Admins::BaseController
|
|||
@expert.resident_expert_actions.create(action_type: ResidentExpertAction::action_types[:approved], action_name: '管理员审核通过' )
|
||||
@expert.resident_expert_actions.create(action_type: ResidentExpertAction::action_types[:approved], action_name: '专家主页上线' )
|
||||
redirect_to admins_resident_experts_path
|
||||
flash[:success] = "审批通过成功"
|
||||
flash[:success] = "入驻通过成功"
|
||||
else
|
||||
redirect_to admins_resident_experts_path
|
||||
flash[:danger] = "审批通过失败"
|
||||
flash[:danger] = "入驻通过失败"
|
||||
end
|
||||
end
|
||||
|
||||
def reject
|
||||
if @expert.update_attributes(status: :rejected)
|
||||
if @expert.update_attributes(status: :rejected, reject_remark: params[:reject_remark])
|
||||
@expert.resident_expert_actions.where.not(action_type: ResidentExpertAction::action_types[:approved]).destroy_all
|
||||
@expert.resident_expert_actions.create(action_type: ResidentExpertAction::action_types[:rejected], action_name: '管理员驳回' )
|
||||
@expert.resident_expert_actions.create(action_type: ResidentExpertAction::action_types[:rejected], action_name: '管理员驳回', action_description: params[:rejection_reason] )
|
||||
@expert.resident_expert_actions.create(action_type: ResidentExpertAction::action_types[:todo], action_name: '展示上线', action_description: "待重新申请并通过审核" )
|
||||
redirect_to admins_resident_experts_path
|
||||
flash[:success] = "审批驳回成功"
|
||||
flash[:success] = "入驻驳回成功"
|
||||
else
|
||||
redirect_to admins_resident_experts_path
|
||||
flash[:danger] = "审批驳回失败"
|
||||
flash[:danger] = "入驻驳回失败"
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
<% end %>
|
||||
<% if expert.status == 'pending' %>
|
||||
<%= link_to "通过", approve_admins_resident_expert_path(expert), method: :post, class: "action" %>
|
||||
<%= link_to "驳回", reject_admins_resident_expert_path(expert), method: :post, class: "action" %>
|
||||
<a href="#" class="action reject-expert" data-expert-id="<%= expert.id %>">驳回</a>
|
||||
<% end %>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -16,6 +16,32 @@
|
|||
<div id="expert-modals">
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="reject-modal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="rejectModalLabel">驳回专家入驻</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<form id="reject-form">
|
||||
<input type="hidden" id="expert-id" name="expert_id">
|
||||
<div class="form-group">
|
||||
<label for="rejection-reason">驳回原因</label>
|
||||
<textarea class="form-control" id="reject_remark" name="reject_remark" rows="4" required></textarea>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
|
||||
<button type="button" class="btn btn-danger" id="confirm-reject">确认驳回</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('.view-residency-info').click(function(e) {
|
||||
|
|
@ -35,5 +61,36 @@
|
|||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('.reject-expert').click(function(e) {
|
||||
e.preventDefault();
|
||||
var expertId = $(this).data('expert-id');
|
||||
$('#expert-id').val(expertId);
|
||||
$('#reject_remark').val('');
|
||||
$('#reject-modal').modal('show');
|
||||
});
|
||||
|
||||
$('#confirm-reject').click(function() {
|
||||
var expertId = $('#expert-id').val();
|
||||
var reject_remark = $('#reject_remark').val();
|
||||
|
||||
if (!reject_remark.trim()) {
|
||||
alert('请输入驳回原因');
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: '/admins/resident_experts/' + expertId + '/reject',
|
||||
type: 'POST',
|
||||
data: { reject_remark: reject_remark },
|
||||
success: function(response) {
|
||||
$('#reject-modal').modal('hide');
|
||||
location.reload();
|
||||
},
|
||||
error: function() {
|
||||
alert('驳回失败,请重试');
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -15,5 +15,6 @@ json.territory_area2 resident_expert.territory_area2
|
|||
json.territory_area3 resident_expert.territory_area3
|
||||
json.introduction resident_expert.introduction
|
||||
json.status resident_expert.status
|
||||
json.reject_remark resident_expert.reject_remark
|
||||
json.created_at resident_expert.created_at.strftime("%Y-%m-%d %H:%M:%S")
|
||||
json.updated_at resident_expert.updated_at.strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
class AddRejectRemarkToResidentExperts < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
add_column :resident_experts, :reject_remark, :text
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue