0
我有一个会计计划,我正在工作,它包含一个嵌套在员工对象中的工资存根表。Rails 3:会计季度
我想实现一个系统,可以识别我的薪资存根的@ stub.date月,并获取所有@ stub.net_pay的总和,无论这个月在第一,第二,第三或第四季度出现在任何季度给定年份。
我希望能够完成这个轨道!有人能指引我朝着正确的方向吗?我很难过。
我有一个会计计划,我正在工作,它包含一个嵌套在员工对象中的工资存根表。Rails 3:会计季度
我想实现一个系统,可以识别我的薪资存根的@ stub.date月,并获取所有@ stub.net_pay的总和,无论这个月在第一,第二,第三或第四季度出现在任何季度给定年份。
我希望能够完成这个轨道!有人能指引我朝着正确的方向吗?我很难过。
这里假设了几个不同的东西(比如employee_id存在),但是应该给你你需要的东西。我没有在数据库中进行求和,因为您可能想检查所有存根以进行验证。
require "active_support"
class Stub < ActiveRecord::Base
def self.net_pay_for_quarter
stubs = where(:employee_id => employee_id).
where("date >= ?", Quarter.begin_of_quarter(date)).
where("date < ?", Quarter.end_of_quarter(date))
stubs.map(&:net_pay).sum
end
end
class Quarter
def self.begin_of_quarter(date)
"2012-#{date.month}-01".to_date.beginning_of_month
end
def self.end_of_quarter(date)
"2012-#{date.month}-01".to_date.end_of_month
end
def self.quarter_integer(date)
(date.month/4) + 1
end
end
谢谢这是我需要的一脚。感谢帮助! – jbearden 2012-07-27 04:53:09
是不是第一季度总是一月/二月/三月? – 2012-07-27 03:50:08
是的。 1st = [Jan,Feb,March],2nd = [April,May,June]等。 我在想一个可能的解决方案:如果我在@stub对象上有一个:quarter字段,我可以从那里开始。只是不太确定我将如何查询每个季度,然后得到它的总和 – jbearden 2012-07-27 03:52:57