Browse Source

register_check加索引

master
wxd 1 year ago
parent
commit
a39f1fe67e
  1. 118
      src/Shentun.Peis.Application/PeisReports/PeisReportAppService.cs
  2. 2
      src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs

118
src/Shentun.Peis.Application/PeisReports/PeisReportAppService.cs

@ -83,9 +83,9 @@ namespace Shentun.Peis.PeisReports
var query = from a in await _patientRegisterRepository.GetQueryableAsync()
join b in await _patientRepository.GetQueryableAsync() on a.PatientId equals b.Id into bb
from ab in bb.DefaultIfEmpty()
join registerCheck in await _registerCheckRepository.GetQueryableAsync() on a.Id equals registerCheck.PatientRegisterId
join registerAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerAsbitem.RegisterCheckId
join asbitem in await _asbitemRepository.GetQueryableAsync() on registerAsbitem.AsbitemId equals asbitem.Id
//join registerCheck in await _registerCheckRepository.GetQueryableAsync() on a.Id equals registerCheck.PatientRegisterId
//join registerAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerAsbitem.RegisterCheckId
//join asbitem in await _asbitemRepository.GetQueryableAsync() on registerAsbitem.AsbitemId equals asbitem.Id
join c in await _customerOrgGroupRepository.GetQueryableAsync() on a.CustomerOrgGroupId equals c.Id into cc
from ac in cc.DefaultIfEmpty()
join d in await _medicalPackageRepository.GetQueryableAsync() on a.MedicalPackageId equals d.Id into dd
@ -118,8 +118,8 @@ namespace Shentun.Peis.PeisReports
a.IsUploadAppoint,
a.SummaryDoctorId
},
RegisterCheckCompleteFlag = registerCheck.CompleteFlag,
IsCheck = asbitem.IsCheck,
//RegisterCheckCompleteFlag = registerCheck.CompleteFlag,
//IsCheck = asbitem.IsCheck,
ab = new { ab.IdNo, ab.Address, ab.PatientNo, ab.MobileTelephone, ab.Telephone, ab.Email, ab.DisplayName },
ac = new { ac.DisplayName },
ad = new { ad.DisplayName }
@ -290,10 +290,10 @@ namespace Shentun.Peis.PeisReports
}
int totalCount = sumquery.GroupBy(g => g.a.Id).Count();
var sumqueryGroup = sumquery.ToList().GroupBy(g => g.a.Id).OrderBy(o => o.Key).Skip(input.SkipCount * input.MaxResultCount).Take(input.MaxResultCount);
int totalCount = sumquery.Count();
var sumqueryGroup = sumquery.Skip(input.SkipCount * input.MaxResultCount).Take(input.MaxResultCount).ToList();
//var sumqueryGroup = sumquery.ToList().GroupBy(g => g.a.Id);
@ -304,67 +304,69 @@ namespace Shentun.Peis.PeisReports
List<GetPatientRegisterReportDto> entlist = new List<GetPatientRegisterReportDto>();
foreach (var s in sumqueryGroup.OrderBy(o => o.Key))
foreach (var s in sumqueryGroup)
{
bool IsDisplay = false;
//bool IsDisplay = false;
if (input.CompleteFlag == PatientRegisterCompleteFlag.ItemCheckUnSumCheck)
{
if (s.Where(m => m.RegisterCheckCompleteFlag != RegisterCheckCompleteFlag.Checked && m.IsCheck == 'Y').Count() == 0
&& s.FirstOrDefault().a.CompleteFlag != PatientRegisterCompleteFlag.SumCheck)
{
IsDisplay = true;
}
else
{
IsDisplay = false;
}
}
else
{
IsDisplay = true;
}
//if (input.CompleteFlag == PatientRegisterCompleteFlag.ItemCheckUnSumCheck)
//{
// if (s.Where(m => m.RegisterCheckCompleteFlag != RegisterCheckCompleteFlag.Checked && m.IsCheck == 'Y').Count() == 0
// && s.FirstOrDefault().a.CompleteFlag != PatientRegisterCompleteFlag.SumCheck)
// {
// IsDisplay = true;
// }
// else
// {
// IsDisplay = false;
// }
//}
//else
//{
// IsDisplay = true;
//}
bool IsDisplay = true;
if (IsDisplay)
{
entlist.Add(new GetPatientRegisterReportDto
{
Address = s.FirstOrDefault().ab.Address,
PatientName = s.FirstOrDefault().a.PatientName,
Age = s.FirstOrDefault().a.Age,
BirthDate = DataHelper.ConversionDateToString(s.FirstOrDefault().a.BirthDate),
CompleteFlag = s.FirstOrDefault().a.CompleteFlag,
CustomerOrgGroupName = s.FirstOrDefault().ac.DisplayName,
CustomerOrgName = _cacheService.GetTopCustomerOrgNameAsync(s.FirstOrDefault().a.CustomerOrgId).Result,
DepartmentName = _cacheService.GetCustomerOrgNameAsync(s.FirstOrDefault().a.CustomerOrgId).Result,
Email = s.FirstOrDefault().ab.Email,
IdNo = s.FirstOrDefault().ab.IdNo,
IsAudit = s.FirstOrDefault().a.IsAudit,
IsReportPrint = s.FirstOrDefault().a.ReportPrintTimes > 0 ? 'Y' : 'N',
MedicalPackageName = s.FirstOrDefault().ad.DisplayName,
MedicalTypeName = _cacheService.GetMedicalTypeNameAsync(s.FirstOrDefault().a.MedicalTypeId).Result,
MobileTelephone = s.FirstOrDefault().ab.MobileTelephone,
PatientNo = s.FirstOrDefault().ab.PatientNo,
PatientRegisterNo = s.FirstOrDefault().a.PatientRegisterNo,
PersonnelTypeName = _cacheService.GetPersonnelTypeNameAsync(s.FirstOrDefault().a.PersonnelTypeId).Result,
SexName = _cacheService.GetSexNameAsync(s.FirstOrDefault().a.SexId).Result,
Telephone = s.FirstOrDefault().ab.Telephone,
PatientRegisterId = s.FirstOrDefault().a.Id,
MaritalStatusName = _cacheService.GetMaritalStatusNameAsync(s.FirstOrDefault().a.MaritalStatusId).Result,
RegisterName = _cacheService.GetSurnameAsync(s.FirstOrDefault().a.CreatorId).Result,
RegisterDate = DataHelper.ConversionDateToString(s.FirstOrDefault().a.CreationTime),
IsUpload = s.FirstOrDefault().a.IsUpload,
IsUploadAppoint = s.FirstOrDefault().a.IsUploadAppoint,
IsPatientOccupationalDisease = _patientOccupationalDiseaseManager.GetPatientRegisterIsOccupationalDisease(s.FirstOrDefault().a.Id).Result,
MedicalStartDate = DataHelper.ConversionDateShortToString(s.FirstOrDefault().a.MedicalStartDate),
SummaryDate = DataHelper.ConversionDateShortToString(s.FirstOrDefault().a.SummaryDate),
SummaryDoctorName = _cacheService.GetSurnameAsync(s.FirstOrDefault().a.SummaryDoctorId).Result
Address = s.ab.Address,
PatientName = s.a.PatientName,
Age = s.a.Age,
BirthDate = DataHelper.ConversionDateToString(s.a.BirthDate),
CompleteFlag = s.a.CompleteFlag,
CustomerOrgGroupName = s.ac.DisplayName,
CustomerOrgName = _cacheService.GetTopCustomerOrgNameAsync(s.a.CustomerOrgId).Result,
DepartmentName = _cacheService.GetCustomerOrgNameAsync(s.a.CustomerOrgId).Result,
Email = s.ab.Email,
IdNo = s.ab.IdNo,
IsAudit = s.a.IsAudit,
IsReportPrint = s.a.ReportPrintTimes > 0 ? 'Y' : 'N',
MedicalPackageName = s.ad.DisplayName,
MedicalTypeName = _cacheService.GetMedicalTypeNameAsync(s.a.MedicalTypeId).Result,
MobileTelephone = s.ab.MobileTelephone,
PatientNo = s.ab.PatientNo,
PatientRegisterNo = s.a.PatientRegisterNo,
PersonnelTypeName = _cacheService.GetPersonnelTypeNameAsync(s.a.PersonnelTypeId).Result,
SexName = _cacheService.GetSexNameAsync(s.a.SexId).Result,
Telephone = s.ab.Telephone,
PatientRegisterId = s.a.Id,
MaritalStatusName = _cacheService.GetMaritalStatusNameAsync(s.a.MaritalStatusId).Result,
RegisterName = _cacheService.GetSurnameAsync(s.a.CreatorId).Result,
RegisterDate = DataHelper.ConversionDateToString(s.a.CreationTime),
IsUpload = s.a.IsUpload,
IsUploadAppoint = s.a.IsUploadAppoint,
IsPatientOccupationalDisease = _patientOccupationalDiseaseManager.GetPatientRegisterIsOccupationalDisease(s.a.Id).Result,
MedicalStartDate = DataHelper.ConversionDateShortToString(s.a.MedicalStartDate),
SummaryDate = DataHelper.ConversionDateShortToString(s.a.SummaryDate),
SummaryDoctorName = _cacheService.GetSurnameAsync(s.a.SummaryDoctorId).Result
});
}
}
return new PagedResultDto<GetPatientRegisterReportDto>(totalCount, entlist);
}

2
src/Shentun.Peis.Application/RegisterChecks/RegisterCheckAppService.cs

@ -169,6 +169,8 @@ namespace Shentun.Peis.RegisterChecks
.Include(x => x.RegisterCheckAsbitems)
.ThenInclude(x => x.Asbitem).ThenInclude(x => x.ItemType)
.Where(m => m.PatientRegisterId == input.PatientRegisterId).ToList();
//排序
entlist = entlist.OrderBy(o => o.RegisterCheckAsbitems.Max(o => o.Asbitem.ItemType.DisplayOrder)).ToList()
.OrderBy(o => o.RegisterCheckAsbitems.Max(o => o.Asbitem.DisplayOrder)).ToList();

Loading…
Cancel
Save