Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

32
Contents Lời nói đầu............................................. 2 I. Bài toán............................................. 3 II. Phân tích thiết kế.................................. 3 1. Biểu đồ Use case (Use Case Diagram).................3 2. Xây dựng biểu đồ lớp cơ bản.........................8 3. Xây dựng biều đồ tuần tự..........................10 4. Biểu đổ lớp chi tiết..............................16 III. Thiết kế cơ sở dữ liệu............................19 1. Hàng...............................................19 2. Đăng nhập..........................................20 3. Hàng xuất..........................................20 4. Hàng nhập..........................................20 5. Phiếu xuất.........................................21 6. Phiếu nhập.........................................21 7. Nhà cung cấp.......................................21 8. Khách hàng.........................................21 IV. Chương trình....................................... 22 1. Form đăng nhập.....................................22 2. Form phiếu xuất....................................23 3. Form phiếu nhập....................................23 4. Form tìm thông tin khách hàng......................24 5. Form thông tin hàng hóa............................25 6. Form báo cáo doanh thu.............................26 V. Kết luận............................................ 26 1. Đánh giá công việc.................................26 2. Tài liệu tham khảo.................................27 1

Transcript of Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

Page 1: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

ContentsLời nói đầu......................................................................................................................2

I. Bài toán....................................................................................................................3

II. Phân tích thiết kế........................................................................................................3

1. Biểu đồ Use case (Use Case Diagram)....................................................................3

2. Xây dựng biểu đồ lớp cơ bản..................................................................................8

3. Xây dựng biều đồ tuần tự.....................................................................................10

4. Biểu đổ lớp chi tiết...............................................................................................16

III. Thiết kế cơ sở dữ liệu.............................................................................................19

1. Hàng...................................................................................................................19

2. Đăng nhập...........................................................................................................20

3. Hàng xuất............................................................................................................20

4. Hàng nhập...........................................................................................................20

5. Phiếu xuất...........................................................................................................21

6. Phiếu nhập..........................................................................................................21

7. Nhà cung cấp......................................................................................................21

8. Khách hàng.........................................................................................................21

IV. Chương trình..........................................................................................................22

1. Form đăng nhập..................................................................................................22

2. Form phiếu xuất..................................................................................................23

3. Form phiếu nhập.................................................................................................23

4. Form tìm thông tin khách hàng..........................................................................24

5. Form thông tin hàng hóa.....................................................................................25

6. Form báo cáo doanh thu.....................................................................................26

V. Kết luận....................................................................................................................26

1. Đánh giá công việc................................................................................................26

2. Tài liệu tham khảo.................................................................................................27

1

Page 2: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

Lời nói đầuNgày nay, ngành Công nghệ thông tin phát triển rất nhanh chóng và ứng dụng

ngày càng rộng rãi trong cuộc sống và trong các công tác quản lý của các công ty lớn, bệnh viện trường học, trụ sở ủy ban… đặc biệt là trong công tác quản lý bán hàng. Nó có tác dụng thiết thực đối với đời sống con người, giúp cho người quản lý có cái nhìn tổng thể mà chi tiết thông tin được lưu trữ đầy đủ, cập nhật hàng ngày, nâng cao hiệu quả làm việc, tiết kiệm sức làm việc.

Hiện nay linh kiện máy tính trên thị trường và các thiết bị điện tử là rất nhiều, cùng với rất nhiều chủng loại và nguồn gốc xuất xứ. với niềm đam mê tìm hiếu những vấn đề liên quan đến chuyên ngành học tập Công nghệ thông tin của mình, chúng em đã quyết định chọn đề tài quản lý bán hàng: linh kiện máy tính. Với kiến thức thực tế và qua quá trình tìm hiểu thực trạng của hệ thống bán hàng chúng em đã thu được một số kết quả.

2

Page 3: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

I. Bài toánKhi có yêu cầu nhập thiết bị: nhân viên tiến hành ghi phiếu yêu cầu gồm các

