wxd 2 years ago
parent
commit
4ac0c3daf8
  1. 5
      src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs
  2. 3
      src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs
  3. 5
      src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs
  4. 15
      src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs
  5. 22
      src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs
  6. 10
      src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs
  7. 2
      src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs
  8. 15
      src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs

5
src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs

@ -139,9 +139,10 @@ namespace Shentun.Peis.DeviceTypes
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <returns></returns> /// <returns></returns>
public override Task DeleteAsync(Guid id)
public override async Task DeleteAsync(Guid id)
{ {
return base.DeleteAsync(id);
var entity = await Repository.GetAsync(id);
await _manager.CheckAndDeleteAsync(entity);
} }
/// <summary> /// <summary>

3
src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs

@ -137,7 +137,8 @@ namespace Shentun.Peis.InvoiceItemTypes
/// <returns></returns> /// <returns></returns>
public override async Task DeleteAsync(Guid id) public override async Task DeleteAsync(Guid id)
{ {
await _manager.CheckAndDeleteAsync(id);
var entity = await Repository.GetAsync(id);
await _manager.CheckAndDeleteAsync(entity);
} }
/// <summary> /// <summary>

5
src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs

@ -136,9 +136,10 @@ namespace Shentun.Peis.SampleTypes
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <returns></returns> /// <returns></returns>
public override Task DeleteAsync(Guid id)
public override async Task DeleteAsync(Guid id)
{ {
return base.DeleteAsync(id);
var entity = await Repository.GetAsync(id);
await _manager.CheckAndDeleteAsync(entity);
} }
/// <summary> /// <summary>

15
src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs

@ -19,9 +19,11 @@ namespace Shentun.Peis.DeviceTypes
public class DeviceTypeManager : DomainService public class DeviceTypeManager : DomainService
{ {
private readonly IRepository<DeviceType, Guid> _repository; private readonly IRepository<DeviceType, Guid> _repository;
public DeviceTypeManager(IRepository<DeviceType, Guid> repository)
private readonly IRepository<Asbitem, Guid> _asbitemRepository;
public DeviceTypeManager(IRepository<DeviceType, Guid> repository, IRepository<Asbitem, Guid> asbitemRepository)
{ {
_repository = repository; _repository = repository;
_asbitemRepository = asbitemRepository;
} }
/// <summary> /// <summary>
/// 创建 /// 创建
@ -71,7 +73,18 @@ namespace Shentun.Peis.DeviceTypes
} }
public async Task CheckAndDeleteAsync(DeviceType entity)
{
var queryable = await _asbitemRepository.GetQueryableAsync();
var item = queryable.Where(o => o.DeviceTypeId.Equals(entity.Id)).FirstOrDefault();
if (item != null)
{
throw new BusinessException("", $"仪器类别\"{entity.DisplayName}\"已在组合项目\"{item.DisplayName}\"中使用,不能删除");
}
await _repository.DeleteAsync(entity);
}
/// <summary> /// <summary>
/// 修改排序 相邻之间 /// 修改排序 相邻之间

22
src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs

@ -114,25 +114,15 @@ namespace Shentun.Peis.InvoiceItemTypes
/// <param name="id"></param> /// <param name="id"></param>
/// <returns></returns> /// <returns></returns>
/// <exception cref="UserFriendlyException"></exception> /// <exception cref="UserFriendlyException"></exception>
public async Task CheckAndDeleteAsync(Guid id)
public async Task CheckAndDeleteAsync(InvoiceItemType entity)
{ {
var invoiceItemTypeEnt = await _repository.FindAsync(m => m.Id == id);
if (invoiceItemTypeEnt != null)
var queryable = await _asbitemRepository.GetQueryableAsync();
var item = queryable.Where(o => o.InvoiceItemTypeId.Equals(entity.Id)).FirstOrDefault();
if (item != null)
{ {
var asbitemEnt = await _asbitemRepository.FindAsync(m => m.ItemTypeId == id);
if (asbitemEnt != null)
{
throw new UserFriendlyException($"发票项目类别\"{invoiceItemTypeEnt.DisplayName}\"已在组合项目\"{asbitemEnt.DisplayName}\"中使用,不能删除");
}
await _repository.DeleteAsync(id);
}
else
{
throw new UserFriendlyException("数据不存在");
throw new BusinessException("", $"发票项目类别\"{entity.DisplayName}\"已在组合项目\"{item.DisplayName}\"中使用,不能删除");
} }
await _repository.DeleteAsync(entity);
} }
} }

