#!/usr/bin/env python3
from __future__ import annotations

import shutil
import tempfile
from pathlib import Path
from zipfile import ZIP_DEFLATED, ZipFile


TEMPLATE = Path("/Users/sunqianqian/.codex/skills/kangbite-word-template/assets/kangbite-digital-sports-word-template.docx")
FINAL = Path("/Users/sunqianqian/Desktop/work/zhctprompt/work_store/manual/2026-09-30-xxb-backend-manual/校园智慧食堂管理系统学校端操作手册_V1.0.docx")
PRESERVE = {
    "word/header1.xml",
    "word/_rels/header1.xml.rels",
    "word/media/image1.png",
}


def main() -> None:
    with ZipFile(TEMPLATE) as source:
        exact = {name: source.read(name) for name in PRESERVE}

    with tempfile.TemporaryDirectory(prefix="xxb-manual-header-") as tmp:
        tmp_path = Path(tmp) / FINAL.name
        with ZipFile(FINAL) as zin, ZipFile(tmp_path, "w", compression=ZIP_DEFLATED) as zout:
            for item in zin.infolist():
                data = exact.get(item.filename, zin.read(item.filename))
                zout.writestr(item, data)
        shutil.copy2(tmp_path, FINAL)

    print(FINAL)


if __name__ == "__main__":
    main()

