diff --git a/app/controllers/managements_controller.rb b/app/controllers/managements_controller.rb index b720de0a..69f7bdbc 100644 --- a/app/controllers/managements_controller.rb +++ b/app/controllers/managements_controller.rb @@ -1193,6 +1193,54 @@ end end + # 添加客户 + def customers_list + @search = params[:search] + @province = params[:province] + partner_id = params[:partner_id] + @partner = Partner.find partner_id + @customers = @partner.customers + if @customers.present? + @schools = School.where("(partner_id != ? or partner_id is NULL) and (customer_id is NULL or customer_id not in(#{@customers.map(&:id).join(",")}))", @partner.id) + else + @schools = School.where("partner_id != ? or partner_id is NULL", @partner.id) + end + if params[:search] + @schools = @schools.where("name like ?", "%#{@search}%") + end + + if params[:province] && params[:province] != '0' + @schools = @schools.where("province like ?", "%#{@province}%") + end + @limit = 10 + @page = params[:page] || 1 + @schools_count = @schools.count + + @total_pages = (@schools_count / 10.0).ceil + @schools = paginateHelper @schools, @limit + respond_to do |format| + format.js + format.json { + render json: @schools + } + end + end + + def add_customers + school_ids = params[:school_ids] + if school_ids.length > 0 + school_ids.each do |s| + school = School.where("id = ?",s).first + if school.present? + customer = Customer.new(partner_id: params[:partner_id]) + customer.save! + school.update_attributes(:customer_id => customer.id) + end + end + render :json => {status: 1, message: "创建成功!"} + end + end + def all_partners @search = params[:search] @province = params[:province] @@ -1232,12 +1280,13 @@ end school.update_attributes(:partner_id => partner.id) end end - render :json => {status: 1, message: "创建成功!"} end end + + # 删除部门管理员 def delete_depart_member DepartmentMember.where(:department_id => params[:depart], :user_id => params[:user_id]).destroy_all @@ -1283,9 +1332,13 @@ end else User.where(:certification => 1, :partner_id => nil ) end - @members = paginateHelper @members, 8 + @total_pages = (@members.count / 10.0).ceil + @members = paginateHelper @members, 10 respond_to do |format| format.js + format.json { + render json: member_json_data(@members) + } end end @@ -1298,8 +1351,6 @@ end user.update_attributes(partner_id: @partner.id) if !@partner.nil? && !user.nil? end end - - redirect_to partners_managements_path end # check 部门 identifier是否重复 @@ -4319,4 +4370,19 @@ end book.write xls_report xls_report.string end + + def member_json_data mmebers + mmebers.map do |member| + real_name = member.show_real_name + identity = member.identity + school_name = member.school_name + user_phone = member.phone || "" + member.attributes.dup.except("login", "hashed_password", "salt", "status", "mail", "experience", "grade", + "authentication", "professional_certification").merge({real_name: real_name, + identity: identity, + school_name: school_name, + user_phone: user_phone}) + end + end + end diff --git a/app/views/managements/_customer_addUnit.html.erb b/app/views/managements/_customer_addUnit.html.erb new file mode 100644 index 00000000..28ff3f36 --- /dev/null +++ b/app/views/managements/_customer_addUnit.html.erb @@ -0,0 +1,100 @@ +
+
添加客户
+
+
+
+ <%= render partial: "managements/customers_search_form" %> +
+ 搜索 +
+
+

+ 单位 + 地区 +

+
+ <%= render :partial => "partners_list" %> +
+

+
+ +
  • + 取消 + 确定 +
  • +
    +
    + \ No newline at end of file diff --git a/app/views/managements/_customers_search_form.html.erb b/app/views/managements/_customers_search_form.html.erb new file mode 100644 index 00000000..28c7ece0 --- /dev/null +++ b/app/views/managements/_customers_search_form.html.erb @@ -0,0 +1,19 @@ +<%= form_for "", :url => {:controller=> 'managements', :action => 'customers_list', :partner_id => @partner.id}, :html => {:id => 'partners_search_form'}, :method => "get", :remote => true do |f| %> +
    + 地区: + +
    +
    + 单位: + +
    + +<% end %> + + \ No newline at end of file diff --git a/app/views/managements/_partner_addManage.html.erb b/app/views/managements/_partner_addManage.html.erb index 9c8769ae..54a141a4 100644 --- a/app/views/managements/_partner_addManage.html.erb +++ b/app/views/managements/_partner_addManage.html.erb @@ -14,7 +14,7 @@

    <%= form_for @partner, :url => add_partner_member_managements_path,:html => {:id => 'add_partner_member_form', :remote => true, :method => :post} do |f| %> -
    +
    <%= render :partial => "partner_member_search_list" %>
    <% end %> @@ -27,14 +27,14 @@