| | |
| | | public class EnterpriseWalletQueryHandler( |
| | | IRepository<EnterpriseWallet> rep, |
| | | IRepository<EnterpriseWalletTransaction> repEnterpriseWalletTransaction, |
| | | IRepository<EnterpriseWalletExpandindirectOrder> repEnterpriseWalletExpandindirectOrder, |
| | | IRepository<Enterprise> repEnterprise, |
| | | AlipayUtils alipayUtils |
| | | ) : |
| | |
| | | { |
| | | private readonly IRepository<EnterpriseWallet> rep = rep; |
| | | private readonly IRepository<EnterpriseWalletTransaction> repEnterpriseWalletTransaction = repEnterpriseWalletTransaction; |
| | | private readonly IRepository<EnterpriseWalletExpandindirectOrder> repEnterpriseWalletExpandindirectOrder = repEnterpriseWalletExpandindirectOrder; |
| | | private readonly IRepository<Enterprise> repEnterprise = repEnterprise; |
| | | private readonly AlipayUtils alipayUtils = alipayUtils; |
| | | |
| | |
| | | var entity = await rep.AsQueryable() |
| | | .Where(it => it.EnterpriseId == request.EnterpriseId && it.Access == request.Access) |
| | | .FirstOrDefaultAsync(); |
| | | if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "企业钱包"); |
| | | if (entity == null) |
| | | { |
| | | return new GetEnterpriseWalletQueryResult |
| | | { |
| | | Access = request.Access, |
| | | SignStatus = EnumEnterpriseWalletSignStatus.Wait, |
| | | ExpandindirectOrderStatus = EnumEnterpriseWalletExpandindirectOrderStatus.Wait |
| | | }; |
| | | } |
| | | var update = false; |
| | | if (entity.Access == EnumEnterpriseWalletAccess.Alipay) |
| | | { |
| | |
| | | } |
| | | |
| | | var model = entity.Adapt<GetEnterpriseWalletQueryResult>(); |
| | | |
| | | var expandindirectOrder = await repEnterpriseWalletExpandindirectOrder.AsQueryable().AsNoTracking() |
| | | .OrderByDescending(it => it.CreatedTime) |
| | | .Where(it => it.WalletId == model.Id) |
| | | .Select(it => new |
| | | { |
| | | it.OrderStatus |
| | | }) |
| | | .FirstOrDefaultAsync(); |
| | | model.ExpandindirectOrderStatus = expandindirectOrder == null |
| | | ? EnumEnterpriseWalletExpandindirectOrderStatus.Wait |
| | | : expandindirectOrder.OrderStatus; |
| | | |
| | | return model; |
| | | } |
| | | |