CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI Thống kê báo cáo sản phẩm, thông tin khách hàng, chi tiết doanh thu từng khách hàng. Xuất file báo cáo cho cửa hàng hằng tháng, năm, quý giúp quản lý được doanh thu của sàn. Đối với sinh viên Nhóm đã tự thiết kế mô hình, thiết kế database dựa trên những tài liệu thu thập, những quy trình đã tìm hiểu và sự hướng dẫn của giảng viên hướng dẫn. Sau đó thực hiện viết code để thực hiện hóa hệ thống.
Cho chạy thử ở local và sau đó là trêm server Azure. GVHD: TRẦN HỮU DUẬT 17 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Xây dựng thiết kế một sàn thương mại điện tử hoàng chỉnh Tầm quan trọng việc thiết kế website bán nông sản Sau khi tìm hiểu thì em rút ra ngày nay, công nghệ thông tin ngày càng phát triển đã thay đổi nhận thức kinh doanh của toàn xã hội. Có thể thấy, các sản phẩm, dịch vụ đều được bày bán trên Internet một cách hiệu quả kể cả mặt hàng nông sản. Vì thế em đã suy nghĩ được xem là điều cần thiết bên cạnh các trang mạng xã hội.
Ngoài ra, giờ đây cuộc sống ngày càng được nâng cao về chất lượng vì thế nhu cầu tìm kiếm nguồn gốc, xuất xứ, chất lượng hàng hóa thực phẩm của người tiêu dùng ngày càng trở nên khắt khe hơn. Chính vì thế, bên cạnh nâng cao chất lượng sản phẩm nông sản, truyền thông thương hiệu, khẳng định sự uy tín, chuyên nghiệp thì việc thiết kế lên một “Xây Dựng Sàn Thương Mại Điện Tử” chính là giải pháp tối ưu nhất được em lựa chọn làm đề tài tốt nghiệp. Trong bối cảnh đó, em đã nghĩ đến giải pháp thiết kế sàn thương mại bán hàng nông sản nhằm hỗ trợ các thương lái bán rau củ tại địa phương em đưa lên sàn thương mại điện tử một cách nhanh chóng và ít tốn kém chi phí phải thuê các sạp bán.2 Các chức năng trong một sàn thương mại điện tử Thiết kế đồ họa, giao diện: Thiết kế giao diện đẹp, giao diện phù hợp các loại như: Máy tính bàn, Laptop, Ipad, điện thoại, … Module giới về sàn: Trình bày thông tin về trang Website, Công khai các thiếu nại và góp ý trên trang Web, được đánh giá sản phẩm theo 1 đến 5 sao và kèm bình luận. Module giới thiệu về sản phẩm, dịch vụ: Cung cấp cho khách hàng những thông tin cần thiết về các sản phẩm dịch vụ được chia theo danh mục mỗi danh mục có nhiều sản phẩm bên trong trình bày dưới dạng list sản phẩm, giá cả.
Các thành phần này có thể bao gồm hình ảnh, mô tả và giá thành và không giới hạn danh mục sản phẩm. Module khách hàng: Bảo mật thông tin khách mua hàng. GVHD: TRẦN HỮU DUẬT 18 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Module quản lý sản phẩm: Có thể thêm/xóa/sửa các thể loại sản phẩm, không giới hạn số lượng, số phần trăm giảm giá. Module giỏ hàng: Bao gồm các chức năng giỏ hàng, đơn hàng, quản lý khách hàng… Khách hàng có thể chọn hàng và đăng ký đặt mua hàng một cách dễ dàng, thanh toán online qua Paypal hoặc nhận hàng kiểm tra xong mới thanh toán.
Module sản phẩm mới: Hiển thị các sản phẩm mới nhất của Sàn các hình ảnh tiêu biểu, khách hàng có thể click vào hình sản phẩm để xem thông tin và hình ảnh mô tả chi tiết về sản phẩm đó. Module sản phẩm bán chạy nhất sàn: Hiển thị các sản phẩm được mua thích nhiều nhất của sàn thông qua hình ảnh tiêu biểu, khách hàng có thêm xem ở đầu trang chủ và các thông tin mô tả chi tiết về các sản phẩm đó một cách cụ thể. Module tiện ích, thăm dò ý kiến: Giúp bạn thu thập được những phản hồi của khách hàng một cách hiệu quả nhất. Module tìm kiếm: Cho phép tìm các thông tin trên website bằng các từ khóa có liên quan.
Module quảng cáo: Cho phép đặt các quảng cáo logo, banner trên website. Module tuyển dụng: Hiển thị thông tin tuyển dụng, cơ hội việc làm. Công nghệ sử dụng 2. Sử dụng công nghệ Spring boot Spring Boot là một trong số các module của Spring framework, cung cấp tính năng RAD (Rapid Application Development).
Spring Boot được sử dụng để tạo ra một ứng dụng độc lập dựa trên Spring mà có thể chạy ngay với rất ít cấu hình cần thêm. Spring Boot không cần đến bất kỳ cấu hình xml nào, mà nó sử dụng quy ước về mô hình thiết kế phần mềm theo cấu hình, có nghĩa là nó giảm tải công việc cho các lập trình viên. Ưu điểm của Spring boot Những ưu điểm đó bao gồm: Tạo các ứng dụng Spring độc lập có thể được chạy bằng bằng cách sử dụng lệnh java. GVHD: TRẦN HỮU DUẬT 19 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Được nhúng sẵn Web sever Tomcat, Jetty hoặc Undertow.
Không cần triển khai bằng các tệp WAR. Cung cấp sẵn các thư viện ‘starter’ để đơn giản hóa cấu hình Maven/Gradle. (Maven là một công cụ quản lý dự án phần mềm được sử dụng chủ yếu cho các dự án dựa trên Java, Gradle là một công cụ tự động hóa xây dựng nguồn mở. Đây là công cụ xây dựng chính thức cho Android).
Tự động cấu hình Spring bất cứ khi nào có thể. Nó cung cấp các tính năng “ăn liền” như đo đếm số liệu hay kiểm tra cấu hình của app. Không yêu cầu cấu hình XML. Thư viện Spring security có những gì? Spring Security là một trong những tính năng cốt lõi quan trọng của Spring Framework, nó giúp chúng ta phân quyền và xác thực người dùng trước khi cho phép họ truy cập vào trang web quản trị của mình.
Thuật ngữa thư viện Spring security Có 9 thuận ngữ được sử dụng trong bài như: Authentication, Authorization, Principle, Gran-ted authority, Role, Encoding, En-crypt và Hashing. Thuật ngữ thư viện Authentication Authentication: quá trình xác minh người dùng, dựa vào thông tin đăng nhập mà người dùng cung cấp. Ví dụ khi đăng nhập vào hệ thống, bạn nhập tài khoản và mật khẩu, nó giúp hệ thống nhận ra bạn là khách hàng nhân viên hay là admin quản lý. Thuật ngữ thư viện Authorization Authorization: Quá tình xác định xem user có quyền thực hiện những chức năng nào của hệ thống (thêm/sửa/xóa data), sau khi người dùng đã authenticated thành công.
Hiểu nôm na thì authentication là cái công thứ nhất, xem người dùng có thuộc hệ thống hay không, authorization là cái cổng thứ hai, xem người dùng được phép làm những gì trong hệ thống đó. GVHD: TRẦN HỮU DUẬT 20 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Ví dụ như: nhân viên thì có thể quản lý phần thêm /sữa/xóa /data phần loại hàng mặt hàng nhập. Thuận ngữ thư viện Principle Chỉ authenticated user hiện tại (user đã đăng nhập thành công và thực hiện action hiện tại). Thuật ngữ thư việnGranted authority Quyền được sát thực người dùng là ai có thể làm những chức năng gì 2.
Thuật ngữ thư viện Role Phần này là một nhóm quyền được admin cấp cho user (nhân viên) 2. Thuật ngữ thư việnEncoding Quá trình chuyễn đổi dữ liệu từ dạng này sang dạng khác, không sử dụng mã hóa. Trong nhiều trường hợp, encoding dùng để giảm độ dài của dữ liệu (video và audio file). Một số kiểu encoding thường dùng: ASCII, BASE64, UNICODE.
Thuật ngữ thư viện Encrypt Quá trình chuyễn đổi dữ liệu mà các dữ liệu này cần được bảo vệ. Có 2 kiểu encrypt là symetric (đối xứng) và asymetric (bất đối xứng). Về cơ bản thì mã hóa đối xứng là sử dụng 1 khóa (gọi là khóa bí mất) để mã hóa dữ liệu và giải mã dữ liệu, một số thuật toán mã hóa đối xứng thường gặp là AES-128, AES-192, AES-256. Thuật ngữ thư viện Hashin Quá trình chuyển đổi dữ liệu thành một chuỗi hàm.
Một số giải thuật chuỗi thường gặp: MD5, SHA256. Dữ liệu chuỗi không thể được chuyển đối theo hướng ngược lại (theo lý thuyết). Do vậy, một trong những ứng dụng quan trọng của hashing là lưu password. Sử dụng ngôn ngữ lập trình Javascript Javascript là một ngôn ngữ lập trình website, được tích hợp và nhúng trong HTML và giúp cho website trở nên sống động hơn.
Đây là dạng ngôn ngữ theo kịch bản, được hình thành dựa trên chính đối tượng phát triển có sẵn hoặc đơn giản là tự định nghĩa ra. Javascript cho phép bạn kiểm soát các hành vi của trang web tốt hơn so với việc chỉ sử dụng mỗi HTML. Có thể kể đến một vài ứng dụng thực tiễn cực kỳ GVHD: TRẦN HỮU DUẬT 21 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT quen thuộc của Javascript như slideshow, pop-up quảng cáo hay tính năng autocomplete của Google, … chúng đều được viết bằng ngôn ngữ Javascript. hình 1: Javascrip là gì? Ứng dụng của Javascript Hiện nay, Javascript được ứng dụng trong rất nhiều lĩnh vực phổ biến như: Lập trình website Xây dựng ứng dụng cho website máy chủ Ứng dụng di động, app, trò chơi Cụ thể hơn, khi bạn tải một trang web, trình duyệt sẽ phân tích cú pháp HTML và tiến hành tạo ra một loại dữ liệu gọi là DOM từ nội dung.
DOM sẽ thể hiện chế độ xem trực tiếp của trang web với mã Javascript. Đoạn mã này sẽ thực hiện cập nhật cho DOM và được trình bày ngay lập tức trước mắt người dùng. Ngôn ngữ lập trình thông dụng, phổ biến. Javascript được người dùng đánh giá là ngôn ngữ lập trình đơn giản, dễ dàng tìm hiểu cũng như sử dụng.
Với những cú pháp tương đối giống với tiếng Anh thì việc bạn có thể thực hiện thao tác với Javascript một cách dễ dàng và nhanh chóng. Thông qua mô hình DOM được sử dụng, cung cấp tới nhiều tính năng hữu ích, được viết sẵn và đem lại khả năng đáp ứng tốt với những nhu cầu, đòi hỏi khác nhau từ phía người dùng. Với những tính năng hữu ích mà ngôn ngữ lập trình này mang lại thì việc phát triển kịch bản nhằm giải quyết yêu cầu, mục đích cũng trở nên dễ dàng hơn. Nhờ vậy mà những mục đích tùy chỉnh của con người được đáp ứng hiệu quả với sự hỗ trợ tối đa từ Javascript.
Độ nhanh chóng với người dùng cuối. Việc sử dụng ngôn ngữ Javascript có khả năng đảm bảo khi mã được thực hiện trên thiết bị máy tính của người dùng đồng nghĩa với việc quá trình xử lý lẫn kết quả GVHD: TRẦN HỮU DUẬT 22 SVTH: HỒ ĐẠI HUYNH Đồ án tốt nghiệp CHƯƠNG 2: CƠ SỞ LÝ THUYẾT đều được hoàn thành ngay lập tức. Thời gian cụ thể sẽ phụ thuộc vào từng nhiệm vụ tương ứng thời gian nhất định, tuy nhiên thường thì các vấn đề sẽ được giải quyết nhanh chóng.