welcom

Selamat datang di blog sederhana kami..

Thursday, October 20, 2011

Koleksi

package project;


import java.util.Date;

public class Koleksi {

private String id;
private String judul;
private String penerbit;
private int thTerbit;
public Date tanggalPinjam;
public Date tanggalKembali;

// public Koleksi(String judul) {
// this.judul = judul;
// }
/**
* method lamaPinjam, merupakan method yang digunakan untuk menghitung lama pinjam sebuah koleksi dalam hari
* @return
*/
public int lamaPinjam() {
return (int) (getTanggalKembali().getTime() - getTanggalPinjam().getTime()) / (1000 * 60 * 60 * 24); //casting tanggal
}

/**
* method lamaPinjam, merupakan method yang digunakan untuk menghitung lama pinjam sebuah koleksi dalam hari
* @param tanggalPinjam
* @param tanggalKembali
* @return
*/
public int lamaPinjam(Date tanggalPinjam, Date tanggalKembali) {
return (int) ((tanggalKembali.getTime() - tanggalPinjam.getTime()) / (1000 * 60 * 60 * 24));
}

/**
* merupakan method yang digunakan untuk menghitung denda dari koleksi yang dipinjam
* @param tanggalKembali
* @return
*/
public int hitungDenda(Date tanggalKembali) {
return 0;
}

/**
* merthod yang digunakan untuk menghitung jumlah hari terlambat pengembalian sebuah koleksi
* @return
*/
public int jumlahHariTerlambat() {
return 0;
}

/**
* merupakan method terlambat. Jika ada terlambat maka return false
* @return
*/
public boolean isTerlambat() {
return false;
}

/**
* merupakan method terlambat. Jika ada terlambat maka return false
* @param tanggalPinjam
* @param tanggalKembali
* @return
*/
public boolean isTerlambat(Date tanggalPinjam, Date tanggalKembali) {
return false;
}

/**
* merupakan method yang digunakn untuk memanggil id
* @return the id
*/
public String getId() {
return id;
}

/**
* merupakan method yang digunakan untuk mengeset id
* @param id the id to set
*/
public void setId(String id) {
this.id = id;
}

/**
* merupakan method yang digunakan untuk memanggil judul
* @return the judul
*/
public String getJudul() {
return judul;
}

/**
* merupakan method yang digunakan untuk mengeset judul
* @param judul the judul to set
*/
public void setJudul(String judul) {
this.judul = judul;
}

/**
* merupakan method yang digunakan untuk memanggil penerbit
* @return the penerbit
*/
public String getPenerbit() {
return penerbit;
}

/**
* merupakan method yang digunakan untuk mengeset penerbit
* @param penerbit the penerbit to set
*/
public void setPenerbit(String penerbit) {
this.penerbit = penerbit;
}

/**
* merupakan method yang digunakan untuk memanggil tahun terbit
* @return the thTerbit
*/
public int getThTerbit() {
return thTerbit;
}

/**
* merupakan method yang digunakan untuk mengeset tahun terbit
* @param thTerbit the thTerbit to set
*/
public void setThTerbit(int thTerbit) throws Exception {
if (thTerbit < 1900) {
throw new Exception("tahun terbit kurang dari 1900");
}
if (thTerbit < 0) {
throw new Exception("tahun terbit negative");
}
this.thTerbit = thTerbit;

}

/**
* merupakan method yang digunakan untuk memanggil tanggal pinjam
* @return the tanggalPinjam
*/
public Date getTanggalPinjam() {
return tanggalPinjam;
}

/**
* merupakan method yang digunakan untuk mengeset tanggal pinjam
* @param tanggalPinjam the tanggalPinjam to set
*/
public void setTanggalPinjam(Date tanggalPinjam) {
this.tanggalPinjam = tanggalPinjam;
}

/**
* merupakan method yang digunakan untuk memanggil tanggal kembali
* @return the tanggalKembali
*/
public Date getTanggalKembali() {
return tanggalKembali;
}

/**
* merupakan method yang digunakan untuk mengeset tanggal kembali
* @param tanggalKembali the tanggalKembali to set
*/
public void setTanggalKembali(Date tanggalKembali) throws Exception {
if (tanggalPinjam == null) {
//tanggal pinjam kosong
throw new Exception("tanggal pinjam kosong");
} else {
//tanggal pinjam tidak kosong
//cek tanggal kembali sebelum tanggal pinjam atau tidak
if (tanggalKembali.before(tanggalPinjam)) {
throw new Exception("tanggal kembali lebih dulu dari tanggal pinjam");
} else {
//tanggal kembali setelah tanggal pinjam
this.tanggalKembali = tanggalKembali;
}
}
}
}

0 komentar:

Post a Comment