thông tin chi tiết về thiết bị và gửi đến cho nhà cung cấp. Nhà cung cấp sẽ gửi đơn chào hàng chi tiết các thiết bị bao gồm các thông tin như: tên, loại thiết bị, số lượng, nguồn gốc….Qua đơn chào hàng của nhà cung cấp thì cửa hàng sẽ đưa ra đơn đặt hàng và gửi đến cho nhà cung cấp, để đáp ứng nhu cầu nhập thiết bị của cửa hàng nhà cung cấp sẽ chuyển thiết bị cho cửa hàng theo hợp đồng mua,bán hàng hóa và biên lai bàn giao thiết bị (kiêm hóa đơn thanh toán tiền thiết bị).Trước khi nhập hàng vào kho thì cửa hàng sẽ kiểm tra xem đã đủ thiết bị chưa theo biên bản bàn giao thiết bị mà nhà cung cấp gửi đến, đồng thời cửa hàng sẽ ghi các thông tin cần thiết vào sổ chi và sổ kho. Nếu thiết bị nào không đạt yêu cầu thì cửa hàng sẽ trả lại nhà cung cấp, và yêu cầu nha cung cấp cấp lại những thiết bị như hợp đồng đã thỏa thuận.

Khi khách có nhu cầu mua thiết bị, khách hàng xem thông tin hàng hóa, tìm kiếm hàng cần mua. Nếu khách hàng chọn được thiết bị cần mua thì cửa hàng sẽ kiểm tra trong kho, nếu trong kho còn hàng thì nhân viết sẽ viết phiếu bán hàng. Sau đó cửa hàng sẽ tiến hành bàn giao thiết bị cho khách và gửi đến khách hàng hóa đơn thanh toán, phiếu bảo hành và các giấy tờ liên quan, có kèm theo các khuyến mại(nếu có). Khi khách đã thanh toán tiền thiết bị thì cửa hàng sẽ lập biên lai thu tiền cho khách đồng thời sẽ ghi các thông tin cần thiết vào sổ thu và sổ kho.

Để tiện cho việc quản lý hệ thống sẽ lưu trữ và quản lý thông tin về nhà cung cấp và thông tin khách hàng. Có thể sửa hoặc xóa khi cần thiết.

Sau một khoảng thời gian nhất định nhân viên các bộ phận sẽ tổng hợp thông tin mua, bán, và các thông tin khác.

II. Phân tích thiết kế

1. Biểu đồ Use case (Use Case Diagram)Một biểu đồ Use case chỉ ra một số lượng các tác nhân ngoại cảnh và mối liên

kết của chúng đối với Use case mà hệ thống cung cấp. Một Use case là một lời miêu tả của một chức năng mà hệ thống cung cấp. Lời miêu tả Use case thường là một văn bản tài liệu, nhưng kèm theo đó cũng có thể là một biểu đồ hoạt động. Các Use case được miêu tả duy nhất theo hướng nhìn từ ngoài vào của các tác nhân (hành vi của hệ thống theo như sự mong đợi của người sử dụng), không miêu tả chức năng được cung cấp sẽ hoạt động nội bộ bên trong hệ thống ra sao. Các Use case định nghĩa các yêu cầu về mặt chức năng đối với hệ thống.

1.1. Xác định các tác nhân và use case

3

Page 4: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

Dựa vào yêu cầu của bài toán quản lý bán hàng ta thấy các chức năng chình của hệ thống quản lý bán hàng được thực hiện bởi khách hàng và nhân viên. Như vậy chúng ta có hai tác nhân là nhân viên và khách hàng. Trong đó khách hàng có liên quan đến chức năng tra cứu tìm hàng. Còn nhân viên có chức năng quản lý hàng bán, quản lý hàng nhập, quản lý khách hàng, báo cáo thống kê...

1.2. Biểu đồ use case tổng quátKhái quát chức năng chính của hệ thống. Các chức năng này có tính tổng quát

dễ dàng nhìn thấy được trên quan điểm của các tác nhân. Dựa vào yêu cầu của bài toán ta có use case tổng quát như sau:

1.3. Phân rã biểu đồ use case.

Từ use case tổng quát chúng ta chúng ta biểu diễn lại thành dạng phân cấp gọi là

phân rã biểu đồ use case thành các use case con trong đó sử dụng quan hệ

<<include>> để chỉ ra rằng một use case được sử dụng bởi một use case khác.

