diff --git a/src/Shentun.Peis.Application.Contracts/MyUser/UserLoginDto.cs b/src/Shentun.Peis.Application.Contracts/MyUser/UserLoginDto.cs index bab2f58..223ee70 100644 --- a/src/Shentun.Peis.Application.Contracts/MyUser/UserLoginDto.cs +++ b/src/Shentun.Peis.Application.Contracts/MyUser/UserLoginDto.cs @@ -20,6 +20,11 @@ namespace Shentun.Peis.MyUser public Guid UserId { get; set; } + /// + /// 用户操作类别 + /// + public char OperatorType { get; set; } + public string access_token { get; set; } public string token_type { get; set; } diff --git a/src/Shentun.Peis.Application.Contracts/OccupationalDiseases/PatientSymptomDto.cs b/src/Shentun.Peis.Application.Contracts/OccupationalDiseases/PatientSymptomDto.cs index ef8bb6c..cd0e29f 100644 --- a/src/Shentun.Peis.Application.Contracts/OccupationalDiseases/PatientSymptomDto.cs +++ b/src/Shentun.Peis.Application.Contracts/OccupationalDiseases/PatientSymptomDto.cs @@ -10,6 +10,11 @@ namespace Shentun.Peis.OccupationalDiseases { public Guid SymptomId { get; set; } + + /// + /// 症状名称 + /// + public string SymptomName { get; set; } /// /// 程度 /// diff --git a/src/Shentun.Peis.Application.Contracts/PrintReports/OccupationalDiseaseMedicalReportDto.cs b/src/Shentun.Peis.Application.Contracts/PrintReports/OccupationalDiseaseMedicalReportDto.cs index eb6ed7a..5c30d94 100644 --- a/src/Shentun.Peis.Application.Contracts/PrintReports/OccupationalDiseaseMedicalReportDto.cs +++ b/src/Shentun.Peis.Application.Contracts/PrintReports/OccupationalDiseaseMedicalReportDto.cs @@ -7,7 +7,7 @@ using System.Text; namespace Shentun.Peis.PrintReports { - public class OccupationalDiseaseMedicalReportDto: MedicalReportDto + public class OccupationalDiseaseMedicalReportDto : MedicalReportDto { /// /// 职业病检查类别 @@ -174,10 +174,15 @@ namespace Shentun.Peis.PrintReports public char? SmokeFlag { get; set; } /// - /// 每天多少支 + /// 每天多少支 区间开始 /// public int? SmokeNum { get; set; } + /// + /// 每天多少支 区间结束 + /// + public int? SmokeNumMax { get; set; } + /// /// 抽烟年限 /// @@ -189,10 +194,15 @@ namespace Shentun.Peis.PrintReports public char? DrinkFlag { get; set; } /// - /// 每次多少ml + /// 每次多少ml 区间开始 /// public int? DrinkNum { get; set; } + /// + /// 每次多少ml 区间结束 + /// + public int? DrinkNumMax { get; set; } + /// /// 饮酒年限 /// @@ -335,7 +345,7 @@ namespace Shentun.Peis.PrintReports /// /// 是否恢复 /// - public char? IsRecovery { get; set; } + public string IsRecovery { get; set; } /// /// 治疗方式 diff --git a/src/Shentun.Peis.Application/MyUser/MyUserAppService.cs b/src/Shentun.Peis.Application/MyUser/MyUserAppService.cs index 4fd86e1..bfef4b5 100644 --- a/src/Shentun.Peis.Application/MyUser/MyUserAppService.cs +++ b/src/Shentun.Peis.Application/MyUser/MyUserAppService.cs @@ -610,6 +610,7 @@ namespace Shentun.Peis.MyUser //msg = "登录成功", peisid = PeisId, UserId = user.Id, + OperatorType = user.GetProperty("operator_type"), access_token = token.AccessToken, expires_in = token.ExpiresIn, refresh_token = token.RefreshToken, diff --git a/src/Shentun.Peis.Application/OccupationalDiseases/OccupationalDiseaseAppService.cs b/src/Shentun.Peis.Application/OccupationalDiseases/OccupationalDiseaseAppService.cs index 993999a..7ce6b40 100644 --- a/src/Shentun.Peis.Application/OccupationalDiseases/OccupationalDiseaseAppService.cs +++ b/src/Shentun.Peis.Application/OccupationalDiseases/OccupationalDiseaseAppService.cs @@ -15,6 +15,7 @@ using System.Threading.Tasks; using Volo.Abp; using Volo.Abp.Application.Services; using Volo.Abp.Domain.Repositories; +using Volo.Abp.EntityFrameworkCore.PostgreSql; using Volo.Abp.Identity; using Volo.Abp.ObjectMapping; @@ -35,7 +36,7 @@ namespace Shentun.Peis.OccupationalDiseases private readonly IRepository _patientPastMedicalHistoryRepository; private readonly PatientOccupationalDiseaseManager _patientOccupationalDiseaseManager; private readonly CacheService _cacheService; - + private readonly IRepository _symptomRepository; private readonly IRepository _patientRepository; private readonly IRepository _registerCheckRepository; @@ -327,7 +328,7 @@ namespace Shentun.Peis.OccupationalDiseases LastModifierId = s.LastModifierId, CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result - }).ToList(); + }).OrderBy(o => o.CreationTime).ToList(); result.PatientPoisonDtos = patientPoisonDtos; @@ -352,7 +353,7 @@ namespace Shentun.Peis.OccupationalDiseases LastModifierId = s.LastModifierId, CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result - }).ToList(); + }).OrderBy(o => o.CreationTime).ToList(); result.PatientOccupationalMedicalHistoryDtos = patientOccupationalMedicalHistoryDtos; @@ -377,7 +378,7 @@ namespace Shentun.Peis.OccupationalDiseases LastModifierId = s.LastModifierId, CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result - }).ToList(); + }).OrderBy(o => o.CreationTime).ToList(); result.PatientPastMedicalHistoryDtos = patientPastMedicalHistoryDtos; @@ -385,20 +386,31 @@ namespace Shentun.Peis.OccupationalDiseases #region 症状 - var patientSymptomList = await _patientSymptomRepository.GetListAsync(m => m.PatientRegisterId == input.PatientRegisterId); + // var patientSymptomList = await _patientSymptomRepository.GetListAsync(m => m.PatientRegisterId == input.PatientRegisterId); + var patientSymptomList = from patientSymptom in await _patientSymptomRepository.GetQueryableAsync() + join symptom in await _symptomRepository.GetQueryableAsync() on patientSymptom.SymptomId equals symptom.Id into symptomTemp + from symptomHaveEmpty in symptomTemp.DefaultIfEmpty() + where patientSymptom.PatientRegisterId == input.PatientRegisterId + select new + { + patientSymptom, + symptomName = symptomHaveEmpty != null ? symptomHaveEmpty.DisplayName : "" + }; + List patientSymptomDtos = patientSymptomList.Select(s => new PatientSymptomDto { - Degree = s.Degree, - SymptomId = s.SymptomId, - TimeLength = s.TimeLength, - CreationTime = s.CreationTime, - CreatorId = s.CreatorId, - LastModificationTime = s.LastModificationTime, - LastModifierId = s.LastModifierId, - CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, - LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result - }).ToList(); + Degree = s.patientSymptom.Degree, + SymptomId = s.patientSymptom.SymptomId, + TimeLength = s.patientSymptom.TimeLength, + SymptomName = s.symptomName, + CreationTime = s.patientSymptom.CreationTime, + CreatorId = s.patientSymptom.CreatorId, + LastModificationTime = s.patientSymptom.LastModificationTime, + LastModifierId = s.patientSymptom.LastModifierId, + CreatorName = _cacheService.GetSurnameAsync(s.patientSymptom.CreatorId).Result, + LastModifierName = _cacheService.GetSurnameAsync(s.patientSymptom.LastModifierId).Result + }).OrderBy(o => o.CreationTime).ToList(); result.PatientSymptomDtos = patientSymptomDtos; @@ -425,7 +437,7 @@ namespace Shentun.Peis.OccupationalDiseases LastModificationTime = s.LastModificationTime, CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result, LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result - }).ToList(); + }).OrderBy(o => o.CreationTime).ToList(); result.PatientOccupationalHistoryDtos = patientOccupationalHistoryDtos; diff --git a/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs b/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs index 2167d44..99c2125 100644 --- a/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs +++ b/src/Shentun.Peis.Application/PrintReports/PrintReportAppService.cs @@ -551,6 +551,7 @@ namespace Shentun.Peis.PrintReports ChildrenNum = patientOccupationalDiseaseEnt.patientOccupationalDisease.ChildrenNum, DrinkFlag = patientOccupationalDiseaseEnt.patientOccupationalDisease.DrinkFlag, DrinkNum = patientOccupationalDiseaseEnt.patientOccupationalDisease.DrinkNum, + DrinkNumMax = patientOccupationalDiseaseEnt.patientOccupationalDisease.DrinkNum != null ? patientOccupationalDiseaseEnt.patientOccupationalDisease.DrinkNum.Value + 50 : null, DrinkYears = patientOccupationalDiseaseEnt.patientOccupationalDisease.DrinkYears, FirstMenstruation = patientOccupationalDiseaseEnt.patientOccupationalDisease.FirstMenstruation, HandleSuggestion = patientOccupationalDiseaseEnt.patientOccupationalDisease.HandleSuggestion, @@ -572,6 +573,7 @@ namespace Shentun.Peis.PrintReports RiskFactors = patientOccupationalDiseaseEnt.patientOccupationalDisease.RiskFactors, SmokeFlag = patientOccupationalDiseaseEnt.patientOccupationalDisease.SmokeFlag, SmokeNum = patientOccupationalDiseaseEnt.patientOccupationalDisease.SmokeNum, + SmokeNumMax = patientOccupationalDiseaseEnt.patientOccupationalDisease.SmokeNum != null ? patientOccupationalDiseaseEnt.patientOccupationalDisease.SmokeNum + 5 : null, SmokeYears = patientOccupationalDiseaseEnt.patientOccupationalDisease.SmokeYears, StillbirthTimes = patientOccupationalDiseaseEnt.patientOccupationalDisease.StillbirthTimes, TotalWorkTime = patientOccupationalDiseaseEnt.patientOccupationalDisease.TotalWorkTime @@ -647,7 +649,7 @@ namespace Shentun.Peis.PrintReports { DiagnosisDate = DataHelper.ConversionDateShortToString(s.DiagnosisDate), DiagnosisHospital = s.DiagnosisHospital, - IsRecovery = s.IsRecovery, + IsRecovery = s.IsRecovery == 'Y' ? "治愈" : "未愈", OccupationalDisease = s.OccupationalDisease, TreatmentMethods = s.TreatmentMethods, DisplayOrder = patientOccupationalMedicalHistoryList.IndexOf(s) + 1 @@ -658,13 +660,13 @@ namespace Shentun.Peis.PrintReports #region 既往病史 - var patientPastMedicalHistoryList =( await _patientPastMedicalHistoryRepository.GetQueryableAsync()) + var patientPastMedicalHistoryList = (await _patientPastMedicalHistoryRepository.GetQueryableAsync()) .Where(m => m.PatientRegisterId == input.PatientRegisterId).OrderBy(o => o.CreationTime).ToList(); result.PatientPastMedicalHistoryDtos = patientPastMedicalHistoryList.Select(s => new OccupationalDiseaseMedicalReport_PatientOccupationalMedicalHistoryDto { DiagnosisDate = DataHelper.ConversionDateShortToString(s.DiagnosisDate), DiagnosisHospital = s.DiagnosisHospital, - IsRecovery = s.IsRecovery, + IsRecovery = s.IsRecovery == 'Y' ? "治愈" : "未愈", OccupationalDisease = s.OccupationalDisease, TreatmentMethods = s.TreatmentMethods, DisplayOrder = patientPastMedicalHistoryList.IndexOf(s) + 1