add suppliers/lists ui styling and security fixes
This commit is contained in:
@@ -7,6 +7,7 @@ class List
|
||||
property :needs_payment, type: :boolean, default: false
|
||||
property :closed_at, type: Time
|
||||
property :join_requests, type: Array, default: []
|
||||
property :price, type: Float
|
||||
|
||||
has_many :orders, dependent: :destroy
|
||||
belongs_to :table
|
||||
@@ -50,13 +51,31 @@ class List
|
||||
end
|
||||
end
|
||||
|
||||
def self.for_user_created_at(user, range, options = {})
|
||||
database.view(for_user_view({startkey: [user.id, range.last], endkey: [user.id, range.first], include_docs: true, reduce: false, descending: true}.merge(options)))
|
||||
end
|
||||
|
||||
def close!
|
||||
orders.include_relation(:product_orders)
|
||||
set_price
|
||||
orders.map(&:close!)
|
||||
self.state = 'closed'
|
||||
self.closed_at = Time.now
|
||||
save
|
||||
end
|
||||
|
||||
def set_price
|
||||
list_total = 0.0
|
||||
for order in orders
|
||||
order_total = 0.0
|
||||
for product_order in order.product_orders
|
||||
order_total += (product_order.amount * product_order.price).round(2)
|
||||
end
|
||||
list_total += order_total.round(2)
|
||||
end
|
||||
self.price = list_total.round(2)
|
||||
end
|
||||
|
||||
def table_number
|
||||
@table_number ||= table.number
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user