1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102package BUS;
import java.util.ArrayList;
import java.text.NumberFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
import DAO.NhanVienDAO;
import DTO.NHANVIEN;
public class NhanVienBUS {
private final NhanVienDAO nhanvien_dao = new NhanVienDAO();
private ArrayList<NHANVIEN> list_nhanvien = new ArrayList<>();
public NhanVienBUS() {
// nhanvien_dao.getInstance();
list_nhanvien = nhanvien_dao.getList();
}
public ArrayList<NHANVIEN> getList() {
return list_nhanvien;
}
public int insertNhanVien(NHANVIEN nv) {
int result = nhanvien_dao.insert(nv);
if (result > 0) {
list_nhanvien.add(nv);
}
return result;
}
public int updateNhanVien(NHANVIEN nv) {
int result = nhanvien_dao.update(nv);
if (result > 0) {
list_nhanvien.set(getByMaNhanVien(nv.getMaNhanVien()), nv);
}
return result;
}
public int delNhanVien(String maNhanVien) {
int result = nhanvien_dao.del(maNhanVien);
if (result > 0) {
list_nhanvien.remove(getByMaNhanVien(maNhanVien));
}
return result;
}
private int getByMaNhanVien(String maNhanVien) {
int i = 0;
int vitri = -1;
while (i < this.list_nhanvien.size() && vitri == -1) {
if (list_nhanvien.get(i).getMaNhanVien().equals(maNhanVien)) {
vitri = i;
} else {
i++;
}
}
return vitri;
}
public String formatSalary(Double salary) {
NumberFormat formatter = NumberFormat.getInstance(Locale.US);
return formatter.format(salary);
}
public String formatDate(LocalDate date) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
return date.format(formatter);
}
public Object[][] getDataObjectToRender() {
int n = list_nhanvien.size();
Object[][] data = new Object[n][];
for (int i = 0; i < n; i++) {
NHANVIEN temp_nv = list_nhanvien.get(i);
data[i] = new Object[] {
i+1 + "",
temp_nv.getHoTen(),
temp_nv.getGioiTinh(),
formatDate(temp_nv.getNgaySinh()),
temp_nv.getDiaChi().toString(),
temp_nv.getSdt(),
DAO.PhongBanDAO.getInstance().getTenTuMaSo(temp_nv.getMaPhong()),
temp_nv.getChucVu().getTenChucVu(),
formatSalary(temp_nv.getMucLuongChung()),
};
}
return data;
}
}