fix 当前id判断
This commit is contained in:
@@ -22,7 +22,7 @@ public class GainfoOutsourceService : IGainfoOutsourceService
|
||||
|
||||
public async Task SaveAsync(GainfoOutsourceRequest request)
|
||||
{
|
||||
await CheckDuplicate(request.IdNo, request.Code);
|
||||
await CheckDuplicate(request);
|
||||
var sapCodeExists = await _dbContext.Queryable<GainfoEntity>()
|
||||
.Where(x => x.Code == request.ExternalInfo.SapCode)
|
||||
.AnyAsync();
|
||||
@@ -117,17 +117,20 @@ public class GainfoOutsourceService : IGainfoOutsourceService
|
||||
/// <summary>
|
||||
/// 检查证件号重复
|
||||
/// </summary>
|
||||
/// <param name="idNo"></param>
|
||||
/// <param name="code"></param>
|
||||
private async Task CheckDuplicate(string idNo, string code)
|
||||
/// <param name="request"></param>
|
||||
private async Task CheckDuplicate(GainfoOutsourceRequest request)
|
||||
{
|
||||
var exists = await _dbContext.Queryable<GainfoEntity>().Where(x => x.IdNo == idNo).AnyAsync();
|
||||
exists.ThrowIfTrue($"证件号{idNo}重复");
|
||||
var exists = await _dbContext.Queryable<GainfoEntity>()
|
||||
.WhereIF(request.Id.HasValue, x => x.Id != request.Id)
|
||||
.Where(x => x.IdNo == request.IdNo).AnyAsync();
|
||||
exists.ThrowIfTrue($"证件号{request.IdNo}重复");
|
||||
|
||||
if (code.IsPresent())
|
||||
if (request.Code.IsPresent())
|
||||
{
|
||||
exists = await _dbContext.Queryable<GainfoEntity>().Where(x => x.Code == code).AnyAsync();
|
||||
exists.ThrowIfTrue($"工号{code}重复");
|
||||
exists = await _dbContext.Queryable<GainfoEntity>()
|
||||
.WhereIF(request.Id.HasValue, x => x.Id != request.Id)
|
||||
.Where(x => x.Code == request.Code).AnyAsync();
|
||||
exists.ThrowIfTrue($"工号{request.Code}重复");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user