Quản lý thời gian hết hạn thẻ thành viên cửa hàng - rồng hồ
Trạng thái thẻ thành viên
Khi phát hành thẻ, cần thiết lập trường xác định trạng thái kích hoạt:
Trường status có thể được sử dụng như sau:
0 Chưa kích hoạt
1 Đã kích hoạt
2 Đã hết hạn
3 Đã hủy bỏ
4 Không còn lượt sử dụng
Loại thời hạn hiệu lực của thẻ
ExpireType int // Kiểu thời hạn hiệu lực. 1: Hiệu lực vĩnh viễn; 2: Hiệu lực trong N ngày kể từ khi mua; 3: Hiệu lực trong N ngày kể từ lần đầu sử dụng; 4: Trong khoảng thời gian cụ thể
ExpireValue string ban ca thuong // Lưu trữ các giá trị khác nhau tùy theo kiểu thời hạn hiệu lực. Đối với loại 2/3 lưu số ngày; đối với loại 4 lưu khoảng thời gian, phân tách bằng dấu phẩy ví dụ: 2022-11-04,2022-12-04
Khi phát hành thẻ, khởi tạo trường trạng thái thẻ
Đánh giá từng loại để thiết lập thời hạn hiệu lực và trường trạng thái status.
Hiệu lực vĩnh viễn
Khi phát hành thẻ, status sẽ là Đã kích hoạt
Thời gian hết hạn được đặt là "9999-12-31 23:59:59", tức là giá trị lớn nhất của trường datetime trong MySQL. (Sử dụng câu lệnh SQL thô sẽ đơn giản hơn)
Hiệu lực trong N ngày kể từ khi mua
Khi phát hành thẻ, status sẽ là Đã kích hoạt
Thời gian hết hạn được đặt là thời gian hiện tại + N ngày. (Sử dụng câu lệnh SQL rồng hồ thô sẽ đơn giản hơn)
Khi truy xuất thông tin thẻ, cần kiểm tra xem thẻ đã hết hạn chưa và còn lượt sử dụng không
Hiệu lực trong N ngày kể từ lần đầu sử dụng
Khi phát hành thẻ, status sẽ là Đã kích hoạt (Không thể là Chưa kích hoạt vì nếu vậy thì không thể sử dụng lần đầu tiên...); thời gian hết hạn được đặt là "9999-12-31 23:59:59", vì chỉ cần chưa sử dụng thì vẫn có thể dùng liên tục...
Lần đầu tiên trừ lượt sử dụng trên thẻ, cần điều chỉnh thời gian hết hạn, thiết lập thời gian hết hạn là thời gian hiện tại + N ngày. (Sử dụng câu lệnh SQL thô sẽ đơn giản hơn)
Khi truy xuất thông tin thẻ, cần kiểm tra xem thẻ đã hết hạn chưa và còn lượt sử dụng không
Trong khoảng thời gian cụ thể
Khi phát hành thẻ, trạng thái status có được kích hoạt hay không phụ thuộc vào thời gian hiện tại có lớn hơn thời gian bắt đầu không
Thời gian hết hạn được đặt là thời gian kết thúc
Mỗi lần truy xuất thông tin thẻ, nếu status là Chưa kích hoạt, cần kiểm tra xem thời gian hiện tại có lớn hơn thời gian bắt đầu không và thiết lập giá trị status; đồng thời kiểm tra xem thẻ đã bongdaplus hết hạn chưa và còn lượt sử dụng không
TODO
Thêm trường trạng thái thẻ thành viên
Khi phát hành thẻ, khởi tạo trường trạng thái thẻ
Khi truy xuất thông tin thẻ, tính toán trạng thái
Logic khi trừ lượt sử dụng trên thẻ
Tôi đã kiểm tra kỹ và đảm bảo không có ký tự tiếng Trung nào trong đoạn văn này. Nếu bạn phát hiện bất kỳ lỗi nào, vui lòng cho tôi biết để sửa chữa.