/// <summary> /// Получить все платежи по заказу /// </summary> /// <param name="orderId">идентификатор заказа</param> /// <param name="organizationId">идентификатор организации</param> public async Task <EasyMSList <Payment> > GetPaymentsOfOrderAsync(string orderId, string organizationId) { var builder = new PaymentQueryBuilder { Path = string.Format(GetPaymentsOfOrderPath, orderId), OrganizationId = organizationId }; return(await GetPage <Payment>(builder.BuildUri(), "paymentResponses")); }
/// <summary> /// Провести оплату заказ целиком /// </summary> public async Task CreateGroupPaymentAsync(GroupPayment groupPayment) { groupPayment.ValidateCreate(); var builder = new PaymentQueryBuilder { Path = CreateGroupPaymentPath }; await Gateway.SendPostRequestAsync(builder.BuildUri(), groupPayment); }
public async Task <Payment> GetPaymentByIdAsync(int id) { PaymentQueryBuilder queryBuilder = new PaymentQueryBuilder(_context); return(await queryBuilder .QueryPayments() .FilterByUser(_httpContextAccessor.HttpContext.User.Identity.Name) .Query .FirstOrDefaultAsync(b => b.ID == id)); }
public async Task <int> CountPaymentsByBillPayAsync(int billPayID) { PaymentQueryBuilder queryBuilder = new PaymentQueryBuilder(_context); return(await queryBuilder .QueryPayments() .FilterByUser(_httpContextAccessor.HttpContext.User.Identity.Name) .Query .Where(p => p.BillPayID == billPayID) .CountAsync()); }
public async Task <decimal> GetSumOfPaymentsByBillPayAsync(int billPayID) { PaymentQueryBuilder queryBuilder = new PaymentQueryBuilder(_context); return(await queryBuilder .QueryPayments() .FilterByUser(_httpContextAccessor.HttpContext.User.Identity.Name) .Query .Where(p => p.BillPayID == billPayID) .SumAsync(p => p.Amount)); }
public async Task <List <Payment> > GetPaymentsByBillPayAsync( int billPayID, int start, int offset) { PaymentQueryBuilder queryBuilder = new PaymentQueryBuilder(_context); return(await queryBuilder .QueryPayments() .FilterByUser(_httpContextAccessor.HttpContext.User.Identity.Name) .Query .Where(p => p.BillPayID == billPayID) .OrderBy(p => p.BillInstance.DueDate) .Skip(start).Take(offset) .ToListAsync()); }