Trong hướng dẫn trước của chúng tôi, bạn đã học cách phát triển Hệ thống quản lý nhà hàng bằng PHP và MySQL. Trong hướng dẫn này, bạn sẽ học cách phát triển Hệ thống thanh toán GST với PHP và MySQL
Hệ thống hóa đơn hoặc hóa đơn GST là một ứng dụng trực tuyến được sử dụng trong các cửa hàng, nhà máy để tạo hóa đơn đặt hàng. Nó cho phép thêm các mặt hàng hoặc chi tiết sản phẩm, tạo người dùng, quản lý thuế và hóa đơn. Hệ thống hóa đơn cung cấp các tính toán tức thời về mặt hàng, số lượng, thuế và tổng số
Ngoài ra, đọc
- Hệ thống quản lý khách truy cập với PHP & MySQL
Vì vậy, nếu bạn là một lập trình viên PHP và đang tìm kiếm giải pháp để phát triển hệ thống Hóa đơn hoặc Hóa đơn GST của riêng mình, thì bạn đang ở đúng nơi. Trong hướng dẫn này, chúng tôi sẽ đề cập đến hướng dẫn phát triển hệ thống thanh toán với PHP và MySQL
Ở đây trong hướng dẫn này, chúng tôi sẽ phát triển một ví dụ về hệ thống thanh toán trực tuyến và đề cập đến những điều sau đây
Quản trị viên sẽ làm như sau
- Quản lý Mặt hàng/Sản phẩm
- Quản lý thuế
- Quản lý Thanh toán / Hóa đơn
- Quản lý người dùng
Người dùng bình thường sẽ làm như sau
- Quản lý Thanh toán / Hóa đơn
Vì vậy, hãy triển khai hệ thống thanh toán trực tuyến. Các tập tin chính là
- mặt hàng. php
- thuế. php
- hóa đơn. php
- người dùng. php
- Người sử dụng. php. Lớp người dùng để giữ các phương thức liên quan đến người dùng
- Mục. php. Lớp vật phẩm để giữ các phương thức liên quan đến các mặt hàng thực phẩm
- Thuế. php. Lớp thuế để giữ các phương thức liên quan đến thuế
- Hóa đơn. php. Lớp hóa đơn để giữ các phương thức liên quan đến quản lý hóa đơn
Bước 1. Tạo bảng cơ sở dữ liệu MySQL
Chúng tôi sẽ tạo các bảng cơ sở dữ liệu MySQL. Vì vậy, chúng tôi sẽ tạo bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;1 để lưu trữ chi tiết đăng nhập của người dùng
CREATE TABLE `billing_user` [ `id` int[11] UNSIGNED NOT NULL, `first_name` varchar[255] DEFAULT NULL, `last_name` varchar[255] DEFAULT NULL, `gender` enum['Male','Female'] NOT NULL, `email` varchar[255] DEFAULT NULL, `password` varchar[64] NOT NULL, `mobile` varchar[12] NOT NULL, `address` text NOT NULL, `created` datetime NOT NULL DEFAULT current_timestamp[], `role` enum['admin','user'] DEFAULT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8;
ta sẽ tạo bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;2 để lưu irem/chi tiết sản phẩm
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
chúng tôi sẽ tạo bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;3 để lưu trữ chi tiết thuế CGST, SGST, v.v.
CREATE TABLE `billing_tax` [ `id` int[11] NOT NULL, `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `percentage` decimal[4,2] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable' ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
chúng tôi sẽ tạo bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;4 để lưu trữ chi tiết đơn đặt hàng hoặc hóa đơn
CREATE TABLE `billing_order` [ `id` int[11] NOT NULL, `gross_amount` decimal[12,2] NOT NULL, `tax_amount` decimal[12,2] NOT NULL, `net_amount` decimal[12,2] NOT NULL, `created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `created_by` int[11] NOT NULL, `status` enum['In Process','Paid'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'In Process' ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
và chúng tôi sẽ tạo bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;5 để lưu trữ các mặt hàng đặt hàng/chi tiết mặt hàng hóa đơn
CREATE TABLE `billing_order_item` [ `id` int[11] NOT NULL, `order_id` int[11] NOT NULL, `item_id` int[11] NOT NULL, `quantity` int[4] NOT NULL, `rate` decimal[12,2] NOT NULL, `amount` decimal[12,2] NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Bước 2. Quản lý Mặt hàng/Sản phẩm
Trong phần này, chúng tôi sẽ quản lý các mặt hàng để hiển thị danh sách các mặt hàng. Chúng tôi sẽ triển khai chức năng thêm các mục mới bằng chỉnh sửa và xóa. Chúng tôi sẽ tạo một phương thức
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;6 trong lớp
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;7 để trả về danh sách các mục dưới dạng dữ liệu JSON để tải trong bảng dữ liệu jQuery
CREATE TABLE `billing_user` [ `id` int[11] UNSIGNED NOT NULL, `first_name` varchar[255] DEFAULT NULL, `last_name` varchar[255] DEFAULT NULL, `gender` enum['Male','Female'] NOT NULL, `email` varchar[255] DEFAULT NULL, `password` varchar[64] NOT NULL, `mobile` varchar[12] NOT NULL, `address` text NOT NULL, `created` datetime NOT NULL DEFAULT current_timestamp[], `role` enum['admin','user'] DEFAULT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8;2
Chúng tôi sẽ thực hiện phương pháp
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;8 để chèn các mục
CREATE TABLE `billing_user` [ `id` int[11] UNSIGNED NOT NULL, `first_name` varchar[255] DEFAULT NULL, `last_name` varchar[255] DEFAULT NULL, `gender` enum['Male','Female'] NOT NULL, `email` varchar[255] DEFAULT NULL, `password` varchar[64] NOT NULL, `mobile` varchar[12] NOT NULL, `address` text NOT NULL, `created` datetime NOT NULL DEFAULT current_timestamp[], `role` enum['admin','user'] DEFAULT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8;4
Chúng tôi cũng sẽ triển khai phương pháp
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;9 để cập nhật các mục
CREATE TABLE `billing_user` [ `id` int[11] UNSIGNED NOT NULL, `first_name` varchar[255] DEFAULT NULL, `last_name` varchar[255] DEFAULT NULL, `gender` enum['Male','Female'] NOT NULL, `email` varchar[255] DEFAULT NULL, `password` varchar[64] NOT NULL, `mobile` varchar[12] NOT NULL, `address` text NOT NULL, `created` datetime NOT NULL DEFAULT current_timestamp[], `role` enum['admin','user'] DEFAULT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8;6
Bước 3. Quản lý hóa đơn
Trong phần này, chúng tôi sẽ triển khai chức năng quản lý đơn đặt hàng hoặc hóa đơn. Chúng ta sẽ tạo phương thức
CREATE TABLE `billing_tax` [ `id` int[11] NOT NULL, `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `percentage` decimal[4,2] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable' ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;0 trong lớp
CREATE TABLE `billing_tax` [ `id` int[11] NOT NULL, `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `percentage` decimal[4,2] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable' ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;1 để triển khai chức năng liệt kê hóa đơn
CREATE TABLE `billing_user` [ `id` int[11] UNSIGNED NOT NULL, `first_name` varchar[255] DEFAULT NULL, `last_name` varchar[255] DEFAULT NULL, `gender` enum['Male','Female'] NOT NULL, `email` varchar[255] DEFAULT NULL, `password` varchar[64] NOT NULL, `mobile` varchar[12] NOT NULL, `address` text NOT NULL, `created` datetime NOT NULL DEFAULT current_timestamp[], `role` enum['admin','user'] DEFAULT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8;9
chúng ta sẽ thực hiện phương pháp
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;8 trong lớp
CREATE TABLE `billing_tax` [ `id` int[11] NOT NULL, `tax_name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `percentage` decimal[4,2] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Enable' ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;1 để lưu hóa đơn mới với các chi tiết vào bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;4 và
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;5
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;4
chúng ta sẽ thực hiện phương pháp
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;9 để cập nhật chi tiết hóa đơn vào bảng
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;4 và
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;5
CREATE TABLE `billing_items` [ `id` int[11] NOT NULL, `name` varchar[250] COLLATE utf8_unicode_ci NOT NULL, `price` decimal[10,2] NOT NULL, `category_id` int[11] NOT NULL, `status` enum['Enable','Disable'] COLLATE utf8_unicode_ci NOT NULL ] ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;0
Chúng tôi cũng đã triển khai chức năng quản lý thuế, người dùng trong bản demo trực tiếp với chức năng thêm, chỉnh sửa và xóa