class BlsmVdCore::ClearingItem

Public Instance Methods

after_clearing_item_changed() click to toggle source

订单发生变化

# 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() click to toggle source

物流服务费

# 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() click to toggle source

发生改变之后,记住状态的变化

# File lib/blsm-vd-core/model/clearing_item.rb, line 55
def keep_commit_changes
  @committed_changes = self.changes
end
marking_confirm(note) click to toggle source

确认

# 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) click to toggle source

拒签

# 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() click to toggle source

可能的(预计)收入

# 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