Browse Source

Louis | Adds client waiting list to client list

master
Loos 10 years ago
parent
commit
048d765c2e
  1. 1
      app/controllers/clients_controller.rb
  2. 8
      app/models/client.rb
  3. 69
      app/views/clients/index.html.haml
  4. 4
      app/views/static_pages/home.html.haml
  5. 2
      lib/tasks/dummydata.rake

1
app/controllers/clients_controller.rb

@ -3,6 +3,7 @@ class ClientsController < ApplicationController
before_action :authenticate_user!
def index
@waiting_list = Client.waiting_list
@clients = Client.all
end

8
app/models/client.rb

@ -1,4 +1,12 @@
class Client < ActiveRecord::Base
has_one :bike
belongs_to :agency
def self.waiting_list
clients = Client.all
non_voided_clients = clients.select{|client| !client.application_voided}
incomplete_clients = non_voided_clients.select{|client| !client.completion_date}
waiting_list = incomplete_clients.sort_by!{|client| client.application_date}
end
end

69
app/views/clients/index.html.haml

@ -1,24 +1,53 @@
.container
%h1 Clients
.row
= link_to ' + New Client', new_client_path, class: "btn btn-default"
.row
%h1 Client Waiting List
%table.table.table-striped.table-bordered.table-hover
%thead
%tr
%th First Name
%th Last Name
%th Agency
%th
%th
%th
%tbody
- @clients.each do |client|
%table.table.table-striped.table-bordered.table-hover
%thead
%tr
%td= client.first_name
%td= client.last_name
%td= client.agency.agency_name if client.agency
%td= link_to 'Show', client
%td= link_to 'Edit', edit_client_path(client)
%td= link_to 'Destroy', client, method: :delete, data: { confirm: 'Are you sure?' }
%th Number
%th First Name
%th Last Name
%th Application Date
%th Agency
%th
%th
%th
%tbody
- @waiting_list.each_with_index do |client, index|
%tr
%td= index + 1
%td= client.first_name
%td= client.last_name
%td= client.application_date
%td= client.agency.agency_name if client.agency
%td= link_to 'Show', client
%td= link_to 'Edit', edit_client_path(client)
%td= link_to 'Destroy', client, method: :delete, data: { confirm: 'Are you sure?' }
%br
= link_to ' + New Client', new_client_path, class: "btn btn-default"
%br
.row
%h1 All Clients
%table.table.table-striped.table-bordered.table-hover
%thead
%tr
%th First Name
%th Last Name
%th Agency
%th
%th
%th
%tbody
- @clients.each do |client|
%tr
%td= client.first_name
%td= client.last_name
%td= client.agency.agency_name if client.agency
%td= link_to 'Show', client
%td= link_to 'Edit', edit_client_path(client)
%td= link_to 'Destroy', client, method: :delete, data: { confirm: 'Are you sure?' }
%br

4
app/views/static_pages/home.html.haml

@ -1,9 +1,5 @@
.container
%h1 Bike &amp; Client Tracker
- if current_user
= link_to "Sign out", destroy_user_session_path, method: :delete
- else
= link_to "Sign in", new_user_session_path
%br
= link_to "View All Bikes", bikes_path
%br

2
lib/tasks/dummydata.rake

@ -35,7 +35,7 @@ namespace :db do
weight: rand(100) + 100,
helmet: [true, false].sample,
lock: [true, false].sample,
completion_date: rand(30.days).ago,
completion_date: [rand(30.days).ago, nil].sample,
bike_type_requested: ["Cruiser", "Road", "Mountain"].sample,
will_pay: [true, false].sample,
notes: "A great client!",

Loading…
Cancel
Save