示例#1
0
        /// <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"));
        }
示例#2
0
        /// <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());
        }