diff --git a/src/SJZY.Track.Repository/Repositories/WarningRuleRepository.cs b/src/SJZY.Track.Repository/Repositories/WarningRuleRepository.cs index 5cc11a67..a091be8b 100644 --- a/src/SJZY.Track.Repository/Repositories/WarningRuleRepository.cs +++ b/src/SJZY.Track.Repository/Repositories/WarningRuleRepository.cs @@ -14,15 +14,17 @@ public sealed class WarningRuleRepository : BasicRepository, public async Task CheckNameDuplicateAsync(int id, int subsystemId, int customId, string name) { - var entity = await Context.Queryable() + var list = await Context.Queryable() .Where(x => x.SubSystemId == subsystemId && x.CustomId == customId && string.Equals(x.Name, name)) - .FirstAsync(); + .ToListAsync(); - // 如果是新增,则要求不能重复添加 subsystemId+customId+name三者都相同的 - if (id == 0) - return entity != null; + var entity = list.First(); + + // 不重复 + if (entity == null) + return false; // 如果是修改,则要求查出来的和要修改的是同一个,否则视为重复 return entity.Id != id;