order_detail.rb 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  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. =begin
  15. def paid_time
  16. paidTime = 0
  17. order = Order.where("id = ?", self.order_id).first
  18. if !order.blank?
  19. paidTime=order.paied_at
  20. end
  21. return paidTime
  22. end
  23. =end
  24. def pay_way
  25. payWay = ""
  26. order = Order.where("id = ?", self.order_id).first
  27. if !order.blank?
  28. payWay=order.pay_way
  29. end
  30. return payWay
  31. end
  32. STATUS_ENUM = [["未支付","unpay"],["已关闭","closed"],["待确认","unconfirmed"],["处理中","processing"],["已完成","complete"],["待收货","dispatch"],["已退款","refunded"]]
  33. PAY_WAY_ENUM = [
  34. # ["Web网银连连支付","webbankllpay"],
  35. # ["Web认证连连支付","webauthllpay"],
  36. # ["Wap认证连连支付","wapauthllpay"],
  37. ["微信支付","weixinpay"],
  38. ["提货券支付","balance"],
  39. # ["公众号微信支付","gzhwxpay"],
  40. # ["公众号提货券支付","gzhbalance"],
  41. # ["统统微信支付","wx_sumpay"],
  42. # ["统统Web网银支付","webbanksumpay"],
  43. ]
  44. rails_admin do
  45. navigation_label '商品管理'
  46. weight -240
  47. parent Order
  48. list do
  49. filters [:product,:order_no,:nums,:price,:order_state,:paid_time]
  50. field :id
  51. field :order_no do
  52. filterable true
  53. end
  54. field :product
  55. field :nums
  56. field :price do
  57. visible true
  58. label "单价(元)"
  59. formatted_value do
  60. value!=0 ? (value/100.0):0
  61. end
  62. end
  63. field :product_name
  64. field :order_state, :enum do
  65. filterable true
  66. enum do
  67. STATUS_ENUM
  68. end
  69. end
  70. field :paid_time do
  71. filterable true
  72. formatted_value do
  73. #bindings[:object].order.paied_time
  74. (bindings[:view].order.paied_at == 0 || bindings[:view].order.paied_at == nil) ? Time.at(0) : Time.at(bindings[:view].order.paied_at)
  75. end
  76. end
  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. end
  117. end