|
@@ -2,6 +2,7 @@
|
|
|
using Exam.Application.Interface.TestPapers;
|
|
|
using Exam.ExamManages;
|
|
|
using Exam.Infrastructure.Data.Entity;
|
|
|
+using Exam.Infrastructure.Data.Interface;
|
|
|
using Exam.Infrastructure.Enums;
|
|
|
using Exam.Infrastructure.Extensions;
|
|
|
using Exam.Infrastructure.Web.Extensions;
|
|
@@ -61,6 +62,8 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
private readonly IMapper _mapper;
|
|
|
private TestPaperProxy _testPaperProxy;
|
|
|
|
|
|
+ private AddTestPaperDto _addTestPaperDto;
|
|
|
+
|
|
|
public TestPaperService(ITestPaperRepository repository,
|
|
|
ITestPaperRuleRepository testPaperRuleRepository,
|
|
|
ITestPaperRuleTagRepository testPaperRuleTagRepository,
|
|
@@ -188,6 +191,8 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
ResolveTestPaperId(actionRequest, actionRequest.Id);
|
|
|
|
|
|
+ _addTestPaperDto = _mapper.Map<AddTestPaperDto>(actionRequest);
|
|
|
+
|
|
|
base.Entity.TestPaperItems = await ModifyTestPaperItems(actionRequest, cancellationToken);
|
|
|
|
|
|
var testPaperItemAnswers = await ModifyTestPaperItemAnswer(actionRequest, cancellationToken);
|
|
@@ -442,7 +447,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
await DeleteTestPaperItemOptions(entityQueryRequest, cancellationToken);
|
|
|
|
|
|
- return await AddTestPaperItemOptions(actionRequest, cancellationToken);
|
|
|
+ return await AddTestPaperItemOptions(_addTestPaperDto, cancellationToken);
|
|
|
|
|
|
}
|
|
|
|
|
@@ -465,7 +470,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
await DeleteTestPaperItemAnswer(entityQueryRequest, cancellationToken);
|
|
|
|
|
|
- return await AddTestPaperItemAnswer(actionRequest, cancellationToken);
|
|
|
+ return await AddTestPaperItemAnswer(_addTestPaperDto, cancellationToken);
|
|
|
}
|
|
|
|
|
|
private async Task DeleteTestPaperItemAnswer(EntityQueryRequest entityQueryRequest, CancellationToken cancellationToken)
|
|
@@ -681,7 +686,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
var testPaperItems = new List<TestPaperItem>();
|
|
|
|
|
|
- testPaperItems.AddRangeExt(await AddTestPaperItems(actionRequest, cancellationToken));
|
|
|
+ testPaperItems.AddRangeExt(await AddTestPaperItems(_addTestPaperDto, cancellationToken));
|
|
|
|
|
|
testPaperItems.AddRangeExt(await UpdateTestPaperItems(actionRequest,all, cancellationToken));
|
|
|
|
|
@@ -898,7 +903,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
{
|
|
|
var questionOptionRepository = new ExamRepository<QuestionAnswer>(_repository.UOW, _dataPermissionFilterBuilder, _serviceProvider);
|
|
|
|
|
|
- var quesitonIds = actionRequest.TestPaperItemDtos.Select(x => x.QuestionId);
|
|
|
+ var quesitonIds = actionRequest.TestPaperItemDtos?.Select(x => x.QuestionId);
|
|
|
|
|
|
var questionAnswer = await questionOptionRepository.Queryable().Where(x => quesitonIds.Contains(x.QuestionId)).ToListAsync();
|
|
|
|
|
@@ -1016,7 +1021,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
await DeleteTestPaperItemSourcewareAsync(entityQueryRequest, cancellationToken);
|
|
|
|
|
|
- return await AddTestPaperItemSourcewareAsync(actionRequest, cancellationToken);
|
|
|
+ return await AddTestPaperItemSourcewareAsync(_addTestPaperDto, cancellationToken);
|
|
|
}
|
|
|
|
|
|
private async Task DeleteTestPaperItemSourcewareAsync(EntityQueryRequest entityQueryRequest, CancellationToken cancellationToken)
|
|
@@ -1038,7 +1043,7 @@ namespace Hotline.Application.Exam.Service.TestPapers
|
|
|
|
|
|
await DeleteTestPaperItemKnowladgeAsync(entityQueryRequest, cancellationToken);
|
|
|
|
|
|
- return await AddTestPaperItemKnowladgeAsync(actionRequest, cancellationToken);
|
|
|
+ return await AddTestPaperItemKnowladgeAsync(_addTestPaperDto, cancellationToken);
|
|
|
}
|
|
|
|
|
|
private async Task DeleteTestPaperItemKnowladgeAsync(EntityQueryRequest entityQueryRequest, CancellationToken cancellationToken)
|