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/Users/Commands/SyncUserCommandHandler.cs |   28 +++++++++++++++++++---------
 1 files changed, 19 insertions(+), 9 deletions(-)

diff --git a/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs b/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs
index dfd53dc..1f4906a 100644
--- a/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs
+++ b/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs
@@ -54,9 +54,12 @@
                 .Where(it => it.SocietyCreditCode == request.Enterprise.SocietyCreditCode)
                 .FirstOrDefaultAsync(cancellationToken);
 
+            var add = false;
             if (enterprise == null)
             {
+                add = true;
                 enterprise = new Enterprise();
+                enterprise.Id = IDGen.NextID();
                 if (request.Enterprise.ElectronSignAccesses.IsNotNull())
                 {
                     request.Enterprise.ElectronSignAccesses = await repElectronSignSetting.AsQueryable().AsNoTracking()
@@ -70,6 +73,10 @@
                         ElectronSignAccess = it
                     })
                     .ToList();
+            }
+            if (request.Enterprise.EnterpriseAuth == null)
+            {
+                request.Enterprise.EnterpriseAuth = new SyncEnterpriseUserCommandEnterpriseAuth();
             }
             request.Enterprise.Adapt(enterprise);
             enterprise.LicenseImage = GetOssUrl(enterprise.LicenseImage, request.Enterprise.LicenseImage);
@@ -95,21 +102,19 @@
             enterprise.EnterpriseAuth.LicenseImage = enterprise.LicenseImage;
             enterprise.EnterpriseAuth.LegalPerson = enterprise.LegalPerson;
             enterprise.EnterpriseAuth.LegalIdentity = enterprise.LegalIdentity;
-            enterprise.EnterpriseAuth.IdentityImg = GetOssUrl(enterprise.EnterpriseAuth.IdentityImg, request.Enterprise.EnterpriseAuth.IdentityImg);
-            enterprise.EnterpriseAuth.IdentityBackImg = GetOssUrl(enterprise.EnterpriseAuth.IdentityBackImg, request.Enterprise.EnterpriseAuth.IdentityBackImg);
-            enterprise.EnterpriseAuth.BankCardImg = GetOssUrl(enterprise.EnterpriseAuth.BankCardImg, request.Enterprise.EnterpriseAuth.BankCardImg);
-
-            if (enterprise.Id == Guid.Empty)
-                await repEnterprise.InsertAsync(enterprise);
-            else
-                await repEnterprise.UpdateAsync(enterprise);
+            if (request.Enterprise.EnterpriseAuth != null)
+            {
+                enterprise.EnterpriseAuth.IdentityImg = GetOssUrl(enterprise.EnterpriseAuth.IdentityImg, request.Enterprise.EnterpriseAuth.IdentityImg);
+                enterprise.EnterpriseAuth.IdentityBackImg = GetOssUrl(enterprise.EnterpriseAuth.IdentityBackImg, request.Enterprise.EnterpriseAuth.IdentityBackImg);
+                enterprise.EnterpriseAuth.BankCardImg = GetOssUrl(enterprise.EnterpriseAuth.BankCardImg, request.Enterprise.EnterpriseAuth.BankCardImg);
+            }
 
             if (enterprise.EnterpriseAuth.ElectronSignEnterpriseId == null)
             {
                 var resultRegOrUpdateUser = await new RegOrUpdateUserInput
                 {
                     OutUserId = enterprise.Id.ToString(),
-                    UserType = EnumElectronSignUserType.Personal,
+                    UserType = EnumElectronSignUserType.Company,
                     EnterpriseName = enterprise.EnterpriseName,
                     SocietyCreditCode = enterprise.SocietyCreditCode,
                     Name = enterprise.EnterpriseAuth.Name ?? enterprise.Contacts,
@@ -157,6 +162,11 @@
                 enterprise.EnterpriseAuth.CertAccount = resultReal.Result.CertAccount;
             }
 
+            if (add)
+                await repEnterprise.InsertNowAsync(enterprise);
+            else
+                await repEnterprise.UpdateNowAsync(enterprise);
+
             var user = await repUser.AsQueryable()
                     .Include(it => it.UserRoles)
                     .Where(it => it.Type == EnumUserType.Enterprise && it.DataSource == request.DataSource && it.DataSourceId == request.DataSourceId)

--
Gitblit v1.9.1