diff --git a/src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs b/src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs
index 20f64f7..b81dbf5 100644
--- a/src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs
+++ b/src/Shentun.Peis.Application/DeviceTypes/DeviceTypeAppService.cs
@@ -139,9 +139,10 @@ namespace Shentun.Peis.DeviceTypes
///
///
///
- 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);
}
///
diff --git a/src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs b/src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs
index 7db2b49..8c652df 100644
--- a/src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs
+++ b/src/Shentun.Peis.Application/InvoiceItemTypes/InvoiceItemTypeAppService.cs
@@ -137,7 +137,8 @@ namespace Shentun.Peis.InvoiceItemTypes
///
public override async Task DeleteAsync(Guid id)
{
- await _manager.CheckAndDeleteAsync(id);
+ var entity = await Repository.GetAsync(id);
+ await _manager.CheckAndDeleteAsync(entity);
}
///
diff --git a/src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs b/src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs
index 37eafcc..08ec43c 100644
--- a/src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs
+++ b/src/Shentun.Peis.Application/SampleTypes/SampleTypeAppService.cs
@@ -136,9 +136,10 @@ namespace Shentun.Peis.SampleTypes
///
///
///
- 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);
}
///
diff --git a/src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs b/src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs
index 8d59b53..9865d29 100644
--- a/src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs
+++ b/src/Shentun.Peis.Domain/DeviceTypes/DeviceTypeManager.cs
@@ -19,9 +19,11 @@ namespace Shentun.Peis.DeviceTypes
public class DeviceTypeManager : DomainService
{
private readonly IRepository _repository;
- public DeviceTypeManager(IRepository repository)
+ private readonly IRepository _asbitemRepository;
+ public DeviceTypeManager(IRepository repository, IRepository asbitemRepository)
{
_repository = repository;
+ _asbitemRepository = asbitemRepository;
}
///
/// 创建
@@ -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);
+ }
///
/// 修改排序 相邻之间
diff --git a/src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs b/src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs
index 5dd1074..0d487a8 100644
--- a/src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs
+++ b/src/Shentun.Peis.Domain/InvoiceItemTypes/InvoiceItemTypeManager.cs
@@ -114,25 +114,15 @@ namespace Shentun.Peis.InvoiceItemTypes
///
///
///
- 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);
}
}
diff --git a/src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs b/src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs
index 7291ec5..d19e2d7 100644
--- a/src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs
+++ b/src/Shentun.Peis.Domain/MedicalTypes/MedicalTypeManager.cs
@@ -63,10 +63,10 @@ namespace Shentun.Peis.MedicalTypes
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);
if (medicalTypeEnt != null)
{
- var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.CustomerOrgGroupId == id);
+ var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.MedicalTypeId == id);
if (patientRegisterEnt != null)
{
throw new UserFriendlyException($"体检类别\"{medicalTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除");
diff --git a/src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs b/src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs
index 35a4222..506ab33 100644
--- a/src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs
+++ b/src/Shentun.Peis.Domain/PersonnelTypes/PersonnelTypeManager.cs
@@ -124,7 +124,7 @@ namespace Shentun.Peis.PersonnelTypes
var personnelTypeEnt = await _repository.FindAsync(m => m.Id == id);
if (personnelTypeEnt != null)
{
- var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.CustomerOrgGroupId == id);
+ var patientRegisterEnt = await _patientRegisterRepository.FindAsync(m => m.PersonnelTypeId == id);
if (patientRegisterEnt != null)
{
throw new UserFriendlyException($"人员类别\"{personnelTypeEnt.DisplayName}\"已被体检人员\"{patientRegisterEnt.PatientName}\"登记中使用,不能删除");
diff --git a/src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs b/src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs
index db122f7..5dc3d54 100644
--- a/src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs
+++ b/src/Shentun.Peis.Domain/SampleTypes/SampleTypeManager.cs
@@ -19,9 +19,11 @@ namespace Shentun.Peis.SampleTypes
public class SampleTypeManager : DomainService
{
private readonly IRepository _repository;
- public SampleTypeManager(IRepository repository)
+ private readonly IRepository _sampleGroupRepository;
+ public SampleTypeManager(IRepository repository, IRepository sampleGroupRepository)
{
_repository = repository;
+ _sampleGroupRepository = sampleGroupRepository;
}
///
/// 创建
@@ -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);
+ }
///
/// 修改排序 相邻之间