From 10760c944ad47ef9e27aebd88c45bebf23521792 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期三, 03 九月 2025 13:58:28 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/GetAlipayNotifyCommandHandler.cs | 27 +++++++++++++++++++++------ 1 files changed, 21 insertions(+), 6 deletions(-) diff --git a/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/GetAlipayNotifyCommandHandler.cs b/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/GetAlipayNotifyCommandHandler.cs index d1d7d4c..f826fed 100644 --- a/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/GetAlipayNotifyCommandHandler.cs +++ b/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/GetAlipayNotifyCommandHandler.cs @@ -1,7 +1,12 @@ -锘縰sing FlexJobApi.Core; +锘縰sing Azure; +using FlexJobApi.Core; using Furion; +using Furion.DatabaseAccessor; +using Furion.FriendlyException; using MediatR; using Microsoft.AspNetCore.Http; +using Microsoft.EntityFrameworkCore; +using Org.BouncyCastle.Ocsp; using System; using System.Collections.Generic; using System.Linq; @@ -14,12 +19,14 @@ /// 鏀粯瀹濋�氱煡鍥炰紶 /// </summary> public class GetAlipayNotifyCommandHandler( - IHttpContextAccessor httpContextAccessor + IRepository<EnterpriseWallet> rep, + IMediator mediator ) : IRequestHandler<GetAlipayNotifyCommand, bool>, IRequestHandler<AlipayUserAgreementPageSignNotifyCommand, bool> { - private readonly IHttpContextAccessor httpContextAccessor = httpContextAccessor; + private readonly IRepository<EnterpriseWallet> rep = rep; + private readonly IMediator mediator = mediator; /// <summary> /// 鏀粯瀹濋�氱煡鍥炰紶 @@ -38,10 +45,18 @@ /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> - public Task<bool> Handle(AlipayUserAgreementPageSignNotifyCommand request, CancellationToken cancellationToken) + public async Task<bool> Handle(AlipayUserAgreementPageSignNotifyCommand request, CancellationToken cancellationToken) { - Console.WriteLine(httpContextAccessor.HttpContext.Request.QueryString); - return Task.FromResult(true); + var entity = await rep.AsQueryable() + .Where(it => it.Code == request.external_agreement_no) + .FirstOrDefaultAsync(); + if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘"); + await mediator.Send(new GetEnterpriseWalletQuery + { + EnterpriseId = entity.EnterpriseId, + Access = EnumEnterpriseWalletAccess.Alipay + }); + return true; } } } -- Gitblit v1.9.1