From 527e67d5d58a320564ca92dd45bc12adc8ae47ad Mon Sep 17 00:00:00 2001 From: cxt <853663049@qq.com> Date: Wed, 10 Jul 2019 17:41:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E4=BD=8D=E9=83=A8=E9=97=A8=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E6=97=A0=E6=B3=95=E7=9B=B4=E6=8E=A5=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E3=80=81=E5=90=88=E5=B9=B6=E7=9A=84url=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E8=81=94=E5=8A=A8=E8=BF=87=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/managements_controller.rb | 21 +++++++++++++++++-- .../managements/_departments_list.html.erb | 12 +++++++++-- .../managements/_edit_depart_name.html.erb | 15 +++++++++++++ .../managements/update_depart_name.js.erb | 1 + config/routes.rb | 2 ++ public/javascripts/edu/management.js | 21 +++++++++++++++++++ 6 files changed, 68 insertions(+), 4 deletions(-) create mode 100644 app/views/managements/_edit_depart_name.html.erb create mode 100644 app/views/managements/update_depart_name.js.erb diff --git a/app/controllers/managements_controller.rb b/app/controllers/managements_controller.rb index 67ea8b57..d3336e08 100644 --- a/app/controllers/managements_controller.rb +++ b/app/controllers/managements_controller.rb @@ -1481,7 +1481,7 @@ end redirect_to departments_managements_path end - # 修改单位部门列表 + # 更改单位部门列表 def update_department dep = Department.find params[:department_id] @edit_id = params[:department_id] @@ -1498,6 +1498,22 @@ end end end + # 修改部门名称 + def update_depart_name + @depart = Department.find(params[:depart_id]) + @depart.update_attributes(:name => params[:depart_name]) if @depart.school.departments.where(name: params[:depart_name]).count == 0 + end + + # 检查是否存在同名的部门 + def check_depart_name + depart = Department.find(params[:depart_id]) + if depart.school.departments.where(name: params[:depart_name]).count == 0 + render :json => {status: 0, message: ""} + else + render :json => {status: -1, message: "该名称已存在"} + end + end + def edit_departments_school begin dep = Department.find(params[:department_id]) @@ -1511,9 +1527,10 @@ end # ApplyAddDepartment.where(:department_id =>params[:departments]).update_all(:department_id=>department_id) # users = UserExtensions.where("department_id = #{alt_dep.department_id}") # users.update_all(:department_id => department.id) - apply_dep.destroy_all; + apply_dep.destroy_all users = UserExtensions.where(:department_id => params[:alter_dep_id]) users.update_all(:department_id => dep.id) + dep.update_attributes(:identifier => alter_dep.identifier) if dep.identifier.nil? && alter_dep.identifier.present? alter_dep.destroy end rescue Exception => e diff --git a/app/views/managements/_departments_list.html.erb b/app/views/managements/_departments_list.html.erb index 26bad842..f9ba8659 100644 --- a/app/views/managements/_departments_list.html.erb +++ b/app/views/managements/_departments_list.html.erb @@ -17,7 +17,7 @@ <% @department.each_with_index do |department,index| %> <%= (@page -1) * @limit + index + 1 %> - <%= department.name %> + <%= department.name %> <%= School.where(:id => department.school_id).first %> <%= UserExtensions.where(:department_id => department.id, :school_id => department.school_id ).count %> <%= User.where(:id => UserExtensions.where(:department_id => department.id, :school_id => department.school_id).map(&:user_id),:professional_certification => 1).count %> @@ -38,8 +38,9 @@ <%= format_time department.created_at %> - 删除  + 删除  <%= link_to '更改', update_department_managements_path(:school_id=> department.school_id,:department_id => department.id), :remote => true, :class => "application-default-link" %> + 修改 <% end %> @@ -78,4 +79,11 @@ $("#update_host_count_depart_id").val(id); $("input[name='host_count']").val($("#depart_host_count_"+id).html().trim()); } + + function editDepartName(id){ + var htmlvalue = "<%= escape_javascript(render :partial => 'managements/edit_depart_name') %>"; + pop_box_new(htmlvalue,400,204); + $("#update_depart_name_depart_id").val(id); + $("input[name='depart_name']").val($("#department_name_"+id).html().trim()); + } diff --git a/app/views/managements/_edit_depart_name.html.erb b/app/views/managements/_edit_depart_name.html.erb new file mode 100644 index 00000000..fadcf5a2 --- /dev/null +++ b/app/views/managements/_edit_depart_name.html.erb @@ -0,0 +1,15 @@ +
+
修改
+ <%= form_for '', :url => update_depart_name_managements_path,:html => {:id => 'update_depart_name_form', :remote => true, :method => :post} do |f| %> +
+ + +

+ +
+ 确定 + 取消 +
+
+ <% end %> +
\ No newline at end of file diff --git a/app/views/managements/update_depart_name.js.erb b/app/views/managements/update_depart_name.js.erb new file mode 100644 index 00000000..24a2e19b --- /dev/null +++ b/app/views/managements/update_depart_name.js.erb @@ -0,0 +1 @@ +$("#department_name_<%= @depart.id %>").html("<%= params[:depart_name] %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index c9d01c3b..f5fafc29 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -629,6 +629,8 @@ RedmineApp::Application.routes.draw do ## oauth相关 match 'new_major', :via => [:get, :post] post 'insert_major' match 'update_department',:via => [:get, :post] + post 'update_depart_name' + get 'check_depart_name' post 'edit_departments_school' get 'create_departments' post 'add_department' diff --git a/public/javascripts/edu/management.js b/public/javascripts/edu/management.js index f8571035..e755c5fd 100644 --- a/public/javascripts/edu/management.js +++ b/public/javascripts/edu/management.js @@ -26,6 +26,27 @@ function submit_depart_host_count(){ } } +function submit_depart_name_form(){ + if($("input[name='depart_name']").val().trim() == ""){ + $("#update_depart_name_notice").html("名称不能为空").show(); + } else { + $.ajax({ + type: "GET", + url: '/managements/check_depart_name', + data: {depart_id: $("#update_depart_name_depart_id").val(), depart_name: $("input[name='depart_name']").val().trim()}, + success: function (data) { + if(data.status == 0){ + $("#update_depart_name_notice").hide(); + $('#update_depart_name_form').submit(); + hideModal(); + } else{ + $("#update_depart_name_notice").html("该名称已存在").show(); + } + } + }); + } +} + /*--------------------------- 用户授权全选 -------------------------------*/ $("#all_member_select").live('click', function(){ if($("#all_member_select").is(':checked')){