字典和邮件添加增加验证
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
a43abebc6e
commit
dd07057ca5
|
@ -11278,6 +11278,11 @@
|
|||
系统邮件配置表
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Contracts.EmailNoticeConfigService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.EmailNoticeConfig},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.EmailNoticeUserType})">
|
||||
<summary>
|
||||
系统邮件配置表
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:IRaCIS.Core.Application.Contracts.ISystemBasicDataService">
|
||||
<summary>
|
||||
ISystemBasicDataService
|
||||
|
|
|
@ -88,6 +88,14 @@ namespace IRaCIS.Application.Services
|
|||
IsVerify = true
|
||||
};
|
||||
|
||||
|
||||
if((addBasicDicAndChild.DataTypeEnum == DicDataTypeEnum.Enum || addBasicDicAndChild.DataTypeEnum == DicDataTypeEnum.Bool))
|
||||
{
|
||||
if(addBasicDicAndChild.ChildList.GroupBy(t => t.Code).Where(g => g.Count() > 1).Any())
|
||||
{
|
||||
return ResponseOutput.NotOk(_localizer["Dictionary_RepeateCode"]);
|
||||
}
|
||||
}
|
||||
|
||||
var entity = await _dicRepository.InsertFromDTOAsync(addBasicDicAndChild, false, verifyExp1);
|
||||
|
||||
|
@ -148,16 +156,15 @@ namespace IRaCIS.Application.Services
|
|||
IsVerify = addOrEditBasic.ParentId == null
|
||||
};
|
||||
|
||||
var verifyExp2 = new EntityVerifyExp<Dictionary>()
|
||||
{
|
||||
VerifyExp = t => t.Code == addOrEditBasic.Code && t.ParentId == addOrEditBasic.ParentId && t.Code==addOrEditBasic.Code,
|
||||
|
||||
VerifyMsg = _localizer["Dictionary_RepeateCode"],
|
||||
|
||||
IsVerify = addOrEditBasic.ParentId != null && (addOrEditBasic.DataTypeEnum == DicDataTypeEnum.Enum || addOrEditBasic.DataTypeEnum == DicDataTypeEnum.Bool)
|
||||
};
|
||||
|
||||
//// 验证阅片标准是否可禁用
|
||||
//if (!addOrEditBasic.IsEnable&&addOrEditBasic.Id!=null)
|
||||
//{
|
||||
// var result = await _readingQuestionService.SetSystemCriterionDisable(addOrEditBasic.Id.Value,addOrEditBasic.ParentId);
|
||||
// if (!result.IsSuccess)
|
||||
// {
|
||||
// return result;
|
||||
// }
|
||||
//}
|
||||
|
||||
|
||||
if (addOrEditBasic.Id != null && addOrEditBasic.ParentId == null)
|
||||
|
@ -167,7 +174,7 @@ namespace IRaCIS.Application.Services
|
|||
//await _dicRepository.BatchUpdateNoTrackingAsync(t => t.ParentId == addOrEditBasic.Id, c => new Dictionary() { DataTypeEnum = addOrEditBasic.DataTypeEnum });
|
||||
}
|
||||
|
||||
var entity = await _dicRepository.InsertOrUpdateAsync(addOrEditBasic, true, verifyExp1);
|
||||
var entity = await _dicRepository.InsertOrUpdateAsync(addOrEditBasic, true, verifyExp1, verifyExp2);
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -14,17 +14,10 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
/// 系统邮件配置表
|
||||
/// </summary>
|
||||
[ApiExplorerSettings(GroupName = "Common")]
|
||||
public class EmailNoticeConfigService : BaseService, IEmailNoticeConfigService
|
||||
public class EmailNoticeConfigService(IRepository<EmailNoticeConfig> _emailNoticeConfigrepository,
|
||||
IRepository<EmailNoticeUserType> _emailNoticeUserTypeRepository) : BaseService, IEmailNoticeConfigService
|
||||
{
|
||||
private readonly IRepository<EmailNoticeConfig> _emailNoticeConfigrepository;
|
||||
private readonly IRepository<EmailNoticeUserType> _emailNoticeUserTypeRepository;
|
||||
|
||||
public EmailNoticeConfigService(IRepository<EmailNoticeConfig> repository, IRepository<EmailNoticeUserType> emailNoticeUserTypeRepository)
|
||||
{
|
||||
_emailNoticeConfigrepository = repository;
|
||||
_emailNoticeUserTypeRepository = emailNoticeUserTypeRepository;
|
||||
}
|
||||
|
||||
|
||||
[HttpPost]
|
||||
public async Task<PageOutput<EmailNoticeConfigView>> GetEmailNoticeConfigList(EmailNoticeConfigQuery queryEmailNoticeConfig)
|
||||
{
|
||||
|
@ -44,6 +37,14 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
|
||||
public async Task<IResponseOutput> AddOrUpdateEmailNoticeConfig(EmailNoticeConfigAddOrEdit addOrEditEmailNoticeConfig)
|
||||
{
|
||||
var verifyExp1 = new EntityVerifyExp<EmailNoticeConfig>()
|
||||
{
|
||||
VerifyExp = t => t.BusinessScenarioEnum == addOrEditEmailNoticeConfig.BusinessScenarioEnum,
|
||||
|
||||
VerifyMsg = _localizer["EmailNoticeConfig_RepeatEmailScenario"]
|
||||
};
|
||||
|
||||
|
||||
if (addOrEditEmailNoticeConfig.Id == null)
|
||||
{
|
||||
|
||||
|
@ -63,7 +64,7 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
}
|
||||
|
||||
|
||||
await _emailNoticeConfigrepository.AddAsync(entity, true);
|
||||
await _emailNoticeConfigrepository.AddAsync(entity, true, verifyExp1);
|
||||
|
||||
return ResponseOutput.Ok(entity.Id.ToString());
|
||||
}
|
||||
|
@ -86,7 +87,7 @@ namespace IRaCIS.Core.Application.Contracts
|
|||
}
|
||||
|
||||
|
||||
var entity = await _emailNoticeConfigrepository.UpdateFromDTOAsync(addOrEditEmailNoticeConfig, true);
|
||||
var entity = await _emailNoticeConfigrepository.UpdateFromDTOAsync(addOrEditEmailNoticeConfig, true, false,verifyExp1);
|
||||
|
||||
return ResponseOutput.Ok(entity.Id.ToString());
|
||||
|
||||
|
|
|
@ -96,7 +96,7 @@ namespace IRaCIS.Core.Infra.EFCore
|
|||
|
||||
}
|
||||
|
||||
public interface ICommandRepository<TEntity, TKey> where TEntity : class
|
||||
public interface ICommandRepository<TEntity, TKey> where TEntity : Entity
|
||||
{
|
||||
EntityEntry<TEntity> Attach(TEntity entity);
|
||||
|
||||
|
@ -128,7 +128,7 @@ namespace IRaCIS.Core.Infra.EFCore
|
|||
|
||||
Task<int> CountAsync(Expression<Func<TEntity, bool>> whereLambda = null, bool ignoreQueryFilters = false);
|
||||
|
||||
ValueTask<TEntity> AddAsync(TEntity entity, bool autoSave = false);
|
||||
ValueTask<TEntity> AddAsync(TEntity entity, bool autoSave = false, params EntityVerifyExp<TEntity>[] verify);
|
||||
|
||||
Task<IEnumerable<TEntity>> AddRangeAsync(IEnumerable<TEntity> entities, bool autoSave = false);
|
||||
|
||||
|
|
|
@ -62,8 +62,9 @@ namespace IRaCIS.Core.Infra.EFCore
|
|||
}
|
||||
|
||||
/// <summary>EF跟踪方式 添加</summary>
|
||||
public async ValueTask<TEntity> AddAsync(TEntity entity, bool autoSave = false)
|
||||
public async ValueTask<TEntity> AddAsync(TEntity entity, bool autoSave = false, params EntityVerifyExp<TEntity>[] verify)
|
||||
{
|
||||
await _dbContext.EntityVerifyAsync(true, verify);
|
||||
|
||||
await _dbSet.AddAsync(entity).ConfigureAwait(false);
|
||||
|
||||
|
|
Loading…
Reference in New Issue