order_detail.rb 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. # encoding:utf-8
  2. class OrderDetail < ActiveRecord::Base
  3. has_paper_trail
  4. self.table_name = "order_details"
  5. belongs_to :product
  6. belongs_to :order, :foreign_key => :order_id
  7. # has_one :order, :foreign_key=>:order_id, :primary_key=>:order_id
  8. def order_state
  9. order = Order.where("id = ?", self.order_id).first
  10. if !order.blank?
  11. return order.status
  12. end
  13. end
  14. def paid_time
  15. paidTime = 0
  16. order = Order.where("id = ?", self.order_id).first
  17. if !order.blank?
  18. paidTime=order.paied_at
  19. end
  20. return paidTime
  21. end
  22. def pay_way
  23. payWay = ""
  24. order = Order.where("id = ?", self.order_id).first
  25. if !order.blank?
  26. payWay=order.pay_way
  27. end
  28. return payWay
  29. end
  30. STATUS_ENUM = [["未支付","unpay"],["已关闭","closed"],["待确认","unconfirmed"],["处理中","processing"],["已完成","complete"],["待收货","dispatch"],["已退款","refunded"]]
  31. PAY_WAY_ENUM = [
  32. # ["Web网银连连支付","webbankllpay"],
  33. # ["Web认证连连支付","webauthllpay"],
  34. # ["Wap认证连连支付","wapauthllpay"],
  35. ["微信支付","weixinpay"],
  36. ["提货券支付","balance"],
  37. # ["公众号微信支付","gzhwxpay"],
  38. # ["公众号提货券支付","gzhbalance"],
  39. # ["统统微信支付","wx_sumpay"],
  40. # ["统统Web网银支付","webbanksumpay"],
  41. ]
  42. rails_admin do
  43. navigation_label '商品管理'
  44. weight -240
  45. parent Order
  46. list do
  47. filters [:product,:order_no,:nums,:price,:order_state]
  48. field :id
  49. field :order_no do
  50. filterable true
  51. end
  52. #field :order
  53. field :product
  54. field :nums
  55. field :price do
  56. visible true
  57. label "单价(元)"
  58. formatted_value do
  59. value!=0 ? (value/100.0):0
  60. end
  61. end
  62. field :product_name
  63. field :order_state, :enum do
  64. filterable true
  65. enum do
  66. STATUS_ENUM
  67. end
  68. end
  69. # field :paid_time do
  70. # filterable true
  71. # formatted_value do
  72. # #bindings[:object].order.paied_time
  73. # (bindings[:object].order.paied_at == 0 || bindings[:object].order.paied_at == nil) ? Time.at(0) : Time.at(bindings[:object].order.paied_at)
  74. # end
  75. # end
  76. field :paid_time
  77. field :pay_way, :enum do
  78. filterable true
  79. enum do
  80. PAY_WAY_ENUM
  81. end
  82. end
  83. field :is_zeng
  84. field :size_name
  85. field :color_name
  86. field :created_at
  87. field :updated_at
  88. end
  89. show do
  90. field :id
  91. field :order_no
  92. field :product
  93. field :nums
  94. field :is_zeng
  95. field :price do
  96. visible true
  97. label "单价(元)"
  98. formatted_value do
  99. value!=0 ? (value/100.0):0
  100. end
  101. end
  102. field :product_name
  103. field :size_name
  104. field :color_name
  105. field :created_at
  106. field :updated_at
  107. end
  108. edit do
  109. field :order_no
  110. field :product_id
  111. field :nums
  112. field :is_zeng
  113. field :price
  114. field :product_name
  115. end
  116. export do
  117. include_all_fields
  118. field :wx_user_id do
  119. formatted_value do
  120. bindings[:object].order.wx_user_id
  121. end
  122. end
  123. end
  124. end
  125. end