Esempio n. 1
0
        private static RateRequest CreateNewRateRequest(string rateType, ShipToAddress origin, ShipToAddress destination, PackageRequest package)
        {
            var request = new RequestType()
            {
                RequestOption = new string[] { "Rate" }
            };

            var shipperAddress = new AddressType()
            {
                City              = origin.City,
                PostalCode        = origin.Zip,
                StateProvinceCode = origin.State,
                CountryCode       = "US"
            };

            var shipper = new ShipperType()
            {
                ShipperNumber = Environment.GetEnvironmentVariable("UPS_ACCT_NUM"),
                Address       = shipperAddress
            };

            var shipToAddress = new ShipToAddressType()
            {
                AddressLine       = new string[] { destination.AddressLine1 },
                City              = destination.City,
                PostalCode        = destination.Zip,
                StateProvinceCode = destination.State,
                CountryCode       = "US"
            };

            var shipTo = new ShipToType()
            {
                Address = shipToAddress
            };

            var service = new CodeDescriptionType()
            {
                Code = GetServiceCode(rateType)
            };

            var pkgArray = CreatePackage(package);

            var shipment = new ShipmentType()
            {
                Shipper = shipper,
                ShipTo  = shipTo,
                Service = service,
                Package = pkgArray
            };

            var rateRequest = new RateRequest()
            {
                Request  = request,
                Shipment = shipment
            };

            return(rateRequest);
        }
Esempio n. 2
0
 public UPSRating(string rateType, ShipToAddress origin, ShipToAddress destination, PackageRequest package)
 {
     rateRequest = CreateNewRateRequest(rateType, origin, destination, package);
 }