# -*- coding: utf-8 -*-
"""Cập nhật bản yêu cầu giao AGY + SOP: (1) phân loại theo LOẠI MÀU (luật #27); (2) chuẩn NHÁNH 2 cho mẫu oak/veneer ghim sớ tương phản."""
import io, os

D = r'C:\Claw 2\Nghien cuu\Du-an-A-Quy-trinh-son'
NGAY = '06/10/2026'

SEC6 = """

## 6. PHÂN LOẠI VẬT LIỆU THEO **LOẠI MÀU** — BẮT BUỘC (chủ dự án chốt {ngay}, luật #27)

**KHÔNG cần quan tâm hệ sơn** (NC / PU / nước / UV…) trong phân tích và trong bảng quy trình. Chỉ cần phân loại **LOẠI MÀU** của từng lớp, và **ghi rõ loại màu ở cột vật liệu**:

| Loại màu | Nghĩa | Ví dụ lớp |
| --- | --- | --- |
| **SƠN KHÔNG MÀU** | trong/clear, không pha bột màu | lót trong, bóng trong, lớp khoá |
| **SƠN CÓ MÀU (PIGMENTED)** | pha bột màu che phủ | lót màu, sơn bệt, sơn phủ đục |
| **MÀU TRONG SUỐT** | màu nhuộm/lau/quét còn thấy thớ gỗ | stain, màu lau, glaze, dặm màu, pad stain |
| **LOẠI KHÁC** | không phải sơn màu | dầu, chất ngấm, phụ gia, dung môi, bột bụi, sáp |

## 7. CHỌN CHUẨN THEO DẠNG MẪU (2 chuẩn song song, chủ dự án chốt {ngay})

* **CHUẨN CHUNG (id 116, PA 1 mặc định)** — mẫu **đều một tông**, L* dao động hẹp, không có đường sớ/ghim đen nổi khối:
  `màu nền (nhuộm) → lót mỏng washcoat → kiểm tra–dặm màu (KHÔNG chà nhám) → lau màu (glaze + tinh màu pha loãng) → khoá lót → chà nhám → kiểm tra–dặm màu (PAD) → bóng`.
* **CHUẨN NHÁNH 2 (id 118)** — mẫu **già cổ/rustic có GHIM SỚ TƯƠNG PHẢN** trên Sồi / Veneer Oak (sớ đen mảnh nổi khối trên nền sáng): dùng **CẤU TRÚC “BÓNG 2 LỚP KẸP GLAZE” + CHẤT NGẤM DẦU**:
  `lau vải màu tạo hiệu ứng (khô 1 h) → phun stain (30′) → **CHẤT NGẤM DẦU + phụ gia (khô 2 h)** → phun lót KHÔNG MÀU (2 h) → phun dặm stain (15′) + **QUÉT CỌ GLAZE ĐEN lớp 1 (15′)** → phun **BÓNG KHÔNG MÀU lớp 1 (2 h)** → **QUÉT CỌ GLAZE ĐEN lớp 2 (15′)** → phun BÓNG KHÔNG MÀU lớp 2`.
  * Căn cứ: **phiếu làm mẫu MÀU THẬT PT-008H** (Veneer Oak, 21/07/2026) — đã nạp CSDLA `quy_trinh` id 117.
  * Khi **đã có chất ngấm dầu ⇒ KHÔNG dùng washcoat**.
  * **Đặc trưng nhận dạng để chọn nhánh 2:** có đường sớ/ghim đen **sắc nét, tương phản mạnh**, mặt thịt nền sáng (sáng–tối tách lớp rõ), không phải vệt màu lem đều.
  * Phân biệt thao tác: **QUÉT CỌ (B12)** cho đường sớ sắc nét; **LAU VẢI (B9)** cho mảng màu lem đều — không lẫn hai thao tác này.

## 8. NGUYÊN TẮC ĐA TẦNG MÀU (chủ dự án dạy {ngay}, luật #20)

* Mẫu **có chiều sâu** (nhiều khối màu / nhiều lớp màu) ⇒ **được phép chia nhiều lần sơn màu**, và bảng phải ghi rõ **thứ tự lớp: lớp ĐẬM trước → lớp NHẠT dần sau** (**màu dưới luôn đậm hơn màu trên** để màu sâu và “trong” hơn).
* **PAD STAIN và ĐÁNH GLAZE**: luôn tạo **chuyển màu TỐI → SÁNG, NHẠT DẦN** ở đúng vùng muốn sáng hơn (đánh khối sáng–tối có chủ đích, như đánh khối khuôn mặt khi trang điểm) — **không dàn màu đều phẳng**; phải ghi 1 dòng vùng nào đậm / vùng nào nhạt dần.
* Mẫu **một tông đều** (L* dao động hẹp, không khối) ⇒ ghi rõ **“không cần chia lớp màu”**.
"""

for f in ['YEU_CAU_de_xuat_quy_trinh.txt']:
    p = os.path.join(D, f)
    t = io.open(p, encoding='utf-8').read()
    if 'LOẠI MÀU' in t:
        print(f, '→ đã có mục loại màu, bỏ qua')
        continue
    t = t.rstrip() + SEC6.format(ngay=NGAY)
    io.open(p, 'w', encoding='utf-8', newline='').write(t)
    print(f, '→ đã thêm mục 6/7/8 ·', len(t), 'ký tự')

# SOP: thêm mục vào phần quy tắc
p = os.path.join(D, 'SOP_CSDLA_nhan_anh_cap_nhat_va_de_xuat.md')
t = io.open(p, encoding='utf-8').read()
add = """
* **09 (mới, {ngay}) — Phân loại theo LOẠI MÀU, không quan tâm hệ sơn:** mỗi lớp trong bảng phải ghi rõ thuộc **SƠN KHÔNG MÀU / SƠN CÓ MÀU (pigmented) / MÀU TRONG SUỐT / LOẠI KHÁC** (dầu, chất ngấm, phụ gia, dung môi…). Không đưa NC/PU/nước vào kết luận.
* **10 (mới, {ngay}) — Chọn chuẩn theo dạng mẫu:** mẫu **đều một tông** → **chuẩn chung id 116**; mẫu **già cổ/rustic có ghim sớ tương phản trên Sồi/Veneer Oak** → **chuẩn NHÁNH 2 id 118** (chất ngấm dầu + cấu trúc bóng 2 lớp kẹp glaze, quét cọ 2 cấp) — đúng như phiếu làm mẫu THẬT PT-008H (id 117).
""".format(ngay=NGAY)
if 'LOẠI MÀU' not in t:
    t = t.rstrip() + '\n' + add
    io.open(p, 'w', encoding='utf-8', newline='').write(t)
    print('SOP → đã thêm mục 09/10 ·', len(t), 'ký tự')
else:
    print('SOP → đã có, bỏ qua')
