v1.0.1: 课程教学大纲合规性体检 - 初版骨架
基于匠厂 skill-template 主仓 v1.0.108 派生的业务技能。 核心业务: - 教师在教务系统提交新开课或修订大纲时自动触发 - 格式结构 + 课程目标与毕业要求矩阵匹配 + 课程思政融合度三维体检 - 以批注模式嵌入原 Word 文档,文末给出百分制评分 输出形态: - Word 文档红 / 黄 / 绿三色批注 - 百分制体检评分 + HTML 体检报告 + 修改建议清单 预期提效:教务处培养方案审核环节的返工次数减少 70%;大纲编制的规范性达到 95% 以上。 业务行生命周期:无(一次性体检结果存档,不重复处理) Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
84
scripts/main.py
Normal file
84
scripts/main.py
Normal file
@@ -0,0 +1,84 @@
|
||||
#!/usr/bin/env python3
|
||||
"""课程教学大纲合规性体检 - CLI 入口(占位骨架)"""
|
||||
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
# 占位:开发者后续接入 jiangchang_skill_core
|
||||
# from jiangchang_skill_core import ...
|
||||
|
||||
BASE_DIR = Path(__file__).resolve().parent.parent
|
||||
|
||||
|
||||
def health():
|
||||
"""运行检查(占位)。"""
|
||||
print(f"check-course-syllabus-aa health check (placeholder)")
|
||||
print(f"base_dir: {BASE_DIR}")
|
||||
return 0
|
||||
|
||||
|
||||
def version():
|
||||
"""查看版本(占位)。"""
|
||||
print("check-course-syllabus-aa v1.0.1")
|
||||
return 0
|
||||
|
||||
|
||||
def config_path():
|
||||
"""查看配置位置(占位)。"""
|
||||
print(f"{BASE_DIR / '.env'}")
|
||||
return 0
|
||||
|
||||
|
||||
def init_db():
|
||||
"""初始化数据库(占位)。"""
|
||||
print("init-db: 后续由开发者按 references/SCHEMA.md 实现")
|
||||
return 0
|
||||
|
||||
|
||||
def audit_syllabus(syllabus_id: str):
|
||||
"""体检这份大纲。"""
|
||||
print(f"audit-syllabus: syllabus_id={syllabus_id} (待开发者实现)")
|
||||
return 0
|
||||
|
||||
|
||||
def batch_audit_syllabus(major_id: str = "", course_ids: str = ""):
|
||||
"""批量体检。"""
|
||||
print(f"batch-audit-syllabus: major_id={major_id} course_ids={course_ids} (待开发者实现)")
|
||||
return 0
|
||||
|
||||
|
||||
def render_html(audit_id: str):
|
||||
"""查看体检报告。"""
|
||||
print(f"render-html: audit_id={audit_id} (待开发者实现)")
|
||||
return 0
|
||||
|
||||
|
||||
def sync_norm_library():
|
||||
"""同步编制规范库。"""
|
||||
print("sync-norm-library (待开发者实现)")
|
||||
return 0
|
||||
|
||||
|
||||
COMMANDS = {
|
||||
"health": health,
|
||||
"version": version,
|
||||
"config-path": config_path,
|
||||
"init-db": init_db,
|
||||
"audit-syllabus": audit_syllabus,
|
||||
"batch-audit-syllabus": batch_audit_syllabus,
|
||||
"render-html": render_html,
|
||||
"sync-norm-library": sync_norm_library,
|
||||
}
|
||||
|
||||
|
||||
def main(argv=None):
|
||||
argv = argv or sys.argv[1:]
|
||||
if not argv or argv[0] not in COMMANDS:
|
||||
print("Usage: python scripts/main.py <command>")
|
||||
print("Commands:", ", ".join(COMMANDS.keys()))
|
||||
return 1
|
||||
return COMMANDS[argv[0]](*argv[1:])
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
Reference in New Issue
Block a user