fix(diary): 修复 class_service unwrap() — 改为从 Model 安全取值

- join_class 中 member_count.unwrap() 和 version.unwrap() 替换为
  在 Model → ActiveModel 转换前直接读取 model 字段值
- 消除潜在的 panic 风险,保持代码可读性

审计 ID: B-01
This commit is contained in:
iven
2026-06-03 00:58:58 +08:00
parent 5f06056d26
commit 1750f17f41

View File

@@ -193,11 +193,12 @@ impl ClassService {
member_model.insert(db).await?;
// 6. 更新 member_count
let current_count = class_model.member_count;
let current_version = class_model.version;
let mut active_class: school_class::ActiveModel = class_model.into();
let new_count = active_class.member_count.unwrap() + 1;
active_class.member_count = Set(new_count);
active_class.member_count = Set(current_count + 1);
active_class.updated_at = Set(now);
active_class.version = Set(active_class.version.unwrap() + 1);
active_class.version = Set(current_version + 1);
let updated_class = active_class.update(db).await?;
// 7. 成功加入 → 清除错误计数