cash_balance.rb 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. # encoding:utf-8
  2. class CashBalance < ActiveRecord::Base
  3. has_paper_trail
  4. self.table_name = "cash_balances"
  5. belongs_to :wx_user, :foreign_key => :wx_uid
  6. validates_presence_of :wx_uid, :count, :relate_id, :source
  7. attr_accessor :remain_sum
  8. SOURCE_ENUM = [["提货券充值佣金", "balance_benefit"],
  9. ["商品佣金", "product_benefit"],
  10. ["店长申请", "shop_benefit"],
  11. ["好友购物佣金", "fx_product_benefit"],
  12. ["提现", "take_cash"],
  13. ["拒绝提现", "extract_reject"],
  14. ["销售奖金","sale_reward_monthly"],
  15. ["商品代销金", "product_sale"],
  16. ["助农项目", "project_invest"],
  17. ["充值","recharge"],
  18. ["预定活动","reserve_act_return"],
  19. ["项目回款","receive_buyback"],
  20. ["扣款","deduct"],
  21. ["借款","loan"],
  22. ["项目退款","project_refund"],
  23. ["商品退款","product_refund"],
  24. ["商品部分退款","product_part_refund"],
  25. ["冲正","correct"],
  26. ["项目放款","project_loan"],
  27. ["货款","good_payment"],
  28. ["活动退款","dollar_win_return"],
  29. ["活动报名","dollar_win"],
  30. ["佣金转提货券","cash_to_balance"],
  31. ["佣金自动分账","cash_to_profit"],
  32. ]
  33. def remain_sum
  34. b = CashBalance.where("wx_uid = ? and id < ?", self.wx_uid, self.id).last
  35. if !b.blank?
  36. return self.count + b.remain_sum
  37. else
  38. return self.count
  39. end
  40. end
  41. def profit_state
  42. if self.trade_no.length>0
  43. if self.profit_flag
  44. return "分账已完成"
  45. else
  46. return "分账处理中"
  47. end
  48. else
  49. return "--"
  50. end
  51. end
  52. rails_admin do
  53. navigation_label '资金管理'
  54. weight -920
  55. list do
  56. items_per_page 10
  57. filters [:id, :source, :wx_user, :relate_id, :created_at]
  58. # include_all_fields
  59. field :id
  60. field :wx_user
  61. field :wx_uid
  62. field :count do
  63. formatted_value do
  64. value.to_f / 100.0
  65. end
  66. end
  67. field :remain_sum do
  68. formatted_value do
  69. value.to_f / 100.0
  70. end
  71. end
  72. field :relate_id
  73. field :source, :enum do
  74. enum do
  75. SOURCE_ENUM
  76. end
  77. end
  78. field :remark
  79. field :profit_state
  80. field :created_at
  81. # field :updated_at
  82. end
  83. show do
  84. field :wx_uid
  85. field :count do
  86. formatted_value do # used in form views
  87. value.to_f / 100.0
  88. end
  89. end
  90. field :remain_sum do
  91. formatted_value do
  92. value.to_f / 100.0
  93. end
  94. end
  95. field :source, :enum do
  96. enum do
  97. SOURCE_ENUM
  98. end
  99. end
  100. field :relate_id
  101. field :remark
  102. field :profit_state
  103. field :created_at
  104. end
  105. edit do
  106. field :wx_uid
  107. field :count do
  108. label "变动金额,单位(分)"
  109. end
  110. field :relate_id
  111. field :source, :enum do
  112. enum do
  113. SOURCE_ENUM
  114. end
  115. end
  116. field :remark
  117. end
  118. end
  119. end