|
|
@ -12,6 +12,7 @@ using Shentun.Peis.CommonCharTypes; |
|
|
using Shentun.Peis.CustomerOrgRegisters; |
|
|
using Shentun.Peis.CustomerOrgRegisters; |
|
|
using Shentun.Peis.CustomerOrgs; |
|
|
using Shentun.Peis.CustomerOrgs; |
|
|
using Shentun.Peis.Enums; |
|
|
using Shentun.Peis.Enums; |
|
|
|
|
|
using Shentun.Peis.LisRequests; |
|
|
using Shentun.Peis.Models; |
|
|
using Shentun.Peis.Models; |
|
|
using Shentun.Peis.PatientRegisterExters; |
|
|
using Shentun.Peis.PatientRegisterExters; |
|
|
using Shentun.Peis.Patients; |
|
|
using Shentun.Peis.Patients; |
|
|
@ -104,6 +105,7 @@ namespace Shentun.Peis.PatientRegisters |
|
|
private readonly SysParmValueManager _sysParmValueManager; |
|
|
private readonly SysParmValueManager _sysParmValueManager; |
|
|
private readonly IRepository<PatientRegisterExter> _patientRegisterExterRepository; |
|
|
private readonly IRepository<PatientRegisterExter> _patientRegisterExterRepository; |
|
|
private readonly PatientRegisterExterManager _patientRegisterExterManager; |
|
|
private readonly PatientRegisterExterManager _patientRegisterExterManager; |
|
|
|
|
|
private readonly IRepository<LisRequest, Guid> _lisRequestRepository; |
|
|
public PatientRegisterAppService( |
|
|
public PatientRegisterAppService( |
|
|
IRepository<PatientRegister, Guid> repository, |
|
|
IRepository<PatientRegister, Guid> repository, |
|
|
IRepository<Patient, Guid> patientRepository, |
|
|
IRepository<Patient, Guid> patientRepository, |
|
|
@ -149,7 +151,8 @@ namespace Shentun.Peis.PatientRegisters |
|
|
SumSuggestionContentManager sumSuggestionContentManager, |
|
|
SumSuggestionContentManager sumSuggestionContentManager, |
|
|
SysParmValueManager sysParmValueManager, |
|
|
SysParmValueManager sysParmValueManager, |
|
|
IRepository<PatientRegisterExter> patientRegisterExterRepository, |
|
|
IRepository<PatientRegisterExter> patientRegisterExterRepository, |
|
|
PatientRegisterExterManager patientRegisterExterManager) |
|
|
|
|
|
|
|
|
PatientRegisterExterManager patientRegisterExterManager, |
|
|
|
|
|
IRepository<LisRequest, Guid> lisRequestRepository) |
|
|
: base(repository) |
|
|
: base(repository) |
|
|
{ |
|
|
{ |
|
|
this._repository = repository; |
|
|
this._repository = repository; |
|
|
@ -197,6 +200,7 @@ namespace Shentun.Peis.PatientRegisters |
|
|
_sysParmValueManager = sysParmValueManager; |
|
|
_sysParmValueManager = sysParmValueManager; |
|
|
_patientRegisterExterRepository = patientRegisterExterRepository; |
|
|
_patientRegisterExterRepository = patientRegisterExterRepository; |
|
|
_patientRegisterExterManager = patientRegisterExterManager; |
|
|
_patientRegisterExterManager = patientRegisterExterManager; |
|
|
|
|
|
_lisRequestRepository = lisRequestRepository; |
|
|
} |
|
|
} |
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// 获取通过主键
|
|
|
/// 获取通过主键
|
|
|
@ -209,6 +213,72 @@ namespace Shentun.Peis.PatientRegisters |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 根据lis申请单号 获取人员条码号
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="input"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="UserFriendlyException"></exception>
|
|
|
|
|
|
[HttpPost("api/app/PatientRegister/GetPatientRegisterNoByLisRequestNo")] |
|
|
|
|
|
public async Task<PatientRegisterSimpleDto> GetPatientRegisterNoByLisRequestNoAsync(LisRequestNoInputDto input) |
|
|
|
|
|
{ |
|
|
|
|
|
if (input == null) |
|
|
|
|
|
{ |
|
|
|
|
|
throw new UserFriendlyException("请求参数有误"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
var patientRegisterNo = (from lisRequest in await _lisRequestRepository.GetQueryableAsync() |
|
|
|
|
|
join registerCheckAsbitem in await _registerCheckAsbitemRepository.GetQueryableAsync() on lisRequest.Id equals registerCheckAsbitem.LisRequestId |
|
|
|
|
|
join registerCheck in await _registerCheckRepository.GetQueryableAsync() on registerCheckAsbitem.RegisterCheckId equals registerCheck.Id |
|
|
|
|
|
join patientRegister in await Repository.GetQueryableAsync() on registerCheck.PatientRegisterId equals patientRegister.Id |
|
|
|
|
|
where lisRequest.LisRequestNo == input.LisRequestNo |
|
|
|
|
|
select patientRegister.PatientRegisterNo).FirstOrDefault(); |
|
|
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrEmpty(patientRegisterNo)) |
|
|
|
|
|
{ |
|
|
|
|
|
return new PatientRegisterSimpleDto |
|
|
|
|
|
{ |
|
|
|
|
|
PatientRegisterNo = patientRegisterNo |
|
|
|
|
|
}; |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
{ |
|
|
|
|
|
throw new UserFriendlyException("Lis申请单有误"); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 根据检查单号 获取人员条码号
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="input"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
/// <exception cref="UserFriendlyException"></exception>
|
|
|
|
|
|
[HttpPost("api/app/PatientRegister/GetPatientRegisterNoByCheckRequestNo")] |
|
|
|
|
|
public async Task<PatientRegisterSimpleDto> GetPatientRegisterNoByCheckRequestNoAsync(CheckRequestNoInputDto input) |
|
|
|
|
|
{ |
|
|
|
|
|
if (input == null) |
|
|
|
|
|
{ |
|
|
|
|
|
throw new UserFriendlyException("请求参数有误"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
var patientRegisterNo = (from registerCheck in await _registerCheckRepository.GetQueryableAsync() |
|
|
|
|
|
join patientRegister in await Repository.GetQueryableAsync() on registerCheck.PatientRegisterId equals patientRegister.Id |
|
|
|
|
|
where registerCheck.CheckRequestNo == input.CheckRequestNo |
|
|
|
|
|
select patientRegister.PatientRegisterNo).FirstOrDefault(); |
|
|
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrEmpty(patientRegisterNo)) |
|
|
|
|
|
{ |
|
|
|
|
|
return new PatientRegisterSimpleDto |
|
|
|
|
|
{ |
|
|
|
|
|
PatientRegisterNo = patientRegisterNo |
|
|
|
|
|
}; |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
{ |
|
|
|
|
|
throw new UserFriendlyException("检查单有误"); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// 编辑反写接口,包含档案表跟登记表的信息
|
|
|
/// 编辑反写接口,包含档案表跟登记表的信息
|
|
|
@ -820,7 +890,7 @@ namespace Shentun.Peis.PatientRegisters |
|
|
} |
|
|
} |
|
|
//创建人员登记信息
|
|
|
//创建人员登记信息
|
|
|
createPatientRegisterArg.PatientId = patient.Id; |
|
|
createPatientRegisterArg.PatientId = patient.Id; |
|
|
if(patient.BirthDate != null) |
|
|
|
|
|
|
|
|
if (patient.BirthDate != null) |
|
|
{ |
|
|
{ |
|
|
createPatientRegisterArg.BirthDate = patient.BirthDate; |
|
|
createPatientRegisterArg.BirthDate = patient.BirthDate; |
|
|
} |
|
|
} |
|
|
@ -2793,7 +2863,7 @@ namespace Shentun.Peis.PatientRegisters |
|
|
|
|
|
|
|
|
patientRegisterList.ForEach(f => |
|
|
patientRegisterList.ForEach(f => |
|
|
{ |
|
|
{ |
|
|
if(f.CompleteFlag == PatientRegisterCompleteFlag.PreRegistration |
|
|
|
|
|
|
|
|
if (f.CompleteFlag == PatientRegisterCompleteFlag.PreRegistration |
|
|
&& input.CompleteFlag == PatientRegisterCompleteFlag.Registration) |
|
|
&& input.CompleteFlag == PatientRegisterCompleteFlag.Registration) |
|
|
{ |
|
|
{ |
|
|
f.MedicalStartDate = DateTime.Now; |
|
|
f.MedicalStartDate = DateTime.Now; |
|
|
|