Skip to content

Supermarket Sales Management – A Windows Forms App in C# for managing products, customers, and invoices. Supports OOP principles, data serialization, and reporting features to streamline supermarket sales operations.

Notifications You must be signed in to change notification settings

datweb07/OOP_final_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quản lý bán hàng siêu thị

Ứng dụng Windows Forms (.NET Framework) trong C# để quản lý doanh số bán hàng siêu thị với giao diện đơn giản và thân thiện với người dùng. Dự án này áp dụng các nguyên tắc Lập trình hướng đối tượng (OOP).

Chức năng

  • Quản lý sản phẩm, khách hàng và hóa đơn
  • Áp dụng các nguyên tắc OOP: Đóng gói, Trừu tượng, Kế thừa và Đa hình
  • Giao diện menu với WinForms

Yêu cầu

Dự án này chạy trên nền .NET Framework 4.7.2 and sử dụng NetDataContractSerializer để serialization/deserialization.

Hướng dẫn chạy dự án

Bước 1: Cài Đặt Môi Trường

1.1. Cài đặt Visual Studio

  1. Tải Visual Studio 2022
  2. Trong Visual Studio Installer, chọn:
    • .NET desktop development
    • Data storage and processing
Visual Studio Installer

1.2. Cài đặt SQL Server LocalDB

# Kiểm tra đã cài đặt chưa
sqllocaldb info

# Nếu chưa có, tải từ Microsoft SQL Server Express

Bước 2: Clone Dự Án

Cách 1: Sử dụng Git (Khuyến nghị)

git clone https://github.com/datweb07/OOP_final_Project.git
cd OOP_final_Project

Cách 2: Download ZIP

  1. Vào repository
  2. Click CodeDownload ZIP
Download ZIP
  1. Giải nén folder OOP_final_Project-main
  2. Mở file OOP_finalProject.sln bằng Visual Studio

Bước 3: Cấu Hình Database

3.1. Thêm Database Connection

  1. Trong Visual Studio: ViewServer Explorer
  2. Chuột phải vào Data ConnectionsAdd Connection...
  3. Click Browse... → Chọn file Data.mdf trong thư mục dự án
  4. Click Test Connection để kiểm tra
  5. Click OK để hoàn tất
Add Connection

3.2. Tạo Bảng Users

  1. Chuột phải vào Data.mdfNew Query
  2. Copy và chạy script sau:
-- Tạo bảng users
CREATE TABLE [dbo].[users] (
    [id]           INT IDENTITY (1,1) NOT NULL,
    [email]        VARCHAR(255) NOT NULL UNIQUE,
    [username]     VARCHAR(100) NOT NULL UNIQUE,
    [password]     VARCHAR(255) NOT NULL,
    [role]         VARCHAR(20) NOT NULL DEFAULT 'seller',
    [date_created] DATETIME DEFAULT GETDATE(),
    [last_login]   DATETIME NULL,
    PRIMARY KEY CLUSTERED ([id] ASC)
);

-- Thêm dữ liệu mẫu
INSERT INTO [dbo].[users] ([email], [username], [password], [role]) VALUES 
('[email protected]', 'admin01', '123456', 'admin'),
('[email protected]', 'admin02', '123456', 'admin'),
('[email protected]', 'seller01', 'seller123', 'seller'),
('[email protected]', 'seller02', 'seller123', 'seller');

-- Kiểm tra dữ liệu
SELECT * FROM [dbo].[users] ORDER BY [role], [username];
  1. Click Execute (hoặc F5)
Database Created

3.3. Cấu Hình Connection String

  1. Trong Server Explorer, chuột phải vào Data.mdfProperties
  2. Copy giá trị của Connection String
  3. Mở file LoginForm/SignIn.cs, tìm dòng:
SqlConnection conn = new SqlConnection(@"");
  1. Thay thế bằng Connection String vừa copy
  2. Làm tương tự với LoginForm/SignUp.cs
Connection String

Bước 4: Build & Run

  1. Rebuild Solution:

    • Chuột phải vào Solution → Rebuild Solution
  2. Chạy ứng dụng:

    • Nhấn F5 hoặc click Start
    • Ứng dụng sẽ mở màn hình đăng nhập

Một vài lỗi thường gặp (Updating)

z7177214442760_5085ced100eae0a45e510aed40cb8a4e

Lỗi này xuất hiện vì Windowns chặn các file .resx (download từ Internet như Github,... và bị đánh dấu là không an toàn) nên cần phải unblock như sau:

  • Trong Visual Studio 2022, vào View, chọn Terminal, cửa số Developer PowerShell sẽ hiện lên, nhập câu lệnh này vào và nhấn Enter:
Get-ChildItem -Recurse | Unblock-File

z7228885679135_e959e715ce93ede36a75be09a2ce99e3

Lỗi màn hình hiển thị không hết Form giao diện, fix như sau:

  • Vào Settings, chọn System -> Display -> chọn Scale bằng 100%

Nhóm Phát Triển

Thành viên Vai trò
Truong Thanh Dat Team Leader
Phan Khac Anh Tuan Member
Nguyen Phuong Chinh Member
Nguyen Tan Khiem Member

Cập nhật lần cuối: October 2025

About

Supermarket Sales Management – A Windows Forms App in C# for managing products, customers, and invoices. Supports OOP principles, data serialization, and reporting features to streamline supermarket sales operations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published