Chức năng đặt mua hàng trực tuyến:

Một phần của tài liệu Thông tin về nhóm thiết kế website sử dụng công nghệ ASP net (Trang 41 - 47)

Chức năng này để cho khi khách hàng muốn đặt mua hàng và thanh toán qua mạng. Với Chức năng này chúng ta sẽ cần 3 bảng cơ sở dữ liệu:

Bảng Phương Thức Thanh Toán là bảng chứa các kiểu thanh toán như là Tiền Măt, thẻ,...

Còn Bảng Đơn Hàng là bảng chính. Mỗi một khách hàng khi đặt mua hàng sẽ có một đơn hàng. Trong mỗi đơn hàng có nhiều đơn hàng chi tiết. Đơn hàng chi tiết sẽ lưu trữ mã sản phẩm, số lượng, đơn giá cho mỗi một mã sản phẩm. Còn Bảng Đơn Hàng sẽ chứa thông tin chung như tên khách hàng, địa chỉ, điện thoại, ngày đặt hàng, ngày hẹn thanh toán, trạng thái là đã thanh toán hay chưa.

Ví dụ như lúc trước ta có một giỏ hàng với 3 mã sản phẩm. Khi một khách hàng đặt mua hàng sẽ có 1 đơn hàng + 3 đơn hàng chi tiết. Và Lưu ý chức năng này để tiện việc quản lý ta bắt người dùng phải đăng ký thành viên của trang web mới có thể truy cập tới. Để tránh người dùng đặt bừa, đặt ẩu. Chức năng này được truy nhập qua trang giỏ hàng. Ở nút “Đặt Hàng”.

Nếu chưa đăng nhập vào tài khoản thành viên sẽ không thể nào dùng được chức năng này và sẽ bị điều hướng về trang đăng nhập.

Ta sẽ đăng nhập một tài khoản và đặt hàng thử xem. Sau khi bấm vào nút đặt hàng bạn sẽ được chuyển sang trang đặt hàng. Ở trang đặt hàng này bạn sẽ kiểm tra lại những mặt hàng có trong giỏ hàng của mình một lần nữa. Nếu đồng ý bạn hãy nhập thông tin liên quan vào Form đặt hàng với các trường dữ liệu cần thiết. Tên khách hàng sẽ lấy chính tên của thành viên đó. Ngày đặt hàng là ngày giờ hiện tại:

Ta cũng sẽ kiểm soát một số lỗi nhập liệu không đủ với trường địa chỉ và điện thoại, và trường thời gian hẹn thanh toán:

Với kiểu Date nên ta sử dụng DatePicker để chọn ngày:

Và nếu nhập đầy đủ thông tin thì sẽ không còn lỗi trên form nhập liệu nữa. Tuy nhiên chúng ta phải kiểm soát thêm một trường hợp có thể phát sinh ra nữa là mỗi thành viên sẽ không thể đặt quá 3 đơn hàng với trạng thái là chưa

thanh toán và mỗi đơn hàng chỉ được có 5 loại sản phẩm mà thôi. Để tránh số lượng đơn hàng rác quá nhiều:

Vì thành viên này đã có 3 đơn hàng chưa thanh toán và trong giỏ hàng có tới 6 sản phẩm nên để đặt được hàng thì thành viên này buộc phải hủy bớt số hàng trong giỏ hàng và hủy đi đơn hàng có trạng thái chưa thanh toán:

Ta có thể kiểm tra ngay bên dưới sẽ có danh sách các đơn hàng của thành viên vừa đăng nhập này.

Ta thấy có 3 đơn hàng với trạng thái chưa thanh toán nên không thể nào đặt mua hàng được nữa

Và để mua hàng ta sẽ phải hủy bớt đơn hàng ta đã đặt đi. Và để hủy một đơn hàng nào đó của thành viên này ta sẽ phải hủy từng đơn hàng chi tiết trước. Nếu trong một đơn hàng không còn đơn hàng chi tiết nào nó sẽ tự động xóa khỏi CSDL. Điều này để khi người dùng muốn hủy một mặt hàng trong đơn hàng đi sẽ tiện hơn là xóa cả đơn hàng đi.

Ở đây có 3 đơn hàng chưa thanh toán có mã đơn hàng là 123, 129, 130. Ta sẽ thử xóa đơn hàng 123 đi. Để xóa đơn hàng này ta sẽ chọn trong bảng các đơn hàng tới dòng cần sủa rồi bấm vào nút xem đơn hàng chi tiết.

Và trang sẽ tự động load lại. Tất cả những đơn hàng chi tiết của đơn hàng có mã đơn hàng 123 này sẽ được hiển thị xuống dưới bảng đơn hàng của bạn:

Ta có thể bấm vào nút Xóa đơn hàng chi tiết để hủy đơn hàn chi tiết có mã 91,92,116 này đi.

Đơn hàng chi tiết 91,92.116 này thuộc đơn hàng 123 mà ta muốn hủy. Vì nó chỉ có tới 3 đơn hàng chi tiết nên ta sẽ phải xóa 3 đơn hàng chi tiết đi thì đơn hàng này mới hủy.

Sau khi Đơn hàng chi tiết 91,92.116 bị xóa và kèm theo đơn hàng thứ 123 sẽ bị xóa luôn. Ta sẽ kiểm tra. Lúc này trong danh sách và trong cả bảng đơn hàng của thành viên sẽ biến mất đơn hàng thứ 123.

Và bây giờ ta đã có thể đặt một đơn hàng mới với 3 mã sản phẩm vừa chọn trong giỏ hàng.

Sau khi điền đủ thông tin cần thiết và bấm vào nút Đặt Hàng thì giỏ hàng sẽ bị xóa đi và ở trang quản lý đơn hàng của thành viên này một đơn hàng mới sẽ được thêm vào với trạng thái là chưa thanh toán:

Một đơn hàng có mã đơn hàng là 131 đã được thêm vào và hiển thị ngay trên cùng trong bảng đơn hàng của bạn với 3 sản phẩm, giá tiền bằng giá 3 sản phẩm * (số lượng mỗi sản phẩm- giá tiền khuyến mại), trạng thái chưa thanh toán, ngày bắt đầu đặt hàng là ngày giờ hiện tại. Và theo kèm với đơn hàng này là 3 đơn hàng chi tiết có mã sinh tự động. ta sẽ kiểm tra bằng cách bấm vào nút xem đơn hàng chi tiết:

Và ta có 3 đơn hàng chi tiết có mã là 121,122,123 được tạo ra tương ứng với 3 sản phẩm mà ta đã chọn trong giỏ hàng lúc trước.

Một phần của tài liệu Thông tin về nhóm thiết kế website sử dụng công nghệ ASP net (Trang 41 - 47)