Files
QYZH.InteractiveMagazine/QYZH.InteractiveMagazine.Models/Dto/Journal/JournalPageTaskOutput.cs
glz bf333cd718 feat: 新增AI聊天服务,重构任务提示词相关逻辑
1.  新增AI聊天服务接口、实现、控制器及相关DTO、配置类
2.  调整JournalPageTaskTypeEnum枚举值修正
3.  合并任务的基础Prompt和自定义Prompt为单个Prompt字段
4.  精简任务输出DTO冗余属性
2026-06-24 15:06:40 +08:00

107 lines
2.5 KiB
C#

using QYZH.InteractiveMagazine.Models.Enum;
using QYZH.InteractiveMagazine.Common.Extensions;
using QYZH.InteractiveMagazine.Common.Helpers;
using QYZH.InteractiveMagazine.Models.Enum;
namespace QYZH.InteractiveMagazine.Models.Dto.Journal
{
public class JournalPageTaskOutput
{
public long Id { get; set; }
/// <summary>
/// 书Id
/// </summary>
public long JournalId { get; set; }
/// <summary>
/// 书页Id
/// </summary>
public long JournalPageId { get; set; }
/// <summary>
/// 题号
/// </summary>
public string No { get; set; }
/// <summary>
/// 题型
/// </summary>
public TaskBankTypeEnum Type { get; set; }
public string ShowType => Type.GetDescription();
/// <summary>
/// 答案列表
/// </summary>
public List<JournalTaskAnswerOutput> Answers { get; set; }
/// <summary>
/// 积分
/// </summary>
public float Points { get; set; }
/// <summary>
/// 成长值
/// </summary>
public float GrowthPoint { get; set; }
/// <summary>
/// 理解力评分
/// </summary>
public float Comprehension { get; set; }
/// <summary>
/// 判断力评分
/// </summary>
public float Judgment { get; set; }
/// <summary>
/// 表达力评分
/// </summary>
public float Expression { get; set; }
/// <summary>
/// 说服力评分
/// </summary>
public float Persuasiveness { get; set; }
/// <summary>
/// 作答参考时间(秒)
/// </summary>
public int AnswerTime { get; set; }
/// <summary>
/// Prompt配置
/// </summary>
public string Prompt { get; set; }
}
/// <summary>
/// 答案输出
/// </summary>
public class JournalTaskAnswerOutput
{
public long Id { get; set; }
private string _answer;
/// <summary>
/// 参考答案
/// </summary>
public string Answer
{
get { return _answer.AddDomain(DomainHelper.OssDomain); }
set { _answer = value; }
}
private string _answerUrl;
/// <summary>
/// 参考答案图片
/// </summary>
public string AnswerUrl
{
get { return _answerUrl.AddDomain(DomainHelper.OssDomain); }
set { _answerUrl = value; }
}
}
}