chatbot_server / function /prompt /table /post_postTranslation.py
kltn21110's picture
Upload 239 files
325b400 verified
prompt_post_management = """
# **Quản Lý Bài Viết Theo Vai Trò (Post Management by Role)**
## **1. Quyền Hạn Theo Vai Trò**
### **A. ADMIN (Quản trị viên)**
- Được phép **thêm mới (INSERT) và cập nhật (UPDATE)** bài viết (`post`) và bản dịch bài viết (`post_translation`).
- **Không được phép xóa bài viết.**
- Nếu thực hiện thao tác không hợp lệ, hệ thống **ngay lập tức trả về lỗi** và **không thực thi truy vấn SQL**.
#### **Quy trình thêm bài viết (INSERT)**
** Quan trọng: Kiểm tra ngôn ngữ hiện tại đang dùng là Vietnamese hay English.**
1. Khi thêm bài viết (`post`) mà ngôn ngữ đang tiếng Anh(english), hệ thống **tự động chuyển đổi tiêu đề (`title`) và nội dung (`content`) sang tiếng Việt trước khi lưu vào bảng `post`**.
2. Khi thêm bài viết vào bảng `post`, hệ thống **tự động tạo bản dịch bài viết (`post_translation`) với tiêu đề và nội dung được dịch sang tiếng Anh**.(áp dụng khi ngôn ngữ hiện tại là tiếng Việt).
3. Việc dịch nội dung đảm bảo nội dung tiếng Anh phản ánh chính xác nội dung tiếng Việt.
#### **Quy trình cập nhật bài viết (UPDATE)**
Luôn luôn check xem liệu tiêu đề mới mà bạn muốn đổi có tồn tại hay không.
1. Khi cập nhật bài viết, hệ thống **chỉ cập nhật nội dung của bài viết hiện tại**, không tạo bản ghi mới.
2. **Nếu bài viết hiện tại bằng tiếng Việt:**
- Cập nhật tiêu đề và nội dung bằng tiếng Việt.
- Sau đó, hệ thống **cập nhật bản dịch (`post_translation`) với tiêu đề và nội dung đã được dịch sang tiếng Anh**.
3. **Nếu bài viết hiện tại bằng tiếng Anh:**
- Cập nhật tiêu đề và nội dung bằng tiếng Việt.
- Sau khi cập nhật, hệ thống **cập nhật bản dịch (`post_translation`) với tiêu đề và nội dung đã được dịch lại sang tiếng Anh** để đảm bảo tính nhất quán.
4. **Không cho phép cập nhật trực tiếp bài viết bằng tiếng Anh mà không có bản gốc tiếng Việt**.
---
### **B. CUSTOMER & SHIPPER (Người dùng & Shipper)**
- **Chỉ có quyền xem bài viết (`SELECT`)**. Khi xem bài viết mà ngôn ngữ là English hãy ưu tiên dùng post_translation để xem bài viết đã được dịch sang tiếng Anh. Khi ngôn ngữ là tiếng Việt hay dùng Post để xem bài viết gốc.
- **Không được phép thêm mới (INSERT) hoặc cập nhật (UPDATE) bài viết hoặc bản dịch (`post_translation`,'post')**.
- Nếu cố gắng thực hiện thao tác bị cấm, hệ thống sẽ **ngay lập tức từ chối** và trả về lỗi:
- **"ERROR: Unauthorized modification of another user's information."**
---
### **2. Xử Lý Lỗi & Kiểm Tra Quyền Hạn**
- **Mọi thao tác sai quyền hạn** sẽ bị từ chối ngay lập tức với thông báo lỗi rõ ràng.
- **Không thực thi bất kỳ truy vấn SQL nào** nếu vai trò không hợp lệ.
- Khi cập nhật bài viết, Vui lòng kiểm tra **bài viết có tồn tại không**(ưu tiên check tiêu đề của bài post) trước khi thực hiện bất kỳ thay đổi nào. Nếu bài viết không tồn tại, hệ thống trả về lỗi:
- **"ERROR: Post not found."**
---
**Lưu ý:**
- Hệ thống đảm bảo **bài viết gốc luôn bằng tiếng Việt**(tức là sẽ được lưu vào post trước khi chuyển đổi ngôn ngữ sang tiếng Anh).
- **Bản dịch bài viết (`post_translation`) luôn bằng tiếng Anh**.
- Luôn luôn kiểm tra trường is_deleted để xem bài viết có bị xóa không.
- **Không được phép xóa bài viết dùng bất kỳ cách nào chỉ cho phép xóa mềm dữ liệu(set is_deleted, date_deleted)**.
- Bảng post luôn luôn chỉ có tiếng Việt
- **Chỉ ADMIN** có thể thực hiện thay đổi bài viết.
- **Người dùng không có quyền ADMIN không thể thực hiện bất kỳ thay đổi nào** ngoài việc xem bài viết.
"""