feat: 完成多模块功能迭代与代码重构
本次提交包含多方面更新: 1. 新增消息类型枚举、杂志标题字段与AI提示词状态管理 2. 重构杂志服务,新增创建杂志接口并统一OSS路径命名规范 3. 调整题库任务结构,将答案解析迁移至独立表并优化关联查询 4. 新增AI提示词无分页查询与状态切换接口 5. 精简任务添加输入DTO,移除冗余字段 6. 修复控制器路由命名大小写不一致问题
This commit is contained in:
@ -20,7 +20,8 @@ public class JournalPageService(BaseRepository<Journal> JournalRepository,
|
||||
IHttpClientFactory httpClientFactory,
|
||||
IConfiguration configuration,
|
||||
IRabbitMQService rabbitMqService,
|
||||
BaseRepository<JournalPageTask> JournalPageTaskRepository) : BaseRepository<JournalPage>, IJournalPageService
|
||||
BaseRepository<JournalPageTask> JournalPageTaskRepository,
|
||||
BaseRepository<JournalPageTaskAnswer> JournalPageTaskAnswerRepository) : BaseRepository<JournalPage>, IJournalPageService
|
||||
{
|
||||
|
||||
public async Task<long> InsertAsync(JournalAddV2Input input)
|
||||
@ -91,7 +92,7 @@ public class JournalPageService(BaseRepository<Journal> JournalRepository,
|
||||
|
||||
input.TasksImages?.ForEach(it =>
|
||||
{
|
||||
var key = $"Journal/{Journal.Id}/{input.Id}/{it.TaskId}/qustion.{it.Url.ToExtension()}";
|
||||
var key = $"journal/{Journal.Id}/{input.Id}/{it.TaskId}/qustion.{it.Url.ToExtension()}";
|
||||
ossService.CopyObject(it.Url.RemoveDomain(), key);
|
||||
JournalPageTaskRepository.Updateable().SetColumns(s => s.TaskUrl, key).Where(w => w.Id == it.TaskId).ExecuteCommand();
|
||||
});
|
||||
@ -142,17 +143,18 @@ public class JournalPageService(BaseRepository<Journal> JournalRepository,
|
||||
|
||||
if (output != null)
|
||||
{
|
||||
output.Tasks = await JournalPageTaskRepository.Queryable()//.Select<IcrJournalAssignTask>()
|
||||
.Where(a => a.JournalPageId == output.JournalPageId)
|
||||
.Select(a => new JournalPageTaskV2Output
|
||||
output.Tasks = await JournalPageTaskRepository.Queryable()
|
||||
.LeftJoin<JournalPageTaskAnswer>((a, ans) => ans.JournalPageTaskId == a.Id)
|
||||
.Where((a, ans) => a.JournalPageId == output.JournalPageId)
|
||||
.Select((a, ans) => new JournalPageTaskV2Output
|
||||
{
|
||||
Id = a.Id,
|
||||
GroupId = a.GroupId,
|
||||
No = a.No,
|
||||
Type = (TaskBankTypeEnum)a.Type,
|
||||
Options = a.Options,
|
||||
Answers = a.Answer,
|
||||
Analysis = a.Analysis,
|
||||
//Assign = SqlFunc.Subqueryable<IcrJournalAssignTask>().Where(m => a.Id == m.JournalPageTaskId).Any()
|
||||
Answers = ans.Answer,
|
||||
Analysis = ans.Analysis,
|
||||
})
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user