OSDN Git Service

顧客情報にプラグインの顧客情報を紐付けて表示するよう修正
authorTaro Matsuzawa <tmatsuzawa@kbmj.com>
Fri, 29 Oct 2010 07:13:17 +0000 (16:13 +0900)
committerTaro Matsuzawa <tmatsuzawa@kbmj.com>
Fri, 29 Oct 2010 07:13:17 +0000 (16:13 +0900)
app/controllers/admin/customers_controller.rb
app/views/admin/customers/edit.html.erb
lib/payment_plugin_base.rb

index fa654fd..afcd886 100644 (file)
@@ -41,6 +41,7 @@ class Admin::CustomersController < Admin::BaseController
     @order_count = Order.count(:conditions => ["customer_id=?", params[:id]])
     @orders = Order.find(:all, :conditions => ["customer_id=?", params[:id]],
       :include => :order_deliveries, :order => "orders.id,order_deliveries.id")
+    get_admin_customer_payment
   end
 
   def confirm
@@ -100,6 +101,21 @@ class Admin::CustomersController < Admin::BaseController
     @customer.attributes = params[:customer]
   end
 
+  def get_admin_customer_payment
+    plugins = PaymentPlugin.find(:all, :conditions => ["enable = ? ", true], :order => :id)
+    @admin_customer_payment_list = Array.new
+    @admin_customer_payment_result = Hash.new
+    plugins.each do |plugin|
+      obj = plugin.get_plugin_instance
+      key, value = obj.admin_customer_payment_result(@customer.id)
+      if key
+        @admin_customer_payment_list << obj.admin_customer_payment_list
+        @admin_customer_payment_result[key] = value
+      end
+    end
+    @admin_customer_payment_list.flatten!
+  end
+
 end
 
 
index ad30708..a56bb1d 100644 (file)
@@ -34,5 +34,8 @@
   <% end %>
 </table>
 
+<% @admin_customer_payment_list.each do |list| %>
+  <%= render :partial => list %>
+<% end %>
 
 </div><!-- /メイン -->
index 21a3c84..da8f20f 100644 (file)
@@ -82,4 +82,12 @@ module PaymentPluginBase
     return Array.new
   end
 
+  def admin_customer_payment_list
+    return Array.new
+  end
+
+  def admin_customer_payment_result(customer_id)
+    return nil, nil
+  end
+
 end