From dbde30883895c6047995d84a846c36f79fc0a895 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 22 八月 2025 15:12:08 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployeeContract.cs | 4 FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignQuery.cs | 67 ++++++++++++++++ FlexJobApi.Core/FlexJobApi.Core.xml | 76 ++++++++++++++++++ FlexJobApi.UserServer.Application/Users/Queries/GetPersonalUserInfosQueryHandler.cs | 5 - FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs | 2 FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs | 17 +++- FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployee.cs | 11 ++ 7 files changed, 166 insertions(+), 16 deletions(-) diff --git a/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployee.cs b/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployee.cs index 5eac28a..223618f 100644 --- a/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployee.cs +++ b/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployee.cs @@ -102,6 +102,16 @@ public DateTime? EnterpriseSignContractTime { get; set; } /// <summary> + /// 鍚堝悓缂栧彿 + /// </summary> + public string ContractCode { get; set; } + + /// <summary> + /// 鐢靛瓙鍚堝悓 + /// </summary> + public string ContractUrl { get; set; } + + /// <summary> /// 浠诲姟浜哄憳淇℃伅 /// </summary> public List<TaskInfoUser> TaskInfoUsers { get; set; } @@ -110,5 +120,6 @@ /// 鍚堝悓 /// </summary> public List<EnterpriseEmployeeContract> Contracts { get; set; } + } } diff --git a/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployeeContract.cs b/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployeeContract.cs index 9b26e71..dfd7b1d 100644 --- a/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployeeContract.cs +++ b/FlexJobApi.Core/Entities/UserServer/Enterprises/EnterpriseEmployeeContract.cs @@ -44,12 +44,12 @@ /// <summary> /// 鍚堝悓缂栧彿 /// </summary> - public string Code { get; set; } + public string ContractCode { get; set; } /// <summary> /// 鐢靛瓙鍚堝悓 /// </summary> - public string Url { get; set; } + public string ContractUrl { get; set; } } } diff --git a/FlexJobApi.Core/FlexJobApi.Core.xml b/FlexJobApi.Core/FlexJobApi.Core.xml index 0577b44..ceb9ca6 100644 --- a/FlexJobApi.Core/FlexJobApi.Core.xml +++ b/FlexJobApi.Core/FlexJobApi.Core.xml @@ -1740,6 +1740,16 @@ 浼佷笟绛剧害鏃堕棿 </summary> </member> + <member name="P:FlexJobApi.Core.EnterpriseEmployee.ContractCode"> + <summary> + 鍚堝悓缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.EnterpriseEmployee.ContractUrl"> + <summary> + 鐢靛瓙鍚堝悓 + </summary> + </member> <member name="P:FlexJobApi.Core.EnterpriseEmployee.TaskInfoUsers"> <summary> 浠诲姟浜哄憳淇℃伅 @@ -1785,12 +1795,12 @@ 浼佷笟绛剧害鏃堕棿 </summary> </member> - <member name="P:FlexJobApi.Core.EnterpriseEmployeeContract.Code"> + <member name="P:FlexJobApi.Core.EnterpriseEmployeeContract.ContractCode"> <summary> 鍚堝悓缂栧彿 </summary> </member> - <member name="P:FlexJobApi.Core.EnterpriseEmployeeContract.Url"> + <member name="P:FlexJobApi.Core.EnterpriseEmployeeContract.ContractUrl"> <summary> 鐢靛瓙鍚堝悓 </summary> @@ -8184,9 +8194,69 @@ 鏌ヨ涓汉鐢ㄦ埛绛剧害璇︽儏 </summary> </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQuery.Id"> + <summary> + 鐏靛伐Id + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQuery.Code"> + <summary> + + </summary> + </member> <member name="T:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult"> <summary> 鏌ヨ涓汉鐢ㄦ埛绛剧害璇︽儏-缁撴灉 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.ContractCode"> + <summary> + 鍚堝悓缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.UserSignContractStatus"> + <summary> + 鐏靛伐绛剧害鐘舵�� + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.Name"> + <summary> + 绛剧害鏂逛俊鎭�-鍛樺伐-濮撳悕 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.IdentityType"> + <summary> + 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢绫诲瀷 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.Identity"> + <summary> + 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢鍙风爜 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.UserSignContractTime"> + <summary> + 绛剧害鏂逛俊鎭�-鍛樺伐-绛剧害鏃堕棿 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.EnterpriseType"> + <summary> + 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-涓讳綋绫诲瀷 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.EnterpriseEnterpriseName"> + <summary> + 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害涓讳綋 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.EnterpriseSignContractTime"> + <summary> + 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害鏃堕棿 + </summary> + </member> + <member name="P:FlexJobApi.Core.GetEnterpriseEmployeeElectronSignQueryResult.ContractUrl"> + <summary> + 鍗忚鍐呭 </summary> </member> <member name="T:FlexJobApi.Core.GetEnterpriseEmployeeQuery"> @@ -13234,7 +13304,7 @@ </member> <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem.Id"> <summary> - Id + 鐏靛伐Id </summary> </member> <member name="P:FlexJobApi.UserServer.Application.GetEnterpriseEmployeeElectronSignsQueryResultItem.EnterpriseName"> diff --git a/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignQuery.cs b/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignQuery.cs index 239f19c..79db336 100644 --- a/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignQuery.cs +++ b/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignQuery.cs @@ -1,6 +1,9 @@ -锘縰sing MediatR; +锘縰sing Mapster; +using MediatR; +using Newtonsoft.Json; using System; using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -13,6 +16,15 @@ [Resource([EnumResourceController.UserServerEnterpriseEmployee])] public class GetEnterpriseEmployeeElectronSignQuery : IRequest<GetEnterpriseEmployeeElectronSignQueryResult> { + /// <summary> + /// 鐏靛伐Id + /// </summary> + public Guid? Id { get; set; } + + /// <summary> + /// + /// </summary> + public string Code { get; set; } } /// <summary> @@ -20,6 +32,59 @@ /// </summary> public class GetEnterpriseEmployeeElectronSignQueryResult { + /// <summary> + /// 鍚堝悓缂栧彿 + /// </summary> + public string ContractCode { get; set; } + + /// <summary> + /// 鐏靛伐绛剧害鐘舵�� + /// </summary> + public EnumTaskUserSignContractStatus? UserSignContractStatus { get; set; } + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍛樺伐-濮撳悕 + /// </summary> + [MaxLength(32)] + public string Name { get; set; } + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢绫诲瀷 + /// </summary> + [AdaptIgnore] + public string IdentityType { get; set; } = "灞呮皯韬唤璇�"; + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢鍙风爜 + /// </summary> + public string Identity { get; set; } + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍛樺伐-绛剧害鏃堕棿 + /// </summary> + public DateTime? UserSignContractTime { get; set; } + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-涓讳綋绫诲瀷 + /// </summary> + [AdaptIgnore] + public string EnterpriseType { get; set; } = "鍏徃"; + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害涓讳綋 + /// </summary> + [JsonProperty("enterpriseName")] + public string EnterpriseEnterpriseName { get; set; } + + /// <summary> + /// 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害鏃堕棿 + /// </summary> + public DateTime? EnterpriseSignContractTime { get; set; } + + /// <summary> + /// 鍗忚鍐呭 + /// </summary> + public string ContractUrl { get; set; } } } diff --git a/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs b/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs index 4171b23..36db837 100644 --- a/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs +++ b/FlexJobApi.Core/Models/UserServer/EnterpriseEmployees/Queries/GetEnterpriseEmployeeElectronSignsQuery.cs @@ -34,7 +34,7 @@ public class GetEnterpriseEmployeeElectronSignsQueryResultItem { /// <summary> - /// Id + /// 鐏靛伐Id /// </summary> public Guid Id { get; set; } diff --git a/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs b/FlexJobApi.UserServer.Application/Users/Commands/SyncUserCommandHandler.cs index 1d2aa02..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); @@ -101,11 +108,6 @@ 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 (enterprise.EnterpriseAuth.ElectronSignEnterpriseId == null) { @@ -160,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) diff --git a/FlexJobApi.UserServer.Application/Users/Queries/GetPersonalUserInfosQueryHandler.cs b/FlexJobApi.UserServer.Application/Users/Queries/GetPersonalUserInfosQueryHandler.cs index b76c492..3cd6be9 100644 --- a/FlexJobApi.UserServer.Application/Users/Queries/GetPersonalUserInfosQueryHandler.cs +++ b/FlexJobApi.UserServer.Application/Users/Queries/GetPersonalUserInfosQueryHandler.cs @@ -126,10 +126,7 @@ UserSignContractStatus = it.UserSignContractStatus, EnterpriseSignContractStatus = it.EnterpriseSignContractStatus, EnterpriseSignContractTime = it.EnterpriseSignContractTime, - ContractUrl = it.Contracts - .Where(c => c.EnterpriseSignContractStatus == it.EnterpriseSignContractStatus) - .Select(c => c.Url) - .FirstOrDefault(), + ContractUrl = it.ContractUrl }); return request.PageModel.GetPagedListAsync<GetPersonalUserInfoSignContractsQueryResult, GetPersonalUserInfoSignContractsQueryResultItem>(q, cancellationToken); } -- Gitblit v1.9.1