diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs index 5645ca05..806330ae 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoFaceService.cs @@ -137,35 +137,39 @@ public class GainfoFaceService : IGainfoFaceService .SingleAsync(); gainfo.ThrowIfNull("人员信息不存在"); - + var face = await _faceDbContext.Queryable().Where(x => x.UserCode == gainfo.Code).SingleAsync(); - var faceSimilaritySetting = await _dbContext.Queryable().Where(x => x.Type == "faceSimilarity").SingleAsync(); - if (faceSimilaritySetting != null) + + if (gainfo.Type == GainfoUserTypeEnumType.External) { - var faceSimilarity = await _hikService.GetSimilarityAsync(new GainfoFaceValidateRequest + var faceSimilaritySetting = await _dbContext.Queryable().Where(x => x.Type == "faceSimilarity").SingleAsync(); + if (faceSimilaritySetting != null) { - SrcFacePicBinaryData = face.Face, - DistFacePicBinaryData = request.Face - }); - var acceptSimilarity = faceSimilaritySetting.Code.Adapt(); + var faceSimilarity = await _hikService.GetSimilarityAsync(new GainfoFaceValidateRequest + { + SrcFacePicBinaryData = face.Face, + DistFacePicBinaryData = request.Face + }); + var acceptSimilarity = faceSimilaritySetting.Code.Adapt(); - var isError = faceSimilarity < acceptSimilarity; - await _dbContext.InsertAsync(new HikValidateResultEntity - { - UserCode = face.UserCode, - Similarity = faceSimilarity, - AcceptSimilarity = acceptSimilarity, - CurrentFace = face.Face, - UploadFace = request.Face, - TenantId = gainfo.Factory, - }); + var isError = faceSimilarity < acceptSimilarity; + await _dbContext.InsertAsync(new HikValidateResultEntity + { + UserCode = face.UserCode, + Similarity = faceSimilarity, + AcceptSimilarity = acceptSimilarity, + CurrentFace = face.Face, + UploadFace = request.Face, + TenantId = gainfo.Factory, + }); - if (isError) - { - throw new UserFriendlyException($"系统检测非本人更新,请重试(相似度{faceSimilarity})"); + if (isError) + { + throw new UserFriendlyException($"系统检测非本人更新,请重试(相似度{faceSimilarity})"); + } } } - + var taskType = face == null ? DeviceTaskEnumType.Add : DeviceTaskEnumType.Update; if (face == null) {