Đề tài Tìm hiểu và xây dựng dịch vụ thương mại điện tử

Khi thêm mới phải kiểm tra những sốthứtựmặt hàng trong cùng danh mục gốc bịxóa thì bổsung vào những sốthứtựtrống đó. Nếu không thì thêm mới sốthứtựmặt hàng mới trong danh mục gốc đó Lưu ý: Mỗi mặt hàng thuộc vềmột danh mục (gốc hay không gốc). Nếu danh mục mặt hàng thuộc vềkhông phải là danh mục gốc thì phải xác định danh mục gốc của danh mục mà danh mục đó thuộc về.

pdf153 trang | Chia sẻ: haianh_nguyen | Lượt xem: 1170 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu và xây dựng dịch vụ thương mại điện tử, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
thời điểm tạo đơn đặt hàng trước thời gian hiện tại là 12 giờ thì sẽ không được chỉnh sửa đơn đặt hàng. QĐ-9: Tại một thời điểm bất kì, khách hàng chỉ tồn tại tối đa 1 đơn đặt hàng có thể được chỉnh sửa. QĐ-10: Tại một thời điểm bất kì, một mặt hàng chỉ có tối đa 1 chương trình khuyến mãi áp dụng cho nó. QĐ-11: Nếu chương trình không giới hạn số lượng khách hàng thì giá trị của trường số lượng khách hàng trong chương trình khuyến mãi = -1 QĐ-12: Nếu chương trình không giới hạn số lượng tặng phẩm thì giá trị của trường số lượng tặng phẩm trong chương trình khuyến mãi = -1 8.2. Cơ sở dữ liệu Meta_ EC 8.2.1. Sơ đồ Hình 8.3 Sơ đồ cơ sở dữ liệu Meta_EC Chương 8. THIẾT KẾ ỨNG DỤNG 77 8.2.2. Mô tả Cơ sở dữ liệu Meta_EC lưu dữ liệu dùng để định nghĩa dữ liệu của: • Công ty. • Chương trình khuyến mãi. Dữ liệu dùng để định nghĩa dữ liệu của công ty có chức năng giúp cho việc lưu trữ được tất cả các thông tin về mặt hàng do công ty đưa ra.Dữ liệu này nằm trong các bảng: TT_ANHXA, TT_DENGHI, TTBB_ANHXA, TT_BATBUOC Dữ liệu dùng để định nghĩa dữ liệu cho chương trình khuyến mãi có chức năng giúp cho việc nhập thông tin về chương trình khuyến mãi dễ dùng và thân thiện. Bao gồm các bảng sau: MOTA_FIELD, MOTA_TABLE STT Tên bảng Mô tả Chú thích 1 TT_BATBUOC Thuộc tính bắt buộc Danh sách các thuộc tính bắt buộc mà một mặt hàng phải có khi đăng kí quảng cáo trên siêu thị 2 TTBB_ANHXA Thuộc tính bắt buộc ánh xạ Tên các cột trong cơ sở dữ liệu công ty tương ứng với các thuộc tính này. 3 TT_DENGHI Thuộc tính đề nghị Danh sách các thuộc tính đề nghị cho mặt hàng TT_ANHXA Thuộc tính đề nghị ánh xạ Tên các cột trong CSDL của công ty tương ứng với các mô tả trong từng thuộc tính. MOTA_TABLE Danh sách tên bảng Tên các bảng cung cấp dữ liệu để kiểm tra điều kiện khuyến mãi MOTA_FIELD Danh sách tên cột Tên các cột trong các bảng trên Bảng 8.2 Cơ sở dữ liệu Meta_EC Chương 8. THIẾT KẾ ỨNG DỤNG 78 8.3. Cơ sở dữ liệu Search_EC 8.3.1. Sơ đồ Hình 8.4 Sơ đồ cơ sở dữ liệu Search_EC Chương 8. THIẾT KẾ ỨNG DỤNG 79 8.3.2. Mô tả Cơ sở dữ liệu Search_EC lưu thông tin về các cuộc khảo sát ý kiến của khách hàng đối với từng mặt hàng, với từng loại mặt hàng. Bao gồm các bảng sau: STT Tên bảng Mô tả Chú thích 1 TIEU_CHI Tiêu chí Tiêu chí là một quan điểm của khách hàng đưa ra về mặt hàng. Vd: Quần áo hip hop đẹp nhất được xem là một tiêu chí 2 KQ_THAM_DO Kết quả thăm dò Kết quả thăm dò trên từng tiêu chí 3 KQ_GTRI Kết quả giá trị Kết quả thăm dò trên từng thuộc tính theo từng tiêu chí 4 YKIEN_KH Ý kiến khách hàng Ý kiến của khách hàng đối với từng mặt hàng 5 DANHGIAMH Đánh giá mặt hàng Tổng điểm bầu chọn của các khách hàng cho một mặt hàng Bảng 8.3 Cơ sở dữ liệu Search_EC Chương 8. THIẾT KẾ ỨNG DỤNG 80 8.4. Sơ đồ màn hình Hình 8.5 Sơ đồ màn hình Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 81 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 9.1. Chức năng tìm kiếm 9.1.1. Nhận xét Siêu thị trực tuyến là nơi tập hợp rất nhiều mặt hàng thuộc nhiều loại của nhiều công ty. Do đó, nhu cầu tìm kiếm của khách hàng là rất cần thiết. Hệ thống tìm kiếm phải hỗ trợ cho khách hàng tìm được mặt hàng không chỉ đáp ứng được các tính năng mà khách hàng đưa ra mà còn phải đảm bảo các mặt hàng được liệt kê ra phải đúng theo mong muốn của khách hàng. Nếu không kết quả tìm kiếm sẽ bao gồm rất nhiều mặt hàng gây khó khăn cho khách hàng trong việc tìm kiếm 9.1.2. Hướng giải quyết Xây dựng hệ thống tìm kiếm không chỉ dựa trên thông tin của công ty đưa ra mà còn dựa trên đánh giá khách quan của khách hàng. Sử dụng công cụ SQL Full Text Search của MS SQL Server 2000 để hỗ trợ cho việc tìm kiếm thông tin trên cơ sở dữ liệu của hệ thống. 9.1.3. Xây dựng dữ liệu tìm kiếm Dữ liệu dùng trong việc tìm kiếm xuất phát từ 2 nguồn: Dữ liệu có sẵn : Là dữ liệu về công ty, mặt hàng do công ty tham gia đưa ra. Dữ liệu thu thập: Dữ liệu thu thập được tạo ra từ việc thu thập ý kiến khách hàng đối với một mặt hàng hay một nhà cung cấp. Bao gồm: Thông tin đánh giá về chất lượng mặt hàng, giá cả mặt hàng, tính năng của mặt hàng, Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 82 Thông tin đánh giá về thương hiệu của công ty Phương pháp tạo dữ liệu thu thập: Trước khi thu thập dữ liệu, ta cần xác định dữ liệu đang cần thu thập nhằm phục vụ cho tiêu chí gì ? Chẳng hạn như tìm ra mặt hàng hợp thời trang nhất trong quần áo nam là một tiêu chí tìm kiếm. Từ tiêu chí đề ra khi thăm dò ý kiến khách hàng cho một loại mặt hàng, ta kết hợp với các dữ liệu có sẵn về loại mặt hàng cần thăm dò để tạo ra bảng thăm dò ý kiến như sau: Hình 9.1 Màn hình phiếu thăm dò ý kiến khách hàng Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 83 Sau đó ta tiến hành lưu trữ lại các thông tin này thành dữ liệu thu thập Từ dữ liệu thu thập, ta xác định các điều kiện để thực hiện tiêu chí tìm kiếm đề ra Lưu các điều kiện đó lại. 9.1.4. Tiến hành xây dựng chức năng tìm kiếm Cơ sở dữ liệu đề nghị Hình 9.2 Sơ đồ CSDL hỗ trợ CN tìm kiếm Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 84 Quá trình xây dựng chức năng tìm kiếm Bước 1: Thêm tiêu chí tìm kiếm Hình 9.3 MH mô tả QT thêm tiêu chí tìm kiếm Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 85 Bước 2: Phát sinh phiếu thăm dò Từ loại danh mục mà tiêu chí liên quan, phát sinh ra phiếu thăm dò cho tiêu chí: . Hình 9.4 Mô hình mô tả QT phát sinh phiếu thăm dò Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 86 Bước 3: Ghi nhận kết quả thăm dò của từng KH vào KQ_THAMDO Xác định danh sách thuộc tính và danh sách giá trị được chọn. Cập nhật dữ liệu lên cơ sở dữ liệu (KQ_THAMDO, KQ_GIATRI, TIEU_CHI) như : • Tăng số lượng khách hàng thăm dò. • Đối với mỗi thuộc tính được chọn thì tăng DiemTT lên 1 • Đối với mỗi giá trị được chọn của 1 thuộc tính thì tăng DiemGT lên 1 Bước 4: Áp dụng tiêu chí tìm kiếm mới cho khách hàng Chỉ áp dụng tiêu chí tìm kiếm này khi APDUNG = True Trường APDUNG = True khi số lượng khách hàng được thăm dò đạt tiêu chuẩn yêu cầu của hệ thống. Nghĩa phải có ít nhât một lần cập nhập KQ_THAMDO Phát sinh điều kiện tìm kiếm cho tiêu chí Bước 5: Khách hàng tìm kiếm Khách hàng chọn danh mục cần tìm hàng. Sau đó, khách hàng chọn tiêu chí tìm, rồi nhập từ khóa vào. Nhấn nút Tìm. Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 87 Bước 6: Hệ thống xử lý việc tìm kiếm của khách hàng Hình 9.5 Mô hình mô tả QT XL tìm kiếm của hệ thống Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 88 9.2. Chức năng khuyến mãi 9.2.1. Nhận xét Mỗi công ty có nhiều chương trình khuyến mãi với nhiều hình thức khác nhau. Do đó, khi xây dựng chức năng quản lý khuyến mãi cần phải đảm bảo các tính chất sau: • Hệ thống phải quản lý được chương trình khuyến mãi: còn trong thời gian khuyến mãi không, số lượng tặng phẩm có còn không, số lượng tặng phẩm khách hàng sẽ được tặng là bao nhiêu… • Hệ thống hỗ trợ được việc nhập chương trình khuyến mãi một cách dễ dàng Chức năng khuyến mãi cần phải quản lý được phần lớn các hình thức khuyến mãi cũng như các điều kiện khuyến mãi do công ty đưa ra 9.2.2. Hướng giải quyết Tạo chương trình khuyến mãi i. Nhận xét • Chương trình khuyến mãi gồm có 2 nội dung chính: điều kiện khuyến mãi và hình thức khuyến mãi. • Hình thức khuyến mãi thì gồm có các hình thức sau: tặng phẩm, giảm tiền theo phần trăm, giảm số tiền. • Tặng phẩm không chỉ tặng 1 mặt hàng mà còn có thể tặng nhiều mặt hàng. • Ví dụ: • Chương trình khuyến mãi có nội dung sau: Chương trình khuyến mãi OMO tiết kiệm dùng cho mặt hàng OMO 500g Với số lượng mua = 5 bao bột giặt thì được tặng 1 bao bột giặt OMO 200g Với số lượng mua = 10 bao bột giặt thì được tặng 1 bao bột giặt OMO 500g + 1 chai nước xả Comfo 100ml Với số lượng mua = 50 bao bột giặt thì giảm 10% tiền Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 89 • Với chương trình khuyến mãi trên thì ta phân tích như sau: Mặt hàng áp dụng: OMO 500g Tặng phẩm: OMO200g, OMO 500g, Comfo 100ml Chi tiết khuyến mãi: SL mua = 5 -> Tặng phẩm: 1 bao OMO 200g SL mua = 10 -> Tặng phẩm: 2 bao OMO SL mua = 50 ? Giảm tiền: 10% ii. Cơ sở dữ liệu dùng cho chức năng khuyến mãi Hình 9.6 Sơ đồ CSDL hỗ trợ CN khuyến mãi • Một chương trình khuyến mãi được áp dụng cho một mặt hàng. • Trong 1chương trình khuyến mãi, công ty có thể áp dụng nhiều chọn nhiều mặt hàng khác làm tặng phẩm. Các tặng phẩm này là những mặt hàng hiện có trong hệ thống. Và các mặt hàng dùng làm tặng phẩm có thể là mặt hàng Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 90 của các công ty khác nhau với điều kiện là các công ty đó cũng tham gia vào hệ thống. • Một chương trình khuyến mãi có nhiều chi tiết khuyến mãi. iii. Mô tả xử lý Quá trình xử lý bao gồm các công việc sau: Bước 1: Xử lý các thông tin chung của chương trình khuyến mãi: tên chương trình, ngày bắt đầu, ngày kết thúc.. Bước 2: Kiểm tra tính hợp lệ của các mặt hàng được dùng làm tặng phẩm: • Công ty cung cấp mặt hàng là 1 thành viên của hệ thống • Mặt hàng dùng làm tặng phẩm phải được công ty đăng kí quảng cáo này trên hệ thống. Bước 3: Kiểm tra tính hợp lệ của các chi tiết khuyến mãi: • Kiểm tra điều kiện khuyến mãi của chi tiết khuyến mãi: mô tả điều kiện do công ty đưa vào phải thỏa qui tắc ghi do hệ thống qui định • Kiểm tra hình thức khuyến mãi của chi tiết khuyến mãi: hệ thống chỉ hỗ trợ 3 hình thức khuyến mãi thông dụng: giảm tiền, giảm %, tặng phẩm Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 91 Hình 9.7 Mô hình kiểm tra chi tiết KM hợp lệ Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 92 iv. Xử lý 1 chi tiết khuyến mãi Qui định • Chuỗi điều kiện nhập vào phải có dạng sau: ((ĐK1) và (ĐK2)) hay (ĐK3) o ĐK: là một mệnh đề: [Tên thuộc tính ] Phép_so_ sánh Giá_trị o Tên thuộc tính: là những thuộc tính mà hệ thống hỗ trợ như các thuộc tính của KHACH_HANG: Là nữ, Ngày sinh, … o Phép_so_sánh: >, <, = • Chuỗi hình thức khuyến mãi: [Loại hình thức]: Giá_trị o Loại hình thức là một trong các loại sau: Tặng phẩm, Giảm phần trăm, Giảm tiền o Riêng với Loại hình thức là Tặng phẩm thì Giá trị gồm có dạng sau (“Mã mặt hàng từ công ty “, “Mã công ty “, Số lượng tặng) ? Mã mặt hàng từ công ty: là mã mặt hàng do công ty quy định cho mặt hàng đó. ? Mã công ty là mã do hệ thống đặt ra để liên lạc với công ty một các dễ dàng, tránh trùng với các công ty cùng tên. Xử lý chuỗi mô tả điều kiện Tiến hành phân tích chuỗi thành cây như sau: Hình 9.8 Mô hình mô tả phân tích chuỗi DK thành cây Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 93 Sau khi phân tích ra thành cây điều kiện như trên, nội dung của câu được biểu diễn lại dưới dạng mội chuỗi theo định dạnh XML như sau: KHACH_HANG LANU = "N" KHACH_HANG NGAYSINH > "4/30/1975" CHITIETDDH SOTIEN> 10000 Tài liệu XML 9-1 Cấu trúc tập tin lưu điều kiện khuyến mãi cho một chi tiết KM Xử lý chuỗi mô tả hình thức khuyến mãi Phân tích chuỗi hình thức khuyến mãi do công ty nhập vào thành một chuỗi XML như sau: Tài liệu XML 9-2 Cấu trúc tập tin lưu hiìh thức khuyến mãi cho một chi tiết KM Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 94 v. Giao diện Hình 9.9 Màn hình them chương trình khuyến mãi Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 95 Áp dụng chương trình khuyến mãi i. Nhận xét Chương trình khuyến mãi áp dụng cho một mặt hàng. Và tại một thời điểm, chỉ tồn tại một chương trình khuyến áp dụng cho mặt hàng.Do đó, khi khách hàng mua hàng, hệ thống cần kiểm tra xem mặt hàng đó có khuyến mãi không. Nếu có hệ thống sẽ tính khuyến mãi trực tiếp lên hóa đơn cho khách hàng Ví dụ: (dùng chương trình khuyến mãi trên) Khi khách hàng mua 50 bao OMO thì hệ thống phải xác định số tiền mà khách hàng phải trả = (giá tien * 50) – 10%(giá tiền * 50) ii. Xử lý Bước 1: Khi khách chọn mua một mặt hàng, hệ thống sẽ tiến hành kiểm tra xem mặt hàng này hiện có đang có chương trình khuyến mãi nào hợp lệ không: thời gian khuyến mãi còn hợp lệ, số lượng KH ưu tiên 0 Bước 2: Hệ thống xác định dữ liệu dùng để kiểm tra điều kiện của chi tiết khuyến mãi bao gồm: Thông tin có sẵn: bao gồm thông tin về khách hàng, thông tin mua hàng: số lượng mua,số tiền … Những thông tin này được mô tả trong file xml sau. Select * from KHACH_HANG where MAKH = @MaKH Select * from CTKM where MaCTKM = @MaCTKM </Data Tài liệu XML 9-3 Cấu trúc tập tin lưu cách lấy dữ liệu để kiểm tra điều kiện KM Do đó, nội dung thông tin dùng để kiểm tra có thể thay đổi được Thông tin mới: là thông tin về chi tiết đơn đặt hàng: số lượng mua, giá tiền,thành tiền. Bước 3: Nếu có, tiến hành kiểm tra xem có điều kiện của chi tiết khuyến mãi nào thỏa điều kiện không ? Nếu có thì tiến hành thực hiện khuyến mãi: giảm tiền hay thêm vào danh sách mặt hàng tặng phẩm vào giỏ hàng cho khách hàng Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 96 • Hình 9.10 Mô hình kiểm tra chi tiết KM thoả điều kiện Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 97 9.3. Chức năng quảng cáo mặt hàng 9.3.1. Nhận xét Hệ thống thực hiện các giao dịch với khách hàng bằng mặt hàng từ nhiều công ty. Như vậy hệ thống cần phải quản lý các mặt hàng hợp lý. Các công ty kinh doanh các loại mặt hàng khác nhau sẽ có cấu trúc lưu trữ thông tin về mặt hàng khác nhau.Hơn nữa, các công ty kinh doanh cùng một mặt hàng cũng có thể lưu trữ thông tin về mặt hàng khác nhau. Do đó, một siêu thị điện tử muốn kinh doanh nhiều loại mặt hàng phải đảm bảo lưu được mọi thông tin về măt hàng mà tất cả các công ty cung cấp. Thêm vào đó, việc tiếp nhận thông tin không theo cấu trúc nhất định từ các công ty cũng là một vấn đề khó khăn trong việc quản lý thông tin mặt hàng. Vấn đề đặt ra cho siêu thị điện tử về việc quảng cáo của mặt hàng: ? Nhận dữ liệu với mọi cấu trúc của cơ sở dữ liệu từ phía công ty ? Lưu trữ dữ liệu mô tả mặt hàng trong cơ sở dữ liệu của hệ thống đảm bảo việc thể hiện dữ liệu sau khi lưu được dễ dàng và thân thiện. Chúng ta hãy xét ví dụ dưới đây để thấy rõ hơn điều này: Quan sát cách lưu trữ thông tin và cách cung cấp thông tin của công ty quần áo Hạnh Hoa cho hệ thống. Cơ sở dữ liệu của công ty chứa thông tin sau: BẢNG [THUOC_TINH] SHMatHang TenMatHang GiaCa DonVi MauSac HTI_001 Áo thun nam cổ tròn 60.000 Cái Mau_1 HTI_002 Áo sơ mi nam 120.000 Cái Mau_2 HTI_003 Áo sơ mi nam 90.000 Cái Mau_3 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 98 BẢNG [MAU_SAC] MauSac GiaTri Mau_1 Xanh Mau_1 Đỏ Mau_1 Vàng Mau_2 Trắng Mau_2 Đen Mau_3 Vàng Công ty muốn đưa vào hệ thống những thông tin như sau: SoHieuMatHang TenMatHang GiaCa DonVi MauSac HTI_001 Áo thun nam cổ tròn 60.000 Cái Xanh, Đỏ, Vàng HTI_002 Áo sơ mi nam 120.000 Cái Trắng, Đen HTI_003 Áo sơ mi nam 90.000 Cái Trắng, Nâu, Tím, Hồng Vấn đề đặt ra là chúng ta phải đưa dữ liệu cần lấy từ phía công ty về dạng chuẩn có thể lưu trữ vào hệ thống. 9.3.2. Xử lý Sơ đồ cơ sở dữ liệu EC Hình 9.11 Sơ đồ CSDL EC hỗ trợ thêm CTquảng cáo-MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 99 Sơ đồ cơ sở dữ liệu Meta_EC Hình 9.12 Sơ đồ CSDL Meta_EC hỗ trợ thêm CTQC - MH 9.1 Xử lý Công việc đăng ký chương trình quảng cáo bao gồm 3 bước: Bước 1: Định nghĩa dữ liệu Công ty định nghĩa các thuộc tính của mặt hàng (Công ty phải ánh xạ thuộc tính mặt hàng của công ty sang thuộc tính được định nghĩa trong hệ thống) Bước 2: Kết xuất dữ liệu Từ cơ sở dữ liệu của công ty cần đăng quảng cáo, tạo tập tin XML chuẩn lưu thông tin về mặt hàng của công ty Bước 3: Đăng quảng cáo Công ty upload tập tin XML chứa thông tin mặt hàng, hình ảnh của các mặt hàng đó và yêu cầu hệ thống lưu trữ các thông tin vào cơ sở dữ liệu của hệ thống. Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 100 Bước 1 Nhận xét Các công ty khác nhau thì có các cơ sở dữ liêu khác nhau về cấu trúc, tên bảng, tên cột …Nhưng có một số thuộc tính của mặt hàng mà công ty nào cũng phải có: Mã mặt hàng của công ty, tên mặt hàng, giá … Do đó, ta chia các thuộc tính của mặt hàng thành 2 loại: • Thuộc tính bắt buộc: là những thuộc tính mà tối thiểu mặt hàng phải có khi đăng quảng cáo trên siêu thị • Thuộc tính đề nghị: là những thuộc tính giúp mô tả rõ hơn về mặt hàng. Các công ty phải có đầy đủ các thuộc tính bắt buộc nhưng vì mỗi công ty có một cấu trúc khác nhau nên có thể tên của các trường tương ứng với các thuộc tính bắt buộc ở các công ty là khác nhau. Ngòai ra, đối với các thuộc tính đề nghị, các công ty có thể có hay không có những thuộc tính này. Do đó, để giải quyết vấn đề lấy thông tin từ phía công ty, ta cần phải lưu trữ lại mô tả của công ty về loại mặt hàng mà công ty đang kinh doanh. Giải quyết Xây dựng cơ sở dữ liệu dùng để lưu trữ lại dữ liệu định nghĩa cho từng công ty như sau: Hình 9.13 Sơ đồ CSDL cho định nghĩa TT - MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 101 Quá trình ghi nhận dữ liệu từ phía công ty gồm 3 công việc • Định nghĩa thuộc tính bắt buộc • Định nghĩa các thuộc tính đề nghị • Thêm các thuộc tính mà công ty đề nghị i. Định nghĩa thuộc tính bắt buộc Hệ thống đưa ra một số thuộc tính bắt buộc đối với tất cả mặt hàng bất kể loại nào khi đăng quảng cáo trên hệ thống: tên, giá, hình ảnh, số lượng bán, mã mặt hàng do công ty quy định trong hệ thống công ty. Việc định nghĩa thuộc tính bắt buộc được mô tả như sau: Hình 9.14 Mô hình mô tả QT định nghĩa TT bắt buộc - MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 102 ii. Định nghĩa thuộc tính đề nghị Trong quá trình họat động, hệ thống có lưu trữ lại một số thuộc tính đề nghị đối với từng loại mặt hàng do công ty đưa ra khi đăng quảng cáo trên siêu thị địên tử Do đó, công ty khi muốn đăng quảng cáo cho loại mặt hàng mà trước đó đã có công ty khác đăng kí quảng cáo cho loại mặt hàng đó (tức là có thuộc tính đề nghị do công ty đó đưa ra), công ty này có thể sử dụng lại những thuộc tính đề nghị (nếu công ty có những thuộc tính mang ý nghĩa tương đương). Việc định nghĩa thuộc tính bắt buộc được mô tả như sau: Hình 9.15 Mô hình mô tả QT định nghĩa TT đề nghị - MH 9.1 iii. Thêm thuộc tính đề nghị Trong quá trình định nghĩa thuộc tính đề nghị cho một loại mặt hàng, nếu công ty nhận thấy hệ thống chưa có các thuộc tính mà công ty yêu cầu, công ty đó có thể thêm thuộc tính đề nghị mới. Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 103 Trong quá trình thêm mới này, công ty phải nhập thêm trường mô tả cho thuộc tính mà công ty đưa ra. Trường mô tả này giúp việc thể hiện dữ liệu lên website dễ hiểu hơn. MH mô tả QT thêm TT đề nghị mới - MH 9.1 Bước 2 Nhận xét Thông tin về một mặt hàng là rất lớn.Đặc biệt, các thông tin đó đều có thể lưu trong cơ sở dữ liệu hay thành tập tin. Khi tiến hành đăng quảng cáo, nếu để công ty tự nhập thông tin vào hệ thống thì rất vất vả. Hơn nữa, mỗi công ty có thể sản xuất ra rất nhiều mặt hàng khác nhau. Do đó, việc nhập bằng tay là không khả quan. Giải quyết Tiến hành tự động hoá trong việc tạo dữ liệu ở phía công ty bằng cách xây dựng một ứng dụng nhỏ chạy ở phía công ty. Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 104 Ứng dụng này là một phần mềm được chạy cục bộ tại mỗi công ty có chức năng là kết xuất dữ liệu từ cơ sở dữ liệu của công ty thành một tập tin có định dạng sao cho hệ thống siêu thị điện tử có thể đọc được. Tập tin đó là một tập tin XML có cấu trúc đề nghị sau: GIA_TRI_THUOC_TINH GIA_TRI_1_CUA_THUOC_TINH GIA_TRI_2_CUA_THUOC_TINH GIA_TRI_3_CUA_THUOC_TINH …… …… Tài liệu XML 9-4 Cấu trúc lưu thuộc tính của mặt hàng Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 105 Đối với mỗi thuộc tính có một giá trị, hệ thống tạo một node không có node con. Đối với mỗi thuộc tính có nhiều giá trị, hệ thống tạo một node có nhiều node con, mỗi node con tương ứng với một giá trị của thuộc tính. Do cấu trúc của tập tin XML là tổng quát nên cấu trúc này phù hợp với mọi mặt hàng của mọi công ty. Mô tả phần mềm và cách sử dụng phần mềm Hình 9.16 Mô hình mô tả cách tạo file XML chuẩn - MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 106 Thêm thuộc tính đơn giá trị Hình 9.17 Mô hình mô tả QT thêm TT đơn giá trị - MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 107 Thêm thuộc tính đa giá trị Hình 9.18 Mô hình mô tả QT thêm TT đa giá trị - MH 9.1 Chương 9. CÁC KỸ THUẬT XỬ LÝ TRONG ỨNG DỤNG 108 Sau khi công ty đã thêm tất cả các thuộc tính đơn giá trị và thuộc tính đa giá trị cho từng mặt hàng cần quảng cáo, phần mềm sẽ tạo ra tập tin XML đúng định dạng chuẩn chứa đầy đủ các thông tin này. Đối với dữ liệu trong ví dụ về công ty Hạnh Hoa, ta có tập tin XML với thông tin như sau: Bước 3 Sau khi hệ thống đã có được ánh xạ này, mỗi công ty upload các tập tin hình ảnh của các mặt hàng cũng như upload tập tin XML đã được tạo (bằng cách được mô tả ở phần trên) và yêu cầu hệ thống lưu lại. Khi đó, hệ thống duyệt toàn bộ tập tin XML. Ứng với mỗi node, hệ thống xác định tên thuộc tính từ phía công ty là tên của node, tìm kiếm tên thuộc tính tương ứng trong hệ thống. Đối với mỗi node không có node con, hệ thống lưu trữ một bộ trong bảng MAT_HANG (đối với thuộc tính bắt buộc) hoặc trong bảng THUOC_TINH (đối với thuộc tính đề nghị) với giá trị thuộc tính là nội dung của node. Ứng với mỗi node có các node con, hệ thống lưu trữ thành nhiều bộ trong bảng THUOC_TINH, mỗi bộ tương ứng với một giá trị của thuộc tính và giá trị này là nội dung của một node con. Chương 10. TỔNG KẾT 109 Chương 10. TỔNG KẾT 10.1. Kết luận 10.1.1. Về mặt lý thuyết Chúng em đã tìm hiểu được các vấn đề sau: • Bản chất, đặc điểm và tầm quan trọng của thương mại điện tử • Một số khái niệm cơ bản trong thương mại điện tử • Một số vấn đề cần quan tâm khi tham gia thương mại điện tử: bảo mật, xử lý tự động và thanh tóan điện tử • Việc quản lý mối quan hệ khách hàng, một số dịch vụ khách hàng • Ứng dụng thương mại điện tử theo mô hình B2B và B2C 10.1.2. Về mặt ứng dụng Chúng em đã hòan thành mục tiêu đã đề ra: • Cho phép mua và bán nhiều chủng loại mặt hàng khác nhau • Cho phép doanh nghiệp tự quản lý thông tin sản phẩm của mình • Thể hiện và cập nhật thường xuyên các chương trình khuyến mãi • Hỗ trợ xem và hiệu chỉnh thông tin đặt hàng • Hỗ trợ khách hàng tìm sản phẩm theo nhiều tiêu chí khác nhau: tìm sản phẩm đang có chương trình khuyến mãi, tìm sản phẩm với giá rẻ nhất… • Ghi nhận những phê bình và đóng góp ý kiến của khách hàng về các sản phẩm, dịch vụ mình cung cấp cũng như những ý tưởng mới Ngòai ra, chúng em còn xây dựng thêm được những chức năng mới như sau: • Thăm dò ý kiến khách hàng về loại mặt hàng • Tìm kiếm mặt hàng dựa trên kết quả thăm dò • Xây dựng trang web giới thiệu cho từng công ty theo các template khác nhau Chương 10. TỔNG KẾT 110 10.2. Hướng phát triển 10.2.1. Đối với các dịch vụ dành cho khách hàng • Tự động cung cấp thông tin liên quan đến nhu cầu của khách hàng • Hòan thiện chức năng tìm kiếm để khách hàng tìm được đúng mặt hàng mong muốn • Cho phép khách hàng xây dựng trang web riêng dựa trên template hệ thống đề nghị • Xây dựng hệ thống thanh tóan điện tử 10.2.2. Đối với các dịch vụ dành cho công ty • Mở rộng việc chuyển đổi dữ liệu trên nhiều hệ quản trị cơ sở dữ liệu ở phía công ty • Hỗ trợ việc cập nhật tự động các đơn đặt hàng mới vào cơ sở dữ liệu của công ty • Xây dựng hệ thống đánh giá độ tin cậy của công ty và mặt hàng dựa trên những thông tin thu thập từ bên ngòai Phát triển ứng dụng hiện tại thành ứng dụng thương mại điện tử di động Phụ lục A. ỨNG DỤNG SIEUTHI.COM 111 Phụ lục A ỨNG DỤNG SIEUTHI.COM A.1 Bước dạo đầu Công ty vào thăm trang Siêu thị .com Hình A. 1 Trang chủ Công ty chưa hợp tác kinh doanh với siêu thị . Chọn chức năng CTY đăng kí để đăng kí hợp tác với siêu thị . Phụ lục A. ỨNG DỤNG SIEUTHI.COM 112 Hình A. 2 Trang đăn g ký là thành viên bán hàng Sau khi đăng kí thành công , công ty đã trở thành thành viên của hệ thống siêu thị . Chọn chức năng CôngTy để vào thăm trang web của mình Khi đó hệ thống sẽ yêu cầu đăng nhập! Hình A. 3 Trang đăng nhập Phụ lục A. ỨNG DỤNG SIEUTHI.COM 113 Sau khi đăng nhập thành công , công ty có vào được trang quản lý thông tin của mình : Hình A. 4 Trang quản lý thông tin công ty Khách mua hàng vào thăm trang SiêuThị.Com , muốn tìm hiểu về một số công ty tham gia vào siêu thị .Hay các công ty muốn tìm đối tác trong lĩnh vực thì chọn chức năng sau Tìm đối tác : Phụ lục A. ỨNG DỤNG SIEUTHI.COM 114 Hình A. 5 Trang danh sách công ty Khách hàng chọn công ty bất kì để vào thăm trang web của các công ty Hình A. 6 Trang giới thiệu công ty Phụ lục A. ỨNG DỤNG SIEUTHI.COM 115 A.2 Công ty quảng cáo sản phẩm Bước 0 : Công ty vào trang thông tin của mình (webcompany.aspx) như trên . Nếu công ty kinh doanh các mặt hàng mới mà siêu thị yêu chưa từng kinh doanh thì công ty gởi mail yêu cầu admin thêm danh mục mới vào . Khi đó , Admin sẽ đăng nhập vào hệ thống dưới quyền Admin để tiến hành thêm vào danh mục mới : Hình A. 7 Trang thêm danh mục mới Bước 1 : Sau đó, công ty tiến hành định nghĩa cho loại mặt hàng mới này như sau : • Công ty nhập vào tên các cột tương ứng với các mô tả về đặc điểm của mặt hàng . • Công ty phải nhập đầy đủ các thuộc tính bắt buộc (nếu có của công ty). • Còn đối với các thuộc tính đề nghị , công ty có thể nhập hay không nhập . Lưu ý : Nếu công ty không ánh xạ đầy đủ các tên các thuộc tính của bên phía cơ sở dữ liệu của công ty thì khi công ty gởi dữ liệu qua , các thuộc tính nào không được ánh xạ , thông tin của chúng không được hệ thống chúng tôi lưu lại Phụ lục A. ỨNG DỤNG SIEUTHI.COM 116 Hình A. 8 Trang định nghĩa dữ liệu của công ty Bước 2 : Sau khi đã khai báo đầy đủ dữ liệu để định nghĩa , công ty tiến hành download phần mềm hổ trợ việc kết xuất dữ liệu về rồi cài đặt trên máy có cơ sở dữ liệu của phía công ty. Dữ liệu được kết xuất ra là một file xml chứa mô tả có cấu trúc về nhiều mặt hàng mà công ty cần cung cấp. ( Xem hướng dẫn sử dụng việc kết xuất dữ liệu ở phụ lục B) Bước 3 : Công ty tiến chọn chức năng thêm sản phẩm để tiến hành thêm sản phẩm mới này Công ty chọn danh mục muốn đăng quảng cáo . Công ty upload tập tin xml kết xuất ra danh sách các mặt hàng cần đăng quảng cáo . Phụ lục A. ỨNG DỤNG SIEUTHI.COM 117 Hình A. 9 Tramg đăng ký quảng cáo cho sản phẩm Khi khách hàng vào thăm trang web , chọn vào mục Đồ chơi Phụ lục A. ỨNG DỤNG SIEUTHI.COM 118 Khi đó danh sách các mặt hàng thuộc loại mặt hàng sẽ được đưa ra như sau : Hình A. 10 Trang danh sách mặt hàng Trong đó : • Mục “Sản phẩm trong ngày “là những sản phẩm do hệ thống đề nghị với công ty . o Thông thường mục này gồm 2 mặt hàng : 1 mặt hàng được khách hàng ưa chuộng nhất và 1 mặt hàng mới nhất . o Trong trường hợp khách hàng không có đóng góp ý kiến cho các mặt hàng trong danh mục thì mặt hàng khách hàng ưa chuộng nhất sẽ không có. Khi đó , chỉ có1 sản phẩm đề nghị là sản phẩm mới nhất trong ngày. o Trong trường hợp không có sản phẩm nào được thêm vào trong ngày thì hệ thống sẽ đưa ra sản phẩm được quảng cáo gần đây nhất . • Mục “Danh sách sản phẩm” là những mặt hàng thuộc về chủng loại mặt hàng đó. Nếu trong trường hợp , danh mục mặt hàng được chọn có nhiều danh mục con , thì “Danh sách sản phẩm “ cũng bao gồm các mặt hàng nằm trong các danh mục con của danh mục đang xem . Phụ lục A. ỨNG DỤNG SIEUTHI.COM 119 Nếu khách hàng nhấn vào Tên của sản phẩm thì hệ thống sẽ hiển thị trang web mô tả chi tiết về sản phẩm đó: Hình A. 11 Trang thông tin chi tiết về sản phẩm Sau khi xem , khách hàng có thể gởi lời nhận xét hay cho đánh giá về sản phẩm mà mình vừa xem : Hình A. 12 Trang đánh giá sản phẩm Phụ lục A. ỨNG DỤNG SIEUTHI.COM 120 A.3 Công ty đăng kí chương trình khuyền mãi Công ty chọn chức năng “Thêm chương trình khuyến mãi “ để tạo một chương trình khuyến mãi áp dành cho một mặt hàng nào đó . Nếu đây là lần đầu tiên công ty đăng kí chương trình khuyến mãi thì nên xem qua hướng dẫn bằng cách nhấp chuột vào chữ “đây” ở dòng thông tin “Nếu cần giúp đỡ thì nhấp vào đây” Lưu ý : Công ty chỉ được thay đổi chương trình khuyến mãi hay xóa chương trình khuyến mãi vào thời gian trước ngày bắt đầu chương trình. Hình A. 13 Trang đăng kí chương trình khuyến mãi Đến ngày bắt đầu khuyến mãi thì hệ thống sẽ quảng cáo chương trình khuyến mãi lên ở trang chủ . Phụ lục A. ỨNG DỤNG SIEUTHI.COM 121 Khách hàng có thể nhấn vào tên chương trình khuyến mãi để chọn xem chi tiết của chương trình : Hình A. 14 Trang thông tin chi tiết của chương trình khuyến mãi Phụ lục A. ỨNG DỤNG SIEUTHI.COM 122 Khách hàng vào mua hàng ở siêu thị . • Nếu khách hàng chưa là thành viên của siêu thị thì khách hàng phải đăng kí .Nếu đăng kí thành công thì hệ thống sẽ lập tức gởi mail thông báo về cho khách hàng. Hình A. 15 Trang đăng kí là thành viên mua hàng • Nếu khách hàng đã là thành viên của siêu thị , khách hàng cần phải đăng nhập trước khi mua hàng .Sau khi đăng nhập thành công , hệ thống sẽ hiển thị giỏ hàng hiện tại cho khách hàng xem . Phụ lục A. ỨNG DỤNG SIEUTHI.COM 123 • Khi khách hàng tiến hàng mua một sản phẩm có khuyến mãi (vd : Áo sơ mi nữ không tay có cầu vai ) , hệ thống sẽ lưu giữ lại chế độ khuyến mãi mà khách hàng được chọn .Khách hàng nhấn vào “Chi tiết…” để xem chi tíêt giỏ hàng như sau : Hình A. 16 Tramg hiển thị hóa đơn Đối với chương trình khuyến mãi có tặng phẩm, nếu khách hàng là người cuối cùng được khuyến mãi (do số lương tặng phẩm đã hết ) . Nếu số lượng tặng phẩm không còn đủ với so với số lượng tặng phẩm mà đáng lẽ khách hàng phải nhận , thì hệ thống sẽ thông báo cho khách hàng biết : Phụ lục A. ỨNG DỤNG SIEUTHI.COM 124 A.4 Tìm kiếm Khi khách hàng muốn tìm kiếm một số mặt hàng mà không biết nó thuộc về danh mục nào thì khách hàng nhâp chuỗi cần tìm vào text box dưới đây . Kết quả trả ra là những mặt hàng có mô tả mặt hàng chứa các chuỗi trên Nếu khách hàng xác định rõ được mình cần tìm loại mặt hàng nào nhưng không biết chọn lựa mặt hàng nào cho phù hợp với yêu cầu của mình . Khách hàng chọn mục “Tìm mở rộng “ Chọn danh mục cần tìm và tiêu chí mà khách hàng mong muốn. Sau đó nhập chuỗi cần tìm Hình A. 17 Trang tìm kiếm mở rộng Phụ lục A. ỨNG DỤNG SIEUTHI.COM 125 Việc tìm kiếm theo tiêu chí này thực hiện được là nhờ vào đóng góp ý kiến của khách hàng về tiêu chí khi hệ thống đưa ra . Cụ thể là khách hàng trả lời các phiếu thăm dò tự động do hệ thống tạo ra : Hình A. 18 Trang thu thập ý kiến khách hàng Phụ lục B. CHƯƠNG TRÌNH KẾT XUẤT DỮ LIỆU 126 Phụ lục B CHƯƠNG TRÌNH KẾT XUẤT DỮ LIỆU Hình B. 1 Màn hình chính Thực hiện kết nối với cơ sở dữ liệu của công ty (nếu trước đó công ty đã thực hiện kết nối và không muốn chuyển sang kết nối mới thì không cần thực hiện lại bước này) Phụ lục B. CHƯƠNG TRÌNH KẾT XUẤT DỮ LIỆU 127 Hình B. 2 Màn hình kết nối cơ sở dữ liệu Nhập các mã mặt hàng cho chương trình quảng cáo Hình B. 3 Màn hình nhập mã mặt hàng Khi nhập dư các mã mặt hàng, công ty check các mã mặt hàng trong “Danh sách các mặt hàng” tương ứng với các mặt hàng cần xoá và nhấn nút “Xoá” để xoá các mặt hàng này ra khỏi chương trình quảng cáo. Khi muốn thêm các thuộc tính cho từng mặt hàng, công ty chọn mặt hàng đó trong danh sách các mặt hàng rồi sau đó lần lượt thêm các thuộc tính. Để thêm thuộc tính đơn giá trị, công ty check “Thêm thuộc tính đơn giá trị” và nhấn nút “Đồng ý”. Khi đó màn hình mới xuất hiện. Phụ lục B. CHƯƠNG TRÌNH KẾT XUẤT DỮ LIỆU 128 Hình B. 4 Màn hình thêm thuộc tính đơn giá trị Trong bảng “CHỌN CÁC CỘT TƯƠNG ỨNG VỚI CÁC THUỘC TÍNH CỦA MẶT HÀNG”, công ty chọn ra các cột chứa dữ liệu tương ứng với các thuộc tính muốn gởi đến hệ thống. Trong bảng “CHỌN CÁC BẢNG CẦN SỬ DỤNG”, công ty chọn ra các bảng chứa các cột đã chọn ở trên và các bảng có liên quan đến điều kiện cần sử dụng trong textbox chứa “ĐIỀU KIỆN CHỌN DỮ LIỆU”. Phụ lục B. CHƯƠNG TRÌNH KẾT XUẤT DỮ LIỆU 129 Trong textbox chứa “ĐIỀU KIỆN CHỌN DỮ LIỆU”, công ty nhập điều kiện để căn cứ vào đó, hệ thống lấy dữ liệu. Sau đó, nhấn nút “CHẤP NHẬN” để hệ thống thực hiện thêm các thuộc tính đơn giá trị này vào tập tin chứa thông tin quảng cáo. Khi đó, các thuộc tính đơn trị này sẽ được bổ sung vào “Danh sách các thuộc tính của mặt hàng” trên màn hình. Để thêm các thuộc tính đa giá trị, công ty check “Thêm thuộc tính đa giá trị” và nhấn nút “Đồng ý”. Khi đó một màn hình mới xuất hiện. Hình B. 5 Màn hình nhập thuộc tính đa giá trị Nhập tên của thuộc tính đa giá trị Trong bảng “CHỌN CỘT TƯƠNG ỨNG VỚI THUỘC TÍNH ĐA GIÁ TRỊ”, công ty chọn ra đúng một cột chứa dữ liệu tương ứng với các thuộc tính muốn gởi đến hệ thống. 0. 130 Trong bảng “CHỌN CÁC BẢNG CẦN SỬ DỤNG”, công ty chọn ra các bảng chứa cột đã chọn ở trên và các bảng có liên quan đến điều kiện cần sử dụng trong textbox chứa “ĐIỀU KIỆN CHỌN DỮ LIỆU”. Trong textbox chứa “ĐIỀU KIỆN CHỌN DỮ LIỆU”, công ty nhập điều kiện để căn cứ vào đó, hệ thống lấy dữ liệu. Sau đó, nhấn nút “CHẤP NHẬN” để hệ thống thực hiện thêm thuộc tính đa giá trị này vào tập tin chứa thông tin quảng cáo. Khi đó, thuộc tính đa trị này sẽ được bổ sung vào “Danh sách các thuộc tính của mặt hàng” trên màn hình. Để xoá các thuộc tính thừa, công ty check vào các thuộc tính cần xoá, check vào “Xoá thuộc tính” rồi nhấn nút “Đồng ý”. Khi đó, hệ thống sẽ xóa các được tính được check ra khỏi tập tin XML chứa thông tin quảng cáo. Danh sách thuộc tính của mặt hàng trên màn hình cũng được cập nhật. Phụ lục C. CÁC VẤN ĐỀ KHÁC 131 Phụ lục C CÁC VẤN ĐỀ KHÁC C.1 Mô tả cơ sở dữ liệu EC 1. CẤU TRÚC Cho CSDL quản lý tài khoản đơn giản như sau: Ý nghĩa của các bảng : TenBang Diễn giải ThuocTinh 00 Diễn giải 00 Kiểu dữ liệu 00 ThuocTinh 01 Diễn giải 01 Kiểu dữ liệu 01 ThuocTinh 02 Diễn giải 02 Kiểu dữ liệu 02 Tân từ... Quy ước: Thuộc tính được gạch dưới là thành phần của khóa chính 1. KHACH_HANG Khách hàng MAKH Mã số khách hàng Số nguyên HOTEN Tổng số tiền trong các tài khoản của khách hàng Chuỗi (100) DIACHI Số lượng tài khoản khách hàng hiện có Chuỗi (150) LANU Khách hàng là nam hay nữ Chuỗi (1) DIENTHOAI Số điện thoai để liên lạc với khách hàng Chuỗi (20) EMAIL Địa chỉ email của khách hàng Chuỗi (50) PASSWORD Mật khẩu của khách hàng Chuỗi (20) DIDONG Số điện thoại di động của khách hàng Chuỗi (20) CAUHOIBIMAT Câu hỏi bí mật của khách hàng Chuỗi (200) CAUTL Câu trả lời cho câu hỏi bí mật Chuỗi (100) NGAYSINH Ngày tháng năm sinh của khách hàng Ngày giờ Danh sách các khách hàng mua hàng qua hệ thống. Mỗi khách hàng có mã số khách hàng để phân biệt với các khách hàng khác; có thông tin về họ tên, địa chỉ, giới tính, điện thoại, email, mật khẩu, số điện thoại, email, mật khẩu, số điện thoại di động, câu hỏi bí mật, câu trả lời và ngày sinh. 2. CONG_TY Giao dịch MACT Mã số công ty Số nguyên TENCT Tên công ty Chuỗi(50) DIACHI Địa chỉ công ty Chuỗi(150) DIENTHOAI Điện thoại của công ty Chuỗi(20) EMAIL Email của công ty Chuỗi(50) WEBSITE Website của công ty Chuỗi(50) Phụ lục C. CÁC VẤN ĐỀ KHÁC 132 MALL Mã số để hệ thống liên lạc với công ty Chuỗi(20) PASS Mật khẩu của công ty Chuỗi(20) USERNAME ID của công ty Chuỗi(20) MOTA Mô tả về công ty Chuỗi(3600) HINHANH Hình ảnh của công ty Chuỗi(20) Danh sách các công ty đã đăng ký vào hệ thống. Mỗi công ty có mã số công ty để phân biệt với các công ty khác; có thông tin về tên công ty, địa chỉ, điện thoại, website của công ty, mã số để hệ thống liên lạc với công ty, mặt khẩu, ID, hình ảnh của công ty và mô tả về công ty 3. MAT_HANG Mặt hàng MAMH Mã số mặt hàng Chuỗi(20) TENMH Tên mặt hàng Chuỗi(50) GIA Giá trị của mặt hàng Tiền tệ MADM Mã danh mục mà mặt hàng thuộc về Chuỗi(20) MACT Mã công ty gởi mặt hàng đến bán Số nguyên SL_BAN Tổng số lượng của mặt hàng này được gởi bán từ công ty Số nguyên SL_DABAN Số lượng mặt hàng này đã bán cho khách hàng Số nguyên DONVITINH Đơn vị tính của mặt hàng Chuỗi(10) HINHANH Hình ảnh của mặt hàng Chuỗi(20) NGAYTAOLAP Ngày công ty bắt đầu quảng cáo mặt hàng này Ngày giờ MAMH_TUCT Mã mặt hàng do công ty quản lý Chuỗi(20) GIOITHIEU Giới thiệu về mặt hàng Chuỗi(3600) Danh sách các mặt hàng của các công ty theo từng danh mục. Mỗi mặt hàng có mã số mặt hàng để phân biệt với các mặt hàng khác; có thông tin về tên mặt hàng, giá trị của mặt hàng, danh mục chứa mặt hàng, mã công ty gởi mặt hàng đến bán, tổng số lượng mặt hàng do công ty gởi tới, số lượng mặt hàng đã bán cho khách hàng, đơn vị tính cho mặt hàng, hình ảnh của mặt hàng, ngày công ty bắt đầu quảng cáo mặt hàng, mã mặt hàng do công ty gới bán quản lý, giới thiệu các đặc điểm của mặt hàng. 4. DANH_MUC Danh mục MADM Mã số danh mục Chuỗi(20) TENDM Tên danh mục Chuỗi(100) MADM_CHA Mã số danh mục là cha của danh mục đang xét Chuỗi(20) Phụ lục C. CÁC VẤN ĐỀ KHÁC 133 Danh sách các danh mục có trong hệ thống. Mỗi danh mục có mã số danh mục để phân biệt với các danh mục khác; có thông tin về tên danh mục và mã số danh mục cấp cha. (Danh mục được chia thành nhiều cấp, chẳng hạn danh mục “Quần áo” là danh mục cha của các danh mục “Quần áo nam”, “Quần áo nữ”) 5. THUOC_TINH Thuộc tính MATHUOCTINH Mã số thuộc tính Số nguyên GIATRI Giá trị của thuộc tính Chuỗi(100) MAMH Mã số mặt hàng của thuộc tính đang xét Chuỗi(20) Danh sách các giá trị của các thuộc tính thuộc một mặt hàng. Mỗi thuộc tính có một mã số thuộc tính để phân biệt với các thuộc tính khác thuộc cùng một mặt hàng. Mỗi giá trị thuộc tính là một giá trị trong số tất cả các giá trị của thuộc tính. 6. DONDH Đơn đặt hàng MADDH Mã số đơn đặt hàng Số nguyên NGAYCAPNHATCUOI Thời điểm đơn đặt hàng bắt đầu được lưu vào cơ sở dữ liệu Ngày giờ MAKH Mã số khách hàng sở hữu đơn đặt hàng Số nguyên TONGSOTIEN Tổng số tiền của đơn đặt hàng Tiền tệ DUOCCHINHSUA Xác định xem đơn đặt có còn trong thời hạn được sửa chữa không Số nguyên Danh sách các đơn đặt hàng trong hệ thống. Mỗi đơn đặt hàng có một mã số hóa đơn để phân biệt với các đơn đặt hàng khác; có thông tin về thời điểm đơn đặt hàng bắt đầu được lưu vào cơ sở dữ liệu của hệ thống, mã số của khách hàng sở hữu đơn đặt hàng, tổng số tiền của đơn đặt hàng và xác định đơn đặt hàng còn được chỉnh sửa hay không. 7. CHITIETDDH Chi tiết đơn đặt hàng MADDH Mã số đơn đặt hàng chứa chi tiết đơn đặt hàng Số nguyên MAMH Mã số một mặt hàng trong đơn đặt hàng đang xét Chuỗi(20) SOLUONG Số lượng mặt hàng đang xét Số nguyên SOTIEN Số tiền của mặt hàng trong đơn đặt hàng đang xét Tiền tệ MACTKM Mã số chương trình khuyến mãi dành cho Số nguyên Phụ lục C. CÁC VẤN ĐỀ KHÁC 134 mặt hàng này tại thời điểm đang xét Danh sách chi tiết đơn đặt hàng của các đơn đặt hàng. Mỗi chi tiết đơn đặt hàng chứa thông tin về một mặt hàng trong một đơn đặt hàng; có thông tin về số lượng mua, số tiền mua và chương trình khuyến mãi dành cho mặt hàng tại thời điểm đang xét. 8. CTKM Chương trình khuyến mãi MACTKM Mã số của chương trình khuyến mãi Số nguyên TENCT Tên chương trình khuyến mãi Chuỗi(50) SLTANGKEM Số lượng sản phẩm tặng kèm cho một mặt hàng được mua Số nguyên SLKHACHHANG Số lượng khách hàng đầu tiên được khuyến mãi Số nguyên NGAYBD Ngày chương trình khuyến mãi bắt đầu có hiệu lực Ngày giờ NGAYKT Ngày chương trình khuyến mãi kết thúc hiệu lực Ngày giờ MAMH Mã số mặt hàng được khuyến mãi Chuỗi(20) MOTA Mô tả về chương trình khuyến mãi Chuỗi(4000) Danh sách các chương trình khuyến mãi có trong hệ thống. Mỗi chương trình khuyến mãi có một mã số để phân biệt với các chương trình khuyến mãi khác; Có thông tin về tên chương trình, số lượng sản phẩm tặng kèm cho môt mặt hàng được mua, số lượng khách hàng đầu tiên được khuyến mãi, ngày chương trình khuyến mãi bắt đầu có hiệu lực, ngày chương trình khuyến mãi kết thúc hiệu lực, mã số mặt hàng được khuyến mãi, mô tả về chương trình khuyến mãi. 9. CHITIETKM Chi tiết khuyến mãi STT Số thứ tự của chi tiết khuyến mãi tương ứng với một điều kiện Số nguyên MACTKM Mã số chương trình khuyến mãi chứa chi tiết này Số nguyên DIEUKIENDU Mô tả điều kiện cần thỏa để được khuyến mãi Chuỗi(500) HINHTHUC Mô tả hình thức khuyến mãi Chuỗi(500) FILE_DK Điều kiện sau khi đã phân Chuỗi(1500) Phụ lục C. CÁC VẤN ĐỀ KHÁC 135 tích thành chuỗi định dạng XML FILE_TH Hình thức khuyến mãi đã phân tích thành chuỗi định dạng XML Chuỗi(1500) Danh sách chi tiết khuyến mãi của các chương trình khuyến mãi có trong hệ thống. Mỗi chi tiết khuyến mãi có một số thứ tự để phân biệt với các chi tiết khuyến mãi khác trong cùng một chương trình khuyến mãi; có thông tin về mô tả hình thức khuyến mãi, mô tả hình thức khuyến mãi, điều kiện sau khi đã phân tích thành chuỗi định dạng XML, hình thức khuyến mãi đã phân tích thành chuỗi định dạng XML. 10. TANG_PHAM Giao dịch MAMH Mã số mặt hàng Chuỗi(50) MACTKM Mã chương trình khuyến mãi dành cho MH Số nguyên SOLUONG Số lượng tổng cộng được khuyến mãi Số thực MAMH_TUCT Mã mặt hàng do phía công ty quản lý Chuỗi(20) MALL Mã dung để liên lạc với công ty Chuỗi(50) SLCONLAI Số lượng còn lại dành cho chương trình khuyến mãi Số nguyên Danh sách tặng phẩm dành cho các chương trình khuyến mãi. Mỗi tặng phẩm có mã số mặt hàng để phân biệt với các tặng phẩm khác, Có mã số CTKM để phân biệt với CTKM khác cũng dùng mặt hàng này làm tặng phẩm; có thông tin về số lượng tổng cộng dành cho chương trình khuyến mãi, mã mặt hàng do công ty quản lý, mã dung để liên lạc với các công ty. số lượng còn lại dành cho chương trình khuyến mãi. 11. THAMCHIEU_MAMH Giao dịch BATDAUMADM Chuỗi kí tự đại diện cho mã danh mục Chuỗi(20) BATDAUMAMH Chuỗi kí tự bắt đầu trong mã mặt hàng Chuỗi(20) HINHANH Cách đặt tên file hình ảnh theo danh mục Chuỗi(20) MOTA Mô tả về danh mục Chuỗi(20) Danh sách quy tắc đặt tên mặt hàng theo danh mục. Mỗi quy tắc có chuỗi kí tự đại diện cho danh mục mà mặt hàng thuộc về; Phụ lục C. CÁC VẤN ĐỀ KHÁC 136 có thông tin về chuỗi kí tự dùng để bắt đầu trong mã mặt hàng, cách đặt tên tập tin hình ảnh theo danh mục, và thông tin mô tả về danh mục. 12. DANG_NHAP Giao dịch MANHOM Mã nhóm của người dùng Số nguyên QUYEN Quyền của người dùng Chuỗi(20) Danh sách các nhóm người dung tham gia hệ thống. Mỗi nhóm có mã số nhóm để phân biệt với các nhóm khác; có thông tin về quyền sử dụng hệ thống của người dung. C.2 Sử dụng XML trong ngôn ngữ Csharp Trong C#, ta sử dụng một số hàm trong namespace Xml của System dưới đây: STT Tên hàm Tên lớp Ý nghĩa 1 Load XmlDocument Lấy tài liệu XML từ một file XML 2 CreateElement XmlDocument Tạo node chưa có nội dung 3 CreateTextNode XmlDocument Tạo nội dung dạng text cho một node 4 Save XmlDocument Lưu lại tài liệu XML vào một file 5 SelectSingleNode XmlDocument Lấy ra node đầu tiên thoả một biểu thức XPath 6 SelectNodes XmlDocument Lấy ra danh sách các node thoả một biểu thức XPath 7 AppendChild XmlNode Thêm một node là node con cuối cùng của một node đã biết 8 RemoveChild XmlNode Xoá một node trong DOM tree 9 SetAttribute XmlElement Thêm một thuộc tính cho node 10 ChildNodes XmlElement Lấy ra tất cả các node con của một node Hàm để load tập tin XML ChuongTrinhQuangCao.xml: public XmlDocument Get_XmlDoc() { XmlDocument xDoc = new XmlDocument(); // Đường dẫn chứa file cần load string path = “F:\\ChuongTrinhQuangCao.xml”; xDoc.Load(path); } Phụ lục C. CÁC VẤN ĐỀ KHÁC 137 Hàm thêm 1 node mới là con của một node xNode trong xDoc, node mới này có tên là strTag và có nội dung là strText: private XmlElement InsertTextNode(XmlDocument xDoc, XmlNode xNode, string strTag, string strText) { XmlNode xNodeTemp; xNodeTemp = (XmlNode)(xDoc.CreateElement(strTag)); xNodeTemp.AppendChild(xDoc.CreateTextNode(strText)); xNode.AppendChild(xNodeTemp); xDoc.Save(“F:\\ChuongTrinhQuangCao.xml”); return (XmlElement) (xNodeTemp); } Hàm thêm 1 attribute mới cho node xNode trong xDoc, attribute mới này có tên là strTag và có nội dung là strText: private void InsertAttribute(XmlDocument xDoc,XmlNode xNode ,string strTag, string strText) { xNode.SetAttribute(strTag, strText); xDoc.Save(“F:\\ChuongTrinhQuangCao.xml”); } Hàm xoá 1 node xDelNode là con của node xNode trong xDoc: private void RemoveNode(XmlDocument xDoc, XmlNode xDelNode, XmlNode xNode) { XmlNode boardStatusNode; xNode.RemoveChild(xDelNode); xDoc.Save(“F:\\ChuongTrinhQuangCao.xml”); } Phụ lục C. CÁC VẤN ĐỀ KHÁC 138 Hàm lấy nội dung của tất cả các node con của node xNode trong xDoc: private string[] getAllChildNodes(XmlDocument xDoc, XmlNode xNode) { string[] str = new string[xElement.ChildNodes.Count]; XmlElement xElement = (XmlElement)xNode; for (int i=0; i<xElement.ChildNodes.Count; i++) { XmlNode xField = xElement.ChildNodes[i]; str[i] = xField.InnerText; } xDoc.Save(“F:\\ChuongTrinhQuangCao.xml”); return str; } C.3 Một số control trong ASP.Net HTML Server Controls STT Tên TAG Tên lớp Một số thuộct tính Sự kiện 1 HtmlAnchor Href, Target, Title, Name OnServer Click 2 HtmlImage Align, Alt, Border, Height, Src, Width 3 HtmlForm Name, Enctype, Method, Target 4 HtmlButton CausesValidation OnServer Click 5 HtmlInput Button Name, Type, Value, OnServer Click 6 <input type="password"> HtmlInput Text MaxLength, Name, Size, Type, Value OnServer Change 7 <input HtmlInput Checked, Name, Type, OnServer Phụ lục C. CÁC VẤN ĐỀ KHÁC 139 type="checkbox"> CheckBox Value Change 8 HtmlInput RadioButton Checked, Name, Type, Value OnServer Change 9 HtmlInput Image Align, Alt, Border, Name, Src, Type, Value, CausesValidation OnServer Click 10 HtmlInput File Accept, MaxLength, Name, PostedFile, Size,Type, Value Không có 11 HtmlInput Hidden Name, Type, Value OnServer Change 12 HtmlText Area Cols, Name, Rows, Value OnServer Change 13 HtmlSelect SelectedIndex, Size, Value, DataSource, DataTextField, DataValueFieldItems OnServer Change 14 HtmlTable Align, BgColor, Border, BorderColor, CellPadding, CellSpacing, Height, NoWrap,WidthRows 15 HtmlTable Row Align, BgColor, Border, BorderColor, Height,ValignCells 16 HtmlTable Cell Align, BgColor, Border, BorderColor, ColSpan, Height, NoWrap, RowSpan, VAlign, Width Phụ lục C. CÁC VẤN ĐỀ KHÁC 140 Web Server Controls – List Control : • Một số list control “ Repeated Binding” thông dụng : o Reapeater o DataGrid o DataList • Những control trên đều được hổ trợ vịêc thiết kế template cho từng thành phần trong control và chỉ định được trường dữ liệu tương ứng khi đổ dữ liệu vào . Mỗi dòng dữ lịêu trong list được xem như một DataItem trong Container và được xác định các trường dữ liệu cần hiển thị Ví dụ : = • Đặc biệt đối với 2 control : Datalist và datagrid , ASP.NET hổ trợ tính năng sọan thảo trên control Ví dụ : Tạo trang có chứa Data grid như sau : <ASP:DataGrid id="MyDataGrid" runat="server" CellPadding = "2" EditItemStyle-BackColor="yellow" EditItemStyle-ForeColor="black" DataKeyField="ISBN" OnEditCommand="DoItemEdit" OnUpdateCommand="DoItemUpdate" OnCancelCommand="DoItemCancel" AutoGenerateColumns="False"> <ASP:BoundColumn DataField="ISBN" HeaderText="ISBN" ReadOnly="True" /> ' runat="server" /> <ASP:TextBox id="txtTitle" Size="60" runat="server" Text='' /> <ASP:BoundColumn DataField="PublicationDate" HeaderText="Published" /> Phụ lục C. CÁC VẤN ĐỀ KHÁC 141 <ASP:EditCommandColumn EditText="Edit" CancelText="Cancel" UpdateText="Update" /> Kết quả trang sau khi chạy và chọn dòng dữ liệu đầu tiên như sau : Khi nhấn vào button Edit , thì DataGrid bị biến đổi như sau : Phụ lục C. CÁC VẤN ĐỀ KHÁC 142 • Control Data list chứa hổ trợ template của các DataItem là bảng . Do đó , nếu sử dụng Data List thì bạn có thể nhúng hình ảnh , hyperlink vào trong từng DataItem. Validation Controls ( Control xác định tính hợp lệ ) Một số control thông dụng : Validation Control Mô tả RequiredFieldValidator Control Việc xác nhận tính hợp lệ cho control input thành công khi dữ liệu nhập vào trong input control . Nếu không có dữ liệu , thì control này sẽ thông báo lỗi CompareValidator Control Kiểm tra giá trị trong 2 input control là giống nhau . RangeValidator Control Kiếm tra giá trị nhập vào của input control phải nằm giữa 2 số min và max được qui định bởi người lập trình RegularExpressionValidat or Control Kiểm tra giá trị nhập vào của input control phải tuân theo một biểu thức đã xác định Vd : *@.* : đây là biểu thức qui định cho việc nhập địa chỉ mail Phụ lục D. TÀI LIỆU THAM KHẢO 143 Phụ lục D TÀI LIỆU THAM KHẢO [1] Efraim Turban - David King - Jae Lee - Merril Warkentm - H. Michael Chung, Electronic Commerce – A MANAGERIAL PERSPECTIVE, 2002 [2] Mesbah Ahmed - Chris Garrett - Jeremy Faircloth - Chris Payne, ASP.NET Web Developer’s Guide [3] Richard Anderson - Brian Francis - Alex Homer - Rob Howard - David Sussman - Karli Watson, Professional ASP.NET 1.0 Special Edition, 2002 [4] Jeff Prosise, Programming Microsoft .NET, 2002 [5] Jone Connell, Coding Techniques for Microsoft VISUAL BASIC.NET, 2002 Trang web : [1] Amazon.com [2] eBay.com [3] [4]

Các file đính kèm theo tài liệu này:

  • pdfCNTT1011.pdf
Tài liệu liên quan