|
|
@@ -3,8 +3,19 @@ class OrderRefund < ActiveRecord::Base
|
|
|
self.table_name = "order_refunds"
|
|
|
validates :order_id, presence: true
|
|
|
belongs_to :wx_user, :foreign_key => :wx_user_id
|
|
|
+ belongs_to :order, :foreign_key => :order_id, :primary_key => :order_id
|
|
|
before_save :before_save
|
|
|
|
|
|
+ STATUS_ENUM = [["待审核", false], ["已退款", true]]
|
|
|
+ PAY_WAY_ENUM = [
|
|
|
+ ["微信支付", "weixinpay"],
|
|
|
+ ["通联支付", "allinpay"],
|
|
|
+ ["提货券支付", "balance"],
|
|
|
+ ["佣金支付", "cash"],
|
|
|
+ ["积分支付", "cent"],
|
|
|
+ ]
|
|
|
+ ORDER_STATUS_ENUM = [["未支付","unpay"],["已关闭","closed"],["待确认","unconfirmed"],["处理中","processing"],["已完成","complete"],["待收货","dispatch"],["已退款","refunded"]]
|
|
|
+
|
|
|
def before_save
|
|
|
order = Order.where("order_id = ?", self.order_id).first
|
|
|
if !order.blank?
|
|
|
@@ -15,15 +26,37 @@ class OrderRefund < ActiveRecord::Base
|
|
|
end
|
|
|
end
|
|
|
|
|
|
+ def pay_way
|
|
|
+ order = Order.where("order_id = ?", self.order_id).first
|
|
|
+ order.blank? ? "" : order.pay_way
|
|
|
+ end
|
|
|
+
|
|
|
+ def order_status
|
|
|
+ order = Order.where("order_id = ?", self.order_id).first
|
|
|
+ order.blank? ? "" : order.status
|
|
|
+ end
|
|
|
+
|
|
|
rails_admin do
|
|
|
navigation_label '订单退款记录'
|
|
|
weight -500
|
|
|
parent Order
|
|
|
list do
|
|
|
- filters [:id,:order_id]
|
|
|
+ filters [:id,:order_id,:status,:transaction_id]
|
|
|
field :id
|
|
|
field :order_id
|
|
|
field :wx_user
|
|
|
+ field :pay_way, :enum do
|
|
|
+ label "支付方式"
|
|
|
+ enum do
|
|
|
+ PAY_WAY_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
+ field :order_status, :enum do
|
|
|
+ label "订单状态"
|
|
|
+ enum do
|
|
|
+ ORDER_STATUS_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
field :transaction_id
|
|
|
field :total do
|
|
|
label "订单金额(元)"
|
|
|
@@ -43,7 +76,12 @@ class OrderRefund < ActiveRecord::Base
|
|
|
(value == nil || value <=0) ? "" : Time.at(value)
|
|
|
end
|
|
|
end
|
|
|
- field :status
|
|
|
+ field :status, :enum do
|
|
|
+ label "退款状态"
|
|
|
+ enum do
|
|
|
+ STATUS_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
field :remark
|
|
|
field :created_at
|
|
|
end
|
|
|
@@ -52,6 +90,18 @@ class OrderRefund < ActiveRecord::Base
|
|
|
field :id
|
|
|
field :order_id
|
|
|
field :wx_user
|
|
|
+ field :pay_way, :enum do
|
|
|
+ label "支付方式"
|
|
|
+ enum do
|
|
|
+ PAY_WAY_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
+ field :order_status, :enum do
|
|
|
+ label "订单状态"
|
|
|
+ enum do
|
|
|
+ ORDER_STATUS_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
field :transaction_id
|
|
|
field :total
|
|
|
field :total do
|
|
|
@@ -72,7 +122,12 @@ class OrderRefund < ActiveRecord::Base
|
|
|
(value == nil || value <=0) ? "" : Time.at(value)
|
|
|
end
|
|
|
end
|
|
|
- field :status
|
|
|
+ field :status, :enum do
|
|
|
+ label "退款状态"
|
|
|
+ enum do
|
|
|
+ STATUS_ENUM
|
|
|
+ end
|
|
|
+ end
|
|
|
field :remark
|
|
|
field :created_at
|
|
|
field :updated_at
|
|
|
@@ -83,4 +138,4 @@ class OrderRefund < ActiveRecord::Base
|
|
|
field :remark
|
|
|
end
|
|
|
end
|
|
|
-end
|
|
|
+end
|