Add my-schedule and some other things

This commit is contained in:
2015-08-17 19:13:35 +02:00
parent 2df1b38e8f
commit 9cadc3e94f
30 changed files with 139 additions and 23 deletions
+12 -2
View File
@@ -8,13 +8,23 @@ class EmployeeShift
belongs_to :supplier
belongs_to :employee
view :relevants_view, type: :custom, map_function: %|function(doc){
view :for_supplier_view, type: :custom, map_function: %|function(doc){
if(doc.ruby_class == 'EmployeeShift' && doc.start_from && doc.end_on){
emit([doc.supplier_id, doc.end_on], 1)
}
}|, reduce_function: '_sum'
view :for_employee_view, type: :custom, map_function: %|function(doc){
if(doc.ruby_class == 'EmployeeShift' && doc.start_from && doc.end_on){
emit([doc.employee_id, doc.end_on], 1)
}
}|, reduce_function: '_sum'
def self.for_supplier(supplier, relevant_from: 1.week.ago)
database.view relevants_view(startkey: [supplier.id, relevant_from], endkey: [supplier.id, {}], reduce: false, include_docs: true)
database.view for_supplier_view(startkey: [supplier.id, relevant_from.iso8601], endkey: [supplier.id, {}], reduce: false, include_docs: true)
end
def self.for_employee(employee, relevant_from: 1.week.ago)
database.view for_employee_view(startkey: [employee.id, relevant_from.iso8601], endkey: [employee.id, {}], reduce: false, include_docs: true)
end
end