From fd1d2c1d5f519ddb4667019d6685ff270ad6716b Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期四, 11 九月 2025 09:49:42 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs | 36 +++++++++++++++++++++++++++++++++++- 1 files changed, 35 insertions(+), 1 deletions(-) diff --git a/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs b/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs index c729206..e7a56b4 100644 --- a/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs +++ b/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs @@ -2,6 +2,7 @@ using Azure; using FlexJobApi.Core; using Furion.DatabaseAccessor; +using Furion.DistributedIDGenerator; using Furion.FriendlyException; using Mapster; using MediatR; @@ -57,11 +58,24 @@ .FirstOrDefaultAsync(); if (entity == null) { + entity = new EnterpriseWallet(); + entity.EnterpriseId = request.EnterpriseId!.Value; + entity.Access = EnumEnterpriseWalletAccess.Alipay; + entity.PersonalProductCode = "FUND_SAFT_SIGN_WITHHOLDING_P"; + entity.SignScene = "INDUSTRY|SATF_ACC"; + entity.ThirdPartyType = "PARTNER"; + entity.ProductCode = "FUND_SAFT_SIGN_WITHHOLDING"; + entity.SignStatus = EnumEnterpriseWalletSignStatus.Wait; + await SetCode(entity); + await rep.InsertAsync(entity); + return new GetEnterpriseWalletQueryResult { + Id = entity.Id, + Code = entity.Code, Access = request.Access, SignStatus = EnumEnterpriseWalletSignStatus.Wait, - ExpandindirectOrderStatus = EnumEnterpriseWalletExpandindirectOrderStatus.Wait + ExpandindirectOrderStatus = EnumEnterpriseWalletExpandindirectOrderStatus.Wait, }; } var update = false; @@ -162,6 +176,7 @@ var model = entity.Adapt<GetEnterpriseWalletQueryResult>(); var expandindirectOrder = await repEnterpriseWalletExpandindirectOrder.AsQueryable() + .Include(it => it.Files) .OrderByDescending(it => it.CreatedTime) .Where(it => it.WalletId == model.Id) .FirstOrDefaultAsync(); @@ -189,6 +204,14 @@ } await repEnterpriseWalletExpandindirectOrder.UpdateNowAsync(expandindirectOrder); } + + model.Name = expandindirectOrder.Name; + model.Identity = expandindirectOrder.Identity; + model.Scene = expandindirectOrder.Scene; + model.SceneDirections = expandindirectOrder.SceneDirections; + model.TaskFinishTime = expandindirectOrder.TaskFinishTime; + model.SitesInfo = expandindirectOrder.Sites.JsonTo<GetEnterpriseWalletExpandindirectOrderQueryResultSites>(); + model.Files = expandindirectOrder.Files?.Adapt<List<GetEnterpriseWalletExpandindirectOrderQueryResultFile>>() ?? new List<GetEnterpriseWalletExpandindirectOrderQueryResultFile>(); model.ExpandindirectOrderStatus = expandindirectOrder.OrderStatus; } else @@ -199,6 +222,17 @@ return model; } + private async Task SetCode(EnterpriseWallet entity) + { + entity.Code = $"{DateTime.Now:yyyyMMddHHmmss}{new Random(IDGen.NextID().GetHashCode()).Next(1000, 9999)}"; + var exist = await rep.AsQueryable().AsNoTracking() + .AnyAsync(it => it.Code == entity.Code); + if (exist) + { + await SetCode(entity); + } + } + /// <summary> /// 鏌ヨ浼佷笟閽卞寘浜ゆ槗璇︽儏 /// </summary> -- Gitblit v1.9.1