10
src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs

@ -63,10 +63,10 @@ namespace Shentun.Peis.MedicalTypes
targetEntity.SimpleCode = LanguageConverter.GetPYSimpleCode(targetEntity.DisplayName); targetEntity.SimpleCode = LanguageConverter.GetPYSimpleCode(targetEntity.DisplayName);
} }
if (sourceEntity.DisplayOrder > 0 && targetEntity.DisplayOrder != sourceEntity.DisplayOrder)
{
targetEntity.DisplayOrder = sourceEntity.DisplayOrder;
}
//if (sourceEntity.DisplayOrder > 0 && targetEntity.DisplayOrder != sourceEntity.DisplayOrder)
//{
// targetEntity.DisplayOrder = sourceEntity.DisplayOrder;
//}
} }
@ -119,7 +119,7 @@ namespace Shentun.Peis.MedicalTypes
var medicalTypeEnt = await _repository.FindAsync(m => m.Id == id); var medicalTypeEnt = await _repository.FindAsync(m => m.Id == id);
if (medicalTypeEnt != null) if (medicalTypeEnt != null)
{ {
var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.CustomerOrgGroupId == id);
var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.MedicalTypeId == id);
if (patientRegisterEnt != null) if (patientRegisterEnt != null)
{ {
throw new UserFriendlyException($"体检类别\"{medicalTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除"); throw new UserFriendlyException($"体检类别\"{medicalTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除");

2
src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs

@ -124,7 +124,7 @@ namespace Shentun.Peis.PersonnelTypes
var personnelTypeEnt = await _repository.FindAsync(m => m.Id == id); var personnelTypeEnt = await _repository.FindAsync(m => m.Id == id);
if (personnelTypeEnt != null) if (personnelTypeEnt != null)
{ {
var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.CustomerOrgGroupId == id);
var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.PersonnelTypeId == id);
if (patientRegisterEnt != null) if (patientRegisterEnt != null)
{ {
throw new UserFriendlyException($"人员类别\"{personnelTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除"); throw new UserFriendlyException($"人员类别\"{personnelTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除");

15
src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs

@ -19,9 +19,11 @@ namespace Shentun.Peis.SampleTypes
public class SampleTypeManager : DomainService public class SampleTypeManager : DomainService
{ {
private readonly IRepository<SampleType, Guid> _repository; private readonly IRepository<SampleType, Guid> _repository;
public SampleTypeManager(IRepository<SampleType, Guid> repository)
private readonly IRepository<SampleGroup, Guid> _sampleGroupRepository;
public SampleTypeManager(IRepository<SampleType, Guid> repository, IRepository<SampleGroup, Guid> sampleGroupRepository)
{ {
_repository = repository; _repository = repository;
_sampleGroupRepository = sampleGroupRepository;
} }
/// <summary> /// <summary>
/// 创建 /// 创建
@ -69,7 +71,18 @@ namespace Shentun.Peis.SampleTypes
} }
public async Task CheckAndDeleteAsync(SampleType entity)
{
var queryable = await _sampleGroupRepository.GetQueryableAsync();
var item = queryable.Where(o => o.SampleTypeId.Equals(entity.Id)).FirstOrDefault();
if (item != null)
{
throw new BusinessException("", $"标本类型\"{entity.DisplayName}\"已在条码分组\"{item.DisplayName}\"中使用,不能删除");
}
await _repository.DeleteAsync(entity);
}
/// <summary> /// <summary>
/// 修改排序 相邻之间 /// 修改排序 相邻之间

Loading…
Cancel
Save