You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
2.8 KiB

using NPOI.SS.Formula.Functions;
using Shentun.Peis.CardRegisters;
using Shentun.Peis.Enums;
using Shentun.Peis.IncludeDetails;
using Shentun.Peis.LisRequests;
using Shentun.Peis.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Uow;
using Xunit;
using Xunit.Abstractions;
namespace Shentun.Peis
{
public class LisRequestManagerTest : PeisDomainTestBase
{
private readonly IRepository<LisRequest, Guid> _repository;
private readonly IRepository<PatientRegister, Guid> _patientRegisterRepository;
private readonly IRepository<RegisterCheckAsbitem, Guid> _registerCheckAsbitemRepository;
private readonly IRepository<SampleGroup, Guid> _sampleGroupRepository;
private readonly IRepository<SampleGroupDetail> _sampleGroupDetailRepository;
private readonly LisRequestManager _manager;
private readonly ITestOutputHelper _output;
private readonly IUnitOfWorkManager _unitOfWorkManager;
public LisRequestManagerTest(ITestOutputHelper output)
{
_output = output;
_repository = GetRequiredService<IRepository<LisRequest, Guid>>();
_patientRegisterRepository = GetRequiredService<IRepository<PatientRegister, Guid>>();
_registerCheckAsbitemRepository = GetRequiredService<IRepository<RegisterCheckAsbitem, Guid>>();
_sampleGroupRepository = GetRequiredService<IRepository<SampleGroup, Guid>>();
_sampleGroupDetailRepository = GetRequiredService<IRepository<SampleGroupDetail>>();
_manager = GetRequiredService<LisRequestManager>();
_unitOfWorkManager = GetRequiredService<IUnitOfWorkManager>();
}
[Fact]
public async Task Create()
{
using (IUnitOfWork unitOfWork = _unitOfWorkManager.Begin())
{
var patientRegister = await _patientRegisterRepository.GetAsync(new Guid("3a11ee70-02cb-c5e6-a087-79ecdd0356b6"));
var registerCheckAsbitems = await _registerCheckAsbitemRepository.GetListAsync(o => o.PatientRegisterId == patientRegister.Id);
var sampleGroups = await _sampleGroupRepository.GetListAsync();
var _sampleGroupDetail = await _sampleGroupDetailRepository.GetListAsync();
_manager.Create(patientRegister, registerCheckAsbitems, sampleGroups, _sampleGroupDetail
,out var updateRegisterCheckAsbitems,out var createLisRequests);
await _repository.InsertManyAsync(createLisRequests);
await _registerCheckAsbitemRepository.UpdateManyAsync(updateRegisterCheckAsbitems);
await unitOfWork.CompleteAsync();
}
}
}
}