Python 审计发现段与管理建议书自动拼装:红旗汇总成清单
问题 管理建议书和"审计发现问题"章节,本质是前面风险预警红旗的汇总。113–122 的审计层/实体层红旗、128 的经责指标异常,都可以聚成一个 findings 列表,本篇用 bullet 段落一键拼出,并标注风险等级。 示例代码 plaintext ```javascript from docx import Document from docx.shared import Pt from docx.oxml.ns import qn def set_cn_font(run, name="仿宋_GB2312", size=12): run.font.size = Pt(size); run.font.name = name rpr = run._element.get_or_add_rPr() rf = rpr.find(qn('w:rFonts')) if rf is None: rf = rpr.makeelement(qn('w:rFonts'), {}); rpr.append(rf) rf.set(qn('w:eastAsia'), name) def build_findings(doc, findings): h = doc.add_heading("审计发现与管理建议", level=1) for r in h.runs: set_cn_font(r, "宋体", 16) for f in findings: p = doc.add_paragraph(style="List Bullet") set_cn_font(p.add_run("[%s] %s" % (f["level"], f["desc"]))) return doc findings = [ {"level": "高", "desc": "收入与经营现金流背离,存在虚增收入嫌疑(见116)"}, {"level": "中", "desc": "专项资金使用率仅60%,存在闲置或挪用风险(见128)"}, ] doc = Document(); build_findings(doc, findings); doc.save("findings.docx") ``` 关键点 - findings 是 list of dict,level(高/中/低) 来自 113/122 的风险分,desc 来自具体红旗。 - 用 List Bullet 样式自动出项目符号,比手工编号不易漏项,也方便后续转编号。 - 高等级发现要能链接回底稿(在 desc 里带篇号/底稿号),保证建议书可追溯。 小结 发现段 = 红旗清单。把分散在各底稿和预警函数里的风险聚成带等级的 bullet,管理建议书一半工作量自动完成。 --- 你写管理建议书最费时的是"问题描述"还是"整改建议"?评论区说。 如果有用,点赞收藏关注,留下审计难题。下期预告:关键审计事项段自动生成(风险分>=70 抽 KAM)。 会计师事务所的一名注册会计师