├── .github └── workflows │ └── generator-generic-ossf-slsa3-publish.yml ├── Brand.java ├── HanhChanh.java ├── KinhDoanh.java ├── MainGT.java ├── NhanSuProgram.java ├── Person.java └── PhuongTienGiaoThong.java /.github/workflows/generator-generic-ossf-slsa3-publish.yml: -------------------------------------------------------------------------------- 1 | # This workflow uses actions that are not certified by GitHub. 2 | # They are provided by a third-party and are governed by 3 | # separate terms of service, privacy policy, and support 4 | # documentation. 5 | 6 | # This workflow lets you generate SLSA provenance file for your project. 7 | # The generation satisfies level 3 for the provenance requirements - see https://slsa.dev/spec/v0.1/requirements 8 | # The project is an initiative of the OpenSSF (openssf.org) and is developed at 9 | # https://github.com/slsa-framework/slsa-github-generator. 10 | # The provenance file can be verified using https://github.com/slsa-framework/slsa-verifier. 11 | # For more information about SLSA and how it improves the supply-chain, visit slsa.dev. 12 | 13 | name: SLSA generic generator 14 | on: 15 | workflow_dispatch: 16 | release: 17 | types: [created] 18 | 19 | jobs: 20 | build: 21 | runs-on: ubuntu-latest 22 | outputs: 23 | digests: ${{ steps.hash.outputs.digests }} 24 | 25 | steps: 26 | - uses: actions/checkout@v3 27 | 28 | # ======================================================== 29 | # 30 | # Step 1: Build your artifacts. 31 | # 32 | # ======================================================== 33 | - name: Build artifacts 34 | run: | 35 | # These are some amazing artifacts. 36 | echo "artifact1" > artifact1 37 | echo "artifact2" > artifact2 38 | 39 | # ======================================================== 40 | # 41 | # Step 2: Add a step to generate the provenance subjects 42 | # as shown below. Update the sha256 sum arguments 43 | # to include all binaries that you generate 44 | # provenance for. 45 | # 46 | # ======================================================== 47 | - name: Generate subject for provenance 48 | id: hash 49 | run: | 50 | set -euo pipefail 51 | 52 | # List the artifacts the provenance will refer to. 53 | files=$(ls artifact*) 54 | # Generate the subjects (base64 encoded). 55 | echo "hashes=$(sha256sum $files | base64 -w0)" >> "${GITHUB_OUTPUT}" 56 | 57 | provenance: 58 | needs: [build] 59 | permissions: 60 | actions: read # To read the workflow path. 61 | id-token: write # To sign the provenance. 62 | contents: write # To add assets to a release. 63 | uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v1.4.0 64 | with: 65 | base64-subjects: "${{ needs.build.outputs.digests }}" 66 | upload-assets: true # Optional: Upload to a new release 67 | -------------------------------------------------------------------------------- /Brand.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.io.BufferedReader; 3 | import java.io.IOException; 4 | import java.io.InputStreamReader; 5 | 6 | public class Brand { 7 | public static String inputString(String gb) throws IOException { 8 | String kt=""; 9 | //---Khai báo luồng dữ liệu & bộ đệm 10 | InputStreamReader s1 = new InputStreamReader(System.in); 11 | BufferedReader bat = new BufferedReader(s1); 12 | //---Thông báo và đọc dữ liệu 13 | System.out.print(gb); 14 | kt = bat.readLine(); 15 | return kt; 16 | } 17 | /** 18 | * Phương thức phục vụ cho việc nhập dữ liệu số thực từ bàn phím 19 | * @param gb Số thực thông báo hướng dẫn người dùng nhập dữ liệu 20 | * @return Các số thực đã nhập 21 | * @throws IOException 22 | */ 23 | public static long inputLong(String gb) throws IOException { 24 | long kt=0; 25 | String a = inputString(gb); 26 | kt=Long.parseLong(a); 27 | return kt; 28 | } 29 | /** 30 | * Phương thức phục vụ cho việc nhập dữ liệu số nguyên từ bàn phím 31 | * @param gb Số nguyên thoonng báo hướng dẫn người dùng nhập dữ liệu 32 | * @return Các số nguyên đã nhập 33 | * @throws IOException 34 | */ 35 | public static int toInt(String gb) throws IOException { 36 | int kt=0; 37 | String a = inputString(gb); 38 | kt=Integer.parseInt(a); 39 | return kt; 40 | } 41 | public static double inputDouble(String gb) throws IOException { 42 | double kt=0; 43 | String s = inputString(gb); 44 | kt=Double.parseDouble(s); 45 | return kt; 46 | } 47 | 48 | 49 | 50 | } 51 | -------------------------------------------------------------------------------- /HanhChanh.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | 3 | import java.io.IOException; 4 | 5 | import Entertainmat.Solution; 6 | 7 | public class HanhChanh extends Person{ 8 | private long phuCap; 9 | private long thuong; 10 | 11 | public long getPhuCap() { 12 | return phuCap; 13 | } 14 | 15 | public void setPhuCap(long phuCap) { 16 | this.phuCap = phuCap; 17 | } 18 | 19 | public long getThuong() { 20 | return thuong; 21 | } 22 | 23 | public void setThuong(long thuong) { 24 | this.thuong = thuong; 25 | } 26 | 27 | public HanhChanh() { 28 | super(); 29 | this.phuCap=0; 30 | this.thuong=0; 31 | } 32 | 33 | @Override 34 | public long thucLanh() { 35 | // TODO Auto-generated method stub 36 | return this.getLuongCB()+this.phuCap+this.thuong; 37 | } 38 | 39 | @Override 40 | public long thueThuNhap() { 41 | long thuecn=0; 42 | return (long)(this.thucLanh()<10000000?0 :(this.thucLanh()<20000000?(double)thucLanh()*0.1 :(this.thucLanh()<40000000?(double)thucLanh()*0.15: (double)thucLanh()*0.25))); 43 | 44 | } 45 | /** 46 | * Phuong thuc dung cho viec nhap du lieu doi voi nhan vien phong hanh chinh 47 | */ 48 | public void nhapDl() throws IOException { 49 | super.nhapDl(); 50 | this.phuCap=(long) Solution.inputLong("Nhap phu cap: "); 51 | this.thuong=(long) Solution.inputLong("Nhap thuong: "); 52 | } 53 | public String thongTin() { 54 | return super.thongTin() + String.format(" %11d | %11d | %12d |", this.phuCap,this.thuong,this.thucLanh()); 55 | 56 | } 57 | 58 | 59 | } 60 | -------------------------------------------------------------------------------- /KinhDoanh.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.io.IOException; 3 | 4 | import Entertainmat.Solution; 5 | public class KinhDoanh extends Person{ 6 | private long doanhSo; 7 | 8 | 9 | public long getDoanhSo() { 10 | return doanhSo; 11 | } 12 | public void setDoanhSo(long doanhSo) { 13 | this.doanhSo = doanhSo; 14 | } 15 | public KinhDoanh() { 16 | super(); 17 | this.doanhSo=0; 18 | 19 | } 20 | public long thuongDoanhSo() { 21 | return (long)((double) this.doanhSo*0.3); 22 | } 23 | @Override 24 | public long thucLanh() { 25 | return this.thuongDoanhSo()+this.getLuongCB(); 26 | } 27 | 28 | @Override 29 | public long thueThuNhap() { 30 | // TODO Auto-generated method stub 31 | return (long)(this.thucLanh()<10000000?0 :(this.thucLanh()<20000000?(double)thucLanh()*0.1 :(this.thucLanh()<40000000?(double)thucLanh()*0.15: (double)thucLanh()*0.25))); 32 | 33 | } 34 | public void nhapDl() throws IOException { 35 | super.nhapDl(); 36 | this.doanhSo=(long) Solution.inputLong("Nhap doanh so: "); 37 | 38 | } 39 | public String thongTin() { 40 | return super.thongTin() + String.format(" %12d | %12d |", this.doanhSo,this.thucLanh()); 41 | } 42 | 43 | 44 | } 45 | -------------------------------------------------------------------------------- /MainGT.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.util.ArrayList; 3 | 4 | public class MainGT { 5 | /** 6 | * Bài thu hoạch tuần 8 , bài 3 7 | * pre:Phan Chí Hiếu 8 | * G-mail:hieup3611@gmail.com 9 | * @param args 10 | */ 11 | public static void main(String[] args) { 12 | try { 13 | 14 | String chon =" "; 15 | ArrayList index = new ArrayList(); 16 | do { 17 | System.out.println("********************************************************"); 18 | System.out.println("* CHƯƠNG TRÌNH QUẢN LÍ PHƯƠNG TIỆN GIAO THÔNG *"); 19 | System.out.println("* A - Tìm Phương Tiện Dựa Vào Biển Số *"); 20 | System.out.println("* B - In Danh Sách Các Phương Tiện Đã Đăng Ký *"); 21 | System.out.println("* C - Cho Biết Tổng Số Tiền Phí Đăng Ký Thu Được *"); 22 | System.out.println("* D - Tổng Số Tiền Đóng Bảo Hiểm Thu Được *"); 23 | System.out.println("* E - Thêm Phương Tiện Giao Thông Vào Danh Sách *"); 24 | System.out.println("* F - EXIT PROGRAM *"); 25 | System.out.println("********************************************************"); 26 | chon = Brand.inputString("Chọn Các Tính Năng Trên MENU [A - F] : "); 27 | switch(chon) { 28 | case "A": 29 | if (index.size() > 0) { 30 | System.out.println("Nhập mã sinh viên cần tìm: "); 31 | String id = Brand.inputString(" "); 32 | PhuongTienGiaoThong st = checkPhuongTienGiaoThong(id, index); 33 | if (st != null) { 34 | System.out.println(st.thongTin()); 35 | 36 | } else { 37 | System.out.println("Không tìm thấy mã sinh viên tương ứng"); 38 | } 39 | 40 | } 41 | break; 42 | case "B": 43 | if(index.isEmpty()) 44 | System.out.println("Chưa có phương tiện nào !!."); 45 | 46 | else { 47 | System.out.println("Danh sách các phương tiện đã được nhập"); 48 | System.out.println("-------------------------------------------------------------------------------------------------------------------------------------------------"); 49 | System.out.println("| Biển Số | Họ Tên | Trị Giá | Hãng SX | Ngày DK | Nơi DK | Mức Bảo Hiểm | Phí DK |"); 50 | System.out.println("|------------|---------------------|---------------------|--------------|-----------------|-----------------|-----------------|-----------------|"); 51 | for(PhuongTienGiaoThong i : index) 52 | System.out.println(i.thongTin()); 53 | } 54 | break; 55 | case "C": 56 | System.out.println("Tổng Số Tiền Phí Đăng Kí Thu Được "); 57 | double tienDK=0; 58 | for(PhuongTienGiaoThong i : index) 59 | tienDK+= i.phiDangKy(); 60 | System.out.println(tienDK); 61 | break; 62 | case "D": 63 | System.out.println("Tổng Số Tiền Đóng Bảo Hiểm "); 64 | double tienBH=0; 65 | for(PhuongTienGiaoThong i : index) 66 | tienBH+= i.mucBaoHiem(); 67 | System.out.println(tienBH); 68 | break; 69 | case "E": 70 | int luachon=0; 71 | do { 72 | System.out.println("*************************************************"); 73 | System.out.println("*** NHẬP THÔNG TIN CHO PHƯƠNG TIỆN MỚI ***"); 74 | System.out.println("*** 1. Thêm phương tiện vào danh sách ***"); 75 | System.out.println("*** 2. Back to the main program ***"); 76 | System.out.println("*************************************************"); 77 | luachon=Brand.toInt("Chon cac lua chon sau...[1-2] : "); 78 | switch(luachon) { 79 | case 1: 80 | PhuongTienGiaoThong a = new PhuongTienGiaoThong(); 81 | a.nhapDl(); 82 | index.add(a); 83 | break; 84 | case 2: 85 | break; 86 | default: 87 | System.out.println("Khong co lua chon!!!"); 88 | } 89 | }while(luachon!=2); 90 | case "F": 91 | break; 92 | default: 93 | System.out.println("Nhập sai chức năng trong MENU.Mời bạn nhập lại"); 94 | } 95 | 96 | }while(!chon.equalsIgnoreCase("F")); 97 | System.out.println("Good Bye!!"); 98 | 99 | } catch (Exception e) { 100 | e.printStackTrace(); 101 | } 102 | 103 | } 104 | private static PhuongTienGiaoThong checkPhuongTienGiaoThong(String id,ArrayList index) { 105 | for(var s : index) { 106 | if(s.getBienSo().equalsIgnoreCase(id)) { 107 | return s; 108 | } 109 | } 110 | return null; 111 | 112 | } 113 | } 114 | 115 | 116 | -------------------------------------------------------------------------------- /NhanSuProgram.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.util.ArrayList; 3 | 4 | import Entertainmat.Solution; 5 | public class NhanSuProgram { 6 | public static void main(String[] args) { 7 | try { 8 | /** 9 | * Safely code 10 | * Tạo 2 ArrayList phục vụ truy xuất và Clas Hành Chánh và Kinh Doanh 11 | */ 12 | int chon=0; 13 | ArrayList hanhchanhList = new ArrayList(); 14 | ArrayList kinhdoanhList = new ArrayList(); 15 | do { 16 | 17 | System.out.println("***************************************************************************"); 18 | System.out.println("*** QUAN LY NHAN VIEN ***"); 19 | System.out.println("*** 1.Danh sach nhan vien phong hanh chanh ***"); 20 | System.out.println("*** 2.Danh sach nhan vien phong kinh doanh ***"); 21 | System.out.println("*** 3.Tong so tien luong phong hanh chanh ***"); 22 | System.out.println("*** 4.Tong so tien thuong theo doanh so cua phong KD ***"); 23 | System.out.println("*** 5.Them mot nhan vien moi vao ***"); 24 | System.out.println("*** 6.Ket thuc chuong trinh ***"); 25 | System.out.println("***************************************************************************"); 26 | chon=Solution.toInt("Hay chon chuc nang sau...[1-6]"); 27 | switch(chon) { 28 | case 1://Danh sách sih viên phòng hành chính (foreach) 29 | if(hanhchanhList.isEmpty()) 30 | System.out.println("Chua co nhan vien nao phong hanh chanh."); 31 | 32 | else { 33 | System.out.println("Danh sach sinh vien phong hanh chanh"); 34 | System.out.println("------------------------------------------------------------------------------------------------------------------"); 35 | System.out.println("| Ma NV | Ho Ten | Gioi tinh | So Dt | Luong CB | Phu cap | Thuong | Thuc lanh |"); 36 | System.out.println("|-------|---------------------|-----------|--------------|------------|-------------|-------------|--------------|"); 37 | for(HanhChanh i : hanhchanhList) 38 | System.out.println(i.thongTin()); 39 | } 40 | 41 | break; 42 | case 2://Danh sách nhân viên phòng kinh doanh(foreach) 43 | if(kinhdoanhList.isEmpty()) 44 | System.out.println("Chua co sinh vien phong kinh doanh"); 45 | else { 46 | System.out.println("Danh sach sinh vien phong kinh doanh"); 47 | System.out.println("------------------------------------------|----------------------------------------------------------"); 48 | System.out.println("| Ma NV | Ho Ten | Gioi tinh | So Dt | Luong CB | Doanh So | Thuc lanh |"); 49 | System.out.println("|-------|---------------------|-----------|--------------|------------|--------------|--------------|"); 50 | for(KinhDoanh i : kinhdoanhList) 51 | System.out.println(i.thongTin()); 52 | System.out.println("-----------------------------------------------------------------------------------------------------"); 53 | } 54 | break; 55 | case 3://Tổng số tiền lương phòng hành chánh (foreach) 56 | System.out.println("Tong so tien luong phai tra cho phong Hanh Chanh"); 57 | long tienLuong=0; 58 | for(HanhChanh i : hanhchanhList) 59 | tienLuong+= i.thucLanh(); 60 | System.out.println(tienLuong); 61 | break; 62 | case 4://Tổng số tiền thưởng phòng kinh doanh(foreach) 63 | System.out.println("Tong so tien thuong theo doanh so cua phong kinh doanh"); 64 | long thuong=0; 65 | for(KinhDoanh i :kinhdoanhList) 66 | thuong+= i.thuongDoanhSo(); 67 | System.out.println(thuong); 68 | break; 69 | case 5://Thêm sinh viên vào danh sách 70 | int luachon=0; 71 | do { 72 | System.out.println("***********************************************"); 73 | System.out.println("*** NHAP THONG TIN CHO NHAN VIEN MOI ***"); 74 | System.out.println("*** 1. Phong Hanh Chanh ***"); 75 | System.out.println("*** 2. Phong Kinh Doanh ***"); 76 | System.out.println("*** 3. Back to the main program ***"); 77 | luachon=Solution.toInt("Chon cac lua chon...[1-3]"); 78 | switch(luachon) { 79 | case 1: 80 | HanhChanh a = new HanhChanh(); 81 | a.nhapDl(); 82 | hanhchanhList.add(a); 83 | break; 84 | case 2: 85 | KinhDoanh b = new KinhDoanh(); 86 | b.nhapDl(); 87 | kinhdoanhList.add(b); 88 | case 3: 89 | break; 90 | default: 91 | System.out.println("Khong co lua chon!!!"); 92 | } 93 | }while(luachon!=3); 94 | 95 | case 6: 96 | System.out.println("Bye Bye!!!!!!!"); 97 | break; 98 | default: 99 | System.out.println("Nhap sai chuc nang .Nhap lai!!!!"); 100 | 101 | } 102 | 103 | }while(chon!=6); 104 | System.out.println("Xin Chao Va Hen Gap Lai"); 105 | 106 | } catch (Exception e) { 107 | e.printStackTrace(); 108 | } 109 | } 110 | 111 | 112 | } 113 | -------------------------------------------------------------------------------- /Person.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.io.IOException; 3 | import Entertainmat.Solution; 4 | public abstract class Person { 5 | /** 6 | * Bài Thu Hoạch 8 bài số 4 7 | * Pre: Phan Chí Hiếu 8 | * G-mail:hieup3611@gmail.com 9 | */ 10 | private int maNV; 11 | private String hoTen; 12 | private boolean gioiTinh; 13 | private String soDT; 14 | private long luongCB; 15 | public int getMaNV() { 16 | return maNV; 17 | } 18 | public void setMaNV(int maNV) { 19 | this.maNV = maNV; 20 | } 21 | public String getHoTen() { 22 | return hoTen; 23 | } 24 | public void setHoTen(String hoTen) { 25 | this.hoTen = hoTen; 26 | } 27 | public boolean isGioiTinh() { 28 | return gioiTinh; 29 | } 30 | public void setGioiTinh(boolean gioiTinh) { 31 | this.gioiTinh = gioiTinh; 32 | } 33 | public String getSoDT() { 34 | return soDT; 35 | } 36 | public void setSoDT(String soDT) { 37 | this.soDT = soDT; 38 | } 39 | public long getLuongCB() { 40 | return luongCB; 41 | } 42 | public void setLuongCB(long luongCB) { 43 | this.luongCB = luongCB; 44 | } 45 | /** 46 | * Default constructor 47 | */ 48 | public Person() { 49 | this.maNV=0; 50 | this.hoTen=" "; 51 | this.gioiTinh=true; 52 | this.soDT=" "; 53 | this.luongCB=0; 54 | } 55 | /** 56 | * Phuong thuc dung cho nhap du lieu co ban cho nguoi lao dong 57 | * @throws IOException 58 | */ 59 | public void nhapDl() throws IOException { 60 | this.maNV=Solution.toInt("Nhap ma nhan vien: "); 61 | this.hoTen=Solution.inputString("Nhap ho ten: "); 62 | this.gioiTinh=Solution.inputString("Gioi tinh [Nam-Nu]").equalsIgnoreCase("Nam"); 63 | this.soDT=Solution.inputString("Nhap so dien thoai: "); 64 | this.luongCB=(long) Solution.inputLong("Luong ci ban: "); 65 | } 66 | /** 67 | * Ham tra ve thong tin co ban cua nguoi lao dong 68 | * @return 69 | */ 70 | public String thongTin() { 71 | return String.format("| %5d | %19s | %9s | %12s | %10d |",this.maNV,this.hoTen,(this.gioiTinh?"Nam":"Nu"),this.soDT,this.luongCB); 72 | } 73 | public abstract long thucLanh(); 74 | public abstract long thueThuNhap(); 75 | 76 | } 77 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /PhuongTienGiaoThong.java: -------------------------------------------------------------------------------- 1 | package Buoi6_ThayHuy; 2 | import java.io.IOException; 3 | public class PhuongTienGiaoThong { 4 | /** 5 | * Bài Thu Hoạch Số 8 bài 3 6 | */ 7 | private String bienSo; 8 | private String tenChuxe; 9 | private double triGia; 10 | private String hangSX; 11 | private String ngayDK; 12 | private String noiDangKy; 13 | 14 | public String getBienSo() { 15 | return bienSo; 16 | } 17 | public void setBienSo(String bienSo) { 18 | this.bienSo = bienSo; 19 | } 20 | public String getTenChuxe() { 21 | return tenChuxe; 22 | } 23 | public void setTenChuxe(String tenChuxe) { 24 | this.tenChuxe = tenChuxe; 25 | } 26 | public double getTriGia() { 27 | return triGia; 28 | } 29 | public void setTriGia(double triGia) { 30 | this.triGia = triGia; 31 | } 32 | public String getHangSX() { 33 | return hangSX; 34 | } 35 | public void setHangSX(String hangSX) { 36 | this.hangSX = hangSX; 37 | } 38 | public String getNgayDK() { 39 | return ngayDK; 40 | } 41 | public void setNgayDK(String ngayDK) { 42 | this.ngayDK = ngayDK; 43 | } 44 | public String getNoiDangKy() { 45 | return noiDangKy; 46 | } 47 | public void setNoiDangKy(String noiDangKy) { 48 | this.noiDangKy = noiDangKy; 49 | } 50 | public PhuongTienGiaoThong() { 51 | this.bienSo =" "; 52 | this.tenChuxe =" "; 53 | this.triGia = 0.0; 54 | this.hangSX =" "; 55 | this.ngayDK =" "; 56 | this.noiDangKy =" "; 57 | } 58 | public PhuongTienGiaoThong(PhuongTienGiaoThong b) { 59 | this.setBienSo(b.getBienSo()); 60 | this.setTenChuxe(b.getTenChuxe()); 61 | this.setTriGia(b.getTriGia()); 62 | this.setHangSX(b.getHangSX()); 63 | this.setNgayDK(b.getNgayDK()); 64 | this.setNoiDangKy(b.getNoiDangKy()); 65 | } 66 | public PhuongTienGiaoThong(String bienSo,String tenChuXe,double triGia,String hangSX,String ngayDK,String noiDangKy) { 67 | this.bienSo =bienSo; 68 | this.tenChuxe = tenChuXe; 69 | this.triGia = triGia; 70 | this.hangSX = hangSX; 71 | this.hangSX = hangSX; 72 | this.ngayDK = ngayDK; 73 | this.noiDangKy = noiDangKy; 74 | } 75 | public void nhapDl() throws IOException { 76 | this.bienSo = Brand.inputString("Nhập biển số : "); 77 | this.tenChuxe = Brand.inputString("Nhập tên chủ xe : "); 78 | this.triGia = Brand.inputDouble("Nhập Trị Gía : "); 79 | this.hangSX = Brand.inputString("Nhập hãng sản xuất : "); 80 | this.ngayDK = Brand.inputString("Nhập ngày đăng ký :"); 81 | this.noiDangKy = Brand.inputString("Nhập nơi đăng ký (HN/HCM/DN): "); 82 | 83 | } 84 | public double mucBaoHiem() { 85 | return triGia * 0.12; 86 | } 87 | public double phiDangKy() { 88 | return(noiDangKy.equalsIgnoreCase("HN")? triGia*0.05:(noiDangKy.equalsIgnoreCase("HCM")? triGia* 0.03 : triGia*0.02 )); 89 | } 90 | public String thongTin() { 91 | return String.format("| %10s | %19s | %19f | %12s | %15s | %15s | %15f | %15f |", 92 | this.bienSo,this.tenChuxe,this.triGia,this.hangSX,this.ngayDK,this.noiDangKy,this.mucBaoHiem(),this.phiDangKy()); 93 | } 94 | 95 | 96 | } 97 | --------------------------------------------------------------------------------