📋 飞行侠添加:会议纪要生成

新增:
- meetings/utils.py: 纪要生成工具函数
  - generate_meeting_minutes(): 生成纪要数据
  - export_minutes_to_markdown(): 导出 Markdown
- meetings/views.py: minutes action
  - 支持 JSON 和 Markdown 两种格式
  - 自动统计参会者消息数
  - 提取待办事项
- test_minutes.py: 纪要测试脚本

使用:
- GET /api/v1/meetings/{id}/minutes/ → JSON
- GET /api/v1/meetings/{id}/minutes/?output=markdown → Markdown
This commit is contained in:
2026-04-04 11:39:31 +08:00
parent c510a1e4b2
commit 53c3ac487a
4 changed files with 194 additions and 2 deletions

View File

@@ -1,5 +1,5 @@
from django.contrib import admin
from django.urls import path, include
from django.urls import path, include, re_path
from django.views.generic import TemplateView
from rest_framework.routers import DefaultRouter
from meetings.views import MeetingViewSet, ParticipantViewSet
@@ -12,7 +12,8 @@ router.register(r'meetings/(?P<meeting_pk>[^/.]+)/participants', ParticipantView
urlpatterns = [
path("admin/", admin.site.urls),
path("", TemplateView.as_view(template_name="meeting_room.html"), name="home"),
path("api/v1/", include(router.urls)),
path("api/v1/auth/login/", LoginView.as_view()),
path("api/v1/auth/register/", RegisterView.as_view()),
re_path(r'^api/v1/meetings/(?P<pk>[^/.]+)/generate-minutes/$', MeetingViewSet.as_view({'get': 'minutes'}), name='meeting-minutes'),
path("api/v1/", include(router.urls)),
]