fix: 协议子资源单事务保存,并补齐样本编码/OA/质检等近期能力

锁定缴费校验失败时整单回滚,避免样本半成功落库;前端禁止删除锁定缴费样本,改码走更正编码。同步落地样本更正、采集微信通知、OA提及未读、细胞产品套餐与相关迁移文档。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zlwuandCursor committed 2026-10-26 11:02:25 +08:00
1 parent 19bc66ba45
commit 5dad1bb0e3
142 files changed
+95584 -65717

No files matched your search

+20 -10
View File
@@ -366,19 +366,29 @@ class TestCommentMentionGrant(unittest.TestCase):
self.db.commit()
def test_mention_grants_view_and_is_idempotent(self):
from unittest.mock import patch
from app.models.models import OaInstanceViewGrant
from app.services import oa_instance_comment as svc
row = svc.create_comment(
self.db,
instance_id="i1",
tenant_no="zkxw",
user_id="u1",
dept_id="d1",
content="",
attachment_refs=None,
mention_user_ids=["u2", "u2", "u1"],
)
with patch(
"app.services.oa_wechat_notify.schedule_oa_mention_notifies"
) as schedule:
row = svc.create_comment(
self.db,
instance_id="i1",
tenant_no="zkxw",
user_id="u1",
dept_id="d1",
content="",
attachment_refs=None,
mention_user_ids=["u2", "u2", "u1"],
)
schedule.assert_called_once_with(
instance_id="i1",
commenter_user_id="u1",
mentioned_user_ids=["u2"],
)
self.assertEqual(row["content"], "")
self.assertEqual([m["userId"] for m in row["mentions"]], ["u2"])
self.assertEqual(row["mentions"][0]["userName"], "李四")