sunpengfei
2025-08-21 5454e326a76e695ba4a51d5994c88ef7ded76efc
FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs
@@ -57,6 +57,11 @@
            }
            if (enterprise.EnterpriseAuth != null)
            {
                enterprise.EnterpriseAuth.EnterpriseName = enterprise.EnterpriseName;
                enterprise.EnterpriseAuth.SocietyCreditCode = enterprise.SocietyCreditCode;
                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);
@@ -65,9 +70,10 @@
                await repEnterprise.InsertAsync(enterprise);
            else
                await repEnterprise.UpdateAsync(enterprise);
            var user = await repUser.AsQueryable()
                    .Include(it => it.UserRoles)
                    .Where(it => it.Type == EnumUserType.Enterprise && it.UserName == request.UserName)
                    .Where(it => it.Type == EnumUserType.Enterprise && it.DataSource == request.DataSource && it.DataSourceId == request.DataSourceId)
                    .FirstOrDefaultAsync(cancellationToken);
            if (user == null)
            {
@@ -78,10 +84,14 @@
            {
                throw Oops.Oh(EnumErrorCodeType.s405, "账号");
            }
            var checkUserNameExist = await repUser.AsQueryable().AsNoTracking()
                .AnyAsync(it => it.Type == EnumUserType.Enterprise && it.UserName == request.UserName && it.Id != user.Id);
            if (checkUserNameExist) throw Oops.Oh(EnumErrorCodeType.s405, "账号");
            user.EnterpriseId = enterprise.Id;
            user.Level = 100;
            user.UserRoles = await repRole.AsQueryable().AsNoTracking()
                .Where(it => it.UserType == user.Type && it.MinLevel <= user.Level)
                .Where(it => it.UserType == user.Type && it.MinLevel == 100)
                .Select(it => new UserRole
                {
                    RoleId = it.Id
@@ -106,7 +116,7 @@
            var user = await repUser.AsQueryable()
                .Include(it => it.UserRoles)
                .Include(it => it.UserManageIndustrialParks)
                .Where(it => it.Type == EnumUserType.Operation && it.UserName == request.UserName)
                .Where(it => it.Type == EnumUserType.Operation && it.DataSource == request.DataSource && it.DataSourceId == request.DataSourceId)
                .FirstOrDefaultAsync(cancellationToken);
            if (user == null)
            {
@@ -114,6 +124,9 @@
                user.Type = EnumUserType.Operation;
                user.Status = EnumUserStatus.Normal;
            }
            var checkUserNameExist = await repUser.AsQueryable().AsNoTracking()
                .AnyAsync(it => it.Type == EnumUserType.Operation && it.UserName == request.UserName && it.Id != user.Id);
            if (checkUserNameExist) throw Oops.Oh(EnumErrorCodeType.s405, "账号");
            request.Adapt(user);
            user.UserManageIndustrialParks = request.IndustrialParkIds.Select(it => new UserManageIndustrialPark
            {
@@ -121,7 +134,7 @@
            }).ToList();
            user.Level = 100;
            user.UserRoles = await repRole.AsQueryable().AsNoTracking()
                .Where(it => it.UserType == user.Type && it.MinLevel <= user.Level)
                .Where(it => it.UserType == user.Type && it.MinLevel == 100)
                .Select(it => new UserRole
                {
                    RoleId = it.Id