System obsługi wizyt w przychodni lekarskiej

0

Potrzebuję pomocy w stworzeniu systemu wizyt lekarskich. Mianowicie program powinien:
System posiada listy pracowników i pacjentów oraz grafik terminów. System ma elastyczną listę specjalności lekarskich, i każdy lekarz musi mieć co najmniej jedną specjalność. Grafik jest zbiorem terminów w których przyjmują lekarze. Termin może być wolny, zarezerwowany albo wykonany (jego czas minął). Po wyborze specjalności (i opcjonalnie daty) dostaje listę 5 najbliższych wolnych terminów (nawet jeśli są za rok). Termin można zarezerwować dla pacjenta lub usunąć gdy nie ma rezerwacji.

Stworzyłem dwie klasy:

public class Pracownik {
private String name;
private String lastName;
private String position;

public Pracownik(String name, String lastName, String position) {
	super();
	this.lastName = lastName;
	this.name = name;
	this.position = position;
}

public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public String lastName() {
	return lastName;
}
public void setLastName(String lastName) {
	this.lastName = lastName;
}
public String getPosition() {
	return position;
}
public void setPosition(String position) {
	this.position = position;
}
@Override
public String toString() {
	return "Lista pracowników: " + name + ", " + lastName + ", " + position;
}

}

public class Pacjent extends Pracownik {

public Pacjent(String name, String lastName, String PESEL) {
	super(name, lastName, PESEL);
	this.PESEL = PESEL;
}

private String PESEL;

public String getPESEL() {
	return PESEL;
}
public void setPESEL(String PESEL) {
	this.PESEL = PESEL;
}
@Override
public String toString() {
	return super.toString() + "PESEL: " + PESEL;
}

}

Jestem początkujący a jest to program zaliczeniowy przedmiot na studiach podyplomowych. Co powinienem pisać dalej? Z czego ogólnie powinien składać się program?

0

Przede wszystkim pacjent nie powinien rozszerzać pracownika, to nielogiczne.

0

Poprawiłem. Dzięki za uwagę. Nie mogę sobie wyobrazić w jakiej formie napisać grafik terminów. Czy to ma być w formie tablicy przypisanej do konkretnego lekarza? No i specjalności lekarzy.

0

Ja bym stworzył Obiekt Termin, określający datę. Do którego przypinałbym Lekarza i pacjenta.
Termin miałby stan: wolny, zarezerwowany, wykonany.
relacje: Lekarza może mieć wiele terminów
Termin może mieć jednego lekarza i jednego pacjenta
Pacjent może mieć wiele terminów.

Ten twój program ma być okienkowy, czy webowy?

0

Okienkowy. Ma uruchamiać się w konsoli bez interakcji z użytkownikiem.

0

Nie wiem czy dobrze rozumiem. W sparametryzowanej klasie Termin gdzie argumentami typu byłyby <wolny, zarezerwowany, wykonany> utworzyłbyś nowy obiekt Date d = new Date(); i do niego dopisałbyś lekarza i pacjenta?

0

W zasadzie można by założyć, że czas lekarza podzielony jest na ileś jednostek. Powiedzmy, że pracując 8 godzin ma tych jednostek 16 czyli każda 0,5h. I tak na każdy dzień jego pracy masz 16 komórek, do których możesz wrzucić spotkanie z pacjentem (do jednej lub więcej w zależności od czasu trwania wizyty). W ten sposób możesz zbudować siatkę/harmonogram dla konkretnego lekarza. Potem pokazanie wolnych terminów to w zasadzie wyświetlenie wszystkich pozycji z tabeli, które nie mają przyklejonego pacjenta, oczywiście z pominięciem wolnych dni. Przynajmniej ja bym tak kombinował...

0

Dzięki za podpowiedź. Oczywiście skorzystam.

0

każdy lekarz musi mieć co najmniej jedną specjalność

To powinnac byc jakas kolekcja

0

Do prowadzenia przychodni oraz gabinetów lekarskich polecam program Medfile. Jest stworzony w sposób konkretny, przejrzysty, a korzystanie z niego jest bardzo łatwe i komfortowe. Posiada wiele funkcji, które ułatwiają codzienną pracę i usprawnia ją. Polecam skorzystać z darmowego konta, gdzie można przetestować program i samemu ocenić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1