Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 113 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
113
Dung lượng
24,01 MB
Nội dung
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT NAM ĐỊNH KHOA CÔNG NGHỆ THÔNG TIN Đề tài : Quản lý bán sách cửa hàng sách Giáo Viên Hướng Dẫn : Đoàn Tuấn Nam Họ Và Tên: Nguyễn Tài Ngọc Lớp : DS-CNTT10 Đề tài quản lý bán sách cửa hang sách Có thể nói rằng, khoảng 100 năm trở lại năm tháng khoa học cơng nghệ, trí ṭ lồi người khơng ngừng nâng lên tầm cao , thành tựu khoa học phát minh hàng ngày ,hàng nhằm phục vụ cho nghiên cứu tương lai Không nằm ngồi nhịp vận động thời đại , Cơng Nghệ Thông Tin phát triển vũ bão với hàng loạt tiện ích phục vụ ngày hiệu cho sống Máy tính điện tử hiện khơng cịn hàng xa xỉ mà ngày trở thành cơng cụ làm việc giải trí đắc lực của người.Mặt khác, đất nước ta đường cơng nghiệp hóa , hiện đại hóa Tin học hóa ngành vấn đề cấp bách Bất kỳ ngành nghề đòi hỏi yêu cầu định , tin học không áp dụng đại trà mà quan trọng phải đáp ứng yêu cầu vốn đa dạng người dùng Để thực hiện điều việc xây dựng phần mềm quản lý phù hợp với thực tiễn quan trọng thách thức làm phần mềm Ngày nay, thời đại lĩnh vực Công Nghệ Thơng Tin bùng nổ tồn cầu quốc gia giới cố gắng áp dụng tin học vào để hiện đại hố quy trình sản xuất kinh doanh nhằm đạt hiệu kinh tế cao nhất.Công Nghệ Phần Mềm chuyên ngành quan tâm nhiều khoa học máy tính Hiện nay, với phát triển khoa học công nghệ, đặc biệt công nghệ thông tin, nên linh kiện máy vi tính ngày tăng giá thành ngày rẻ Mặt khác, nhờ vào công nghệ hiện đại, đời sống người lúc thú vị Một số người ln muốn có nhà vài vật dụng hiện đại : máy vi tính, tivi, tủ lạnh, laptop, … Nhà kinh doanh muốn đáp ứng nhu cầu khách hàng (nhanh chóng, tiện lợi xác) vừa giảm bớt chi phí thuê nhân lực Ngày nay, máy vi tính đời, quản lý họ trở nên dễ dàng hơn, tốn cơng sức hơn, tiết kiệm thời gian Đề tài quản lý bán sách cửa hang sách Mục lục Giới thiệu mô hình lớp C# Giới thiệu Lợi mơ hình lớp .4 Chi tiết lớp .5 Mô tả : .7 Mục đích, yêu cầu : Phân tích CSDL, ràng buộc : 10 Cài đăt chương trình 13 Kết luân 110 Đề tài quản lý bán sách cửa hang sách Giới thiệu mơ hình lớp C# Giới thiệu Gồm lớp, là: • GUI Layer: Lớp lớp hiển thị giao diện chức để người dùng cuối sử dụng • Business (BUS) Layer: Đây lớp nhận yêu cầu từ lớp GUI truy xuất lên lớp Data để lấy thơng tin trả GUI • Data Access Layer: Lớp lớp để truy xuất với CSDL, lớp làm việc với database • (Ko cần thiết) DTO Layer: Lớp phụ thôi, lớp định nghĩa table database bạn, định nghĩa cột để ta gán data query lấy liệu Các bạn hiểu nơm na dạng ORM (Object Relation Mapping) Đây cách hoạt động mơ hình lớp: Đề tài quản lý bán sách cửa hang sách Lợi mô hình lớp • Việc phân chia thành lớp giúp cho code tường minh Nhờ vào việc chia lớp đảm nhận chức khác riêng biệt giao diện, xử lý, truy vấn thay để tất lại chỗ Nhằm giảm kết dính • Dễ bảo trì phân chia, thành phần hệ thống dễ thay đổi Việc thay đổi cô lập lớp, ảnh hưởng đến lớp gần mà khơng ảnh hưởng đến chương trình • Dễ phát triển, tái sử dụng: muốn thêm chức việc lập trình theo mơ hình dễ dàng có chuẩn để tuân theo Và việc sử dụng lại có thay đổi hai mơi trường ( Winform sang Webfrom ) việc thay đổi lại lớp GUI • Dễ bàn giao Nếu người theo quy chuẩn định sẵn, cơng việc bàn giao, tương tác với dễ dàng tiết kiệm nhiều thời gian • Dễ phân phối khối lượng cơng việc Mỗi nhóm, phận nhận nhiệm vụ mơ hình lớp Việc phân chia rõ ràng giúp lập trình viên kiểm sốt khối lượng cơng việc Đề tài quản lý bán sách cửa hang sách Chi tiết lớp 3.1 Presentation Layer (GUI) Có hai thành phần sau với tác vụ cụ thể : • UI Components : gồm thành phần tạo nên giao diện ứng dụng (GUI) Chúng chịu trách nhiệm thu nhận hiển thị liệu cho người dùng… Ví dụ : textbox, button, combobox, … • UI Process Components : thành phần chịu trách nhiệm quản lý trình chuyển đổi UI… Ví dụ : Sắp xếp q trình kiểm tra thơng tin khách hàng: Hiển thị hình tra cứu ID Hiển thị hình thơng tin chi tiết khách hàng tương ứng Hiển thị hình liên lạc với khách hàng 3.2 Bussiness Layer (BLL) Lớp gồm thành phần: • Service Interface : thành phần giao diện lập trình mà lớp cung cấp cho lớp Presentation sử dụng • Bussiness Workflows : chịu trách nhiệm xác định điều phối quy trình nghiệp vụ gồm nhiều bước kéo dài Những quy trình phải xếp thực theo thứ tự chính xác • Ví dụ : Thực mua đơn hàng tiki qua nhiều bước : kiểm tra gói hàng cịn khơng?, tính tổng chi phí, cho phép giao dịch xếp việc giao hàng Bussiness Components : chịu trách nhiệm kiểm tra quy tắc nghiệp vụ, ràng buộc logic thực công việc Các thành phần thực dịch vụ mà Service Interface cung cấp Business Workflows sử dụng Đề tài quản lý bán sách cửa hang sách • Ví dụ : Tiếp tục ví dụ Bạn cần Bussiness Component để kiểm tra gói hàng có khả dụng khơng ? hay component để tính tổng chi phí,… • Bussiness Entities: thường sử dụng Data Transfer Objects ( DTO ) Bạn sử dụng để truyền liệu lớp (Presentation Data Layer) Chúng thường cấu trúc liệu ( DataSets, XML,… ) hay lớp đối tượng tùy chỉnh • Ví dụ : tạo class Student lưu trữ liệu tên, ngày sinh, ID, lớp 3.3 Data Layer (DAL) • Data Access Logic Components : chịu trách nhiệm lưu trữ truy xuất liệu từ nguồn liệu (Data Sources) XML, file system,… Hơn tạo thuận lợi cho việc dễ cấu hình bảo trì • Service Agents : giúp bạn gọi tương tác với dịch vụ từ bên cách dễ dàng đơn giản Đề tài quản lý bán sách cửa hang sách Mô tả : Một thư viện cần quản lý việc đăng ký, mượn trả sách bạn đọc thư viện Sau phần mô tả theo nghiệp vụ hàng ngày thư viện: Thủ thư gọi sách đầu sách (DAUSACH) Mỗi đầu sách có mã số gọi mã đầu sách (madausach) để phân biệt với đầu sách khác Các đầu sách có tựa (TUASACH) có mã tựa sách(matuasach) khác để phân biệt với tựa sách khác, chúng dịch nhiều thứ tiếng (ngonngu) khác đóng thành bìa (bia) khác có tóm tắt nội dung (NDtomtat) sách (có thể câu hay vài trang) Mỗi tựa sách thuộc thể loại (THELOAI).Mỗi tựa sách tác giả (TACGIA) Mỗi đầu sách có nhiều (CUONSACH) ứng với đầu sách Khi bạn đọc muốn biết nội dung sách nào, thủ thư xem phần tóm tắt tựa sách trả lời bạn đọc Để trở thành độc giả (DOCGIA)của thư viện, bạn đọc phải đăng ký cung cấp thông tin cá nhân họ tên,ngày sinh,giới tính địa điện thoại Thủ thư cung cấp cho bạn đọc đọc giả, có mã số thẻ mã số bạn đọc để phân biệt bạn đọc khác (madocgia) Thẻ có giá trị phụ thuộc vào ngày đăng kí ngà hết hạn mà thủ thư nhập vào hệ thống Một tháng trước ngày hết hạn thẻ, thủ thư thông báo cho bạn đọc biết để đến đăng kí lại Mỗi đọc giả mượn (MUON) vịng năm mượn khơng q 10 Trả sách: Độc giả cung cấp mã số cần thiết Khi độc giả trả sách thủ thư cập nhật thơng tin cách xóa thơng tin mượn trước Phát sinh báo cáo thống kê : (A_B khoảng cách ngày cần thống kê) Danh sách đọc giả đăng kí từ ngày A đến ngày B Danh sach đọc giả trễ hạn Chi tiết phiếu mượn Tra cứu Nhân viên tra cứu thơng tin như: doc giả, mượn-trả sach, tác giả,thể loại… Người quản lý sử dụng phần mềm để thực hiện chức sau: Quản lý sách: thêm, xóa, sửa thơng tin sách Quản lý độc giả: thêm, xóa, sửa thơng tin độc giả Lập thẻ độc giả Lập phiếu mượn sách Lập phiếu trả sách Tìm kiếm sách Đề tài quản lý bán sách cửa hang sách Thống kê sách In đọc giả In danh mục sách In tác già, thể loại, nhà xuất In chi tiết mượn sách Muc̣ đich, ́ yêu câu ̀ : 1.1 Mục đích: Mục đích đề tài khảo sát phân tích thiết kế chương trình quản lý sách thư viện để hiểu biết phục vụ cho việc mượn trả sách, quản lý độc giả thống kê báo cáo thư viện cho có hiệu 1.2 Yêu cầu: Cần phải hiểu biết rõ nắm nghiệp vụ việc quản lý thư viện từ đến khảo sát, phân tích hệ thống quản lý thư viện theo yêu cầu, cuối phải thiết kế chương trình với chức rõ bước phân tích hệ thống 1.3 Yêu cầu chức năng: 1.3.1 Yêu cầu lưu trữ: Lưu trữ thông tin độc giả, sách ,nhà xuất bản, thể loại,thông tin mượn sách đọc giả 1.3.2 Yêu cầu tra cứu: Tra cứu thông tin đọc giả,thông tin sách mượn, nhà xuất bản, thể loại, tác giả… 1.3.3 Yêu cầu nghiệp vụ: STT YÊU CẦU Lập thẻ độc giả Nhập thêm đọc giả Đề tài quản lý bán sách cửa hang sách 8 10 11 12 13 14 15 Tra cứu đọc giả Nhập thêm sách Tra cứu sách Lập phiếu mượn Tra cứu phiếu mượn Nhận trả sách Nhập thêm nhà xuất Tra cứu nhà xuất Nhập thêm thể loại Tra cứu thể loại Nhập thêm tác giả Tra cứu tác giả Thống kê Đọc giả trả sách trễ hạn Danh sách đọc giả đăng kí Chi tiết phiếu muợn 1.4 Yêu cầu phi chức năng: 1.4.1 Tốc độ Chương trình Load lên không nhiều thời gian, tốc độ tra cứu thông tin phải nhanh 1.4.2 Khối lượng lưu trữ Phần mềm phải gọn nhẹ, không chiếm nhiều dung lượng ổ cứng 1.4.3 An toàn, bảo mật Dễ sử dụng , đảm bảo chất lượng, chống người khác xâm nhập người chủ sở hữu Đề tài quản lý bán sách cửa hang sách /// /// cap nhât sách /// ///mã cuốn sách ///tên cuốn sách ///mã đầu sách ///tình trạng void CapNhatSach(string MaCuonSach, string TenCuonSach, string MaDauSach, string TinhTrang) { CuonSachBLL cls = newCuonSachBLL(MaCuonSach, TenCuonSach, MaDauSach, TinhTrang); int kq = cls.CapNhat(); switch (kq) { case 0: { MessageBox.Show("Câp Nhât Thành Công", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Information); HienThiSach(); break; } case 1: { MessageBox.Show("Câp Nhât Thất Bại", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Information); break; } case 2: { Đề tài quản lý bán sách cửa hang sách 98 MessageBox.Show("Không Có Mã cuốn sách", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtMaSachDMS.Focus(); break; } case 3: { MessageBox.Show("Không Có Mã đầu sach`", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } case 4: { MessageBox.Show("sách được mượn không thể câp nhât.!!", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } } } privatevoid btnCapNhatDMS_Click(object sender, EventArgs e) { if (txtMaSachDMS.Text.Trim() == "") { MessageBox.Show("Chưa Nhâp Mã ćn Sách", "Thư viện HOA HỜNG", MessageBoxButtons.OK, MessageBoxIcon.Error); txtMaSachDMS.Focus(); return; } if (txtTenSachDMS.Text.Trim() == "") { MessageBox.Show("Chưa Nhâp Tên sách", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Error); txtTenSachDMS.Focus(); return; } if (cboMaDauSachDMS.Text.Trim() == "") { MessageBox.Show("Chưa Nhâp mã đầu sách", "Thư viện HOA HỒNG", MessageBoxButtons.OK, MessageBoxIcon.Error); cboMaDauSachDMS.Focus(); return; } string TinhTrang = (radDaMuon.Checked) ? "Đã Mượn" : "Chưa Mượn"; CapNhatSach(txtMaSachDMS.Text.Trim(), txtTenSachDMS.Text.Trim(), cboMaDauSachDMS.SelectedValue.ToString(), TinhTrang); } • Tra cứu: thơng tin tra cứu hiển thị lên listview (liệt kê radanh sach gần giống voi yêu cầu tra cưu) Đề tài quản lý bán sách cửa hang sách 99 /// /// Kiểm tra xem có những nội dung nào cần tra cứu /// ///mã cuốn sách ///tên cuốn sách ///mã đầu sách ///tình trạng Đề tài quản lý bán sách cửa hang sách 100 /// bool KiemTra(string MaCuonSach, string TenCuonSach, string MaDauSach, bool TinhTrang) { bool bolMaCuonSach = false, bolTenCuonSach = false, bolMaDauSach = false; if (txtMaSachDMS.Text.Trim() != "") { bolMaCuonSach = MaCuonSach.ToLower().Contains(txtMaSachDMS.Text.ToLower()) ? true : false; } if (txtTenSachDMS.Text.Trim() != "") { bolTenCuonSach = TenCuonSach.ToLower().Contains(txtTenSachDMS.Text.ToLower()) ? true : false; } if (cboMaDauSachDMS.SelectedValue.ToString() != "") { bolMaDauSach = MaDauSach.ToLower().Contains(cboMaDauSachDMS.SelectedValue.ToString().ToLower()) ? true : false; } if (bolMaCuonSach || bolTenCuonSach || bolMaDauSach || TinhTrang) returntrue; returnfalse; } /// /// hàm tra cứu /// void TraCuu() { DataTable dt = newCuonSachBLL().truyXuatDuLieuBang_CuonSach(); if (dt.Rows.Count > 0) { lwvDanhMucSach.Items.Clear(); int i = 1; foreach (DataRow dr in dt.Rows) { if (KiemTra(dr["MaCuonSach"].ToString(), dr["TenCuonSach"].ToString(), dr["MaDauSach"].ToString(), (bool)dr["TinhTrang"])) { ListViewItem li = lwvDanhMucSach.Items.Add(i.ToString()); li.SubItems.Add(dr["TenCuonSach"].ToString()); li.SubItems.Add(dr["MaDauSach"].ToString()); li.SubItems.Add(GetTenTheLoai(GetMaTheLoai(GetMaTuaSach(dr["MaDauSach"].ToString())))); li.SubItems.Add(GetTacGia(GetMaTacGia(GetMaTuaSach(dr["MaDauSach"].ToString())))); string tinhtrang = ((bool)dr["TinhTrang"]) ? "Đã Mượn" : "Chưa Mượn"; li.SubItems.Add(tinhtrang); } lwvDanhMucSach.Tag = dr["MaCuonSach"].ToString(); i++; } } } Đề tài quản lý bán sách cửa hang sách 101 1.18 THƠNG ́ KÊ • Giao diện tab thống kê: 1.19 MENU Gồm phần : hệ thống, chức năng, thơng tin • Hệ thống: gồm , trợ giúp: Đề tài quản lý bán sách cửa hang sách 102 o Khi nhấn nút thoát: o Trợ giúp: Đề tài quản lý bán sách cửa hang sách 103 • Chức năng:khi muốn hiển thị thơng tin click vào (các tab report) • Thông tin: o Menu thông tin gồm: Nhân viên, thư viện Đề tài quản lý bán sách cửa hang sách 104 o Thư viên: click vào thư viện hiện thị form : 1.20 REPORT(trong menu) Khi muốn in nội dung menu nhấp vào hiện thi: • In đọc giả Đề tài quản lý bán sách cửa hang sách 105 • In tác giả Đề tài quản lý bán sách cửa hang sách 106 • In loại sách Đề tài quản lý bán sách cửa hang sách 107 • In nhà xuất Đề tài quản lý bán sách cửa hang sách 108 • Chi tiết mượn sách Đề tài quản lý bán sách cửa hang sách 109 DocGiaBLL objDocgia = newDocGiaBLL(); privatevoid crystalReportViewer1_Load(object sender, EventArgs e) { DataTable tbDocgia = objDocgia.truyXuatDuLieuBang_DocGia(); CrystalReport1 obj = newCrystalReport1(); obj.SetDataSource(tbDocgia); crystalReportViewer1.ReportSource = obj; crystalReportViewer1.Refresh(); } Kêt́ luân ̣ 1.21 Nhân ̣ xet́ đề taì 1.21.1 Ưu điểm Giao diện thân thiện, dễ sử dụng, xác thực với yêu cầu thực tế Ý tưởng chương trình tốt Dễ bảo trì phần mềm hay thêm thay đổi số chức chương trình Hiển thơng thơng báo chi tiết, cụ thể chương trình có vấn đề hay người dùng nhập sai liệu Giảm thiểu nhân lực, chi phí thời gian cho cơng việc Kiểm sốt tình trang kho sách để nhanh chóng xử lí vấn đề kịp thời Đề tài quản lý bán sách cửa hang sách 110 1.21.2 Nhược điểm Hệ thống chưa hoàn thành hết yêu cầu chức Việc bẫy lỗi chưa thật chặt chẽ Cơ sở liệu chưa tốt để phù hợp vói yêu cầu đặt Chưa hiểu rõ yêu cầu nghiệp vụ khơng dành nhiều thời gian để phân tích u cầu nghiệp vụ Những xử lí lam ̀ 1.22 Sử dung menustrip tabcontrol giúp người dùng linh động công viêc Mỗi tab chức điều chi tết, hiển thị thơng tin đầy đủ Có thông báo chi tiết để người dùng dễ dàng xử lí cơng việc Mỗi thơng tin có thêm, sửa, xóa ,hỗ trợ tra cứu cho người dùng dễ tìm thơng tin Tốc độ phần mềm tương đối nhanh Có thể tra cứu dồn (ví dụ vưà tên, họ,…) Hỗ trợ report cho người dùng Các nút xử lí ẩn hiện để hỗ trợ người dùng Vân ́ đề chưa lam ̀ so với yêu câu ̀ ban đâu ̀ 1.23 Chưa xử lí tab Thơng kê Chưa tra cứu tốt vấn đề chữ tiếng việt, thông tin thuộc kiểu datetime Trong tab Mượn – trả sách chưa xử lí tốt vấn đề ngày mượn, ngày trả Tra cứu đọc giả,khi chọn tra cứu giới tính thơng tin khác khơng tra cứu Chưa xử li tốt tình trang mượn sách quan hệ tab Danh mục sách mượn trả sách Chưa xử lí form In Danh Mục Sách Không lưu mượn ngày trả được, lưu ngày trả cập nhật Khi tra cứu hiển thị danh sach, khơng thể click vào danh danh load trở lại text Hướng phat́ triên ̉ 1.24 Khắc phục vấn đề chưa làm so với yêu cầu ban đầu Xử lí code để tốc độ phần mềm nhanh Tìm hiểu rõ yêu cầu nghiệp vụ, để phân tích thiết kế tốt Tạo form đăng nhập để đăng nhập hệ thống theo nhân viên tạo tính an tồn liêu cho hệ thống Quản lí thơng tin nhân viên Làm cho phần mềm xác thực, ứng dụng vào thực tế Tạo database SQL để chưa nhiều liêu đảm bảo an toàn Đề tài quản lý bán sách cửa hang sách 111 1.25 Tham khaỏ Slide giảng C# 1,2 demo giảng viên Trần Thị Anh Thi Slide giảng công nghệ phần mềm giảng viên Lê Ngoc Tiến diendan.congdongcviet.com Đề tài quản lý bán sách cửa hang sách 112