Đề tài Phần mềm quản lý cây xăng Comeco

pdf 69 trang yendo 5032
Bạn đang xem 20 trang mẫu của tài liệu "Đề tài Phần mềm quản lý cây xăng Comeco", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfde_tai_phan_mem_quan_ly_cay_xang_comeco.pdf

Nội dung text: Đề tài Phần mềm quản lý cây xăng Comeco

  1. LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành đến tất cả các Thầy Cô đã giảng dạy em trong suốt thời gian qua. Cảm ơn Thầy Dương Văn Phước – người đã hướng dẫn em thực hiện khóa luận này. Cảm ơn anh Nguyễn Đức Thịnh – người đã hướng dẫn em tìm hiểu nghiệp vụ quản lý việc mua bán ở chi nhánh cây xăng COMECO. Ngoài ra, em xin gửi lời cảm ơn tới Ba Mẹ, bạn bè, các anh chị thân hữu, là những người đã giúp đỡ, động viên em trong suốt thời gian làm khóa luận. Tuy nhiên, do kiến thức còn hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng em vẫn không thể tránh khỏi những thiếu sót. Em mong nhận được sự thông cảm, chỉ bảo của quý Thầy Cô và các bạn. Xin chân thành cảm ơn. Tp.HCM 7/2009 Sinh viên thực hiện Phạm Thanh Tùng Trang 1
  2. ĐỀ CƯƠNG CHI TIẾT Tên Đề Tài: PHẦN MỀM QUẢN LÝ CÂY XĂNG. Giáo viên hướng dẫn: DƯƠNG VĂN PHƯỚC. Thời gian thực hiện: 09/03/2009 đến ngày 21/06/2009. Sinh viên thực hiện: Phạm Thanh Tùng – 206205363. Loại đề tài: Xây dựng ứng dụng. Nội Dung Đề Tài: ( Ghi mô tả tóm tắt nội dung đề tài) Sử dụng ngôn ngữ lập trìnhs C# và hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2005 để xây dựng phần mềm quản lý cây xăng. Nội dung thực hiện: 1. Hệ thống lại kiến thức về ngôn ngữ lập trình C# và Microsoft SQL Server 2005. 2. Khảo sát hiện trạng và mô tả yêu cầu đề tài: Khảo sát: Hiện tại, cửa hàng đang xử dụng bộ công cụ của Microsoft Office 2003 để lưu giữ thông tin các biểu mẫu báo cáo cũng như các báo cáo trong thời gian qua. Về mặt dữ liệu thì vẫn hoàn toàn lưu trữ trên danh bộ, sổ sách của cửa hàng. Mô tả: Với thực tế trên thì việc thống kê, tra cứu, tìm kiếm là vô cùng khó khăn (các công việc hoàn toàn bằng thủ công). Vì thế nhằm quản lý thông tin một cách khoa học hơn – phục vụ cho công tác báo cáo, thống kê chính xác tình hình hoạt động của cửa hàng. Từ đó mới có kế hoạch, mục tiêu cụ thể để phấn đấu Trang 2
  3. nâng cao doanh thu của cửa hàng. a. Yêu cầu chức năng. b. Yêu cầu phi chức năng. 3. Phân tích các yêu cầu. 4. Thiết kế chương trình. 5. Hiện thực chương trình. 6. Viết báo cáo. Kết quả đạt được: 1. Báo cáo viết, trình bày các kết quả đạt được. 2. Chương trình quản lý cây xăng. Trang 3
  4. Kế hoạch thực hiện: Sinh viên Tuần Nội dung thực hiện 1. Nhận mô tả đề tài. 2. Tìm hiểu yêu cầu của đề tài. 1 3. Ôn tập kiến thức về use case: cách nhận biết use Phạm Thanh Tùng (09/03-15/03) case, actor, cách vẽ use case, mô tả use case. 4. Xây dựng đề cương chi tiết. 1. Điều chỉnh lại kết quả tuần 1. 2. Xác định các actor, mục tiêu của từng actor. 2 3. Xác định các use case trong hệ thống. Phạm Thanh Tùng (16/03–2/03) 4. Vẽ sơ đồ use case. 5. Mô tả cho các use case quan trọng. 6. Xây dựng sườn khóa luận. 1. Điều chỉnh lại kết quả tuần 2. 3 2. Mô tả thêm một số use case khác. Phạm Thanh Tùng (23/03-29-03) 3. Bắt đầu viết quyển báo cáo. 1. Điều chỉnh lại kết quả tuần 3. 2. Tìm hiểu Domain Model. 4 3. Xây dựng Domain Model Phạm Thanh Tùng (30/03-05/04) (sơ đồ lớp quan niệm). 4. Viết quyển báo cáo. 1. Điều chỉnh lại kết quả tuần 4. 5 2. Điều chỉnh lại Domain Model và use case. Phạm Thanh Tùng (06/04-12/04) 3. Viết quyển báo cáo. Trang 4
  5. Thiết kế: 1. Tìm hiểu các mẫu GRASP. 6 2. Thiết kế xử lý. Phạm Thanh Tùng (13/04-19/04) 3. Thiết kế giao diện. 4. Thiết kế dữ liệu. 1. Điều chỉnh lại kết quả tuần 6. 7 2. Hoàn chỉnh các thiết kế. Phạm Thanh Tùng (20/04-26/04) 3. Bổ sung vào quyển báo cáo. 8 1. Cài đặt cơ sở dữ liệu. Phạm Thanh Tùng (27/04-03/05) 2. Lập trình cho một số use case quan trọng. 9 Báo cáo giữa kỳ. Phạm Thanh Tùng (04/05-10/04) 10 (11/05-17/05) Thi học kỳ 11 (18/05-24/05) 1. Điều chỉnh lại kết quả tuần 8. 12 2. Lập trình. Phạm Thanh Tùng (25/05-31/05) 3. Bổ sung kết quả vào quyển báo cáo. 1. Điều chỉnh lại kết quả tuần 12. 13 2. Lập trình. Phạm Thanh Tùng (01/06-07/06) 3. Bổ sung kết quả vào quyển báo cáo. 1. Điều chỉnh lại kết quả tuần 13. 14 2. Lập trình. Phạm Thanh Tùng (08/06-14/06) 3. Bổ sung kết quả vào quyển báo cáo Trang 5
  6. 15 1. Điều chỉnh lại kết quả tuần 14. 2. Lập trình. Phạm Thanh Tùng (15/06-21/06) 3. Bổ sung kết quả vào quyển báo cáo 1. Điều chỉnh lại kết quả tuần 15. 16 2. Lập trình. Phạm Thanh Tùng (22/06-28/06) 3. Bổ sung kết quả vào quyển báo cáo 17 Cài đặt thử nghiệm, chỉnh sửa. Phạm Thanh Tùng (29/06-05/07) 1. Nộp báo cáo cho Khoa. 18 2. Báo cáo PowerPoint Phạm Thanh Tùng (06/07-12/07) 3. Chuẩn bị bảo vệ. 19 Bảo vệ chính thức. Phạm Thanh Tùng (22/07-31/07) Xác nhận của GVHD Ngày tháng năm 2009 SV thực hiện Trang 6
  7. MỤC LỤC 1. Chương 1 : Khảo sát hiện trạng 11 1.1 Hiện trạng tin học 12 1.2 Hiện trạng nghiệp vụ 12 2. Chương 2 : Mô tả bài toán và cách giải quyết vấn đề 13 2.1 Mô tả bài toán 14 2.2 Yêu cầu chức năng, yêu cầu phi chức năng 16 2.3 Phương pháp tiếp cận vấn đề 16 3. Chương 3 : Phân tích 18 3.1 Nhận diện các Actor và mục tiêu của từng Actor 19 3.2 Sơ đồ Use Case 19 3.3 Mô tả các Use Case 20 3.4 Sơ đồ Domain Model 36 3.5 Mô tả các lớp trong Domain Model 37 3.6 Sơ đồ tuần tự hệ thống – System Sequence Diagram 42 4. Chương 4 : Thiết kế 45 4.1 Sơ đồ tuần tự - Sequence Diagram. 46 4.2 Sơ đồ lớp – Class Diagram. 48 4.3 Thiết kế kiến trúc ứng dụng 49 4.4 Thiết kế cơ sở dữ liệu. 53 4.5 Thiết kế giao diện. 62 5. Chương 5 : Cài đặt, đánh giá và hướng phát triển 65 5.1 Môi trường cài đặt. 66 5.2 Đánh giá kết quả. 66 5.3 Hướng phát triển. 67 Trang 7
  8. TÓM TẮT KHÓA LUẬN 1. Vấn đề nghiên cứu Chi nhánh cửa hàng trong hệ thống cửa hàng xăng dầu COMECO kinh doanh các mặt hàng xăng dầu với nhiều loại và mẫu mã. Do đó, nhằm phục vụ khách hàng được tốt hơn và thu hút khách hàng nhiều hơn, nay cửa hàng sử dụng phần mềm quản lý các mặt hàng, cũng như các thông tin có liên quan đến cửa hàng, khách hàng, thông tin nhập hàng, xuất hàng, Phạm vi hệ thống: Chương trình xây dựng nhằm mục đích phục vụ công việc quản lý kinh doanh tại một cửa hàng xăng dầu, bao gồm những nghiệp vụ sau:  Quản lý nhập hàng.  Quản lý xuất hàng.  Quản lý mặt hàng – sản phẩm.  Quản lý khách hàng. 2. Phương pháp tiếp cận giải quyết vấn đề. Bài toán được giải quyết theo phương pháp thiết kế lập trình hướng đối tượng bao gồm các bước sau: Khảo sát và phân tích yêu cầu tại chi nhánh cây xăng COMECO. Xây dựng sơ đồ Use case và đặc tả Use case. Xây dựng Domain Model và mô tả thuộc tính các lớp. Xây dựng sơ đồ Sequence Diagram. Xây dựng sơ đồ lớp - Class Diagram. Cài đặt cơ sở dữ liệu. Cài đặt các ứng dụng, lập trình. Đánh giá. Trang 8
  9. 3. Kết quả đạt được. Sau khi hoàn thành khóa luận tốt nghiệp, kết quả đạt được như sau: Báo cáo viết trình bày các kết quả đạt được. Chương trình quản lý chi nhánh cây xăng COMECO. Trang 9
  10. LỜI MỞ ĐẦU Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa được xem là một trong những yếu tố quyết định trong hoạt động của các tổ chức, cũng như của các công ty, nó đóng vai trò hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ. Phần mềm quản lý cây xăng là một phần mềm viết cho chi nhánh công ty COMECO, với mục đích là giúp công ty có thể quản lý thông tin, thống kê, tra cứu một cách tốt nhất, nhanh nhất và chính xác nhất. Công ty sẽ không còn phải đếm và thống kê trên giấy, và gõ lại những báo cáo hàng tháng thông qua Word, Excel nữa. Do đây là phần mềm ứng dụng thực tế, quá trình thực hiện phải theo qui trình của một công ty, và bản thân em là sinh viên chưa có kinh nghiệm nên trong suốt quá trình làm không tránh khỏi những sai sót, rất mong sự hỗ trợ, giúp đỡ của quý Thầy Cô. Sinh viên thực hiện Phạm Thanh Tùng Trang 10
  11. Chương 1 KHẢO SÁT HIỆN TRẠNG Nội dung: 1.1 Hiện trạng tin học. 1.2 Hiện trạng nghiệp vụ. Trang 11
  12. 1.1. Hiện trạng tin học. Hiện tại, công ty được trang bị máy tính với cấu hình (Pentium III, RAM 512MB, ổ cứng 40GB, ), kết nối mạng LAN và Internet ADSL. 1.2. Hiện trạng nghiệp vụ. Trong quá trình thực hiện một thương vụ mua bán, Nhân viên kế toán phải lưu lại trong sổ sách giấy tờ, hóa đơn, khách hàng liên quan đến thương vụ mua bán đó. Cuối ngày và hàng tháng Nhân viên kế toán có trách nhiệm in báo cáo thống kê về hàng hóa, thống kê đã xử lý , . Hầu hết các thông tin trên đều được cập nhật trong sổ sách, và cuối ngày hoặc hàng tháng thì đếm thủ công từng thương vụ mua bán để viết thông kê, báo cáo. Đó là lý do để viết phần mềm quản lý chi nhánh cây xăng COMECO. Trang 12
  13. Chương 2 MÔ TẢ BÀI TOÁN VÀ CÁCH GIẢI QUYẾT VẤN ĐỀ Nội dung: 2.1 Mô tả bài toán. 2.2 Yêu cầu chức năng, yêu cầu phi chức năng. 2.3 Phương pháp tiếp cận giải quyết vấn đề. Trang 13
  14. 2.1 Mô tả bài toán. QUẢN LÝ CÂY XĂNG Chi nhánh cửa hàng trong hệ thống cửa hàng xăng dầu COMECO kinh doanh các mặt hàng xăng dầu với nhiều loại và mẫu mã. Do đó, nhằm phục vụ khách hàng được tốt hơn và thu hút khách hàng nhiều hơn, nay cửa hàng sử dụng phần mềm quản lý các mặt hàng, cũng như các thông tin có liên quan đến cửa hàng, khách hàng, thông tin nhập hàng, xuất hàng, Chương trình xây dựng nhằm mục đích phục vụ công việc quản lý kinh doanh tại một cửa hàng xăng dầu, bao gồm những nghiệp vụ sau:  Quản lý nhập hàng : Mỗi lần nhập hàng ghi nhận thông tin 1 lần nhập xăng dầu của cửa hàng. Khi nhập xăng dầu chỉ có thể nhập được 1 mặt hàng (đối với nhớt thì nhiều mặt hàng) với số lượng, đơn vị tính tương ứng. Trên phiếu nhập có số phiếu nhập, ngày lập phiếu, Nhân viên có thể thêm mới, cập nhật, tra cứu, thông tin phiếu nhập. Xăng dầu được lấy từ tổng công ty hoặc có thể lấy từ các chi nhánh cửa hàng khác trong hệ thống cửa hàng.  Quản lý xuất hàng : Xuất hàng theo yêu cầu, xuất số lượng bán lẻ, hóa đơn trong ngày hoặc có thể xuất cho các chi nhánh cửa hàng khác. Mỗi lần xuất hàng, Nhân viên kế toán ghi nhận thông tin phiếu xuất (số phiếu xuất, mặt hàng, số lượng, đơn giá, thành tiền). Khách hàng đến mua tại cửa hàng sẽ gặp Nhân viên kế toán trao đổi thông tin với khách hàng: Nhân viên kế toán sẽ tiến hành lập hóa đơn cho khách hàng. Trang 14
  15. Mỗi phiếu hóa đơn ghi nhận thông tin một lần bán cho một khách hàng. Mỗi phiếu hóa đơn có số phiếu hóa đơn, ngày lập phiếu, tổng trị giá mặt hàng bán, Trong mỗi phiếu hóa đơn có các mặt hàng được bán, cùng với số lượng và đơn giá bán, đơn vị tính tương ứng. Nhân viên kế toán có thể thêm mới, cập nhật hay tra cứu thông tin hóa đơn xăng dầu. Trong trường hợp công ty, doanh nghiệp có yêu cầu mua hàng với số lượng lớn nhưng không lấy liền cùng một lúc hoặc lấy theo quy định của cửa hàng: a. Lấy theo quy định của cửa hàng (mua phiếu nhiên liệu). Nhân viên kế toán sẽ tiến hành lập hóa đơn cho khách hàng. Nhân viên kế toán sẽ giao phiếu nhiên liệu(số lượng mà khách hàng cần mua) cho khách hàng. Trong trường hợp nhiều công ty, doanh nghiệp có yêu cầu đặt hàng theo định kì, mua với số lượng lớn: Nhân viên kế toán sẽ tiến hành lập hóa đơn cho khách hàng. Nhân viên kế toán sẽ giao phiếu nhiên liệu số lượng mà khách hàng cần mua) cho khách hàng.  Quản lý mặt hàng: Các mặt hàng có những mã số riêng để phân biệt với những mặt hàng khác. Mặt hàng phải có đầy đủ các thông tin như: mã, tên hàng, giá, thông tin, Phần mềm cho phép Nhân viên kế toán thêm mới, cập nhật, xóa, tra cứu thông tin về mặt hàng.  Quản lý khách hàng: Các khách hàng có những mã số riêng để phân biệt với những khách hàng khác. Khách hàng phải có đầy đủ các thông tin như: Tên khách hàng, địa chỉ, mã số thuế, Trang 15
  16. Phần mềm cho phép Nhân viên kế toán thêm mới, cập nhật, xóa, tra cứu thông tin về khách hàng.  Ngoài ra còn có các chức năng báo cáo theo ngày-tháng do Nhân viên kế toán lập. Báo cáo luân chuyển. Báo cáo doanh thu. Báo cáo nhập chứng từ. 2.2 Yêu cầu chức năng, phi chức năng. 2.2.1 Yêu cầu chức năng. Chương trình có các chức năng sau đây: - Cho phép người dùng đăng nhập - đăng xuất hệ thống - đổi mật khẩu. - Cho phép Admin quản lý các loại danh mục. - Cho phép Nhân viên kế toán quản lý xuất - nhập hàng. - Cho phép Nhân viên kế toán quản lý khách hàng - sản phẩm. 2.2.2 Yêu cầu phi chức năng. - Đảm bảo khả năng hoạt động bền vững, sẵn sàng làm việc. - Tốc độ truy xuất dữ liệu phải nhanh và chính xác để đảm bảo sự linh hoạt trong công việc. 2.3 Phương pháp tiếp cận giải quyết vấn đề. Bài toán được giải quyết theo phương pháp Phân tích – Thiết kế - Lập trình hướng đối tượng bao gồm các bước sau: - Khảo sát và phân tích yêu cầu tại chi nhánh công ty COMECO. - Xây dựng sơ đồ Use Case và đặc tả Use Case. - Xây dựng Domain Model và mô tả thuộc tính các lớp. - Xây dựng sơ đồ System Sequence Diagram. - Xây dựng sơ đồ Sequence Diagram. Trang 16
  17. - Xây dựng sơ đồ lớp - Class Diagram. - Cài đặt cơ sở dữ liệu. - Cài đặt các ứng dụng, lập trình. - Đánh giá. Trang 17
  18. Chương 3 PHÂN TÍCH Nội dung: 3.1 Nhận diện các Actor và mục tiêu của từng Actor. 3.2 Sơ đồ Use case. 3.3 Mô tả các Use case. 3.4 Sơ đồ Domain Model. 3.5 Mô tả các lớp trong Domain Model. 3.6 Sơ đồ tuần tự hệ thống – System Sequence Diagram. Trang 18
  19. 3.1. Nhận diện các Actor, mục tiêu của từng Actor. Actor Mục tiêu của từng Actor Người dùng 1. Đăng nhập hệ thống. 2. Đăng xuất hệ thống. 3. Đổi mật khẩu. Admin 1. Quản lý các loại danh mục. 2. Quản trị người dùng. Nhân viên kế toán 1. Quản lý nhập hàng. 2. Quản lý xuất hàng. 3. Quản lý khách hàng. 4. Quản lý hàng hóa. 5. Lập các loại báo cáo - thống kê. 3.2. Sơ đồ Use case Hình 1 : Use case Admin Trang 19
  20. 3.3. Mô tả các Use case 3.3.1 Đăng nhập hệ thống. Use case name : Đăng nhập hệ thống. Actor : Người dùng (Admin hoặc Nhân viên kế toán). Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Không có Post – conditions : Người dùng được hệ thống nhận diện. Main success scenario : 1. Người dùng yêu cầu hệ thống nhận diện. 2. Hệ thống yêu cầu người dùng cung cấp thông tin đăng nhập. 3. Người dùng cung cấp thông tin cho hệ thống. 4. Hệ thống kiểm tra thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu khởi động lại hệ thống. 2. Người dùng khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 3a. Người dùng không cung cấp thông tin hoặc cung cấp thông tin sai. 1. Hệ thống yêu cầu người dùng cung cấp lại thông tin đăng nhập. 2. Người dùng cung cấp lại thông tin đăng nhập. 3b. Người dùng không cung cấp tên đăng nhập hoặc cung cấp tên đăng nhập sai. 1. Hệ thống yêu cầu người dùng cung cấp lại thông tin đăng nhập. 2. Người dùng cung cấp lại thông tin đăng nhập. 3c. Người dùng không cung cấp mật khẩu hoặc cung cấp mật khẩu sai. Trang 20
  21. 1. Hệ thống yêu cầu người dùng cung cấp lại thông tin đăng nhập. 2. Người dùng cung cấp lại thông tin đăng nhập. 4a. Người dùng hủy bỏ thao tác đăng nhập hệ thống. 1. Hệ thống hủy bỏ các thao tác trên hệ thống đang được thực hiện. 4b. Hệ thống kiểm tra thông tin người dùng cung cấp không đúng. 1. Hệ thống sẽ yêu cầu người dùng cung cấp lại thông tin đăng nhập. 2. Người dùng cung cấp lại thông tin đăng nhập. 3.3.2 Đăng xuất hệ thống. Use case name : Đăng xuất hệ thống. Actor : Người dùng ( Admin hoặc Nhân viên kế toán). Level : User-goal. Scope : Hệ thống quản lý cây xăng . Pre-conditions : Người dùng được hệ thống nhận diện. Post-conditions : Người dùng thoát ra khỏi hệ thống thành công. Main success scenario : 1. Người dùng yêu cầu hệ thống thoát. 2. Hệ thống thông báo cho người dùng biết có thật sự muốn thoát. 3. Người dùng thoát khỏi hệ thống. Extensions : 1a. Người dùng hủy bỏ thoát khỏi hệ thống. 1. Hệ thống hủy bỏ thao tác thoát. 2a. Người dùng không thoát khỏi chương trình. 1. Người dùng vẫn được hệ thống nhận diện và sử dụng hệ thống. Trang 21
  22. 3.3.3 Đổi mật khẩu Use case name : Đổi mật khẩu. Actor : Người dùng ( Admin hoặc Nhân viên kế toán). Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Người dùng được hệ thống nhận diện. Post-conditions : Người dùng đổi mật khẩu thành công. Main success scenario : 1. Người dùng yêu cầu hệ thống đổi mật khẩu. 2. Hệ thống yêu cầu người dùng cung cấp mật khẩu mới. 3. Người dùng cung cấp thông tin mật khẩu mới và yêu cầu xác nhận. 4. Hệ thống xác nhận mật khẩu và thông báo kêt quả thành công. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu khởi động lại hệ thống. 2. Người dùng khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 3a. Người dùng không cung cấp thông tin mật khẩu mới . 1. Hệ thống thông báo và yêu cầu người dùng cung cấp mật khẩu mới. 2. Người dùng cung cấp mật khẩu mới cho hệ thống. 3b. Người dùng không xác nhận mật khẩu mới. 1. Hệ thống sẽ không xác nhận mật khẩu mới người dùng cung cấp. 2. Hệ thống thông báo và yêu cầu người dùng xác nhận mật khẩu mới. 3. Người dùng xác nhận mật khẩu mới cung cấp. 3c. Người dùng hủy bỏ đổi mật khẩu. 1. Hệ thống hủy bỏ thao tác đổi mật khẩu. Trang 22
  23. 4a. Hệ thống không thông báo kết quả. 1. Người dùng yêu cầu hệ thống xác nhận mật khẩu mới. 2. Hệ thống xác nhận mật khẩu mới và thông báo kết quả. 4b. Người dùng hủy bỏ đổi mật khẩu. 1. Hệ thống hủy bỏ thao tác đổi mật khẩu. 3.3.4 Quản lý các loại danh mục. Use case name : Quản lý các loại danh mục. Actor : Admin. Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Admin được hệ thống nhận diện. Post-conditions : Admin thêm mới danh mục thành công. Main success scenario : 1. Admin yêu cầu hệ thống quản lý danh mục. 2. Admin thêm mới một danh mục. 3. Hệ thống yêu cầu Admin cung cấp thông tin về danh mục cần thêm. 4. Admin cung cấp thông tin danh mục. 5. Admin yêu cầu hệ thống ghi nhận thông tin. 6. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu Admin khởi động lại hệ thống. 2. Admin khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Admin hủy bỏ thao tác quản lý danh mục. Trang 23
  24. 1. Hệ thống hủy bỏ thao tác quản lý danh mục. 2b. Admin chọn chức năng sửa danh mục. 1. Hệ thống yêu cầu Admin cung cấp thông tin danh mục cần sửa. 2. Admin cung cấp thông tin danh mục cần sửa. 3. Admin sửa thông tin danh mục. 4. Admin yêu cầu hệ thống ghi nhận thông tin. 5. Hệ thống ghi nhận thông tin và thông báo kết quả. 2c. Admin chọn chức năng xóa danh mục. 1. Hệ thống yêu cầu Admin cung cấp thông tin. 2. Admin cung cấp thông tin danh mục cần xóa. 3. Admin xóa thông tin danh mục. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 4a. Admin hủy bỏ thao tác quản lý danh mục. 1. Hệ thống hủy bỏ thao tác quản lý danh mục. 4b. Admin không cung cấp thông tin hoặc cung cấp thông tin danh mục không hợp lệ. 1. Hệ thống yêu cầu Admin cung cấp lại các thông tin về danh mục. 2. Admin cung cấp lại các thông tin về danh mục. 5a. Admin hủy bỏ thao tác quản lý danh mục. 1. Hệ thống hủy bỏ thao tác quản lý danh mục. 6a. Hệ thống không ghi nhận thông tin và không thông báo kết quả. 1. Admin yêu cầu hệ thống ghi nhận thông tin. 2. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.5 Quản trị người dùng. Use case name : Quản trị người dùng. Actor : Admin . Trang 24
  25. Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Admin được hệ thống nhận diện. Post-conditions : Admin thêm mới một tài khoản thành công. Main success scenario : 1. Admin yêu cầu hệ thống quản lý tài khoản người dùng. 2. Admin thêm mới một tài khoản. 3. Hệ thống yêu cầu Admin cung cấp thông tin về tài khoản cần thêm. 4. Admin cung cấp thông tin về tài khoản. 5. Admin yêu cầu hệ thống ghi nhận thông tin. 6. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu Admin khởi động lại hệ thống. 2. Admin khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Admin hủy bỏ thao tác quản lý tài khoản người dùng. 1. Hệ thống hủy bỏ thao tác quản lý tài khoản người dùng. 2b. Admin chọn chức năng sửa tài khoản người dùng. 1. Hệ thống yêu cầu Admin cung cấp thông tin. 2. Admin cung cấp thông tin tài khoản người dùng cần sửa. 3. Admin sửa thông tin tài khoản người dùng. 4. Admin yêu cầu hệ thống ghi nhận thông tin. 5. Hệ thống ghi nhận thông tin và thông báo kết quả. 2c. Admin chọn chức năng xóa tài khoản người dùng. 1. Hệ thống yêu cầu Admin cung cấp thông tin. Trang 25
  26. 2. Admin cung cấp thông tin tài khoản người dùng cần xóa. 3. Admin xóa thông tin tài khoản người dùng. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 4a. Admin hủy bỏ thao tác quản lý tài khoản người dùng. 1. Hệ thống hủy bỏ thao tác quản lý tài khoản người dùng. 4b. Admin không cung cấp thông tin hoặc cung cấp thông tin tài khoản người dùng không hợp lệ. 1. Hệ thống yêu cầu Admin cung cấp lại các thông tin. 2. Admin cung cấp lại các thông tin về tài khoản người dùng. 5a. Admin hủy bỏ thao tác quản lý tài khoản người dùng. 1. Hệ thống hủy bỏ thao tác quản lý tài khoản người dùng. 6a. Hệ thống không ghi nhận thông tin và không thông báo kết quả. 1. Admin yêu cầu hệ thống ghi nhận thông tin. 2. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.6 Quản lý nhập hàng. Use case name : Quản lý nhập hàng. Actor : Nhân viên kế toán . Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Nhân viên kế toán được hệ thống nhận diện. Post-conditions : Nhân viên kế toán nhập hàng thành công. Main success scenario : 1. Nhân viên kế toán yêu cầu hệ thống nhập hàng. 2. Hệ thống yêu cầu nhân viên kế toán chọn hình thức nhập hàng. 3. Nhân viên kế toán chọn nhập hàng và thêm mới phiếu nhập. 4. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin mặt hàng. Trang 26
  27. 5. Nhân viên kế toán cung cấp thông tin các mặt hàng cần nhập. 6. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 7. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu nhân viên kế toán khởi động lại hệ thống. 2. Nhân viên kế toán khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Nhân viên kế toán hủy bỏ thao tác nhập hàng. 1. Hệ thống hủy bỏ thao tác nhập hàng. 3a. Nhân viên kế toán chọn nhập hàng gửi và thêm mới phiếu nhập hàng gửi. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin mặt hàng. 2. Nhân viên kế toán cung cấp thông tin các mặt hàng cần nhập. 3. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 3b. Nhân viên kế toán chọn chức năng sửa phiếu nhập hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin phiếu nhập. 2. Nhân viên kế toán cung cấp thông tin cần sửa. 3. Hệ thống sửa phiếu nhập và thông báo kết quả. 3c. Nhân viên kế toán chọn chức năng xóa phiếu nhập hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin phiếu nhập. 2. Nhân viên kế toán cung cấp thông tin cần xóa. 3. Hệ thống xóa số phiếu nhập và thông báo kết quả. 5a. Nhân viên kế toán hủy bỏ thao tác nhập hàng. 1. Hệ thống hủy bỏ thao tác nhập hàng. Trang 27
  28. 5b. Nhân viên kế toán không cung cấp thông tin loại mặt hàng hoặc cung cấp thông tin nhập không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin nhập. 2. Nhân viên kế toán cung cấp lại thông tin cần nhập. 6a. Nhân viên kế toán hủy bỏ thao tác nhập hàng. 1. Hệ thống hủy bỏ thao tác nhập hàng. 6b. Nhân viên kế toán chọn chức năng in phiếu nhập hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin nhập hàng. 2. Nhân viên kế toán cung cấp thông tin. 3. Hệ thống in phiếu nhập hàng cho nhân viên kế toán. 7a. Hệ thống không ghi nhận thông tin và không thông báo kết quả. 1. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 2. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.7 Quản lý xuất hàng. Use case name : Quản lý xuất hàng. Actor : Nhân viên kế toán . Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Nhân viên kế toán được hệ thống nhận diện. Post-conditions : Nhân viên kế toán xuất hàng thành công. Main success scenario : 1. Nhân viên kế toán yêu cầu hệ thống xuất hàng. 2. Hệ thống yêu cầu nhân viên kế toán chọn hình thức xuất hàng. 3. Nhân viên kế toán chọn xuất hóa đơn và thêm mới hóa đơn. 4. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin mặt hàng. 5. Nhân viên kế toán cung cấp thông tin các mặt hàng cần xuất hóa đơn. Trang 28
  29. 6. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 7. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu nhân viên kế toán khởi động lại hệ thống. 2. Nhân viên kế toán khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Nhân viên kế toán hủy bỏ thao tác xuất hàng. 1. Hệ thống hủy bỏ thao tác xuất hàng. 3a. Nhân viên kế toán chọn xuất hàng gửi và thêm mới phiếu xuất hàng gửi. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin mặt hàng. 2. Nhân viên kế toán cung cấp thông tin các mặt hàng cần xuất. 3. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 3b. Nhân viên kế toán chọn chức năng sửa phiếu xuất hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin phiếu xuất. 2. Nhân viên kế toán cung cấp thông tin cần sửa. 3. Hệ thống sửa phiếu xuất và thông báo kết quả. 3c. Nhân viên kế toán chọn chức năng xóa phiếu xuất hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin phiếu xuất. 2. Nhân viên kế toán cung cấp thông tin cần xóa. 3. Hệ thống xóa số phiếu xuất và thông báo kết quả. 5a. Nhân viên kế toán hủy bỏ thao tác xuất hàng. 1. Hệ thống hủy bỏ thao tác xuất hàng. Trang 29
  30. 5b. Nhân viên kế toán không cung cấp thông tin loại mặt hàng hoặc cung cấp thông tin xuất không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin xuất. 2. Nhân viên kế toán cung cấp lại thông tin cần xuất. 6a. Nhân viên kế toán hủy bỏ thao tác xuất hàng. 1. Hệ thống hủy bỏ thao tác xuất hàng. 6b. Nhân viên kế toán chọn chức năng in phiếu xuất hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin xuất hàng. 2. Nhân viên kế toán cung cấp thông tin. 3. Hệ thống in phiếu xuất hàng cho nhân viên kế toán. 7a. Hệ thống không ghi nhận thông tin và không thông báo kết quả. 3. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.8 Quản lý khách hàng. Use case name : Quản lý khách hàng. Actor : Nhân viên kế toán . Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Nhân viên kế toán được hệ thống nhận diện. Post-conditions : Nhân viên kế toán thêm mới khách hàng thành công. Main success scenario : 1. Nhân viên kế toán yêu cầu hệ thống quản lý khách hàng. 2. Nhân viên kế toán thêm mới khách hàng. 3. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin về khách hàng. 4. Nhân viên kế toán cung cấp thông tin khách hàng. 5. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. Trang 30
  31. 6. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu nhân viên kế toán khởi động lại hệ thống. 2. Nhân viên kế toán khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Nhân viên kế toán hủy bỏ thao tác quản lý khách hàng. 1. Hệ thống hủy bỏ thao tác quản lý khách hàng. 2b. Nhân viên kế toán chọn chức năng sửa khách hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin. 2. Nhân viên kế toán cung cấp thông tin khách hàng cần sửa. 3. Nhân viên kế toán sửa thông tin khách hàng. 4. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 5. Hệ thống ghi nhận thông tin và thông báo kết quả. 2c. Nhân viên kế toán chọn chức năng xóa khách hàng. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin. 2. Nhân viên kế toán cung cấp thông tin khách hàng cần xóa. 3. Nhân viên kế toán xóa thông tin khách hàng. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 3a. Nhân viên kế toán hủy bỏ thao tác quản lý khách hàng. 1. Hệ thống hủy bỏ thao tác quản lý khách hàng. 3b. Nhân viên kế toán không cung cấp thông tin hoặc cung cấp thông tin không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin. 2. Nhân viên kế toán cung cấp lại các thông tin về khách hàng. Trang 31
  32. 4a. Nhân viên kế toán hủy bỏ thao tác quản lý khách hàng. 1. Hệ thống hủy bỏ thao tác quản lý khách hàng. 4b. Nhân viên kế toán không cung cấp thông tin hoặc cung cấp thông tin khách hàng không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin. 2. Nhân viên kế toán cung cấp lại các thông tin về khách hàng. 5a. Nhân viên kế toán hủy bỏ thao tác quản lý khách hàng. 1. Hệ thống hủy bỏ thao tác quản lý khách hàng. 6a. Hệ thống không ghi nhận thông tin và không thông báo kết quả. 1. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 2. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.9 Quản lý hàng hóa. Use case name : Quản lý hàng hóa. Actor : Nhân viên kế toán. Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Nhân viên kế toán được hệ thống nhận diện. Post-conditions : Nhân viên kế toán thêm mới hàng hóa thành công. Main success scenario : 1. Nhân viên kế toán yêu cầu hệ thống quản lý hàng hóa. 2. Nhân viên kế toán thêm mới hàng hóa. 3. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin về hàng hóa. 4. Nhân viên kế toán cung cấp thông tin hàng hóa. 5. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 6. Hệ thống ghi nhận thông tin và thông báo kết quả. Extensions : Trang 32
  33. *a. Hệ thống bị treo hoặc bị dừng đột ngột. 1. Hệ thống thông báo, yêu cầu nhân viên kế toán khởi động lại hệ thống. 2. Nhân viên kế toán khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 2a. Nhân viên kế toán hủy bỏ thao tác quản lý hàng hóa. 1. Hệ thống hủy bỏ thao tác quản lý hàng hóa. 2b. Nhân viên kế toán chọn chức năng sửa hàng hóa. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin. 2. Nhân viên kế toán cung cấp thông tin hàng hóa cần sửa. 3. Nhân viên kế toán sửa thông tin hàng hóa. 4. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 5. Hệ thống ghi nhận thông tin và thông báo kết quả. 2c. Nhân viên kế toán chọn chức năng xóa hàng hóa. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp thông tin. 2. Nhân viên kế toán cung cấp thông tin hàng hóa cần xóa. 3. Nhân viên kế toán xóa thông tin hàng hóa. 4. Hệ thống ghi nhận thông tin và thông báo kết quả. 3a. Nhân viên kế toán hủy bỏ thao tác quản lý hàng hóa. 1. Hệ thống hủy bỏ thao tác quản lý hàng hóa. 3b. Nhân viên kế toán không cung cấp thông tin hoặc cung cấp thông tin không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin. 2. Nhân viên kế toán cung cấp lại các thông tin về hàng hóa. 4a. Nhân viên kế toán hủy bỏ thao tác quản lý hàng hóa. 1. Hệ thống hủy bỏ thao tác quản lý hàng hóa. Trang 33
  34. 4b. Nhân viên kế toán không cung cấp thông tin hàng hóa hoặc cung cấp thông tin hàng hóa không hợp lệ. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại các thông tin. 2. Nhân viên kế toán cung cấp lại các thông tin về hàng hóa. 5a. Nhân viên kế toán hủy bỏ thao tác quản lý hàng hóa. 1. Hệ thống hủy bỏ thao tác quản lý hàng hóa. 6a. Hệ thống không ghi nhận thông tin và không thông báo kết quả . 1. Nhân viên kế toán yêu cầu hệ thống ghi nhận thông tin. 2. Hệ thống ghi nhận thông tin và thông báo kết quả. 3.3.10 Lập các loại báo cáo – thống kê Use case name : Lập các loại báo cáo – thống kê. Actor : Nhân viên kế toán. Level : User-goal. Scope : Hệ thống quản lý cây xăng. Pre-conditions : Nhân viên kế toán được hệ thống nhận diện. Post-conditions : Nhân viên kế toán báo cáo –thống kê thành công. Main success scenario : 1. Nhân viên kế toán yêu cầu hệ thống báo cáo – thống kê. 2. Hệ thống yêu cầu nhân viên kế toán chọn loại báo cáo – thống kê. 3. Nhân viên kế toán chọn loại báo cáo – thống kê. 4. Hệ thống yêu cầu nhân viên kế toán cung cấp ngày báo cáo – thống kê. 5. Nhân viên kế toán cung cấp thông tin ngày báo cáo. 6. Hệ thống báo cáo – thống kê cho nhân viên kế toán. Extensions : *a. Hệ thống bị treo hoặc bị dừng đột ngột. Trang 34
  35. 1. Hệ thống thông báo, yêu cầu nhân viên kế toán khởi động lại hệ thống. 2. Nhân viên kế toán khởi động lại hệ thống. 3. Hệ thống hủy bỏ thao tác trước đó và hệ thống trở lại hoạt động bình thường. 3a. Nhân viên kế toán hủy bỏ thao tác báo cáo – thống kê. 1. Hệ thống hủy bỏ thao tác báo cáo – thống kê. 5a. Nhân viên kế toán hủy bỏ thao tác báo cáo – thống kê. 1. Hệ thống hủy bỏ thao tác báo cáo – thống kê. 5b. Nhân viên kế toán không cung cấp thông tin ngày báo cáo – thống kê. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp lại ngày báo cáo. 2. Nhân viên kế toán cung cấp lại ngày báo cáo – thống kê. 6a. Hệ thống không báo cáo – thống kê và không thông báo kết quả. 1. Nhân viên kế toán yêu cầu hệ thống báo cáo – thống kê. 2. Hệ thống báo cáo – thống kê cho nhân viên kế toán. 6b. Nhân viên kế toán chọn chức năng in báo cáo luân – thống kê. 1. Hệ thống yêu cầu nhân viên kế toán cung cấp ngày báo cáo. 2. Nhân viên kế toán cung cấp ngày báo cáo cần in. 3. Hệ thống in báo cáo – thống kê cho nhân viên kế toán. Trang 35
  36. 3.4. Sơ đồ Domain model Hình 2 : Sơ đồ Domain Model Trang 36
  37. 3.5. Mô tả các lớp trong Domain Model: Tên lớp: KhachHang STT Tên cột Mô tả 1. MaKhachHang Mã khách hàng 2. TenKhachHang Tên loại hóa đơn 3. DiaChi Địa chỉ 4. DienThoai Điện thoại 5. MaSoThue Mã số thuế 6. SoTaiKhoan Số tài khoản 7. TenNganHang Tên ngân hàng 8. GhiChu Ghi chú Tên lớp: LoaiKhachHang STT Tên cột Mô tả 1. MaLoaiKhachHang Mã loại khách hàng 2. TenLoaiKhachHang Tên loại khách hàng 3. GhiChu Ghi chú Tên lớp: HinhThucMuaBan STT Tên cột Mô tả 1. MaHinhThuc Mã hình thức mua bán 2. TenHinhThuc Tên hình thức mua bán 3. GhiChu Ghi chú Trang 37
  38. Tên lớp: HinhThucThanhToan STT Tên cột Mô tả 1. MaHinhThuc Mã hình thức thanh toán 2. TenHinhThuc Tên hình thức thanh toán 3. GhiChu Ghi chú Tên lớp: HoaDon STT Tên cột Mô tả 1. IDHD ID hóa đơn 2. SoHoaDon Số hóa đơn 3. KyHieuHD Ký hiệu hóa đơn 4. SoChungTu Số chứng từ 5. NgayLapHD Ngày lập hóa đơn 6. NgayBaoCaoHD Ngày báo cáo hóa đơn 7. TongTienKoVAT Tổng tiền hàng chưa có thuế của hóa đơn 8. TongTienVAT Tổng tiền thuế VAT của hóa đơn 9. TongTienPhiXangDau Tổng tiền phí xăng dầu vận chuyển 10. TongTienHD Tổng thành tiền của hóa đơn 11. TrangThai Cho biết hóa đơn hủy hay không 12. GhiChu Ghi chú Tên lớp: ChiTietHoaDon STT Tên cột Mô tả 1. SoLuongHoaDonBan Số lượng 1 sản phẩm trong hóa đơn 2. ThanhTien Thành tiền của sản phẩm Trang 38
  39. Tên lớp: PhieuNhapHang STT Tên cột Mô tả 1. IDHD ID hóa đơn 2. SoPhieuNhap Số phiếu nhập 3. SoChungTu Số chứng từ 4. KyHieuPhieuNhap Ký hiệu phiếu nhập 5. NgayNhap Ngày nhập 6. NgayBaoCao Ngày báo cáo 7. TrangThai Cho biết hóa đơn hủy hay không 8. GhiChu Ghi chú Tên lớp: ChiTietPhieuNhapHang STT Tên cột Mô tả 1. SoLuong Số lượng hàng trong hóa đơn Tên lớp: HinhThucNhap STT Tên cột Mô tả 1. MaHinhThuc Mã hình thức nhập 2. TenHinhThuc Tên hình thức nhập 3. GhiChu Ghi chú Trang 39
  40. Tên lớp: HeThongCuaHang STT Tên cột Mô tả 1. MaCuaHang Mã cửa hàng trong hệ thống 2. TenCuaHang Tên cửa hàng trong hệ thống 3. TenTruongCuaHang Tên người quản lý cửa hàng 4. DiaChi Địa chỉ cửa hàng 5. DienThoai Điện thoại cửa hàng 6. GhiChu Ghi chú Tên lớp: PhieuTraHang STT Tên cột Mô tả 1. IDHD ID hóa đơn 2. SoPhieuTraHang Số phiếu trả hàng 3. SoChungTu Số chứng từ 4. KyHieuPhieuTraHang Ký hiệu phiếu trả hàng 5. NgayTraHang Ngày trả hàng 6. NgayBaoCao Ngày báo cáo 7. TrangThai Cho biết hóa đơn hủy hay không 8. GhiChu Ghi chú Tên lớp: ChiTietPhieuTraHang STT Tên cột Mô tả 1. SoLuong Số lượng hàng trong hóa đơn Trang 40
  41. Tên lớp: SanPham STT Tên cột Mô tả 1. MaNhapLieuSP Mã nhập liệu của sản phẩm 2. TenSanPham Tên sản phẩm 3. DonViTinh Đơn vị tính 4. MoTa Mô tả 5. ThueSuatVAT Thuế suất VAT 6. DonGiaBan Đơn giá bán 7. PhiXangDau Phí xăng dầu vận chuyển 8. GhiChu Ghi chú Tên lớp: LoaiHangHoa STT Tên cột Mô tả 1. MaLoai Mã loại hàng hóa 2. TenLoai Tên loại hàng hóa 3. GhiChu Ghi chú Trang 41
  42. 3.6. Sơ đồ tuần tự hệ thống – System Sequence Diagram 3.6.1 Quản lý nhập hàng Hình 3 : Sơ đồ tuần tự hệ thống - Chức năng thêm mới phiếu nhập hàng 3.6.2 Quản lý xuất hàng Hình 4 : Sơ đồ tuần tự hệ thống - Chức năng thêm mới hóa đơn Trang 42
  43. 3.6.3 Tra cứu thông tin nhập hàng Hình 5 : Sơ đồ tuần tự hệ thống - Chức năng tra cứu thông tin nhập hàng 3.6.4 Tra cứu thông tin xuất hàng Hình 6 : Sơ đồ tuần tự hệ thống - Chức năng tra cứu thông tin xuất hàng Trang 43
  44. 3.6.5 Lập báo cáo thống kê Hình 7 : Sơ đồ tuần tự hệ thống - Chức năng lập báo cáo thống kê Trang 44
  45. Chương 4 THIẾT KẾ Nội dung: 4.1 Sơ đồ tuần tự - Sequence Diagram. 4.2 Sơ đồ lớp – Class Diagram. 4.3 Thiết kế kiến trúc ứng dụng. 4.4 Thiết kế cơ sở dữ liệu. 4.5 Thiết kế giao diện. Trang 45
  46. 4.1. Sơ đồ tuần tự - Sequence Diagram. 4.1.1. Thêm mới phiếu nhập hàng Hình 8 : Sơ đồ tuần tự - Chức năng thêm mới phiếu nhập hàng Hình 9 : Sơ đồ tuần tự - Chức năng thêm mới chi tiết phiếu nhập Trang 46
  47. 4.1.2. Thêm mới hóa đơn Hình 10 : Sơ đồ tuần tự - Chức năng thêm mới hóa đơn Hình 11 : Sơ đồ tuần tự - Chức năng thêm mới chi tiết hóa đơn Trang 47
  48. 4.2. Sơ đồ lớp – Class Diagram. Hình 12 : Sơ đồ lớp – Class Diagram Trang 48
  49. 4.3. Thiết kế kiến trúc – ứng dụng 4.2.1 Thêm mới phiếu nhập hàng. Nhấn Trang 49
  50. 4.2.2 Thêm mới chi tiết phiếu nhập hàng. Nhấn True/False ThemCTPhieuNhap QuanLyCX BUS_NhapHang DTO_ChiTietPhieuNhap ThemCTPhieuNhap(IDHD, IDHD,SoPhieuNhap,SP, ThemCTPhieuNhap(IDHD, IDHD,SoPhieuNhap,SP DTO_ChiTietPhieuNhap SoPhieuNhap,SP, ) True/False SoPhieuNhap,SP, ) Obj (IDHD,SoPhieuNhap,SP, ) True/False Obj DAO_ChiTietPhieuNhap ThemCTPhieuNhap(obj) Trang 50
  51. 4.2.3 Thêm mới hóa đơn. Nhấn Trang 51
  52. 4.2.4 Thêm mới chi tiết hóa đơn. Nhấn Trang 52
  53. 4.4. Thiết kế cơ sở dữ liệu 4.4.1. Sơ đồ cơ sở dữ liệu quan hệ. Hình 14 : Sơ đồ cơ sở dữ liệu quan hệ Trang 53
  54. 4.4.2. Mô tả các bảng dữ liệu. Tên bảng: KhachHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaKhachHang nvarchar 10 2. TenKhachHang nvarchar 50 3. DiaChi nvarchar 50 4. DienThoai interger 5. SoTaiKhoan nvarchar 50 6. TenNganHang nvarchar 50 Khóa ngoại(tham 7. MaLoaiKhachHang nvarchar 10 chiếu đến bảng LoaiKhachHang) 8. MaSoThue nvarchar 50 Khóa chính 9. GhiChu nvarchar 50 Tên bảng: LoaiKhachHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaLoaiKhachHang nvarchar 10 Khóa chính 2. TenLoaiKhachHang nvarchar 50 3. DiaChi nvarchar 50 Trang 54
  55. Tên bảng: HoaDon STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDHD nvarchar 10 Khóa chính 2. SoHoaDon nvarchar 10 3. KyHieuHD nvarchar 10 4. SoChungTu nvarchar 10 5. NgayLapHD datetime 6. NgayBaoCaoHD datetime 7. GhiChu nvarchar 10 Khóa ngoại(tham 8. MaCuaHangBan nvarchar 10 chiếu đến bảng HeThongCuaHang) Khóa ngoại(tham 9. MaHinhThucMuaBan nvarchar 10 chiếu đến bảng HinhThucMuaBan) Khóa ngoại(tham 10. MaHinhThucThanhToan nvarchar 10 chiếu đến bảng HinhThucThanhToan) Khóa ngoại(tham 11. MaSoThue nvarchar 50 chiếu đến bảng KhachHang) 12. TongTienKoVAT float 13. TongTienVAT float 14. TongTienHD float 15. TongTienPhiXangDau float 16. MaTrangThai nvarchar 10 Trang 55
  56. Tên bảng: HinhThucThanhToan STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaHinhThucThanhToan nvarchar 10 Khóa chính 2. TenHinhThucThanhToan nvarchar 50 3. GhiChu nvarchar 50 Tên bảng: HinhThucMuaBan STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaHinhThucMuaBan nvarchar 10 Khóa chính 2. TenHinhThucMuaBan nvarchar 50 3. GhiChu nvarchar 50 Tên bảng: ChiTietHoaDon STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDHD nvarchar 10 Khóa chính 2. MaNhapLieu nvarchar 10 Khóa chính 3. SoHoaDon nvarchar 10 4. SoLuongHDBan float 5. ThanhTien float 6. DonGia float 7. DonViTinh nvarchar 10 8. TenSanPham nvarchar 50 Trang 56
  57. Tên bảng: SanPham STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaNhapLieu nvarchar 10 Khóa chính 2. TenSanPham nvarchar 50 3. DonViTinh nvarchar 10 4. MoTa nvarchar 50 5. ThueSuatVAT float 6. DonGiaBan float 7. GhiChu nvarchar 10 Khóa ngoại(tham 8. MaLoaiHangHoa nvarchar 10 chiếu đến bảng LoaiHangHoa) 9. PhiXangDau float 50 Tên bảng: LoaiHangHoa STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaLoai nvarchar 10 Khóa chính 2. TenLoai nvarchar 50 3. GhiChu nvarchar 50 Trang 57
  58. Tên bảng: PhieuNhapHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDHD nvarchar 10 Khóa chính 2. SoPhieuNhap nvarchar 10 3. SoChungTu nvarchar 10 4. KyHieuPhieuNhap nvarchar 10 5. NgayNhap datetime 10 6. NgayBaoCaoNhap datetime 10 7. GhiChu nvarchar 50 Khóa ngoại(tham 8. MaCuaHang nvarchar 10 chiếu đến bảng HeThongCuaHang) Khóa ngoại(tham 9. MaHinhThucNhap nvarchar 10 chiếu đến bảng HinhThucNhap) Khóa ngoại(tham 10. MaCuaHangNhapVe nvarchar 10 chiếu đến bảng HeThongCuaHang) 11. MaTrangThai nvarchar 10 Trang 58
  59. Tên bảng: ChiTietPhieuNhap STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDHD nvarchar 10 Khóa chính 2. MaNhapLieu nvarchar 10 Khóa chính 3. SoPhieuNhap nvarchar 10 4. DonViTinh nvarchar 10 5. SoLuong float 6. TenSanPham nvarchar 50 Tên bảng: HeThongCuaHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaCuaHang nvarchar 10 Khóa chính 2. TenCuaHang nvarchar 50 3. TenCuaHangTruong nvarchar 50 4. DiaChiCuaHang nvarchar 50 5. DienThoai interger 6. GhiChu nvarchar 50 Trang 59
  60. Tên bảng: PhieuTraHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDHD nvarchar 10 Khóa chính 2. SoPhieuTraHang nvarchar 10 3. SoChungTu nvarchar 10 4. KyHieuPhieuTraHang nvarchar 10 5. NgayTraHang datetime 10 6. NgayBaoCao datetime 10 7. GhiChu nvarchar 50 Khóa ngoại(tham 8. MaCuaHang nvarchar 10 chiếu đến bảng HeThongCuaHang) Khóa ngoại(tham 9. MaCuaHangTra nvarchar 10 chiếu đến bảng HeThongCuaHang) 10. MaTrangThai nvarchar 10 Tên bảng: ChiTietPhieuTraHang STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 7. IDHD nvarchar 10 Khóa chính 8. MaNhapLieu nvarchar 10 Khóa chính 9. SoPhieuTraHang nvarchar 10 10. DonViTinh nvarchar 10 11. SoLuong float 12. TenSanPham nvarchar 50 Trang 60
  61. Tên bảng: TaiKhoanDangNhap STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. IDND nvarchar 10 Khóa chính 2. TenDangNhap nvarchar 50 3. MatKhau nvarchar 50 4. TenNguoiDung nvarchar 50 5. SoCMND interger Khóa ngoại(tham 6. MaQuyen nvarchar 10 chiếu đến bảng QuyenHan) 7. TrangThai nvarchar 10 Tên bảng: QuyenHan STT Tên cột Kiểu dữ liệu Kích thước Ràng buộc 1. MaQuyen nvarchar 10 Khóa chính 2. TenQuyen nvarchar 50 3. GhiChu nvarchar 50 Trang 61
  62. 4.5. Thiết kế giao diện. Hình 15 : Giao diện lúc khởi động chương trình Hình 16 : Giao diện quản lý các hóa đơn Trang 62
  63. Hình 17 : Giao diện hóa đơn Hình 18 : Giao diện quản lý các phiếu nhập Trang 63
  64. Hình 19 : Giao diện phiếu nhập hàng Hình 20 : Giao diện quản lý sản phẩm Hình 21 : Giao diện quản lý khách hàng Trang 64
  65. Chương 5 CÀI ĐẶT, ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN Nội dung: 5.1 Môi trường cài đặt. 5.2 Đánh giá kết quả. 5.3 Hướng phát triển. Trang 65
  66. 5.1 Môi trường cài đặt. Khóa luận “Quản lý cây xăng” được xây dựng dựa trên các kiến thức cơ bản về nghiệp vụ quản lý kết hợp với công nghệ hiện có trong ngôn ngữ. Công nghệ sử dụng: .Net Framework 2.0. Ngôn ngữ lập trình: C# 2005. Lưu trữ dữ liệu: SQL Server 2005. 5.2 Đánh giá kết quả. 5.2.1. Kết quả đạt được. Trong khóa luận này, vận dụng các kiến thức căn bản đã được học về ngôn ngữ lập trình C#, SQL Server 2005 cùng các nghiệp vụ cơ bản của việc quản lý hồ sơ điều tra tội phạm hình sự, chúng em đã xây dựng được chương trình quản lý cây xăng, chương trình có thể đáp ứng được các yêu cầu cơ bản sau:  Quản lý nhập hàng, xuất hàng, khách hàng, sản phẩm, quản trị người dùng.  Tra cứu thông tin hóa đơn, phiếu nhập. 5.2.2. Việc chưa làm được. Mặc dù rất cố gắng, nhưng do kiến thức còn hạn hẹp nên khóa luận không tránh khỏi những thiếu sót và hạn chế:  Tra cứu thông tin sản phẩm, khách hàng, tài khoản người dùng.  Lập báo cáo – thống kê theo ngày.  Chưa bắt lỗi hoàn thiện quản trị người dùng Trang 66
  67. 5.3 Hướng phát triển. Trong thời gian sắp tới, chúng em sẽ cố gắng khắc phục những hạn chế:  Tra cứu thông tin sản phẩm, khách hàng, tài khoản người dùng.  Lập báo cáo – thống kê theo ngày.  Bắt lỗi hoàn thiện quản trị người dùng Trang 67
  68. TÀI LIỆU THAM KHẢO [1]. Dương Quang Thiện, Lập trình báo cáo dùng Crystal Report .Net và C#, NXB Tổng hợp Tp HCM, Năm 2006. [2]. Phạm Hữu Khang, Lập trình hướng đối tượng, NXB Lao động - xã hội, Năm 2008. [3]. Nguyễn Gia Tuấn Anh, Bài tập và bài giải tham khảo SQL Server 7.0, NXB Thanh niên, Năm 2003. [4]. www.congdongcviet.com [5]. www.msdnvietnam.net [6]. www.w3schools.com [7]. www.diendantinhoc.com Trang 68
  69. KẾT LUẬN Em xin gửi đến tất cả các Thầy cô, các bạn – những người đã tận tình giúp đỡ em trong suốt thời gian làm đề tài về mặt chuyên môn cũng như sự giúp đỡ chân thành về mặt tinh thần lời cảm ơn sâu sắc. Để hoàn thành đề tài này, em nhận được rất nhiều sự góp ý từ phía các thầy cô, đặc biệt là Thầy Dương Văn Phước đã hỗ trợ em trong suốt quá trình làm đề tài này. Ngoài ra, em xin gửi lời cảm ơn chân thành đến anh Thịnh, đã nhiệt tình giúp đỡ em trong việc tìm hiểu nghiệp vụ quản lý tại chi nhánh cây xăng COMECO. Em chân thành ghi nhận tất cả những sự giúp đỡ này với lòng biết ơn sâu sắc nhất. Tuy đã có rất nhiều cố gắng nhưng chắc chắn đề tài của em không thể tránh khỏi những thiếu sót, rất mong nhận được từ phía thầy cô và các bạn sự góp ý cũng như sự thông cảm để cho chương trình của em ngày càng hoàn thiện hơn. Sinh viên thực hiện. Phạm Thanh Tùng Trang 69