Sha256: b887a3e7cc4fffe810ebf9818d173e2a0bb9006bf69db30e821b2cf795e3f3f8

Contents?: true

Size: 670 Bytes

Versions: 3

Compression:

Stored size: 670 Bytes

Contents

module EducodeSales
  class MoneyPlan < ApplicationRecord
    belongs_to :staff
    belongs_to :follow_up, counter_cache: true

    enum clazz: ['未完成', '已完成']

    after_save :update_return_money
    after_destroy :update_return_money


    private

    def update_return_money
      if self.clazz == '已完成'
        follow_up.update(return_money: follow_up.money_plans.where(clazz: '已完成').sum(:amount))
        all_follow_ups_ids = follow_up.business.follow_ups.pluck(:id)
        follow_up.business.update(return_money: EducodeSales::MoneyPlan.where(clazz: '已完成', follow_up_id: all_follow_ups_ids).sum(:amount))
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
educode_sales-0.1.2 app/models/educode_sales/money_plan.rb
educode_sales-0.1.1 app/models/educode_sales/money_plan.rb
educode_sales-0.1.0 app/models/educode_sales/money_plan.rb