1.3.1. Use case tìm hàngTác nhân: Khách hàngMô tả: Khách hàng có thể tìm hàng theo tên hàng hoặc theo mã hàng. Nhập

thông tin về mã hàng hoặc tên hàng, hệ thống sẽ tìm kiếm theo yêu cầu và gửi kết quả lại cho khách hàng biết.

4

Page 5: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

1.3.2. Use case quản lý khách hàng

Tác nhân: Nhân viênĐiều kiện: Phải đăng nhập vào hệ thống.Mô tả: Nhân viên sau khi đăng nhập được. Tìm khách hàng theo mã hoặc tên rồi

sau đó có thể tùy chọn các chức năng tương ứng như nhập thông tin khách hàng, xóa thông tin khách hàng, sửa thông tin khách hàng.

1.3.3. Use case quản lý nhà cung cấpTác nhân: nhân viênĐiều kiện: Phải đăng nhập vào hệ thống.Mô tả: Nhân viên sau khi đăng nhập được. Tìm nhà cung cấp theo tên hoặc địa

chỉ rồi sau đó có thể tùy chọn các chức năng tương ứng như nhập thông tin khách hàng, xóa thông tin khách hàng, sửa thông tin khách hàng.

5

Page 6: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

1.3.4. Use case quản lý bán hàngTác nhân: Nhân viênĐiểu kiện: Phải đăng nhập được vào hệ thống.Mô tả: Dựa vào yêu cầu của khách hàng, nhân viên sẽ lập hóa đơn bán hàng,

kiểm tra hàng trong kho xem có còn hay đáp ứng được không (tìm hàng), nếu đáp ứng được thì sẽ giao hàng cho khách hàng và cập nhật thông tin hàng bán vào hệ thống. Nếu hàng trong kho không đáp ứng được thì thông báo cho khách hàng.

1.3.5. Use case quản lý nhập hàngTác nhân: Nhân viênĐiều kiện: Đăng nhập được vào hệ thốngMô tả: Sau một thời gian định kỳ, cửa hàng sẽ nhập thêm hàng mới. Nhân viên

lập hóa đơn yêu cầu nhập hàng gồm thông tin về hàng muốn nhập. Bên nhà cung cấp sẽ cung cấp hàng theo yêu cầu cho cửa hàng. Nhưng trước khi nhận hàng, nhân viên sẽ kiểm tra hàng xem có đáp ứng cả về chất lượng và số lượng không. Nếu không đảm bảo một trong các yêu cầu thì nhân viên sẽ từ chối nhập.

6

Page 7: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

1.3.6. Use case báo cáo thống kêTác nhân: Nhân viênĐiều kiện: Đăng nhập được vào hệ thốngMô tả: Cuổi tháng nhân viên sẽ thống kê hàng bán, hàng nhập, thống kê doanh

thu và báo cáo cho quản lý.

1.3.7. Use case chi tiếtDựa vào các use case đã được phân rã, ta tổng hợp lại tất cả các use case.

7

Page 8: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

2. Xây dựng biểu đồ lớp cơ bản

2.1. Xác định các lớp từ use caseXét từ bài toán quản lý bán hàng và use case chi tiết đã xây dựng ở trên chúng ta

có thể liệt kê các lớp cơ bản như khách hàng, hàng xuất, hàng nhập, phiếu xuất, phiếu

nhập, hàng, nhà cung cấp.

2.2. Xác định các thuộc tính và một số phương thức cơ bản

Từ các lớp xác định ở bước trên ta có thể thấy một số thuộc tính và phương thức

cơ bản như trong lớp khách hàng thì có thuộc tính mã khách hàng, tên khách hàng, địa

chỉ, điện thoại. Lớp hàng xuất có số phiếu xuất, tên hàng, số lượng xuất, đơn giá....

Cụ thể như hình sau:

8

Page 9: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

9

Page 10: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3. Xây dựng biều đồ tuần tựMục đích: biểu diễn tương tác giữa những người dùng và những đối tượng

bên trong hệ thống. Biểu đồ này cho biết các thông điệp được truyền tuần tự

như thế nào theo thời gian. Thứ tự các sự kiện trong biểu đồ tuần tự hoàn toàn tương tự như trong scenario mô tả use case tương ứng.

Biểu diễn: Biểu đồ tuần tự được biểu diễn bởi các đối tượng và message truyền đi giữa các đối tượng đó.

Trong hệ thống quản lý bán hàng, chúng ta lựa chọn biểu đồ tương tác dạng tuần tự để biểu diễn các tương tác giữa các đối tượng. Để xác định rõ các thành phần cần bổ sung trong biểu đồ lớp, trong mỗi biểu đồ tuần tự của hệ thống quản lý bán hàng sẽ thực hiện:

- Xác định rõ kiểu của đối tượng tham gia trong tương tác (ví dụ giao diện,

điều khiển hay thực thể).

- Mỗi biểu đồ tuần tự có thể có ít nhất một lớp giao diện (Form) tương ứng

với chức năng (use case) mà biểu đồ đó mô tả

- Mỗi biểu đồ tuần tự có thể liên quan đến một hoặc nhiều đối tượng thực thể.

Các đối tượng thực thể chính là các đối tượng của các lớp đã được xây dựng trong biểu đồ thiết kế chi tiết. Dưới đây là một số biểu đồ tuần tự cho các chức năng của hệ thống quản lý bán hàng:

10

Page 11: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3.1. Biểu đồ tuần tự cho chức năng đăng nhập.

11

Page 12: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3.2. Biểu đồ tuần tự cho chức năng tìm hàng.

12

Page 13: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3.3 Biểu đồ tuần tự cho chức năng thêm hàng.

13

Page 14: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

4.4 Biểu đồ tuần tự cho chức năng quản lý bán hàng.

14

Page 15: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3.5 Biểu đồ tuần tự cho chức năng quản lý khách hàng.

Quản lý nhà cung cấp tương tự.

15

Page 16: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

3.6. Biểu đồ tuần tự cho chức năng thống kê hàng bán.

4. Biểu đổ lớp chi tiết.4.1. Xây dựng biểu đồ lớp thiết kế chi tiết:

Dựa vào biểu đồ lớp cơ bản đã xây dựng ở trên và các biểu đồ tuần tự, biểu đồ

lớp chi tiết bổ sung nhiều thuộc tính và phương thức hơn so với biểu đồ lớp cơ bản.

16

Page 17: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

4.2 Biểu đồ lớp chi tiết cho chức năng tra cứu hàng

4.3 Biểu đồ lớp chi tiết cho chức năng quản lý khách hàng

4.4 Biểu đồ lớp chi tiết cho chức năng nhà cung cấp

17

Page 18: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

4.5 Biểu đồ lớp chi tiết cho chức năng quản lý hàng

18

Page 19: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

4.6 Biểu đồ lớp chi tiết cho chức năng quản lý bán hàng

III. Thiết kế cơ sở dữ liệu.

1. HàngST

TTên thuộc tính

Kiểu dữ liệu

Not null/null

Khóa chính

Khóa ngoài

1 Mahang Int Not null √2 TenHang string Not null3 GiaBan Int Null4 LoaiHang string Null5 DonViTinh string Null

19

Page 20: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

2. Đăng nhập1 Tên thuộc

tínhKiểu dữ liệu

Not null/null

Khóa chính

Khóa ngoài

2 TênĐN string Not null √3 MatKhau string Not null4 Quyen string Null5 ChucDanh string Null6 HoTen string Null

3. Hàng xuấtSTT Tên thuộc

tínhKiểu dữ liệu

Not null/ null

Khóa chính

Khóa ngoài

1 Mahang Int Not null √2 SoPX Int Not null √3 GiaXuat Int Null4 SoLuong int Null

4. Hàng nhậpSTT Tên thuộc

tínhKiểu dữ liệu

Not null/ null

Khóa chính

Khóa ngoài

1 Mahang int Not null √2 SoPN int Not null √3 GiaNhap int Null4 SLNhap int Null

20

Page 21: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

5. Phiếu xuấtSTT Tên thuộc tính Kiểu dữ

liệuNot

null/nullKhóa

chínhKhóa

ngoài1 SoPX int Not null √2 MaKH int Null √3 NgayXuat datetime Null

6. Phiếu nhậpSTT Tên thuộc

