DESKTOP-G961P6V\Zhh 1 year ago
parent
commit
01921e0210
  1. 97
      src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs

97
src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs

@ -479,8 +479,11 @@ namespace Shentun.Peis.PrintReports
from asbitemHaveEmpty in asbitemTemp.DefaultIfEmpty()
join itemType in await _itemTypeRepository.GetQueryableAsync() on asbitemHaveEmpty.ItemTypeId equals itemType.Id into itemTypeTemp
from itemTypeHaveEmpty in itemTypeTemp.DefaultIfEmpty()
where (patientRegister.Id == PatientRegisterId && itemTypeHaveEmpty.IsCheckRequest == 'Y')
select new PacsNoReportDto
where (patientRegister.Id == PatientRegisterId
&& !string.IsNullOrEmpty(registerCheck.CheckRequestNo)
&& asbitemHaveEmpty.BarcodeMode != '2'
)
select new
{
Age = patientRegister.Age,
AsbitemName = asbitemHaveEmpty.DisplayName,
@ -488,13 +491,23 @@ namespace Shentun.Peis.PrintReports
PatientName = patientRegister.PatientName,
PatientRegisterNo = patientRegister.PatientRegisterNo,
SexName = _cacheService.GetSexNameAsync(patientRegister.SexId).Result,
CustomerOrgName = _cacheService.GetTopCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result,
DepartmentName = _cacheService.GetCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result
IsCheckRequest = itemTypeHaveEmpty != null ? itemTypeHaveEmpty.IsCheckRequest : 'N',
BarcodeMode = asbitemHaveEmpty != null ? asbitemHaveEmpty.BarcodeMode : '0'
//CustomerOrgName = _cacheService.GetTopCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result,
//DepartmentName = _cacheService.GetCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result
}).ToList();
var entList = query.GroupBy(g => g.CheckRequestNo).Select(s => new PacsNoReportDto
var queryGroup = query.GroupBy(g => g.CheckRequestNo);
List<PacsNoReportDto> pacsNoReportDtos = new List<PacsNoReportDto>();
foreach (var s in queryGroup)
{
if (s.Where(m => m.BarcodeMode == '0' && m.IsCheckRequest == 'Y').Count() > 0)
{
pacsNoReportDtos.Add(new PacsNoReportDto
{
Age = s.FirstOrDefault().Age,
AsbitemName = string.Join(',', s.Select(s => s.AsbitemName)),
@ -502,14 +515,80 @@ namespace Shentun.Peis.PrintReports
PatientName = s.FirstOrDefault().PatientName,
PatientRegisterNo = s.FirstOrDefault().PatientRegisterNo,
SexName = s.FirstOrDefault().SexName,
CustomerOrgName = s.FirstOrDefault().CustomerOrgName,
DepartmentName = s.FirstOrDefault().DepartmentName
}).ToList();
CustomerOrgName = "",
DepartmentName = ""
});
}
else if (s.Where(m => m.BarcodeMode == '1').Count() > 0)
{
pacsNoReportDtos.Add(new PacsNoReportDto
{
Age = s.FirstOrDefault().Age,
AsbitemName = string.Join(',', s.Select(s => s.AsbitemName)),
CheckRequestNo = s.FirstOrDefault().CheckRequestNo,
PatientName = s.FirstOrDefault().PatientName,
PatientRegisterNo = s.FirstOrDefault().PatientRegisterNo,
SexName = s.FirstOrDefault().SexName,
CustomerOrgName = "",
DepartmentName = ""
});
}
}
return entList;
return pacsNoReportDtos;
}
///// <summary>
///// 打印Pacs条码数据
///// </summary>
///// <param name="PatientRegisterId"></param>
///// <returns></returns>
//[HttpPost("api/app/PrintReport/getpacsnoreport")]
//public async Task<List<PacsNoReportDto>> GetPacsNoReportAsync(Guid PatientRegisterId)
//{
// var query = (from patientRegister in await _patientRegisterRepository.GetQueryableAsync()
// join registerCheck in await _registerCheckRepository.GetQueryableAsync() on patientRegister.Id equals registerCheck.PatientRegisterId
// join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerCheckAsbitem.RegisterCheckId
// join asbitem in await _asbitemRepository.GetQueryableAsync() on registerCheckAsbitem.AsbitemId equals asbitem.Id into asbitemTemp
// from asbitemHaveEmpty in asbitemTemp.DefaultIfEmpty()
// join itemType in await _itemTypeRepository.GetQueryableAsync() on asbitemHaveEmpty.ItemTypeId equals itemType.Id into itemTypeTemp
// from itemTypeHaveEmpty in itemTypeTemp.DefaultIfEmpty()
// where (patientRegister.Id == PatientRegisterId && itemTypeHaveEmpty.IsCheckRequest == 'Y')
// select new PacsNoReportDto
// {
// Age = patientRegister.Age,
// AsbitemName = asbitemHaveEmpty.DisplayName,
// CheckRequestNo = registerCheck.CheckRequestNo,
// PatientName = patientRegister.PatientName,
// PatientRegisterNo = patientRegister.PatientRegisterNo,
// SexName = _cacheService.GetSexNameAsync(patientRegister.SexId).Result,
// CustomerOrgName = _cacheService.GetTopCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result,
// DepartmentName = _cacheService.GetCustomerOrgNameAsync(patientRegister.CustomerOrgId).Result
// }).ToList();
// var entList = query.GroupBy(g => g.CheckRequestNo).Select(s => new PacsNoReportDto
// {
// Age = s.FirstOrDefault().Age,
// AsbitemName = string.Join(',', s.Select(s => s.AsbitemName)),
// CheckRequestNo = s.FirstOrDefault().CheckRequestNo,
// PatientName = s.FirstOrDefault().PatientName,
// PatientRegisterNo = s.FirstOrDefault().PatientRegisterNo,
// SexName = s.FirstOrDefault().SexName,
// CustomerOrgName = s.FirstOrDefault().CustomerOrgName,
// DepartmentName = s.FirstOrDefault().DepartmentName
// }).ToList();
// return entList;
//}
/// <summary>
/// 打印收费单
/// </summary>

Loading…
Cancel
Save