Class: BlsmVdCore::ClearingItem
- Inherits:
-
BaseRecord
- Object
- ActiveRecord::Base
- BaseRecord
- BlsmVdCore::ClearingItem
- Defined in:
- lib/blsm-vd-core/model/clearing_item.rb
Instance Method Summary collapse
-
#after_clearing_item_changed ⇒ Object
订单发生变化.
-
#express_service_fee ⇒ Object
物流服务费.
-
#keep_commit_changes ⇒ Object
发生改变之后,记住状态的变化.
-
#marking_confirm(note) ⇒ Object
确认.
-
#marking_refuse(note, reduce_real_amount = 0) ⇒ Object
拒签.
-
#possible_profit ⇒ Object
可能的(预计)收入.
Instance Method Details
#after_clearing_item_changed ⇒ Object
订单发生变化
60 61 62 63 64 65 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 60 def after_clearing_item_changed if @committed_changes && !@committed_changes.empty? BlsmVdCore.on_clearing_item_cash_back(self.id) if @committed_changes.has_key?('state') #物流返款等信息 @committed_changes.clear end end |
#express_service_fee ⇒ Object
物流服务费
12 13 14 15 16 17 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 12 def express_service_fee if self.pay_type=='CODPAY' return 5 end 0 end |
#keep_commit_changes ⇒ Object
发生改变之后,记住状态的变化
55 56 57 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 55 def keep_commit_changes @committed_changes = self.changes end |
#marking_confirm(note) ⇒ Object
确认
44 45 46 47 48 49 50 51 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 44 def marking_confirm(note) update_params = Hash.new update_params[:notes] = note update_params[:state] = 'CASH_BACK' update_params[:earn_amount] = self.order.jm_profit update_params[:real_amount] = ((self.order.toggle_delivery_deposit && self.order.pay_type.to_i==1) ? (self.order.actual_total.to_f+self.order.payment_total.to_f) : self.order.actual_total) self.update_attributes(update_params) end |
#marking_refuse(note, reduce_real_amount = 0) ⇒ Object
拒签
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 28 def marking_refuse(note, reduce_real_amount = 0) update_params = {} update_params[:notes] = note update_params[:state] = 'CASH_BACK' if self.order.toggle_delivery_deposit && self.order.pay_type.to_i==1 update_params[:real_amount] = self.express_service_fee - (self.earn_amount - self.order_amount) - reduce_real_amount else update_params[:real_amount] = self.express_service_fee - (self.earn_amount - self.order_amount + self.order.real_shipping_charge * 2) - reduce_real_amount end update_params.delete(:real_amount) if self.possible_profit < 0.0 update_params[:rate_of_profit] = 1 self.update_attributes(update_params) end |
#possible_profit ⇒ Object
可能的(预计)收入
20 21 22 23 24 25 |
# File 'lib/blsm-vd-core/model/clearing_item.rb', line 20 def possible_profit if self.state=='CASH_BACK' return sprintf('%0.2f', (self.real_amount - self.order_amount + self.earn_amount)* self.rate_of_profit - self.express_service_fee).to_f end sprintf('%0.2f', self.earn_amount * self.rate_of_profit - self.express_service_fee).to_f end |