0% found this document useful (0 votes)
4 views

Document 2

Uploaded by

duyphap2903
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Document 2

Uploaded by

duyphap2903
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

public abstract class NhanVien {

private static int dem;


private String maSo;
private String cmnd;
private String hoTen;
private String queQuan;
private String gioiTinh;
private String dienThoai;
{
maSo = String.format("%d", ++dem);
}
public NhanVien(String cmnd,String hoTen,String queQuan,String
gioiTinh,String dienThoai) {
// TODO Auto-generated constructor stub
this.cmnd = cmnd;
this.hoTen = hoTen;
this.queQuan = queQuan;
this.gioiTinh = gioiTinh;
this.dienThoai = dienThoai;
}
public abstract double tinhLuong(int soNgayLam);
@Override
public String toString() {
// TODO Auto-generated method stub
return "Ma so: "+this.maSo+"\nSo CMND: "+this.cmnd+"\nHo ten:
"+this.hoTen+"\nQue quan: "+"\nGioi tinh: "+"\nDien thoai: "+this.dienThoai;
}
public static int getDem() {
return dem;
}
public static void setDem(int dem) {
NhanVien.dem = dem;
}
public String getMaSo() {
return maSo;
}
public void setMaSo(String maSo) {
this.maSo = maSo;
}
public String getCmnd() {
return cmnd;
}
public void setCmnd(String cmnd) {
this.cmnd = cmnd;
}
public String getHoTen() {
return hoTen;
}
public void setHoTen(String hoTen) {
this.hoTen = hoTen;
}
public String getQueQuan() {
return queQuan;
}
public void setQueQuan(String queQuan) {
this.queQuan = queQuan;
}
public String getGioiTinh() {
return gioiTinh;
}
public void setGioiTinh(String gioiTinh) {
this.gioiTinh = gioiTinh;
}
public String getDienThoai() {
return dienThoai;
}
public void setDienThoai(String dienThoai) {
this.dienThoai = dienThoai;
}

public class NhanVienA extends NhanVien {


public NhanVienA(String cmnd,String hoTen,String queQuan,String
gioiTinh,String dienThoai) {
// TODO Auto-generated constructor stub
super(cmnd,hoTen,queQuan,gioiTinh,dienThoai);
}
@Override
public double tinhLuong(int soNgayLam) {
// TODO Auto-generated method stub
return 1.2*100000*soNgayLam;
}
}

public class NhanVienB extends NhanVien {


public NhanVienB(String cmnd,String hoTen,String queQuan,String
gioiTinh,String dienThoai) {
// TODO Auto-generated constructor stub
super(cmnd,hoTen,queQuan,gioiTinh,dienThoai);
}
@Override
public double tinhLuong(int soNgayLam) {
// TODO Auto-generated method stub
return 1.5*100000*soNgayLam;
}
}

public class NhanVienC extends NhanVien {


public NhanVienC(String cmnd,String hoTen,String queQuan,String
gioiTinh,String dienThoai) {
// TODO Auto-generated constructor stub
super(cmnd,hoTen,queQuan,gioiTinh,dienThoai);
}
@Override
public double tinhLuong(int soNgayLam) {
// TODO Auto-generated method stub
return 2.5*100000*soNgayLam;
}
}

public class NhanVienD extends NhanVien {


private double phuCap;
public NhanVienD(String cmnd,String hoTen,String queQuan,String
gioiTinh,String dienThoai,double phuCap) {
// TODO Auto-generated constructor stub
super(cmnd,hoTen,queQuan,gioiTinh,dienThoai);
this.phuCap = phuCap;
}
@Override
public double tinhLuong(int soNgayLam) {
// TODO Auto-generated method stub
return 100000*soNgayLam+this.phuCap;
}
public double getPhuCap() {
return phuCap;
}
public void setPhuCap(double phuCap) {
this.phuCap = phuCap;
}

}
import java.util.ArrayList;

import java.util.List;

public class QuanLyNhanVien {

private List<NhanVien> ds = new ArrayList<>();

/*public QuanLyNhanVien() {

// TODO Auto-generated constructor stub

this.ds = new ArrayList<>();

}*/

public void themNhanVien(NhanVien nv){

this.ds.add(nv);

public void xoaNhanVien(String maSo){

this.ds.removeIf(nv->nv.getMaSo()==maSo);

public NhanVien traCuuTheoCMND(String cmnd){

for(NhanVien nv:this.ds){

if(nv.getCmnd().equals(cmnd)){
return nv;

return null;

public List<NhanVien> traCuuTheoTen(String hoTen){

List<NhanVien> kq = new ArrayList<>();

for(NhanVien nv: this.ds){

if(nv.getHoTen().contains(hoTen)){

kq.add(nv);

return kq;

public List<NhanVien> traCuuTheoQueQuan(String queQuan){

List<NhanVien> kq = new ArrayList<>();

for(NhanVien nv: this.ds){

if(nv.getHoTen().equals(queQuan)){

kq.add(nv);

return kq;

public void hienThi(){

for(NhanVien nv: this.ds){

System.out.println(nv);

public void tinhLuong(int soNgayLam){


for(NhanVien nv: this.ds){

System.out.println("Ma so: "+nv.getMaSo()+"\nHo ten: "+nv.getHoTen()+"\nSo


ngay lam: "+soNgayLam+"\nTien luong: "+nv.tinhLuong(soNgayLam));

}
import java.util.List;

import java.util.Scanner;

public class MainNV {

public static void main(String[] args){

QuanLyNhanVien ql = new QuanLyNhanVien();

Scanner sc = new Scanner(System.in);

while(true){

System.out.print("1. Them nhan vien.");

System.out.print("\n2. Xoa nhan vien.");

System.out.print("\n3. Tra cuu nhan vien.");

System.out.print("\n4.Hien thi danh sach nhan vien.");

System.out.print("\n5. Tinh luong nhan vien.");

System.out.print("\n6. Thoat");

System.out.print("\nMoi ban chon chuc nang: ");

int chucNang = sc.nextInt();

sc.nextLine();

switch (chucNang) {

case 1:

System.out.print("\nNhap so CMND: ");

String cmnd = sc.nextLine();

System.out.print("\nNhap ho ten: ");


String hoTen = sc.nextLine();

System.out.print("\nNhap que quan: ");

String queQuan = sc.nextLine();

System.out.print("\nNhap gioi tinh: ");

String gioiTinh = sc.nextLine();

System.out.print("\nNhap dien thoai: ");

String dienThoai = sc.nextLine();

System.out.print("\nNhap bo phan lam viec(A,B,C,D): ");

String boPhan = sc.nextLine();

NhanVien nv;

if(boPhan.equalsIgnoreCase("A")){

nv = new NhanVienA(cmnd,hoTen,queQuan,gioiTinh,dienThoai);

}else if(boPhan.equalsIgnoreCase("B")){

nv = new NhanVienB(cmnd, hoTen, queQuan, gioiTinh,


dienThoai);

}else if(boPhan.equalsIgnoreCase("C")){

nv = new NhanVienC(cmnd, hoTen, queQuan, gioiTinh,


dienThoai);

}else if(boPhan.equalsIgnoreCase("D")){

System.out.print("\nNhap phu cap: ");

double phuCap = sc.nextDouble();

sc.nextLine();

nv = new NhanVienD(cmnd, hoTen, queQuan, gioiTinh,


dienThoai, phuCap);

}else{

System.out.print("\nBo phan khong hop le.");

continue;

ql.themNhanVien(nv);

break;
case 2:

System.out.print("\nNhap ma so nhan vien can xoa: ");

String maSo = sc.nextLine();

ql.xoaNhanVien(maSo);

break;

case 3:

System.out.print("\nNhap tu khoa can tra cuu: ");

String tuKhoa = sc.nextLine();

List<NhanVien> kq = ql.traCuuTheoTen(tuKhoa);

for(NhanVien n:kq){

System.out.println(n);

break;

case 4:

ql.hienThi();

break;

case 5:

System.out.print("Nhap so ngay lam: ");

int soNgayLam = sc.nextInt();

sc.nextLine();

ql.tinhLuong(soNgayLam);

break;

case 6:

System.exit(0);

default:

System.out.print("\nChon chuc nang khong hop le.");

}
}

You might also like