Partenza dopo aver duplicato il primo progetto in cui c''erano già le classi anche della seconda parte.
This commit is contained in:
120
it/unisa/info13d/Articoli/BeniDiConsumo.java
Normal file
120
it/unisa/info13d/Articoli/BeniDiConsumo.java
Normal file
@@ -0,0 +1,120 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.46
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
* Classe che rappresenta un bene di consumo all'interno del catalogo.
|
||||
*
|
||||
*/
|
||||
public class BeniDiConsumo implements Utilizzabile, Serializable{
|
||||
|
||||
/**
|
||||
* Costruttore che inizializza i valori del bene di consumo
|
||||
*
|
||||
* @param idBene
|
||||
* @param descrizioneBene
|
||||
* @param prezzoBene
|
||||
* @param beniInStock
|
||||
*/
|
||||
public BeniDiConsumo ( int idBene, String descrizioneBene, double prezzoBene, int beniInStock ){
|
||||
this.idBene=idBene;
|
||||
this.descrizioneBene=descrizioneBene;
|
||||
this.prezzoBene=prezzoBene;
|
||||
this.beniInStock=beniInStock;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if(beniVenduti<beniInStock)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return - id bene
|
||||
*/
|
||||
public int getIdBene() {
|
||||
return idBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - descrizione bene
|
||||
*/
|
||||
public String getDescrizioneBene() {
|
||||
return descrizioneBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - prezzo del bene
|
||||
*/
|
||||
public double getPrezzoBene() {
|
||||
return prezzoBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - la quantita dei beni da vendere
|
||||
*/
|
||||
public int getBeniInStock() {
|
||||
return beniInStock;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - numero di oggetti venduti
|
||||
*/
|
||||
public int getBeniVenduti() {
|
||||
return beniVenduti;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param descrizioneBene - descrizione del bene
|
||||
*/
|
||||
public void setDescrizioneBene(String descrizioneBene) {
|
||||
this.descrizioneBene = descrizioneBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param prezzoBene - prezzo del bene
|
||||
*/
|
||||
public void setPrezzoBene(double prezzoBene) {
|
||||
this.prezzoBene = prezzoBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param beniInStock - quantita' del bene disponibile per la vendita
|
||||
*/
|
||||
public void setBeniInStock(int beniInStock) {
|
||||
this.beniInStock = beniInStock;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - la scadenza del bene (viene considerata una data a lungo termine)
|
||||
*/
|
||||
public GregorianCalendar getScadenza() {
|
||||
return scadenza;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo setta i beni venduti, decrementa la quantita in magazzino e incrementa il numero di oggeti venduti
|
||||
*/
|
||||
public void setBeniVenduti() {
|
||||
beniInStock--;
|
||||
beniVenduti++;
|
||||
}
|
||||
|
||||
private int idBene;
|
||||
private String descrizioneBene;
|
||||
private double prezzoBene;
|
||||
private int beniInStock; //Numero totale di prodotti da vendere
|
||||
private int beniVenduti; //Numero di prodotti venduti
|
||||
private GregorianCalendar scadenza = new GregorianCalendar(99999,0,1);
|
||||
}
|
||||
150
it/unisa/info13d/Articoli/BeniDiConsumo2.java
Normal file
150
it/unisa/info13d/Articoli/BeniDiConsumo2.java
Normal file
@@ -0,0 +1,150 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.46
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
* Classe che rappresenta un bene di consumo all'interno del catalogo.
|
||||
*
|
||||
*/
|
||||
public class BeniDiConsumo2 extends Utilizzabile2 implements Serializable {
|
||||
|
||||
/**
|
||||
* Costruttore che inizializza i valori del bene di consumo
|
||||
*
|
||||
* @param idBene
|
||||
* @param descrizioneBene
|
||||
* @param prezzoBene
|
||||
* @param beniInStock
|
||||
*/
|
||||
public BeniDiConsumo2 ( int idBene, String descrizioneBene, double prezzoBene, int beniInStock, String in_fornitore, int in_giudizio ){
|
||||
this.idBene=idBene;
|
||||
this.descrizioneBene=descrizioneBene;
|
||||
this.prezzoBene=prezzoBene;
|
||||
this.beniInStock=beniInStock;
|
||||
this.giudizioFornitore = in_giudizio;
|
||||
this.fornitore = in_fornitore;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if(beniVenduti<beniInStock)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return - id bene
|
||||
*/
|
||||
public int getIdBene() {
|
||||
return idBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - descrizione bene
|
||||
*/
|
||||
public String getDescrizioneBene() {
|
||||
return descrizioneBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - prezzo del bene
|
||||
*/
|
||||
public double getPrezzoBene() {
|
||||
return prezzoBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - la quantita dei beni da vendere
|
||||
*/
|
||||
public int getBeniInStock() {
|
||||
return beniInStock;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - numero di oggetti venduti
|
||||
*/
|
||||
public int getBeniVenduti() {
|
||||
return beniVenduti;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param descrizioneBene - descrizione del bene
|
||||
*/
|
||||
public void setDescrizioneBene(String descrizioneBene) {
|
||||
this.descrizioneBene = descrizioneBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param prezzoBene - prezzo del bene
|
||||
*/
|
||||
public void setPrezzoBene(double prezzoBene) {
|
||||
this.prezzoBene = prezzoBene;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param beniInStock - quantita' del bene disponibile per la vendita
|
||||
*/
|
||||
public void setBeniInStock(int beniInStock) {
|
||||
this.beniInStock = beniInStock;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - la scadenza del bene (viene considerata una data a lungo termine)
|
||||
*/
|
||||
public GregorianCalendar getScadenza() {
|
||||
return scadenza;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo setta i beni venduti, decrementa la quantita in magazzino e incrementa il numero di oggeti venduti
|
||||
*/
|
||||
public void setBeniVenduti() {
|
||||
beniInStock--;
|
||||
beniVenduti++;
|
||||
}
|
||||
|
||||
public int getGiudizioFornitore() {
|
||||
return giudizioFornitore;
|
||||
}
|
||||
|
||||
public String getFornitore() {
|
||||
return fornitore;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double get_prezzo_scontato() {
|
||||
|
||||
GregorianCalendar dataOdierna = new GregorianCalendar();
|
||||
|
||||
long milliseconds1 = dataOdierna.getTimeInMillis();
|
||||
long milliseconds2 = scadenza.getTimeInMillis();
|
||||
|
||||
long diff = milliseconds2 - milliseconds1;
|
||||
long diffGiorni = diff / (24 * 60 * 60 * 1000); //differenza in giorni
|
||||
|
||||
if( diffGiorni<=7 )
|
||||
return prezzoBene - (prezzoBene*0.10) ; //Prezzo scontato
|
||||
else
|
||||
return prezzoBene; //Nessuno sconto applicabile
|
||||
}
|
||||
|
||||
private int idBene;
|
||||
private int beniInStock; //Numero totale di prodotti da vendere
|
||||
private int beniVenduti; //Numero di prodotti venduti
|
||||
private int giudizioFornitore; //Giudizio sul fornitore che varia da 1 a 5
|
||||
private double prezzoBene;
|
||||
private GregorianCalendar scadenza = new GregorianCalendar(99999,0,1);
|
||||
private String fornitore;
|
||||
private String descrizioneBene;
|
||||
|
||||
}
|
||||
163
it/unisa/info13d/Articoli/CeneInRistoranti.java
Normal file
163
it/unisa/info13d/Articoli/CeneInRistoranti.java
Normal file
@@ -0,0 +1,163 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.47
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
* Classe che rappresenta una cena all'interno del catalogo.
|
||||
*
|
||||
*/
|
||||
public class CeneInRistoranti implements Utilizzabile, Serializable{
|
||||
|
||||
/**
|
||||
*
|
||||
* @param idCena - l'id della cena
|
||||
* @param nomeRistorante - il ristorante in cui usufruire dell'offerta
|
||||
* @param luogo - Ubicazione del ristorante
|
||||
* @param descrizione_cena - descrizione della cena (cosa viene offerto dal ristorante)
|
||||
* @param costoPerPersona - costo per singola persona
|
||||
* @param dataScadenzaOffertaCena - scadenza dell'offerta
|
||||
* @param numCenedaVendere - offerte disponibile per la cena
|
||||
*/
|
||||
|
||||
public CeneInRistoranti(int idCena, String nomeRistorante, String luogo, String descrizione_cena, double costoPerPersona, GregorianCalendar dataScadenzaOffertaCena, int numCenedaVendere){
|
||||
this.idCena=idCena;
|
||||
this.nomeRistorante=nomeRistorante;
|
||||
this.luogo=luogo;
|
||||
this.descrizione_cena=descrizione_cena;
|
||||
this.costoPerPersona=costoPerPersona;
|
||||
this.dataScadenzaOffertaCena=dataScadenzaOffertaCena;
|
||||
this.numCenedaVendere=numCenedaVendere;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if((dataScadenzaOffertaCena.before(new GregorianCalendar())) && (numCenedaVendere>ceneVendute))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - l'id della cena
|
||||
*/
|
||||
public int getIdCena() {
|
||||
return idCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - in nome del ristorante
|
||||
*/
|
||||
public String getNomeRistorante() {
|
||||
return nomeRistorante;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - l'ubicazione del ristorante
|
||||
*/
|
||||
public String getLuogo() {
|
||||
return luogo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - descrizione della cena
|
||||
*/
|
||||
public String getDescrizione_cena() {
|
||||
return descrizione_cena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il costo per ogni singola persona
|
||||
*/
|
||||
public double getCostoPerPersona() {
|
||||
return costoPerPersona;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di scadenza dell'offerta
|
||||
*/
|
||||
public GregorianCalendar getDataScadenzaOffertaCena() {
|
||||
return dataScadenzaOffertaCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di cene ancora disponibili per la vendita
|
||||
*/
|
||||
public int getNumCenedaVendere() {
|
||||
return numCenedaVendere;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di cene vendute
|
||||
*/
|
||||
public int getCeneVendute() {
|
||||
return ceneVendute;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param nomeRistorante - setta il nome del ristorante
|
||||
*/
|
||||
public void setNomeRistorante(String nomeRistorante) {
|
||||
this.nomeRistorante = nomeRistorante;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param luogo - setta il l'ubicazione del ristorante
|
||||
*/
|
||||
public void setLuogo(String luogo) {
|
||||
this.luogo = luogo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param descrizione_cena - setta la descrizione della cena (Esempio: pizza margherita, patate e dolce)
|
||||
*/
|
||||
public void setDescrizione_cena(String descrizione_cena) {
|
||||
this.descrizione_cena = descrizione_cena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param costoPerPersona - setta il costo per singola persona
|
||||
*/
|
||||
public void setCostoPerPersona(double costoPerPersona) {
|
||||
this.costoPerPersona = costoPerPersona;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dataScadenzaOffertaCena - setta la data di scadenza per l'offerta
|
||||
*/
|
||||
public void setDataScadenzaOffertaCena(GregorianCalendar dataScadenzaOffertaCena) {
|
||||
this.dataScadenzaOffertaCena = dataScadenzaOffertaCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param numCenedaVendere - setta il numero di cene da vendere
|
||||
*/
|
||||
public void setNumCenedaVendere(int numCenedaVendere) {
|
||||
this.numCenedaVendere = numCenedaVendere;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo all'atto dell'acquisto da parte di un utente, decrementa le cene da vendere ed incrementa quelle vendute
|
||||
*/
|
||||
public void setCeneVendute()
|
||||
{
|
||||
numCenedaVendere--;
|
||||
ceneVendute++;
|
||||
}
|
||||
|
||||
private int idCena;
|
||||
private String nomeRistorante;
|
||||
private String luogo;
|
||||
private String descrizione_cena;
|
||||
private double costoPerPersona;
|
||||
private GregorianCalendar dataScadenzaOffertaCena;
|
||||
private int numCenedaVendere;
|
||||
private int ceneVendute;
|
||||
}
|
||||
188
it/unisa/info13d/Articoli/CeneInRistoranti2.java
Normal file
188
it/unisa/info13d/Articoli/CeneInRistoranti2.java
Normal file
@@ -0,0 +1,188 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.47
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
* Classe che rappresenta una cena all'interno del catalogo.
|
||||
*
|
||||
*/
|
||||
public class CeneInRistoranti2 extends Utilizzabile2 implements Serializable{
|
||||
|
||||
/**
|
||||
*
|
||||
* @param idCena - l'id della cena
|
||||
* @param nomeRistorante - il ristorante in cui usufruire dell'offerta
|
||||
* @param luogo - Ubicazione del ristorante
|
||||
* @param descrizione_cena - descrizione della cena (cosa viene offerto dal ristorante)
|
||||
* @param costoPerPersona - costo per singola persona
|
||||
* @param dataScadenzaOffertaCena - scadenza dell'offerta
|
||||
* @param numCenedaVendere - offerte disponibile per la cena
|
||||
*/
|
||||
|
||||
public CeneInRistoranti2(int idCena, String nomeRistorante, String luogo, String descrizione_cena, double costoPerPersona, GregorianCalendar dataScadenzaOffertaCena, int numCenedaVendere){
|
||||
this.idCena=idCena;
|
||||
this.nomeRistorante=nomeRistorante;
|
||||
this.luogo=luogo;
|
||||
this.descrizione_cena=descrizione_cena;
|
||||
this.costoPerPersona=costoPerPersona;
|
||||
this.dataScadenzaOffertaCena=dataScadenzaOffertaCena;
|
||||
this.numCenedaVendere=numCenedaVendere;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if((dataScadenzaOffertaCena.before(new GregorianCalendar())) && (numCenedaVendere>ceneVendute))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - l'id della cena
|
||||
*/
|
||||
public int getIdCena() {
|
||||
return idCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - in nome del ristorante
|
||||
*/
|
||||
public String getNomeRistorante() {
|
||||
return nomeRistorante;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - l'ubicazione del ristorante
|
||||
*/
|
||||
public String getLuogo() {
|
||||
return luogo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - descrizione della cena
|
||||
*/
|
||||
public String getDescrizione_cena() {
|
||||
return descrizione_cena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il costo per ogni singola persona
|
||||
*/
|
||||
public double getCostoPerPersona() {
|
||||
return costoPerPersona;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di scadenza dell'offerta
|
||||
*/
|
||||
public GregorianCalendar getDataScadenzaOffertaCena() {
|
||||
return dataScadenzaOffertaCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di cene ancora disponibili per la vendita
|
||||
*/
|
||||
public int getNumCenedaVendere() {
|
||||
return numCenedaVendere;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di cene vendute
|
||||
*/
|
||||
public int getCeneVendute() {
|
||||
return ceneVendute;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param nomeRistorante - setta il nome del ristorante
|
||||
*/
|
||||
public void setNomeRistorante(String nomeRistorante) {
|
||||
this.nomeRistorante = nomeRistorante;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param luogo - setta il l'ubicazione del ristorante
|
||||
*/
|
||||
public void setLuogo(String luogo) {
|
||||
this.luogo = luogo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param descrizione_cena - setta la descrizione della cena (Esempio: pizza margherita, patate e dolce)
|
||||
*/
|
||||
public void setDescrizione_cena(String descrizione_cena) {
|
||||
this.descrizione_cena = descrizione_cena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param costoPerPersona - setta il costo per singola persona
|
||||
*/
|
||||
public void setCostoPerPersona(double costoPerPersona) {
|
||||
this.costoPerPersona = costoPerPersona;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dataScadenzaOffertaCena - setta la data di scadenza per l'offerta
|
||||
*/
|
||||
public void setDataScadenzaOffertaCena(GregorianCalendar dataScadenzaOffertaCena) {
|
||||
this.dataScadenzaOffertaCena = dataScadenzaOffertaCena;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param numCenedaVendere - setta il numero di cene da vendere
|
||||
*/
|
||||
public void setNumCenedaVendere(int numCenedaVendere) {
|
||||
this.numCenedaVendere = numCenedaVendere;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo all'atto dell'acquisto da parte di un utente, decrementa le cene da vendere ed incrementa quelle vendute
|
||||
*/
|
||||
public void setCeneVendute()
|
||||
{
|
||||
numCenedaVendere--;
|
||||
ceneVendute++;
|
||||
}
|
||||
|
||||
@Override
|
||||
/**
|
||||
* Questo metodo stabilisce se <20> possibile applicare o meno uno sconto alle cene.
|
||||
* @return Restitisce il prezzo originale se la politica di socnto non <20> applicabile, altrienti restituisce il prezzo scontato del 10%.
|
||||
*/
|
||||
public double get_prezzo_scontato() {
|
||||
GregorianCalendar dataOdierna = new GregorianCalendar();
|
||||
|
||||
long milliseconds1 = dataOdierna.getTimeInMillis();
|
||||
long milliseconds2 = dataScadenzaOffertaCena.getTimeInMillis();
|
||||
|
||||
long diff = milliseconds2 - milliseconds1;
|
||||
long diffGiorni = diff / (24 * 60 * 60 * 1000); //differenza in giorni
|
||||
|
||||
if( diffGiorni<=7 )
|
||||
{
|
||||
if( ceneVendute > ( numCenedaVendere/2 ) )
|
||||
return costoPerPersona - (costoPerPersona* ( 0.1 )) - (costoPerPersona* ( 0.1 )) ; //generico sconto ultima sett + se 50% vendute
|
||||
else
|
||||
return costoPerPersona - (costoPerPersona * ( 0.1 )); //generico sconto ultima sett
|
||||
}
|
||||
else
|
||||
return costoPerPersona;
|
||||
}
|
||||
|
||||
private int idCena;
|
||||
private String nomeRistorante;
|
||||
private String luogo;
|
||||
private String descrizione_cena;
|
||||
private double costoPerPersona;
|
||||
private GregorianCalendar dataScadenzaOffertaCena;
|
||||
private int numCenedaVendere;
|
||||
private int ceneVendute;
|
||||
}
|
||||
50
it/unisa/info13d/Articoli/Global.java
Normal file
50
it/unisa/info13d/Articoli/Global.java
Normal file
@@ -0,0 +1,50 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 19.22
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Classe che raccoglie tutti i metodi statici (globali) da usare nel progetto
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class Global {
|
||||
/**
|
||||
*
|
||||
* @return il seguente id disponibile all'aggiunta di un nuovo prodotto
|
||||
*/
|
||||
public static int get_next_id (){
|
||||
general_counter++;
|
||||
return general_counter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo setta il contatore generale degli id dei prodotti
|
||||
*
|
||||
* @param general_counter - contatore id
|
||||
*/
|
||||
public static void setGeneral_counter(int general_counter) {
|
||||
Global.general_counter = general_counter;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return il contatore generale degli id.
|
||||
*/
|
||||
public static int getGeneral_counter() {
|
||||
return general_counter;
|
||||
}
|
||||
|
||||
/**
|
||||
* E' il contatore statico privato
|
||||
*/
|
||||
private static int general_counter;
|
||||
|
||||
|
||||
}
|
||||
98
it/unisa/info13d/Articoli/PrestazioniDopera2.java
Normal file
98
it/unisa/info13d/Articoli/PrestazioniDopera2.java
Normal file
@@ -0,0 +1,98 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
public class PrestazioniDopera2 extends Utilizzabile2 {
|
||||
|
||||
|
||||
|
||||
|
||||
public PrestazioniDopera2(int in_id, String in_localita, String in_descrizione, String in_fornitore, int in_giudizio, double in_prezzo ){
|
||||
|
||||
idPrOpera = in_id;
|
||||
Localita = in_localita;
|
||||
Descrizione = in_descrizione;
|
||||
Fornitore = in_fornitore;
|
||||
giudizioFornitore = in_giudizio;
|
||||
prezzoPrestazione = in_prezzo;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double get_prezzo_scontato() {
|
||||
|
||||
return prezzoPrestazione; //Nessuno sconto applicabile
|
||||
}
|
||||
|
||||
|
||||
|
||||
public int getIdPrOpera() {
|
||||
return idPrOpera;
|
||||
}
|
||||
|
||||
public void setIdPrOpera(int idPrOpera) {
|
||||
this.idPrOpera = idPrOpera;
|
||||
}
|
||||
|
||||
public int getGiudizioFornitore() {
|
||||
return giudizioFornitore;
|
||||
}
|
||||
|
||||
public void setGiudizioFornitore(int giudizioFornitore) {
|
||||
this.giudizioFornitore = giudizioFornitore;
|
||||
}
|
||||
|
||||
public int getPrestazioniVendute() {
|
||||
return prestazioniVendute;
|
||||
}
|
||||
|
||||
public void setPrestazioniVendute(int prestazioniVendute) {
|
||||
this.prestazioniVendute = prestazioniVendute;
|
||||
}
|
||||
|
||||
public double getPrezzoPrestazione() {
|
||||
return prezzoPrestazione;
|
||||
}
|
||||
|
||||
public void setPrezzoPrestazione(double prezzoPrestazione) {
|
||||
this.prezzoPrestazione = prezzoPrestazione;
|
||||
}
|
||||
|
||||
public String getLocalita() {
|
||||
return Localita;
|
||||
}
|
||||
|
||||
public void setLocalita(String localita) {
|
||||
Localita = localita;
|
||||
}
|
||||
|
||||
public String getDescrizione() {
|
||||
return Descrizione;
|
||||
}
|
||||
|
||||
public void setDescrizione(String descrizione) {
|
||||
Descrizione = descrizione;
|
||||
}
|
||||
|
||||
public String getFornitore() {
|
||||
return Fornitore;
|
||||
}
|
||||
|
||||
public void setFornitore(String fornitore) {
|
||||
Fornitore = fornitore;
|
||||
}
|
||||
|
||||
private int idPrOpera;
|
||||
private int giudizioFornitore; // varia da 1 a 5
|
||||
private int prestazioniVendute = 0;
|
||||
private double prezzoPrestazione;
|
||||
private String Localita;
|
||||
private String Descrizione;
|
||||
private String Fornitore;
|
||||
}
|
||||
17
it/unisa/info13d/Articoli/Utilizzabile.java
Normal file
17
it/unisa/info13d/Articoli/Utilizzabile.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.53
|
||||
*/
|
||||
public interface Utilizzabile {
|
||||
/**
|
||||
* Verifica se un metodo e' acquistabile
|
||||
*
|
||||
* @return se un bene e' acquistabile
|
||||
*/
|
||||
boolean eAcquistabile();
|
||||
|
||||
}
|
||||
21
it/unisa/info13d/Articoli/Utilizzabile2.java
Normal file
21
it/unisa/info13d/Articoli/Utilizzabile2.java
Normal file
@@ -0,0 +1,21 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 09/01/14
|
||||
* Time: 18.11
|
||||
*/
|
||||
|
||||
|
||||
public abstract class Utilizzabile2 {
|
||||
|
||||
public abstract boolean eAcquistabile();
|
||||
/**
|
||||
*
|
||||
* @return metodo per l'applicazione delle politiche di sconto relative ad un articolo.
|
||||
*/
|
||||
public abstract double get_prezzo_scontato();
|
||||
|
||||
|
||||
}
|
||||
123
it/unisa/info13d/Articoli/Vacanze.java
Normal file
123
it/unisa/info13d/Articoli/Vacanze.java
Normal file
@@ -0,0 +1,123 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.45
|
||||
*/
|
||||
public class Vacanze implements Utilizzabile, Serializable{
|
||||
|
||||
|
||||
/**
|
||||
* Costruttore per inizialiazzare una Vacanza
|
||||
*
|
||||
* @param idViaggio
|
||||
* @param localitaViaggio
|
||||
* @param dataPartenzaViaggio
|
||||
* @param scadenzaOfferta
|
||||
* @param prezzoPSingola
|
||||
*/
|
||||
public Vacanze(int idViaggio, String localitaViaggio, GregorianCalendar dataPartenzaViaggio, GregorianCalendar scadenzaOfferta, double prezzoPSingola){
|
||||
this.idViaggio = idViaggio;
|
||||
this.localitaViaggio = localitaViaggio;
|
||||
this.dataPartenzaViaggio = dataPartenzaViaggio;
|
||||
this.scadenzaOfferta = scadenzaOfferta;
|
||||
this.prezzoPSingola = prezzoPSingola;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if(scadenzaOfferta.before(new GregorianCalendar())) //L'offerta della vacanza scade se la data sua scadenza e successiva a quella della data odierna
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - id del viaggio
|
||||
*/
|
||||
public int getIdViaggio() {
|
||||
return idViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - localita' del viaggio
|
||||
*/
|
||||
public String getLocalitaViaggio() {
|
||||
return localitaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di partenza
|
||||
*/
|
||||
public GregorianCalendar getDataPartenzaViaggio() {
|
||||
return dataPartenzaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di scadenza dell'offerta
|
||||
*/
|
||||
public GregorianCalendar getScadenzaOfferta() {
|
||||
return scadenzaOfferta;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il prezzo per singola persona
|
||||
*/
|
||||
public double getPrezzoPSingola() {
|
||||
return prezzoPSingola;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di viaggi venduti
|
||||
*/
|
||||
public int getViaggiVenduti() {
|
||||
return viaggiVenduti;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param localitaViaggio - setta la localit' del viaggio
|
||||
*/
|
||||
public void setLocalitaViaggio(String localitaViaggio) {
|
||||
this.localitaViaggio = localitaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dataPartenzaViaggio - setta la data di patenza del viaggio
|
||||
*/
|
||||
public void setDataPartenzaViaggio(GregorianCalendar dataPartenzaViaggio) {
|
||||
this.dataPartenzaViaggio = dataPartenzaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param scadenzaOfferta - setta la data di scadenza dell'offerta della vacanza
|
||||
*/
|
||||
public void setScadenzaOfferta(GregorianCalendar scadenzaOfferta) {
|
||||
this.scadenzaOfferta = scadenzaOfferta;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param prezzoPSingola - setta il prezzo per singola persona
|
||||
*/
|
||||
public void setPrezzoPSingola(double prezzoPSingola) {
|
||||
this.prezzoPSingola = prezzoPSingola;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo incrementa, dopo ogni acquisto, il numero di viaggi venduti
|
||||
*/
|
||||
public void setViaggiVenduti()
|
||||
{
|
||||
viaggiVenduti++;
|
||||
}
|
||||
|
||||
private int idViaggio;
|
||||
private String localitaViaggio;
|
||||
private GregorianCalendar dataPartenzaViaggio;
|
||||
private GregorianCalendar scadenzaOfferta;
|
||||
private double prezzoPSingola;
|
||||
private int viaggiVenduti;
|
||||
}
|
||||
139
it/unisa/info13d/Articoli/Vacanze2.java
Normal file
139
it/unisa/info13d/Articoli/Vacanze2.java
Normal file
@@ -0,0 +1,139 @@
|
||||
package it.unisa.info13d.Articoli;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.GregorianCalendar;
|
||||
|
||||
/**
|
||||
* Created with MONSTER.
|
||||
* User: xgiovio
|
||||
* Date: 16/12/13
|
||||
* Time: 18.45
|
||||
*/
|
||||
public class Vacanze2 extends Utilizzabile2 implements Serializable{
|
||||
|
||||
/**
|
||||
* Costruttore per inizialiazzare una Vacanza
|
||||
*
|
||||
* @param idViaggio
|
||||
* @param localitaViaggio
|
||||
* @param dataPartenzaViaggio
|
||||
* @param scadenzaOfferta
|
||||
* @param prezzoPSingola
|
||||
*/
|
||||
public Vacanze2(int idViaggio, String localitaViaggio, GregorianCalendar dataPartenzaViaggio, GregorianCalendar scadenzaOfferta, double prezzoPSingola){
|
||||
this.idViaggio = idViaggio;
|
||||
this.localitaViaggio = localitaViaggio;
|
||||
this.dataPartenzaViaggio = dataPartenzaViaggio;
|
||||
this.scadenzaOfferta = scadenzaOfferta;
|
||||
this.prezzoPSingola = prezzoPSingola;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean eAcquistabile() {
|
||||
if(scadenzaOfferta.before(new GregorianCalendar())) //L'offerta della vacanza scade se la data sua scadenza e successiva a quella della data odierna
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - id del viaggio
|
||||
*/
|
||||
public int getIdViaggio() {
|
||||
return idViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - localita' del viaggio
|
||||
*/
|
||||
public String getLocalitaViaggio() {
|
||||
return localitaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di partenza
|
||||
*/
|
||||
public GregorianCalendar getDataPartenzaViaggio() {
|
||||
return dataPartenzaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - data di scadenza dell'offerta
|
||||
*/
|
||||
public GregorianCalendar getScadenzaOfferta() {
|
||||
return scadenzaOfferta;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il prezzo per singola persona
|
||||
*/
|
||||
public double getPrezzoPSingola() {
|
||||
return prezzoPSingola;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return - il numero di viaggi venduti
|
||||
*/
|
||||
public int getViaggiVenduti() {
|
||||
return viaggiVenduti;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param localitaViaggio - setta la localit' del viaggio
|
||||
*/
|
||||
public void setLocalitaViaggio(String localitaViaggio) {
|
||||
this.localitaViaggio = localitaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dataPartenzaViaggio - setta la data di patenza del viaggio
|
||||
*/
|
||||
public void setDataPartenzaViaggio(GregorianCalendar dataPartenzaViaggio) {
|
||||
this.dataPartenzaViaggio = dataPartenzaViaggio;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param scadenzaOfferta - setta la data di scadenza dell'offerta della vacanza
|
||||
*/
|
||||
public void setScadenzaOfferta(GregorianCalendar scadenzaOfferta) {
|
||||
this.scadenzaOfferta = scadenzaOfferta;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param prezzoPSingola - setta il prezzo per singola persona
|
||||
*/
|
||||
public void setPrezzoPSingola(double prezzoPSingola) {
|
||||
this.prezzoPSingola = prezzoPSingola;
|
||||
}
|
||||
|
||||
/**
|
||||
* Questo metodo incrementa, dopo ogni acquisto, il numero di viaggi venduti
|
||||
*/
|
||||
public void setViaggiVenduti()
|
||||
{
|
||||
viaggiVenduti++;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double get_prezzo_scontato() {
|
||||
GregorianCalendar dataOdierna = new GregorianCalendar();
|
||||
|
||||
long milliseconds1 = dataOdierna.getTimeInMillis();
|
||||
long milliseconds2 = scadenzaOfferta.getTimeInMillis();
|
||||
|
||||
long diff = milliseconds2 - milliseconds1;
|
||||
long diffGiorni = diff / (24 * 60 * 60 * 1000); //differenza in giorni
|
||||
|
||||
if( diffGiorni<=7 )
|
||||
return prezzoPSingola - (prezzoPSingola*0.10); //Prezzo scontato
|
||||
else
|
||||
return prezzoPSingola; //Nessuno sconto applicabile
|
||||
}
|
||||
|
||||
private int idViaggio;
|
||||
private String localitaViaggio;
|
||||
private GregorianCalendar dataPartenzaViaggio;
|
||||
private GregorianCalendar scadenzaOfferta;
|
||||
private double prezzoPSingola;
|
||||
private int viaggiVenduti;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user