BÀI 1: PHÁT BIỂU BÀI TOÁN Phát biểu : Công việc quản lý kinh doanh thuốc tại cửa hàng thuốc là vô cùng cần thiết khi có rất nhiều thuốc cần được ghi nhận và cập nhật thông tin mỗi ngày n
Trang 1ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Sinh viên thực hiện: Nguyễn Văn Hào – 2110A05
Lê Văn Sáng – 2110A05
Nguyễn Nghiêm Tâm – 2110A05 Trần Nhật Việt – 2210A05
<NHÓM 17>
Đề bài: Quản lý kinh doanh cửa hàng thuốc
BÁO CÁO BÀI TẬP LỚN MÔN: KỸ THUẬT LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Giảng viên hướng dẫn: Ths.Trịnh Thị Xuân
1
Trang 2Hà Nội – <2023 >
Mục lục
I Xác đ nh và mô t bài toán 3 ị ả
1 Phát bi u bài toán ể 3
2 M c tiêu ụ 3
II Xác đ nh s đôồ l p c a bài toán ị ơ ớ ủ 4
1 Các l p đ ớ ượ c cài đ t: ặ 4
2 S đôồ quan h ơ ệ 5
III Mô t thu t toán – các thao tác cầồn x lý ả ậ ử 6
1 Các ch c năng chính ứ 6
2 Các thao tác cầồn x lý ử 7
IV Code 14
KI M TH - L P B TES Ể Ử Ậ Ộ 26
Xầy d ng b d li u Input ự ộ ữ ệ 26
M t sôố kêốt qu khi ch y ộ ả ạ 27
PHÂN CÔNG VÀ KẾ HOẠCHT HỰC HIỆN
ĐÁNH GIÁ KẾT QUẢ
GHI CHÚ
Nguyễn Văn Hào Xác định và mô tả bài toán, code và
kiểm thử
2
Trang 3Lê Văn Sáng Code và kiểm thử, viết báo cáoNguyễn Nghiêm Tâm Xác định và mô tả bài toán, code và
kiểm thửTrần Nhật Việt Code và kiểm thử, viết báo cáo
3
Trang 4BÀI 1: PHÁT BIỂU BÀI TOÁN
Phát biểu :
Công việc quản lý kinh doanh thuốc tại cửa hàng thuốc là vô cùng cần thiếtkhi có rất nhiều thuốc cần được ghi nhận và cập nhật thông tin mỗi ngày như:
Mã thuốc, tên thuốc, xuất xứ, số lượng, đơn giá Trong khi đó, ta cũng phải quản
lý thông tin của khách hàng: Họ tên, địa chỉ, số điện thoại Đồng thời quản lýhóa đơn bán hàng: Mã hóa đơn, tên nhân viên, số mặt hàng, ngày lập và danhsách các sản phẩm đã mua của hoá đơn để kiểm tra hoạt động buôn bán vàdoanh thu mỗi ngày Việc tạo ra một chương trình hay phần mềm hộ trỡ bánhàng giúp tăng hiệu quả hoạt động kinh doanh nói chung và việc bán thuốc tạicửa hàng thuốc nói riêng
M c tiêu ụ
Giúp cho việc quản lý sản phẩm và quản lý hoạt động bán hàng chính xác,nhanh chóng và hiệu quả
Lợi ích:
Giúp tiết kiệm thời gian và nhân lực
Dữ liệu luôn mang tính nhất quán, được thay đổi và cập nhật thường xuyên
Hỗ trợ tra cứu và lập báo cáo nhanh chóng, chính xác
Trang 51 XÁC ĐỊNH SƠ ĐỒ LỚP CỦA BÀI TOÁN
Thuộc tính: makh, cmnd, hoten, diachi, sdt
Phương thức: khởi tạo, nhapKH, hienKH
Trang 62, Sơ đồ quan hệ
6
Trang 72 MÔ TẢ THUẬT TOÁN – THAO TÁC
Các ch c năng chính ứ
Khởi tạo các loại mặt hàng, khách hàng và hoá đơnNhập dữ liệu và Ghi thông tin hóa đơn vào FileĐọc File và Hiện dữ liệu hóa đơn
Thêm dữ liệu hóa đơn
Xóa dữ liệu hóa đơn
Tìm kiếm theo mã hóa đơn
Sắp xếp theo mã hóa đơn
Tính tổng tiền các hóa đơn
7
Trang 8Mô tả chi tiết các thao tác thực hiện như thế nào thông qua sơ đồ
1 Thao tác nhập thông tin hóa đơn
2.Thao tác hiện thông tin hóa đơn
8
Trang 93.Thao tác tìm kiếm theo mã hóa đơn
9
Trang 104.Thao tác tính tổng tiền của các hóa đơn
10
Trang 115.Thao tác thêm hóa đơn
11
Trang 126.Thao tác xóa hóa đơn theo mã hóa đơn
12
Trang 137.Thao tác sắp xếp tăng dần theo mã hóa đơn
13
Trang 148.Thao tác ghi danh sách hóa đơn vào Fille
9.Thao tác hiện danh sach hóa đơn từ File
14
Trang 15public class THUOC implements Serializable {
private String mathuoc;
Trang 16public String getNcc() {
System.out.print("Gia ban:");
16
Trang 17public class KHACHHANG implements Serializable {
private String ma;
private String hoten;
private String sdt;
private String diachi;
public KHACHHANG(String ma, String hoten, String sdt, String diachi) {super();
Trang 18System.out.print("Ten khach hang:");setHoten(sc.nextLine());
System.out.print("SDT khach hang:");setSdt(sc.nextLine());
System.out.print("Dia chi khach hang:");setDiachi(sc.nextLine());
18
Trang 19public void hienKH()
{
System.out.println("Ma khach hang :"+getMa());
System.out.println("Ten khach hang:"+getHoten());
System.out.println("SDT khach hang:"+getSdt());
private String mahd, ngaylap,tennv;
private int somh;
Trang 20public void nhap() {
Scanner sc = new Scanner(System.in);
System.out.print("Nhap ma hoa don: "); mahd=sc.nextLine();System.out.print("Ngay lap: "); ngaylap=sc.nextLine();
System.out.print("Ten nhan vien: "); tennv=sc.nextLine();
20
Trang 21THUOC thuoc = new THUOC();
System.out.println("\nNhap mat hang thu "+(i+1));
thuoc.nhapSP();
dsthuoc.add(thuoc);
}
}
public void hien() {
System.out.println("\nMa hoa don: "+mahd);
System.out.println("Ngay lap: "+ngaylap);
System.out.println("Ten nhan vien: "+tennv);
super.hienKH();
System.out.println("\nSo mat hang: "+somh);
System.out.println("Danh sach mat hang: ");
System.out.printf("%-13s|%-20s|%-20s|%-10s|%-10s\n","Ma sanpham","Ma nha cung cap","Ten san pham","So luong","Gia ban");
Trang 22return tong;
}
@Override
public int compareTo(HOADON o) {
// TODO Auto-generated method stub
Trang 23if(n<=0) throw new Exception(); /*số hóa đơn phải >0*/break;
System.out.println("Nhap hoa don thu "+(i+1));
HOADON hd = new HOADON();
hd.nhap();
array.add(hd);
}
}
public void hiends() {
System.out.println("\nDanh sach hoa don:");
Trang 24public void tinhtong() {
public void them() {
HOADON hd = new HOADON();
Trang 25FileOutputStream fout = new FileOutputStream("C:\\Users\\LESANG\\DSHD.txt");
ObjectOutputStream out = new ObjectOutputStream(fout);
public void DocFile() throws Exception {
FileInputStream fin = new FileInputStream("C:\\Users\\LESANG\\DSHD.txt");
ObjectInputStream in = new ObjectInputStream(fin);
Trang 26Class main
package com.mycompany.btl;
import java.util.Scanner;
public class BTL {
static Scanner sc = new Scanner(System.in);
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
DSHD ds = new DSHD();
while(true) Menu(ds);
}
// Menu điều khiển chương trình
private static void Menu(DSHD ds) throws Exception {
int c;
println("\n -Menu -");
println("1-Nhap danh sach hoa don.");
println("2-Them tung hoa don.");
println("3-Hien DSHD.");
println("4-Tim kiem hoa don theo ma.");
println("5-Xoa hoa don theo ma.");
println("6-Tong tien tat ca cac hoa don.");
println("7-Sap xep theo tong tien.");
Trang 27case 1: ds.nhapds(); break;
case 2: ds.them(); break;
case 3: ds.hiends(); break;
case 4: ds.timkiem(); break;
case 5: ds.xoa(); break;
case 6: ds.tinhtong(); break;
case 7: ds.sapxep(); break;
case 8: ds.GhiFile(); break;
case 9: ds.DocFile(); break;
case 0: println("Chuong trinh ket thuc!"); System.exit(0);
LaHD003 8/3/2023 Nguyễn Lê Tâm 2031 Trần Thị Lan 0868465616 Gia
LaiHD004 20/4/2023 Trần Nhật Việt 2059 Lê Khả Tú 0981431475 Than
hHóa27
Trang 28Tên sản phẩm
HD004 SP8 DILUK Que test
covid
Một số kết quả khi chạy
- Nhập hóa đơn:
28
Trang 31- Thêm hóa đơn:
31
Trang 32- Hiển thị danh sách:
32
Trang 34- Tìm kiếm:
34
Trang 35- Xóa:
35
Trang 37- Tổng tiền các hóa đơn:
- Sắp xếp theo tổng tiền:
37
Trang 38- Ghi File:
38
Trang 39- Đọc File:
- Kết thúc:
39