tínhKiểu dữ liệu Not null/

nullKhóa

chínhKhóa

ngoài1 SoPN Int Not null √3 MaNCC Int Null √5 NgayNhap datetime Null

7. Nhà cung cấpST

TTên thuộc tính

Kiểu dữ liệu

Not null/ null

Khóa chính

Khóa ngoài

1 MaNCC Int Not null √2 TenNCC string Not null3 DiaChiNCC string Null4 DienThoai string Null

8. Khách hàngSTT Tên thuộc

tínhKiểu dữ liệu

Not null/ null

Khóa chính

Khóa ngoài

1 MaKH Int Not null √2 TenKH string Not null3 DiaChiKH string Null4 DienThoai string Null

21

Page 22: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

IV. Chương trình.Dựa vào yêu cầu bài toán và phân tích thiết kế ở trên, ta xây dựng chương

trình quản lý bán hàng sử dụng ngôn ngữ Microsoft Visual Studio phiên bản

2008 và dùng Microsoft SQL Server 2005 để lưu trữ dữ liệu.

Chương trình được xây dựng trên mô hình ba lớp sau:

Lớp BussinessLogic: thực hiện các chức năng chính của hệ

thống như thêm, xóa, sửa, cập nhật...

Lớp DataAccess: thực hiện chức năng chính là tạo kết nối

với cơ sở dữ liệu từ Microsoft SQL Server 2005.

Lớp Quan_ly_ban_hang: chứa tất cả các form của chương

trình, gọi đến lớp DataAccess và BussinessLogic. Thực hiện các chức

năng, hiển thị giao diện và cập nhật vào cơ sở dữ liệu.

Sau đây là một số form cơ bản.

1. Form đăng nhập

22

Page 23: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

2. Form phiếu xuất

3. Form phiếu nhập

23

Page 24: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

4. Form tìm thông tin khách hàng

24

Page 25: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

5. Form thông tin hàng hóa

25

Page 26: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

6. Form báo cáo doanh thu

V. Kết luận

1. Đánh giá công việcNhìn chung việc áp dụng công nghệ thông tin vào quản lý bán hàng ở các

công ty đã trở lên rất phổ biến và ngày càng quan trọng, nó đóng góp rất nhiều

cho việc tinh giảm nhân sự và giúp hệ thống bán hàng có thể đạt được hiệu quả

cao nhất. Trong quá trình thực hiện nhóm em đã nêu được những ý chính sau:

• Tác dụng của tin học trong quản lý Bán hàng

• Khảo sát về cách thức tổ chức và quản lý Bán hàng (ở đây là hàng linh

kiện máy tính)

• Phân tích và thiết kế hệ thống Bán hàng

• Thiết kế và xây dựng cơ sở dữ liệu

Đồng thời qua đây chúng em cũng thấy được mối quan hệ giữa các môn

học như: môn Phân tích thiết kế hệ thông, môn cơ sở dữ liệu, lập trình C#...

Từ các kết quả thu được, nhóm chúng em đã mạnh dạn xây dựng một

chương trình quản lý bán hàng trên nền tảng Microsoft Microsoft Visual Studio

phiên bản 2008 kết hợp với Microsoft SQL Server 2005. Do thời gian và kiến

26

Page 27: Bai Tap Lon C# Nhom 3 - Chi - Duc Anh - Hieu - Hoang

thức có hạn nên nhóm em không thể tránh khỏi những thiếu sót. Em rất mong

nhận được sự góp ý của thầy cô để chương trình của chúng em được hoàn thiện

hơn

Em xin chân thành cảm ơn !

2. Tài liệu tham khảoPhân tích thiết kế hệ thống thông tin_Trần Đình Quế.

Phân tích thiết kế hệ thống_Nguyễn Xuân Hải

Phân tích và thiết kế Hệ thống thông tin với UML – TS. Dương Kiều Hoa

– Tôn Thất Hoà An.

Phân tích và thiết kế hướng đối tượng dùng UML – Bộ môn CNPM –

Khoa CNTT – Đại học Bách Khoa TPHCM.

Lập trình cơ bản với visual studio 2005.

Lập trình window form với visual studio 2005.

27