layout "admin"
# Make sure that a user logs in before doing any action here
- before_filter :authorize, :except => [:filter, :filterbycust, :filterbydate, :filterbytype, :list, :index]
- before_filter :manager, :only => [:filter, :filterbycust, :filterbydate, :filterbytype, :list, :index]
+ before_filter :authorize, :except => [:filter, :filterbycust, :filterbydate, :filterbytype, :list, :index, :income]
+ before_filter :manager, :only => [:filter, :filterbycust, :filterbydate, :filterbytype, :list, :index, :income]
def index
render :action => 'index'
render :action => 'list'
end
+ def income
+ if request.post?
+ # Find all purchases between :begin_date, and :end_date and sum up the total income
+ # from RentablePurchases, MerchandisePurchases. Print both sums, and the total sum.
+ @begin_date = Date.new params[:begin_date]['(1i)'].to_i, params[:begin_date]['(2i)'].to_i, params[:begin_date]['(3i)'].to_i
+ @end_date = Date.new params[:end_date]['(1i)'].to_i, params[:end_date]['(2i)'].to_i, params[:end_date]['(3i)'].to_i
+ merchandises = MerchandisePurchase.find(:all, :conditions => ['date >= ? AND date <= ?', @begin_date, @end_date])
+ rentables = RentablePurchase.find(:all, :conditions => ['date >= ? AND date <= ?', @begin_date, @end_date])
+
+ @merch_count = merchandises.length
+ @rent_count = rentables.length
+ @merch_sum = merchandises.sum(&:price)
+ @rent_sum = rentables.sum(&:price)
+ @total = @merch_sum + @rent_sum
+ render :action => 'income_results'
+ else
+ render :action => 'income'
+ end
+ end
+
def begin
# enter a customer id here
render :action => 'begin'
# Actually record the purchase
purchase = RentablePurchase.new
- purchase.customer_id = session[:customer_id]
+ purchase.customer_id = session[:customer_id][0]
purchase.date = Time.now.to_date
purchase.price = @rentable.calculated_price
purchase.rentable = @rentable