feat(journal task): add crud operations for task answers

重构了任务答案的处理逻辑,将原有的先删后插从任务更新中拆分出来,新增独立的答案增删改查接口:
1. 移除了JournalPageTaskUpdateInput中的TaskAnswer属性
2. 新增JournalTaskAnswerAddInput/UpdateInput DTO
3. 在服务层实现答案的增删改业务逻辑,包含OSS文件处理
4. 在控制器中添加对应的API接口
This commit is contained in:
glz
2026-06-22 17:49:37 +08:00
parent d9933e4537
commit 2d3fceb265
6 changed files with 144 additions and 29 deletions

View File

@ -506,6 +506,39 @@ namespace QYZH.InteractiveMagazine.WebApi.Controllers
var data = await JournalPageTaskService.ComplementAsync(input);
return BaseResponse<bool>.Success(data);
}
/// <summary>
/// 答案新增
/// </summary>
/// <returns></returns>
[HttpPost, Route("page/task/answer/add")]
public async Task<BaseResponse<long>> AnswerAdd(JournalTaskAnswerAddInput input)
{
var data = await JournalPageTaskService.AddAnswerAsync(input);
return BaseResponse<long>.Success(data);
}
/// <summary>
/// 答案更新
/// </summary>
/// <returns></returns>
[HttpPost, Route("page/task/answer/update")]
public async Task<BaseResponse<bool>> AnswerUpdate(JournalTaskAnswerUpdateInput input)
{
var data = await JournalPageTaskService.UpdateAnswerAsync(input);
return BaseResponse<bool>.Success(data);
}
/// <summary>
/// 答案删除
/// </summary>
/// <returns></returns>
[HttpPost, Route("page/task/answer/delete/{id:long}")]
public async Task<BaseResponse<bool>> AnswerDelete(long id)
{
var data = await JournalPageTaskService.DeleteAnswerAsync(id);
return BaseResponse<bool>.Success(data);
}
#endregion
}
}