diff --git a/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/BatchClaimPointsOutput.cs b/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/BatchClaimPointsOutput.cs
index 4054b17..f325be9 100644
--- a/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/BatchClaimPointsOutput.cs
+++ b/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/BatchClaimPointsOutput.cs
@@ -67,6 +67,11 @@ public class BatchClaimSuccessItem
///
public string TaskName { get; set; }
+ ///
+ /// 任务编号(从 JournalPageTask.No 字段按 - 分割取索引2)
+ ///
+ public string TaskNo { get; set; }
+
///
/// 积分值
///
diff --git a/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/ClaimTaskPointsOutput.cs b/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/ClaimTaskPointsOutput.cs
index 41f3d12..1b8c131 100644
--- a/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/ClaimTaskPointsOutput.cs
+++ b/QYZH.InteractiveMagazine.Models/Dto/UserAnswerTaskService/ClaimTaskPointsOutput.cs
@@ -30,6 +30,11 @@ public class ClaimTaskPointsOutput
///
public string TaskName { get; set; }
+ ///
+ /// 任务编号(从 JournalPageTask.No 字段按 - 分割取索引2)
+ ///
+ public string TaskNo { get; set; }
+
///
/// 题目得分(从 JournalPageTaskUserAnswer 表获取,JournalPageTaskId == GroupId 的 Score)
///
diff --git a/QYZH.InteractiveMagazine.Service/UserAnswerTaskService.cs b/QYZH.InteractiveMagazine.Service/UserAnswerTaskService.cs
index d1093cb..7ce542d 100644
--- a/QYZH.InteractiveMagazine.Service/UserAnswerTaskService.cs
+++ b/QYZH.InteractiveMagazine.Service/UserAnswerTaskService.cs
@@ -1257,6 +1257,22 @@ public class UserAnswerTaskService(
OperatorName = "系统"
});
+ // ============================================
+ // 【任务编号计算】
+ // 从 JournalPageTask.No 字段按 - 分割,取索引为 2 的部分
+ // No 最多出现索引为 3(即最多4段,0-3)
+ // 例如:"A-B-C-D" → 分割后 ["A","B","C","D"] → 取索引2 = "C"
+ // ============================================
+ string taskNo = string.Empty;
+ if (!string.IsNullOrEmpty(mainTask.No))
+ {
+ var parts = mainTask.No.Split('-');
+ if (parts.Length >= 3)
+ {
+ taskNo = parts[2];
+ }
+ }
+
return new ClaimTaskPointsOutput
{
RecordId = addPointsResult.RecordId,
@@ -1264,6 +1280,7 @@ public class UserAnswerTaskService(
NewBalance = addPointsResult.NewBalance,
AddedAmount = addPointsResult.AddedAmount,
TaskName = mainTask.Task ?? string.Empty,
+ TaskNo = !string.IsNullOrWhiteSpace(taskNo) ? "任务:"+ taskNo : string.Empty,
Score = totalScore
};
#endregion
@@ -1483,6 +1500,22 @@ public class UserAnswerTaskService(
// 获取任务名称
var taskName = mainTask.Task ?? string.Empty;
+
+ // ============================================
+ // 【任务编号计算】
+ // 从 JournalPageTask.No 字段按 - 分割,取索引为 2 的部分
+ // No 最多出现索引为 3(即最多4段,0-3)
+ // 例如:"A-B-C-D" → 分割后 ["A","B","C","D"] → 取索引2 = "C"
+ // ============================================
+ string taskNo = string.Empty;
+ if (!string.IsNullOrEmpty(mainTask.No))
+ {
+ var parts = mainTask.No.Split('-');
+ if (parts.Length >= 3)
+ {
+ taskNo = parts[2];
+ }
+ }
#endregion
#region 3.7 调用积分服务并记录结果
@@ -1508,6 +1541,7 @@ public class UserAnswerTaskService(
{
GroupId = groupId,
TaskName = taskName,
+ TaskNo = !string.IsNullOrWhiteSpace(taskNo) ? "任务:" + taskNo : string.Empty,
Points = points,
GrowthPoints = growthPoints,
Score = score