order_detail.rb 2.7 KB

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