From 67d5dbb966df4af4304b4168378c68ce83ad01b1 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 10 九月 2025 13:05:50 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.UserServer.Application/ElectronSign/Commands/PersonalUserRealCommandHandler.cs |   51 +++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 45 insertions(+), 6 deletions(-)

diff --git a/FlexJobApi.UserServer.Application/ElectronSign/Commands/PersonalUserRealCommandHandler.cs b/FlexJobApi.UserServer.Application/ElectronSign/Commands/PersonalUserRealCommandHandler.cs
index 5d05d63..676e3c6 100644
--- a/FlexJobApi.UserServer.Application/ElectronSign/Commands/PersonalUserRealCommandHandler.cs
+++ b/FlexJobApi.UserServer.Application/ElectronSign/Commands/PersonalUserRealCommandHandler.cs
@@ -107,6 +107,30 @@
                 .FirstOrDefaultAsync();
             if (user == null) throw Oops.Oh(EnumErrorCodeType.s404, "鐢ㄦ埛");
             if (user.IsReal) throw Oops.Oh(EnumErrorCodeType.s510, "鐢ㄦ埛宸插疄鍚嶏紝璇峰嬁閲嶅鐢宠");
+            if (user.UserAuth == null)
+            {
+                user.UserAuth = new UserAuth();
+            }
+            if (user.UserAuth.ElectronSignUserId == null)
+            {
+                var resultRegOrUpdateUser = await new RegOrUpdateUserInput
+                {
+                    OutUserId = user.Id.ToString(),
+                    UserType = EnumElectronSignUserType.Personal,
+                    Name = request.Name,
+                    Identity = request.Identity,
+                    Mobile = request.PhoneNumber
+                }.SendHttpAsync<RegOrUpdateUserInput, ElectronSignServerResult<Guid?>>(EnumResourceHttpProvider.ElectronSignServerCustomer);
+
+                if (resultRegOrUpdateUser?.Success == true)
+                {
+                    user.UserAuth.ElectronSignUserId = resultRegOrUpdateUser.Result;
+                }
+                else
+                {
+                    throw Oops.Oh(EnumErrorCodeType.s510, resultRegOrUpdateUser?.Message ?? "娉ㄥ唽瀹炲悕璐﹀彿寮傚父");
+                }
+            }
             var result = await new RealPersonalInput
             {
                 OutUserId = user.Id.ToString(),
@@ -158,12 +182,26 @@
             {
                 user.UserAuth = new UserAuth();
             }
-            if (user.UserAuth.Name == request.Name
-                && user.UserAuth.Identity == request.Identity
-                && user.UserAuth.RealStatus == EnumPersonalUserRealStatus.Checking
-                && user.UserAuth.FaceRealUrl.IsNotNull())
-                return user.UserAuth.FaceRealUrl;
+            if (user.UserAuth.ElectronSignUserId == null)
+            {
+                var resultRegOrUpdateUser = await new RegOrUpdateUserInput
+                {
+                    OutUserId = user.Id.ToString(),
+                    UserType = EnumElectronSignUserType.Personal,
+                    Name = request.Name,
+                    Identity = request.Identity,
+                    Mobile = user.PhoneNumber
+                }.SendHttpAsync<RegOrUpdateUserInput, ElectronSignServerResult<Guid?>>(EnumResourceHttpProvider.ElectronSignServerCustomer);
 
+                if (resultRegOrUpdateUser?.Success == true)
+                {
+                    user.UserAuth.ElectronSignUserId = resultRegOrUpdateUser.Result;
+                }
+                else
+                {
+                    throw Oops.Oh(EnumErrorCodeType.s510, resultRegOrUpdateUser?.Message ?? "娉ㄥ唽瀹炲悕璐﹀彿寮傚父");
+                }
+            }
             var result = await new RealPersonalInput
             {
                 OutUserId = user.Id.ToString(),
@@ -191,7 +229,8 @@
                 faceRealUrl: result.Result.FaceUrl);
             await repUser.UpdateAsync(user);
 
-            return result.Result.FaceUrl;
+            return result.Result.FaceUrl
+                .Replace("https://h5-v2.kych5.com", "https://wx05.ssqian.com.cn");
         }
 
         /// <summary>

--
Gitblit v1.9.1