public Webpay.Integration.CSharp.AdminWS.DeliveryResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var request = new AdminWS.CreditInvoiceRequest
            {
                Authentication          = auth,
                InvoiceId               = _builder.Id,
                ClientId                = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                RowNumbers              = _builder.RowIndexesToCredit.ToArray(),
                InvoiceDistributionType = ConvertDistributionTypeToInvoiceDistributionType(_builder.DistributionType),
                NewCreditInvoiceRows    = _builder.NewCreditOrderRows.Select(x => ConvertOrderRowBuilderToAdminWSOrderRow(x)).ToArray()
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient("WcfAdminSoapService", endpoint);
            var response = adminWS.CreditInvoiceRows(request);

            return(response);
        }
        public Webpay.Integration.CSharp.AdminWS.UpdateOrderResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var request = new AdminWS.UpdateOrderRequest()
            {
                Authentication    = auth,
                SveaOrderId       = _builder.SveaOrderId,
                OrderType         = ConvertPaymentTypeToOrderType(_builder.OrderType),
                ClientId          = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                Notes             = _builder.Notes,
                ClientOrderNumber = _builder.ClientOrderNumber
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient("WcfAdminSoapService", endpoint);
            var response = adminWS.UpdateOrder(request);

            return(response);
        }
        public Webpay.Integration.CSharp.AdminWS.CancelOrderRowsResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var request = new AdminWS.CancelOrderRowsRequest()
            {
                Authentication  = auth,
                SveaOrderId     = _builder.Id,
                OrderType       = ConvertPaymentTypeToOrderType(_builder.OrderType),
                ClientId        = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                OrderRowNumbers = _builder.RowIndexesToCancel.ToArray(),
                //NewCreditInvoiceRows = _builder.NewCreditOrderRows.Select( x => ConvertOrderRowBuilderToAdminWSOrderRow(x) ).ToArray()
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient(new WSHttpBinding(SecurityMode.Transport), new EndpointAddress(endpoint));
            var response = adminWS.CancelOrderRows(request);

            return(response);
        }
        public Webpay.Integration.CSharp.AdminWS.DeliveryResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var orderToDeliver = new AdminWS.DeliverOrderInformation()
            {
                ClientId    = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                SveaOrderId = _builder.Id,
                OrderType   = ConvertPaymentTypeToOrderType(_builder.OrderType)
                              //PrintType // optional for EU-clients, and integration package only supports EU-clients
            };

            var request = new AdminWS.PartialDeliveryRequest()
            {
                Authentication          = auth,
                OrderToDeliver          = orderToDeliver,
                RowNumbers              = _builder.RowIndexesToDeliver.ToArray(),
                InvoiceDistributionType = ConvertDistributionTypeToInvoiceDistributionType(_builder.DistributionType)
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient(new WSHttpBinding(SecurityMode.Transport), new EndpointAddress(endpoint));
            var response = adminWS.DeliverPartial(request);

            return(response);
        }
Exemplo n.º 5
0
        public AdminWS.CancelPaymentPlanRowsResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var cancellationRows = new List <AdminWS.CancellationRow>();

            foreach (var rowIndex in _builder.RowIndexesToCredit)
            {
                var cancellationRow = new AdminWS.CancellationRow()
                {
                    AmountInclVat = 0M,
                    VatPercent    = 0M,
                    Description   = null,
                    RowNumber     = (int)rowIndex
                };
                cancellationRows.Add(cancellationRow);
            }
            foreach (var ncr in _builder.NewCreditOrderRows)
            {
                var vatPercent   = GetVatPercentFromBuilderOrderRow(ncr.GetVatPercent(), ncr.GetAmountIncVat(), ncr.GetAmountExVat());
                var amountIncVat = GetAmountIncVatFromBuilderOrderRow(ncr.GetVatPercent(), ncr.GetAmountIncVat(), ncr.GetAmountExVat());
                var description  = GetDescriptionFromBuilderOrderRow(ncr.GetName(), ncr.GetDescription());

                var cancellationRow = new AdminWS.CancellationRow()
                {
                    AmountInclVat = amountIncVat,
                    VatPercent    = vatPercent,
                    Description   = description,
                    RowNumber     = null
                };
                cancellationRows.Add(cancellationRow);
            }

            var request = new AdminWS.CancelPaymentPlanRowsRequest()
            {
                Authentication   = auth,
                ContractNumber   = _builder.Id,
                ClientId         = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                CancellationRows = cancellationRows.ToArray()
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient("WcfAdminSoapService", endpoint);
            var response = adminWS.CancelPaymentPlanRows(request);

            return(response);
        }
Exemplo n.º 6
0
        public Webpay.Integration.CSharp.AdminWS.DeliveryResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var ordersToDeliver = new List <AdminWS.DeliverOrderInformation>();
            var clientId        = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode());
            var orderType       = ConvertPaymentTypeToOrderType(_builder.OrderType);

            foreach (var orderId in _builder.OrderIds)
            {
                var orderToDeliver = new AdminWS.DeliverOrderInformation()
                {
                    ClientId    = clientId,
                    SveaOrderId = orderId,
                    OrderType   = orderType
                                  //PrintType // optional for EU-clients
                };
                ordersToDeliver.Add(orderToDeliver);
            }

            var request = new AdminWS.DeliveryRequest()
            {
                Authentication          = auth,
                OrdersToDeliver         = ordersToDeliver.ToArray(),
                InvoiceDistributionType = ConvertDistributionTypeToInvoiceDistributionType(_builder.DistributionType)
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient("WcfAdminSoapService", endpoint);
            var response = adminWS.DeliverOrders(request);

            return(response);
        }
        public Webpay.Integration.CSharp.AdminWS.AddOrderRowsResponse DoRequest()
        {
            var auth = new AdminWS.Authentication()
            {
                Password = _builder.GetConfig().GetPassword(_builder.OrderType, _builder.GetCountryCode()),
                Username = _builder.GetConfig().GetUsername(_builder.OrderType, _builder.GetCountryCode())
            };

            var request = new AdminWS.AddOrderRowsRequest()
            {
                Authentication = auth,
                SveaOrderId    = _builder.Id,
                OrderType      = ConvertPaymentTypeToOrderType(_builder.OrderType), // not required for EU-clients
                ClientId       = _builder.GetConfig().GetClientNumber(_builder.OrderType, _builder.GetCountryCode()),
                OrderRows      = _builder.OrderRows.Select(x => ConvertOrderRowBuilderToAdminWSOrderRow(x)).ToArray()
            };

            // make request to correct endpoint, return response object
            var endpoint = _builder.GetConfig().GetEndPoint(PaymentType.ADMIN_TYPE);
            var adminWS  = new AdminServiceClient("WcfAdminSoapService", endpoint);
            var response = adminWS.AddOrderRows(request);

            return(response);
        }