Documente Academic
Documente Profesional
Documente Cultură
Activitatea Unei Farmacii Proiect UML
Activitatea Unei Farmacii Proiect UML
Proiect
=ACTIVITATEA UNEI FARMACII=
Semestrul III
3) Diagrama de clas
Clasele care se formeaz i se desprind n urma analizei substantivelor i
eliminarea celor care nu prezint interes pentru sistemul considerat sunt
urmtoarele: Casier, Farmacist, Curier, Medicament, Administrator, Client,
Client_obinuit, Client_de_acasa.
Curier
Colaboratori
Client_de_acasa
Curier
Client
Responsabiliti
Colaboratori
vine la farmacie i cere medicamentul Client
dorit, cumpr i pltete
Casier
Client_de_acas
Responsabiliti
Colaboratori
comand prin telefon medicament,
Client_de_acas.
ntreab casierul dac medicamentul
Casier.
dorit exist, dac medicamentul nu
Curier.
exist casierul va refuza comanda.
Client_obinuit
Responsabiliti
Colaboratori
vine la farmacie i cere medicamentul Client_obinuit
dorit
Casier
Client_de_acas
Responsabiliti
Colaboratori
sun la farmacie i face comanda unui Clientul_de_acas.
medicament, curierul onoreaz
Curier.
comanda.
8
Administrator
Responsabiliti
Colaboratori
n funcie de cerere adaug
Administrator
medicamente n stocul existent, iar n
cazul ieirii din garanie a unor
medicamente, le nltur.
Casier
Responsabiliti
Colaboratori
nainte de a vinde sau de a prepara un Casier
medicament, verific medicamentul
sau codul acestuia
Client_de_acas
Responsabiliti
Colaboratori
comand prin telefon medicament,
Client_de_acas.
ntreab farmacistul dac
Farmacist..
medicamentul dorit exist, farmacistul
noteaz comanda, dac medicamentul
nu exist va refuza comanda.
Farmacist
Responsabiliti
Colaboratori
preia comanda, iar dac un
Client obinuit.
medicament trebuie preparat, atunci
Farmacist.
acesta va fi preparat de farmacist
Farmacist
Responsabiliti
Colaboratori
preia comanda, iar dac un
Clientul_de_acas.
medicament trebuie preparat, atunci
Farmacistul.
acesta va fi preparat de farmacist i va Curierul
preda comanda curierului
10
11
4) Diagrame de secven
12
13
14
}
public void inlatura_medicamente( )
{
}
public void listare( )
{
}
public void setNrleg( String nrleg )
{
}
public void setNume( String n )
{
}
}
public class Casier
{
private String nrleg;
private String nume;
private java.util.Collection vinde;
private Farmacist cere;
public Casier( String nrleg, String nume )
{
}
public Casier( )
{
15
}
public String getNrleg( )
{
return null;
}
public String getNume( )
{
return null;
}
public void setNrleg( String nrleg )
{
}
public void setNume( String n )
{
}
public void verif_medic( )
{
}
public void vinde( )
{
}
}
public class Client_de_acasa extends Client
{
protected String adresa;
protected String nume;
16
17
return 0;
}
public void setAdresa( String adr )
{
}
public void setNume( String n )
{
}
public void setTelefon( int tel )
{
}
}
public class Client_obisnuit extends Client
{
private java.util.Collection cumpara1;
public void accepta_cumpararea( )
{
}
public void cere_prepararea( )
{
}
public Client_obisnuit( )
{
}
public void client_obisnuit( )
18
{
}
}
public class Curier
{
private String nrleg;
private String nume;
private Farmacist da_comanda;
private java.util.Collection livreaza;
public Curier( )
{
}
public String getNrleg( )
{
return null;
}
public String getNume( )
{
return null;
}
public void incaseaza_bani( )
{
}
public void livreaza_comanda( )
{
19
}
public void primeste_comanda( )
{
}
public void setnrleg( String nrleg )
{
}
public void setNume( String n )
{
}
}
public class Farmacist
{
private String nr_legitimatie;
private String nume;
private Curier da_comanda;
private java.util.Collection cere;
private java.util.Collection prepara;
public Farmacist( )
{
}
public String getNrleg( )
{
return null;
}
public String getNume( )
20
{
return null;
}
public void noteaza_comanda( )
{
}
public void preda_camanda( )
{
}
public void prepara_medic( )
{
}
public void setNrleg( String nr )
{
}
public void setNume( String n )
{
}
public void verif_lista_medic( )
{
}
}
public class Medicament
{
protected int cod_medicament;
protected Date data_exp;
21
22
return null;
}
public int getPret( )
{
return 0;
}
public String getU_m( )
{
return null;
}
public Medicament( )
{
}
public void preparat( )
{
}
public void setCod_medicament( int cod )
{
}
public void setData_exp( Date data )
{
}
public void setFabricat( String firm )
{
}
public void setPret( int pret )
{
23
}
}
public class Client
{
private java.util.Collection cumpara;
public void cumpara( )
{
}
public void plateste( )
{
}
24
*/
import java.io.*;
import java.util.Vector;
import java.util.Date;
public class Aplicatie
{
public static void main( String[] arg )throws IOException
{
Administrator ad=new Administrator();
Client_obisnuit c1=null;
Client_de_acasa c2=null;
ad.initializare();
Integer co=null;
int a,cod;
String s,c;
DataInputStream cin=new DataInputStream(System.in);
/*20*/
Integer u;
do{
s=cin.readLine();
System.out.println("1. Adaugare medicament");
System.out.println("2. Inlaturare medicament");
System.out.println("3. Cere medicament");
System.out.println("4. Comanda telefonica");
/*
System.out.println("5. Livrare");*/
System.out.println("5. Preparare");
System.out.println("6. Listare medicamente");
System.out.println("7. EXIT");
25
s=cin.readLine();
u=new Integer(s);
a=u.intValue();
Farmacist f=new Farmacist();
switch(a){
case
1:
System.out.println("..............adaugare
medicament..............");
System.out.println("codul:");
/*37*/
c=cin.readLine();
co=new Integer(c);
cod=co.intValue();
System.out.println("data:");
System.out.println("ziua:");
String z=cin.readLine();
Integer zz=new Integer(z);
int zi=zz.intValue();
System.out.println("luna:");
String l=cin.readLine();
Integer lu=new Integer(l);
int luna=lu.intValue();
System.out.println("anul:");
String a1=cin.readLine();
Integer aa=new Integer(a1);
int an=aa.intValue();
Date data=new Date(luna,zi,an);
26
System.out.println("firma:");
String firm=cin.readLine();
System.out.println("pretul:");
String p=cin.readLine();
Integer pr=new Integer(p);
int pret=pr.intValue();
System.out.println("unitate masura:");
String u1=cin.readLine();
Medicament
m=new
Medicament(cod,data,firm,pret,u1);
ad.adauga_medicamente(m);
System.out.println("medicamentul
fost
adaugat:");
break;
case
2:
System.out.println("...............inlatura
medicamente...............");
System.out.println("codul medicamentului:");
c=cin.readLine();
co=new Integer(c);
cod=co.intValue();
27
ad.inlatura_medicamente(cod);
//
System.out.println("medicamentul
fost
inlaturat:");
break;
case
3:
System.out.println("...............cere
medicament..........");
c1=new Client_obisnuit();
c1.accepta_cumpararea(ad.medicamente);
break;
case
4:
System.out.println("...............comanda
telefonica...........");
c2=new Client_de_acasa();
int mdc=0;
mdc=c2.accepta_comanda(ad.medicamente);
if (mdc!=0){
/*case 5:*/ System.out.println("...............livrare...........");
Curier cc=new Curier();
/*
System.out.println("codul medicamentului:");
c=cin.readLine();
co=new Integer(c);
cod=co.intValue();*/
cc.livreaza_comanda(c2,mdc);
}
break;
case 5: System.out.println("...............preparare...........");
System.out.println("codul medicamentului:");
c=cin.readLine();
28
co=new Integer(c);
cod=co.intValue();
f.prepara_medic(cod);
break;
case 6: ad.listare();
break;
case 7: System.out.println("Bye-Bye!!");
break;
default: System.out.println("optiune invalida");
}
System.out.println("\n*****************************\n");
}
while(a!=8);
}
}
/**
* @(#) Client.java
*/
public abstract class Client{
//
29
//
30
this.nrleg="";
this.nume="";
}
public String getNrleg( ){
return nrleg;
}
public String getNume( ){
return nume;
}
public void setNrleg( String nrleg ){
this.nrleg=nrleg;
}
public void setNume( String n ){
this.nume=nume;
}
public boolean verif_medic( int med, Vector v_med){
boolean este=false;
for(int i=0;i<v_med.size();i++){
Medicament m=(Medicament)(v_med.elementAt(i));
if(m.getCod_medicament()==med){
este=true;
}
31
}
return este;
}
public void vinde( int med){
System.out.println("A fost vandut medicamentul cu codul "+med);
}
}
/**
* @(#) Administrator.java
*/
import java.util.Vector;
public class Administrator{
public Vector medicamente;
private String nrleg;
private String nume;
//
32
medicamente.addElement(m);
}
public void Administrator( String nume, String nrleg ){
medicamente=new Vector(100);
this.nume=nume;
this.nrleg=nrleg;
}
public void Administrator( ){
medicamente=new Vector(20);
this.nume="";
this.nrleg="";
}
public String getNrleg( ){
return nrleg;
}
public String getNume( ){
return nume;
}
public void inlatura_medicamente( int cod){
boolean gasit=false;
for(int i=0;i<medicamente.size();i++){
Medicament mm=(Medicament)(medicamente.elementAt(i));
if(mm.getCod_medicament()==cod){
medicamente.removeElementAt(i);
33
gasit=true;
break;
}
}
if(!gasit)
System.out.println("Medicamentul cu acest cod nu exista!");
}
public void listare(){
for(int i=0;i<medicamente.size();i++){
Medicament m=(Medicament)(medicamente.elementAt(i));
System.out.println(m.getCod_medicament());
}
}
public void setNrleg( String nrleg ){
this.nrleg=nrleg;
}
public void setNume( String n ){
nume=n;
}
public void initializare( ){
this.medicamente=new Vector(5,5);
Medicament m1=new Medicament();medicamente.addElement(m1);
Medicament m2=new Medicament();medicamente.addElement(m2);
Medicament m3=new Medicament();medicamente.addElement(m3);
34
35
boolean exista=f.verif_lista_medic(med,v_med);
if(exista){
f.noteaza_comanda(this,med);
return med;
}
else{
System.out.println("Nu exista...");
}
return 0;
}
public void achita_comanda( ){
}
public void cere_prepararea( ){
}
public Client_de_acasa( String a, String n, int tel ){
adresa=a;
nume=n;
telefon=tel;
}
public Client_de_acasa( ){
adresa="";
36
nume="";
telefon=0;
}
public void face_comanda( ){
}
public String getAdresa( ){
return adresa;
}
public String getNume( ){
return nume;
}
public int getTelefon( ){
return telefon;
}
public void setAdresa( String adr ){
adresa=adr;
}
public void setNume( String n ){
nume=n;
}
37
/**
* @(#) Client_obisnuit.java
*/
import java.io.*;
import java.util.Vector;
public class Client_obisnuit extends Client{
//
38
cas.vinde(med);
}
else{
System.out.println("Nu exista...");
}
}
public void cere_prepararea( int med )throws IOException{
DataInputStream cin=new DataInputStream(System.in);
System.out.println("numele medicamentului:");
String m=cin.readLine();
Integer me=new Integer(m);
med=me.intValue();
Farmacist f=new Farmacist();
f.prepara_medic(med);
}
public Client_obisnuit( ){
}
/**
* @(#) Curier.java
39
*/
//
40
41
/**
* @(#) Farmacist.java
*/
import java.io.*;
import java.util.Vector;
public class Farmacist{
private String nr_legitimatie;
private String nume;
//
//
//
42
}
public String getNrleg( ){
return nr_legitimatie;
}
public String getNume( ){
return nume;
}
public void noteaza_comanda( Client_de_acasa c, int med)throws
IOException{
/* DataInputStream cin=new DataInputStream(System.in);
Integer u;
String s=cin.readLine();
u=new Integer(s);
med=u.intValue();*/
System.out.println("Comanda fost notata");
}
public void preda_comanda( ){
Curier c=new Curier();
c.primeste_comanda();
}
public void prepara_medic( int med){
43
/**
* @(#) Medicament.java
*/
44
import java.util.Date;
public class Medicament{
protected int cod_medicament;
protected Date data_exp;
protected String fabricat;
protected int pret;
protected String u_m;
//
//
//
//
//
//
//
45
46
public Medicament( int cod, Date data, String fabr, int pret, String um ){
cod_medicament=cod;
data_exp=data;
fabricat=fabr;
this.pret=pret;
u_m=um;
}
public Medicament( ){
cod_medicament=0;
data_exp=new Date();
fabricat="";
this.pret=0;
u_m="";
}
public void preparat( ){
System.out.println("Medicamentul a fost preparat");
}
public void setCod_medicament( int cod ){
cod_medicament=cod;
}
public void setData_exp( Date data ){
data_exp=data;
47
}
public void setFabricat( String firm ){
fabricat=firm;
}
public void setPret( int pret ){
this.pret=pret;
}
}
48