Created
October 14, 2012 07:25
-
-
Save BrianJoyce/3887715 to your computer and use it in GitHub Desktop.
hospital
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #People | |
| # class Database | |
| # | |
| # attr_accessor :records | |
| # | |
| # @@max_record_id = 0 | |
| # @@records = [] | |
| # | |
| # def next_id | |
| # @@max_record_id += 1 | |
| # end | |
| # | |
| # end | |
| # | |
| # class Record | |
| # | |
| # attr_accessor :data, :record_id, :db | |
| # | |
| # def initialize | |
| # @record_id = nil | |
| # @data = nil | |
| # end | |
| # | |
| # end | |
| class People | |
| attr_accessor :name, :dob, :gender | |
| def initialize(name,dob,gender) | |
| @name = name | |
| @dob = dob | |
| @gender = gender | |
| end | |
| def to_s | |
| "Name: #{@name} DOB:#{@dob} Gender:#{@gender}" | |
| end | |
| # | |
| # def add_record(data) | |
| # rec = Record.new | |
| # rec.record_id = rec.db.next_id | |
| # rec.data = data | |
| # @@records << [rec.record_id,rec.data] | |
| # end | |
| end | |
| class Patient < People | |
| attr_accessor :condition, :medication | |
| def initialize(name,dob,gender,condition,medication) | |
| super(name,dob,gender) | |
| @condition = condition | |
| @medication = medication | |
| end | |
| def to_s | |
| "Name: #{@name} DOB:#{@dob} Gender:#{@gender} Condition: #{@condition} Medication: #{@medication}" | |
| record = {:Name => @name, :dob => @dob, :Gender => @gender, :Condition => @condition, :Medictaion => medication} | |
| record.inspect | |
| end | |
| end | |
| class Employee < People | |
| attr_reader :role, :salary | |
| def initialize(name,dob,gender,role,salary,password) | |
| super(name,dob,gender) | |
| @role = role | |
| @salary = salary | |
| @password = password | |
| end | |
| def to_s | |
| record = {:Name => @name, :dob => @dob, :Gender => @gender, :Role => @role, :Salary => @salary, :Password => @password } | |
| record.inspect | |
| # "Name: #{@name} | |
| # DOB: #{@dob} | |
| # Gender: #{@gender} | |
| # Role: #{@role} | |
| # Salary: $#{@salary} | |
| # Password: #{@password}" | |
| end | |
| end | |
| class Doctor < Employee | |
| end | |
| class Nurse < Employee | |
| end | |
| class Janitor < Employee | |
| end | |
| #people testing | |
| # p = People.new("Joe","08/04/1987","M" ) | |
| # puts p.to_s | |
| #sally = Patient.new("Sally","08/04/1989","F","AIDS","Time") | |
| #p sally | |
| # emp = Doctor.new("Dr. Phil","08/04/1965","M","Doctor",200_000,"stinky_fool") | |
| # p emp | |
| #dr = Doctor.new("Dr. Phil","08/04/1965","M","Doctor",200_000,"stinky_fool") | |
| #p dr | |
| # new_rec = People.new("Dr. Phil","08/04/1965","M") | |
| # p new_rec.add_record(new_rec.to_s) | |
| class Hospital | |
| @@records = [] | |
| attr_accessor :name, :location, :beds | |
| def initialize(name,location,beds) | |
| @name = name | |
| @location = location | |
| @beds = beds | |
| end | |
| def add_patient(name,dob,gender,condition,medication) | |
| add_record(Patient.new(name,dob,gender,condition,medication)) | |
| end | |
| def add_employee(name,dob,gender,role,salary,password) | |
| add_record(Employee.new(name,dob,gender,role,salary,password)) | |
| end | |
| def add_record(data) | |
| # puts data.inspect | |
| @@records << data | |
| # puts data | |
| end | |
| end | |
| class Record | |
| def initialize | |
| #File.open('patient_records.txt', 'a') { |f| f.write("SMB\n")} | |
| @@records = {} | |
| end | |
| def add_record | |
| end | |
| end | |
| # | |
| # a = Record.new | |
| # a.write_record | |
| h = Hospital.new("St.Marys","123 Slag Street",4) | |
| puts h.add_patient("Sally","08/04/1989","F","AIDS","Time") | |
| puts h.add_employee("Joe","08/04/1989","M","Janitor",350_000,"I like sex with Sally") | |
| # puts Hospital.Records | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment