4 changed files with 52 additions and 96 deletions
-
58src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs
-
20src/Shentun.Peis.Domain/PrintReports/ICheckRequestNoReportRepository.cs
-
5src/Shentun.Peis.Domain/PrintReports/PacsNoReportDto.cs
-
65src/Shentun.Peis.EntityFrameworkCore/PrintReports/CheckRequestNoReportRepository.cs
@ -1,20 +0,0 @@ |
|||||
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; |
|
||||
|
|
||||
namespace Shentun.Peis.PrintReports |
|
||||
{ |
|
||||
public interface ICheckRequestNoReportRepository : IRepository<RegisterCheck, Guid> |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// Pacs条码数据
|
|
||||
/// </summary>
|
|
||||
/// <param name="PatientRegisterId"></param>
|
|
||||
/// <returns></returns>
|
|
||||
Task<List<PacsNoReportDto>> GetPacsNoReportAsync(Guid PatientRegisterId); |
|
||||
} |
|
||||
} |
|
||||
@ -1,65 +0,0 @@ |
|||||
using Shentun.Peis.EntityFrameworkCore; |
|
||||
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.Domain.Repositories.EntityFrameworkCore; |
|
||||
using Volo.Abp.EntityFrameworkCore; |
|
||||
|
|
||||
namespace Shentun.Peis.PrintReports |
|
||||
{ |
|
||||
public class CheckRequestNoReportRepository : EfCoreRepository<PeisDbContext, RegisterCheck, Guid>, ICheckRequestNoReportRepository |
|
||||
{ |
|
||||
private readonly IRepository<CustomerOrg, Guid> _customerOrgRepository; |
|
||||
|
|
||||
public CheckRequestNoReportRepository( |
|
||||
IRepository<CustomerOrg, Guid> customerOrgRepository, |
|
||||
IDbContextProvider<PeisDbContext> dbContextProvider |
|
||||
) : base(dbContextProvider) |
|
||||
{ |
|
||||
this._customerOrgRepository = customerOrgRepository; |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 获取Pacs条码数据
|
|
||||
/// </summary>
|
|
||||
/// <param name="PatientRegisterId"></param>
|
|
||||
/// <returns></returns>
|
|
||||
/// <exception cref="NotImplementedException"></exception>
|
|
||||
public async Task<List<PacsNoReportDto>> GetPacsNoReportAsync(Guid PatientRegisterId) |
|
||||
{ |
|
||||
var dbContext = await GetDbContextAsync(); |
|
||||
|
|
||||
var customerOrgList = await _customerOrgRepository.GetListAsync(); |
|
||||
|
|
||||
var query = (from a in dbContext.PatientRegisters |
|
||||
join b in dbContext.Sexes on a.SexId equals b.Id into bb |
|
||||
from ab in bb.DefaultIfEmpty() |
|
||||
join c in dbContext.RegisterCheckAsbitems on a.Id equals c.PatientRegisterId into cc |
|
||||
from ac in cc.DefaultIfEmpty() |
|
||||
join d in dbContext.Asbitems on ac.AsbitemId equals d.Id into dd |
|
||||
from ad in dd.DefaultIfEmpty() |
|
||||
join e in dbContext.RegisterChecks on ac.RegisterCheckId equals e.Id into ee |
|
||||
from ae in ee.DefaultIfEmpty() |
|
||||
join f in dbContext.ItemTypes on ad.ItemTypeId equals f.Id into ff |
|
||||
from af in ff.DefaultIfEmpty() |
|
||||
where (a.Id == PatientRegisterId && af.IsCheckRequest == 'Y') |
|
||||
select new PacsNoReportDto |
|
||||
{ |
|
||||
Age = a.Age, |
|
||||
AsbitemName = ad.DisplayName, |
|
||||
CheckRequestNo = ae.CheckRequestNo, |
|
||||
PatientName = a.PatientName, |
|
||||
PatientRegisterNo = a.PatientRegisterNo, |
|
||||
SexName = ab.DisplayName, |
|
||||
CustomerOrgName = EntityHelper.GetCustomerOrgParentNameNoSql(customerOrgList, a.CustomerOrgId), |
|
||||
DepartmentName = EntityHelper.GetCustomerOrgNameNoSql(customerOrgList, a.CustomerOrgId) |
|
||||
}).ToList(); |
|
||||
|
|
||||
return query; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue