예제 #1
0
        public IActionResult PostBespereboinik([FromForm] UPS bespereboinikModel)
        {
            var id = upsRepository.AddUPS(bespereboinikModel);

            Console.WriteLine($"новый бесперебойник с id {id} создан {User}");
            return(Redirect("Index"));
        }
예제 #2
0
        private static void PrintUPSVarList(UPS ups)
        {
            UPSDClient client = new UPSDClient(ups.Host);

            try
            {
                client.Connect();
                Dictionary <string, string> vars = client.ListUPSVar(ups.Name);
                foreach (KeyValuePair <string, string> item in vars)
                {
                    Console.WriteLine(item.Key + ": " + item.Value);
                }
            }
            catch (SocketException sockex)
            {
                Console.WriteLine("Error: " + sockex.Message);
            }
            catch (UPSException upsex)
            {
                Console.WriteLine("Error: " + upsex.Description);
            }
            finally
            {
                client.Disconnect();
            }
        }
예제 #3
0
        private static void PrintUPSClients(UPS ups)
        {
            UPSDClient client = new UPSDClient(ups.Host);

            try
            {
                client.Connect();
                List <string> clients = client.ListUPSClient(ups.Name);
                foreach (string upsClient in clients)
                {
                    Console.WriteLine(upsClient);
                }
            }
            catch (SocketException sockex)
            {
                Console.WriteLine("Error: " + sockex.Message);
            }
            catch (UPSException upsex)
            {
                Console.WriteLine("Error: " + upsex.Description);
            }
            finally
            {
                client.Disconnect();
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            // LOCATE THE SHIP GATEWAY INFORMATION
            string classId = Misc.GetClassId(typeof(UPS));
            IList <ShipGateway> gateways = ShipGatewayDataSource.LoadForClassId(classId);

            if (gateways.Count == 0)
            {
                Response.Redirect("License.aspx");
            }
            _ShipGateway = gateways[0];

            if (!Page.IsPostBack)
            {
                UPS provider = (UPS)_ShipGateway.GetProviderInstance();

                // INITIALIZE THE FORM FIELDS ON FIRST VISIT
                UserId.Text    = provider.UserId;
                AccessKey.Text = provider.AccessKey;
                Password.Text  = provider.Password;
                EnableAddressValidation.Checked = provider.EnableAddressValidation;
                AddressServiceTestUrl.Text      = provider.AddressServiceTestUrl;
                AddressServiceLiveUrl.Text      = provider.AddressServiceLiveUrl;
            }
        }
 public PackageTrackerDetails(string referenceNumber, DateTime? cacheExpirationDate, UPS.TrackResponse upsResponse)
 {
     this.ReferenceNumber = referenceNumber;
     this.PartitionKey = GetPartitionKey(referenceNumber);
     this.RowKey = referenceNumber;
     this.CacheExpirationDate = cacheExpirationDate;
     this.UPSResponse = upsResponse;
 }
예제 #6
0
 public MainForm()
 {
     InitializeComponent();
     ups       = UPS.Instance;
     logStream = null;
     ups.UPSConnectStatusUpdated += this.UPSStatusUpdated;
     Application.ApplicationExit += new EventHandler(OnApplicationExit);
 }
예제 #7
0
파일: Program.cs 프로젝트: sschocke/netNUT
 private static void ExecuteCommand(UPS target, UPSDClient client)
 {
     if (client.InstantCommand(target.Name, command, addParam) == false)
     {
         Console.WriteLine("UNKNOWN ERROR");
         return;
     }
     Console.WriteLine("OK");
 }
예제 #8
0
파일: Program.cs 프로젝트: sschocke/netNUT
        static void Main(string[] args)
        {
            if ((args.Length == 0) || (args[0] == "-h") || (args[0] == "-?") || (args[0] == "--help"))
            {
                HelpText();
                return;
            }

            if (AnalyzeCommandLineParams(args) == false)
            {
                return;
            }

            UPS        target = new UPS(ups);
            UPSDClient client = new UPSDClient(target.Host);

            try
            {
                client.Connect();
                if (String.IsNullOrEmpty(authUser) == false)
                {
                    if (client.SetUsername(authUser) == false)
                    {
                        Console.WriteLine("Error: Could not set username for authentication");
                        return;
                    }
                }
                if (String.IsNullOrEmpty(authPass) == false)
                {
                    if (client.SetPassword(authPass) == false)
                    {
                        Console.WriteLine("Error: Could not set password for authentication");
                        return;
                    }
                }
                if (String.IsNullOrEmpty(variable))
                {
                    ListVariables(target, client);
                    return;
                }

                SetVariable(target, client);
            }
            catch (SocketException sockex)
            {
                Console.WriteLine("Error: " + sockex.Message);
            }
            catch (UPSException upsex)
            {
                Console.WriteLine("Error: " + upsex.Description);
            }
            finally
            {
                client.Disconnect();
            }
        }
예제 #9
0
 protected override void Initialize()
 {
     // Instantiate constituents
     _amazon    = new Amazon(this);
     _customer  = new Customer(this);
     _dell      = new BarnesAndNoble(this);
     _ups       = new UPS(this);
     _upsDriver = new UPSDriver(this);
     _visa      = new Visa(this);
 }
예제 #10
0
        public void DissectUPSTrackingNumber2()
        {
            var result = new UPS("1ZX7058Y0396489283");

            Assert.Equal("03", result.ServiceType);
            Assert.Equal("UPS United States Ground", result.ServiceTypeDescription);
            Assert.Equal("X7058Y", result.ShipperAccount);
            Assert.Equal("9648928", result.PackageIdentifier);
            Assert.Equal('3', result.CheckDigit);
        }
예제 #11
0
        public void DissectUPSTrackingNumber1()
        {
            var result = new UPS("1ZE6A4850190733810");

            Assert.Equal("01", result.ServiceType);
            Assert.Equal("UPS United States Next Day Air (Red)", result.ServiceTypeDescription);
            Assert.Equal("E6A485", result.ShipperAccount);
            Assert.Equal("9073381", result.PackageIdentifier);
            Assert.Equal('0', result.CheckDigit);
        }
예제 #12
0
        static void Main(string[] args)
        {
            string encoding = "utf-8";

            var appSettings = ConfigurationManager.AppSettings;

            var upsLicenseNumber = appSettings["UPSLicenseNumber"];
            var upsUserId        = appSettings["UPSUserId"];
            var upsPassword      = appSettings["UPSPassword"];

            var packages = new List <Package>();

            packages.Add(new Package(12, 12, 12, 35, 150));
            packages.Add(new Package(4, 4, 6, 15, 250));

            var shipperAddress = new Address();

            shipperAddress.ZipCode = "06405";
            shipperAddress.City    = "";
            shipperAddress.Country = new Country()
            {
                CountryCode = "US"
            };
            shipperAddress.State = new State()
            {
                StateCode = "MI"
            };

            var destinationAddress = new Address();

            destinationAddress.ZipCode = "20852";
            destinationAddress.Country = new Country()
            {
                CountryCode = "US"
            };

            var p = new List <Package>();

            p.Add(new Package(12, 12, 12, 35, 0));
            p.Add(new Package(4, 4, 6, 15, 0));

            var getServiceCode = UPS.GetUPSCode(UPSServices.Ground.ToString());

            UPS uPS = new UPS();

            uPS.SetCredentials(upsLicenseNumber, upsUserId, upsPassword, null);
            var rateString   = uPS.RatingServiceSelectionRequest(shipperAddress, destinationAddress, p, getServiceCode, "03");
            var rateResponse = HttpHelper.Post(appSettings["UPSRateUrl"], rateString, encoding);
            var error        = "";
            var rate         = UPS.GetRate(rateResponse, false, ref error);

            var validAdd        = uPS.AddressValidation(shipperAddress);
            var addressResponse = HttpHelper.Post(appSettings["UPSAddressValidationURL"], validAdd, encoding);
            var addressValid    = UPS.GetAddressValidationResponses(addressResponse, ref error);
        }
예제 #13
0
파일: Program.cs 프로젝트: sschocke/netNUT
        private static void ListCommands(UPS target, UPSDClient client)
        {
            Dictionary <string, string> commands = client.ListUPSCommands(target.Name);

            Console.WriteLine("Instant commands supported on UPS [{0}]:", target.Name);
            Console.WriteLine();
            foreach (KeyValuePair <string, string> item in commands)
            {
                Console.WriteLine(item.Key + " - " + item.Value);
            }
        }
예제 #14
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // LOCATE THE SHIP GATEWAY INFORMATION
            string classId = Misc.GetClassId(typeof(UPS));
            IList <ShipGateway> gateways = ShipGatewayDataSource.LoadForClassId(classId);

            if (gateways.Count == 0)
            {
                Response.Redirect("License.aspx");
            }
            _ShipGateway = gateways[0];
            UPS provider = (UPS)_ShipGateway.GetProviderInstance();

            // INITIALIZE THE PROVIDER SHIP METHOD CONTROL
            ShipMethods.ShipGatewayId = _ShipGateway.Id;

            // INITIALIZE THE FORM FIELDS ON FIRST VISIT
            UserId.Text    = provider.UserId;
            AccessKey.Text = provider.AccessKey;
            if (!Page.IsPostBack)
            {
                if ((provider.CustomerType == UPS.UpsCustomerType.DailyPickup))
                {
                    CustomerType_DailyPickup.Checked = true;
                }
                else if ((provider.CustomerType == UPS.UpsCustomerType.Occasional))
                {
                    CustomerType_Occasional.Checked = true;
                }
                else if ((provider.CustomerType == UPS.UpsCustomerType.Retail))
                {
                    CustomerType_Retail.Checked = true;
                }
                else
                {
                    CustomerType_Negotiated.Checked = true;
                }
                UseInsurance.Checked    = provider.UseInsurance;
                UseDebugMode.Checked    = provider.UseDebugMode;
                UseTestMode.Checked     = provider.UseTestMode;
                LiveServerURL.Text      = provider.LiveModeUrl;
                TestServerURL.Text      = provider.TestModeUrl;
                TrackingURL.Text        = provider.TrackingUrl;
                ShipperNumber.Text      = provider.ShipperNumber;
                EnableLabels.Checked    = provider.EnableShipping;
                MaxWeight.Text          = provider.MaxPackageWeight.ToString();
                MinWeight.Text          = provider.MinPackageWeight.ToString();
                EnablePackaging.Checked = provider.EnablePackageBreakup;
                //EnableAddressValidation.Checked = provider.EnableAddressValidation;
                //AddressServiceTestUrl.Text = provider.AddressServiceTestUrl;
                //AddressServiceLiveUrl.Text = provider.AddressServiceLiveUrl;
            }
        }
예제 #15
0
파일: Program.cs 프로젝트: sschocke/netNUT
        private static void ListVariables(UPS target, UPSDClient client)
        {
            List <UPS.VariableDescription> vars = client.ListUPSReadWrite(target.Name);

            foreach (UPS.VariableDescription rwVar in vars)
            {
                Console.WriteLine("[" + rwVar.Name + "]");
                Console.WriteLine(rwVar.Description);
                Console.WriteLine("Type: " + rwVar.Type);
                Console.WriteLine("Value: " + rwVar.Value);
                Console.WriteLine();
            }
        }
예제 #16
0
파일: Program.cs 프로젝트: sschocke/netNUT
 private static void SetVariable(UPS target, UPSDClient client)
 {
     string[] variableParts = variable.Split(new char[] { '=' }, 2);
     variable = variableParts[0];
     if (variableParts.Length < 2)
     {
         Console.Write("Enter value for " + variable + ":");
         newValue = Console.ReadLine();
     }
     if (client.SetUPSVariable(target.Name, variable, newValue) == false)
     {
         Console.WriteLine("UNKNOWN ERROR");
         return;
     }
     Console.WriteLine("OK");
 }
        protected void SaveButton_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                UPS provider = (UPS)_ShipGateway.GetProviderInstance();
                provider.UserId    = UserId.Text;
                provider.Password  = Password.Text;
                provider.AccessKey = AccessKey.Text;
                provider.EnableAddressValidation = EnableAddressValidation.Checked;
                provider.AddressServiceTestUrl   = AddressServiceTestUrl.Text;
                provider.AddressServiceLiveUrl   = AddressServiceLiveUrl.Text;

                _ShipGateway.UpdateConfigData(provider.GetConfigData());
                _ShipGateway.Save();
                Response.Redirect("Configure.aspx?ShipGatewayId=" + _ShipGateway.Id);
            }
        }
예제 #18
0
        protected void UpdateCost()
        {
            try
            {
                var checkoutdata = Session["CheckOutData"] as CheckOutData;
                checkoutdata = UpdateCheckOutData(checkoutdata);

                if (checkoutdata != null)
                {
                    if (checkoutdata.Package.Weight == null)
                    {
                        ShowError("No Package Weight."); return;
                    }
                    if (checkoutdata.From.AddressLine[0] != "" && checkoutdata.To.AddressLine[0] != "" && checkoutdata.Shipper.AddressLine[0] != "" && checkoutdata.Package.Weight != "")
                    {
                        if (Global.Library.Settings.TESTMODE)
                        {
                            checkoutdata.Pickup = DateTime.Now.AddHours(-8).AddDays(1);
                        }
                        //Check UPS Account
                        if (!ValidateUpsAcct(Global.Library.Settings.UpsAccount))
                        {
                            ShowError("Please check your Shipper Account Settings in Admin Panel: " + GetInnerUpsAcctError(Global.Library.Settings.UpsAccount)); return;
                        }
                        UPS ups = new UPS(Global.Library.Settings.UpsAccount, Global.Library.Settings.TESTMODE);
                        ups.OnException           += Ups_OnException;
                        ups.OnRateReturn          += Ups_OnRateReturn;
                        ups.SoapExceptionListener += Ups_SoapExceptionListener;
                        var result = ups.GetRateAsync(checkoutdata.From, checkoutdata.To, checkoutdata.From, checkoutdata.Code, checkoutdata.Package);
                        if (result == null)
                        {
                            //error
                        }
                    }
                    else
                    {
                        ShowError("Please fill in form completely.");
                    }
                }
            }
            catch
            {
            }
        }
예제 #19
0
        protected void UpdateUpsLabel()
        {
            try
            {
                var checkoutdata = Session["CheckOutData"] as CheckOutData;
                checkoutdata = UpdateCheckOutData(checkoutdata);

                if (checkoutdata != null)
                {
                    if (checkoutdata.Package.Weight == null)
                    {
                        ShowError("No Package Weight."); return;
                    }
                    if (checkoutdata.From.AddressLine.Count() != 0 && checkoutdata.To.AddressLine.Count() != 0 && checkoutdata.Shipper.AddressLine.Count() != 0 && checkoutdata.Package.Weight != "")
                    {
                        if (!ValidateUpsAcct(Global.Library.Settings.UpsAccount))
                        {
                            ShowError("Please check your Shipper Account Settings in Admin Panel:" + GetInnerUpsAcctError(Global.Library.Settings.UpsAccount)); return;
                        }
                        UPS ups = new UPS(Global.Library.Settings.UpsAccount, Global.Library.Settings.TESTMODE);
                        ups.OnException  += Ups_OnException;
                        ups.OnRateReturn += Ups_OnRateReturn;
                        ups.OnShipReturn += Ups_OnShipReturn;
                        var result = ups.GetShipAsync(checkoutdata.From, checkoutdata.To, checkoutdata.From, checkoutdata.Code, checkoutdata.Package, checkoutdata.Package.reference, checkoutdata.Package.reference2);
                        if (result == null)
                        {
                            ShowError("Problem Creating Label");
                        }
                    }
                    else
                    {
                        ShowError("Please fill in form completely.");
                    }
                }
            }
            catch
            {
                ShowError("Problem Getting Shipping Label");
            }
        }
예제 #20
0
        private void SaveGateWayUPS()
        {
            UPS provider = (UPS)_ShipGateway.GetProviderInstance();
            int customerTypeIndex;

            if (CustomerType_DailyPickup.Checked)
            {
                customerTypeIndex = 0;
            }
            else if (CustomerType_Occasional.Checked)
            {
                customerTypeIndex = 1;
            }
            else if (CustomerType_Retail.Checked)
            {
                customerTypeIndex = 2;
            }
            else
            {
                customerTypeIndex = 3;
            }
            provider.CustomerType         = ((UPS.UpsCustomerType)(customerTypeIndex));
            provider.UseInsurance         = UseInsurance.Checked;
            provider.UseDebugMode         = UseDebugMode.Checked;
            provider.UseTestMode          = UseTestMode.Checked;
            provider.LiveModeUrl          = LiveServerURL.Text;
            provider.TestModeUrl          = TestServerURL.Text;
            provider.TrackingUrl          = TrackingURL.Text;
            provider.ShipperNumber        = ShipperNumber.Text;
            provider.EnableShipping       = EnableLabels.Checked;
            provider.MaxPackageWeight     = AlwaysConvert.ToDecimal(MaxWeight.Text, (decimal)provider.MaxPackageWeight);
            provider.MinPackageWeight     = AlwaysConvert.ToDecimal(MinWeight.Text, (decimal)provider.MinPackageWeight);
            provider.EnablePackageBreakup = EnablePackaging.Checked;
            //provider.EnableAddressValidation = EnableAddressValidation.Checked;
            //provider.AddressServiceTestUrl = AddressServiceTestUrl.Text;
            //provider.AddressServiceLiveUrl = AddressServiceLiveUrl.Text;
            _ShipGateway.UpdateConfigData(provider.GetConfigData());
            _ShipGateway.Save();
        }
예제 #21
0
        protected void UpdateArrival()
        {
            try
            {
                var checkoutdata = Session["CheckOutData"] as CheckOutData;
                checkoutdata = UpdateCheckOutData(checkoutdata);

                if (checkoutdata != null)
                {
                    if (checkoutdata.Package.Weight == null)
                    {
                        ShowError("No Package Weight."); return;
                    }
                    if (checkoutdata.From.AddressLine[0] != "" && checkoutdata.To.AddressLine[0] != "" && checkoutdata.Shipper.AddressLine[0] != "" && checkoutdata.Package.Weight != "")
                    {
                        if (!ValidateUpsAcct(Global.Library.Settings.UpsAccount))
                        {
                            ShowError("Please check your Shipper Account Settings in Admin Panel:" + GetInnerUpsAcctError(Global.Library.Settings.UpsAccount)); return;
                        }
                        UPS ups = new UPS(Global.Library.Settings.UpsAccount, Global.Library.Settings.TESTMODE);
                        ups.OnException     += Ups_OnException;
                        ups.OnRateReturn    += Ups_OnRateReturn;
                        ups.OnTransitReturn += Ups_OnTransitReturn;
                        var result = ups.GetTransitAsync(checkoutdata.From, checkoutdata.To, checkoutdata.Pickup, checkoutdata.Package.Weight);
                        if (result == null)
                        {
                            //error
                        }
                    }
                    else
                    {
                        ShowError("Please fill in form completely.");
                    }
                }
            }
            catch
            {
            }
        }
예제 #22
0
        private static void PrintUPSVar(UPS ups, string varName)
        {
            UPSDClient client = new UPSDClient(ups.Host);

            try
            {
                client.Connect();
                string result = client.GetUPSVar(ups.Name, varName);
                Console.WriteLine(result);
            }
            catch (SocketException sockex)
            {
                Console.WriteLine("Error: " + sockex.Message);
            }
            catch (UPSException upsex)
            {
                Console.WriteLine("Error: " + upsex.Description);
            }
            finally
            {
                client.Disconnect();
            }
        }
예제 #23
0
        static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                Console.WriteLine("Error: invalid UPS definition.");
                Console.WriteLine("Required format: upsname[@hostname[:port]]");
                Console.WriteLine("or type '{0} -h' for help", System.Diagnostics.Process.GetCurrentProcess().ProcessName);
                return;
            }
            if ((args[0] == "-h") || (args[0] == "-?") || (args[0] == "--help"))
            {
                #region Help Text
                Console.WriteLine("Windows Network UPS Tools winupsc " + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version);
                Console.WriteLine();
                Console.WriteLine("Usage : winupsc -l | -L [<hostname>[:port]]");
                Console.WriteLine("        winupsc <ups> [<variable>]");
                Console.WriteLine("        winupsc -c <ups>");
                Console.WriteLine();
                Console.WriteLine("First form (lists UPSes):");
                Console.WriteLine("  -l           - lists each UPS on <hostname>, one per line.");
                Console.WriteLine("  -L           - lists each UPS followed by its description (from ups.conf).");
                Console.WriteLine("                 Default hostname: localhost");
                Console.WriteLine();
                Console.WriteLine("Second form (lists variables and values):");
                Console.WriteLine("  <ups>        - upsd server, <upsname>[@<hostname>[:<port>]] form");
                Console.WriteLine("  <variable>   - optional, display this variable only.");
                Console.WriteLine("                 Default: list all variables for <ups>");
                Console.WriteLine();
                Console.WriteLine("Third form (lists clients connected to a device):");
                Console.WriteLine("  -c           - lists each client connected on <ups>, one per line.");
                Console.WriteLine("  <ups>        - upsd server, <upsname>[@<hostname>[:<port>]] form");
                #endregion
                return;
            }
            if ((args[0] == "-l") || (args[0] == "-L"))
            {
                string upsdServer = "localhost";
                if (args.Length > 1)
                {
                    upsdServer = args[1];
                }

                PrintUPSList(upsdServer, (args[0] == "-L"));
                return;
            }
            UPS ups = null;
            if (args[0] == "-c")
            {
                if (args.Length < 2)
                {
                    Console.WriteLine("Error: invalid UPS definition.");
                    Console.WriteLine("Required format: upsname[@hostname[:port]]");
                    Console.WriteLine("or type '{0} -h' for help", System.Diagnostics.Process.GetCurrentProcess().ProcessName);
                    return;
                }

                ups = new UPS(args[1]);
                PrintUPSClients(ups);

                return;
            }

            ups = new UPS(args[0]);
            if (args.Length == 2)
            {
                string varName = args[1];
                PrintUPSVar(ups, varName);
            }
            else
            {
                PrintUPSVarList(ups);
            }
        }
예제 #24
0
파일: Ups.cs 프로젝트: erynet/IMS
        public static bool AddUps(Ups.Info ups)
        {
            try
            {
                using (var ctx = new LocalDB())
                {
                    UPS newUps = new UPS()
                    {
                        GroupNo = ups.groupNo,
                        No = ups.upsNo,
                        Name = ups.upsName,
                        MateList = ups.partnerNoList.ToString(),
                        CduNo = ups.cduNo,
                        Specification = ups.batteryDescription,
                        Capacity = ups.batteryCapacity,
                        IpAddress = ups.ip,
                        Enabled = ups.isUsing,
                        InstallAt = ups.installDate,
                    };

                    using (var trx = new TransactionScope())
                    {
                        ctx.Ups.Add(newUps);
                        ctx.SaveChanges();
                        trx.Complete();
                    }
                }
                return true;
            }
            catch (Exception e)
            {
                Console.WriteLine($"AddUps : {e.ToString()}");
                return false;
            }
        }
예제 #25
0
파일: Program.cs 프로젝트: sschocke/netNUT
        static void Main(string[] args)
        {
            if ((args.Length == 0) || (args[0] == "-h") || (args[0] == "-?") || (args[0] == "--help"))
            {
                HelpText();
                return;
            }

            if (AnalyzeCommandLineParams(args) == false)
            {
                return;
            }

            Console.WriteLine("ups={0}, command={1}, user={2}, password={3}, addParam={4}, listMode={5}",
                              new object[] { ups, command, authUser, authPass, addParam, listMode });

            UPS        target = new UPS(ups);
            UPSDClient client = new UPSDClient(target.Host);

            try
            {
                client.Connect();
                if (listMode)
                {
                    ListCommands(target, client);
                    return;
                }

                if (String.IsNullOrEmpty(authUser) == true)
                {
                    Console.Write("Username: "******"Error: Could not set username for authentication");
                    return;
                }

                if (String.IsNullOrEmpty(authPass) == true)
                {
                    Console.Write("Password: "******"Error: Could not set password for authentication");
                    return;
                }

                ExecuteCommand(target, client);
            }
            catch (SocketException sockex)
            {
                Console.WriteLine("Error: " + sockex.Message);
            }
            catch (UPSException upsex)
            {
                Console.WriteLine("Error: " + upsex.Description);
            }
            finally
            {
                client.Disconnect();
            }
        }
예제 #26
0
 protected void Page_Load(object sender, EventArgs e)
 {
     LicenseAgreement.Text = UPS.GetAgreement().Trim();
 }
        public async Task <UpsResponse> GetDeliveryTime()
        {
            var request = new UPSRequestObj.UpsRequest
            {
                TimeInTransitRequest = new TimeInTransitRequest
                {
                    Request = new Request
                    {
                        RequestOption        = "TNT",
                        TransactionReference = new TransactionReference
                        {
                        }
                    },

                    ShipFrom = new ShipFrom
                    {
                        Address = new Address
                        {
                            StateProvinceCode = "MA",
                            CountryCode       = "US",
                            PostalCode        = "02740"
                        }
                    },
                    ShipTo = new ShipTo
                    {
                        Address = new Address2
                        {
                            StateProvinceCode = "AZ",
                            CountryCode       = "US",
                            PostalCode        = "85281"
                        }
                    },
                    Pickup = new Pickup
                    {
                        Date = "20201222"
                    },

                    ShipmentWeight = new ShipmentWeight
                    {
                        UnitOfMeasurement = new UnitOfMeasurement
                        {
                            Code        = "KGS",
                            Description = ""
                        },
                        Weight = "20"
                    },
                    MaximumListSize = "2"
                },
                Security = new Security
                {
                    UsernameToken = new UsernameToken
                    {
                        Username = "******",
                        Password = "******"
                    },
                    UPSServiceAccessToken = new UPSServiceAccessToken
                    {
                        AccessLicenseNumber = "2D8F460B702D02D5"
                    }
                }
            };

            var RequestSerialized = JsonConvert.SerializeObject(request);

            UpsResponse resp = await UPS.GetUPSTimeInTransit(RequestSerialized);



            return(resp);
        }
예제 #28
0
파일: Program.cs 프로젝트: erynet/IMS
        static void Main(string[] args)
        {
            using (var ctx = new LocalDB())
            {
                ctx.Database.Initialize(true);

                Group g1 = new Group()
                {
                    No = 1,
                    Name = "그룹01",
                    Display = true,
                    CoordX = 400,
                    CoordY = 600,
                    Status = 0,
                    Enabled = true,
                    Description = null
                };

                Group g2 = new Group()
                {
                    No = 2,
                    Name = "그룹02",
                    Display = true,
                    CoordX = 600,
                    CoordY = 800,
                    Status = 0,
                    Enabled = true,
                    Description = null
                };

                using (var trx = new TransactionScope())
                {
                    ctx.Group.Add(g1);
                    ctx.Group.Add(g2);
                    ctx.SaveChanges();

                    trx.Complete();
                }

                CDU c1 = new CDU()
                {
                    GroupNo = 1,
                    No = 1,
                    Name = "CDU01",
                    Extendable = true,
                    IpAddress = "192.168.1.2",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2015.1.14",
                    Description = null
                };

                CDU c2 = new CDU()
                {
                    GroupNo = 1,
                    No = 2,
                    Name = "CDU02",
                    Extendable = true,
                    IpAddress = "192.168.1.3",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2015.1.14",
                    Description = null
                };

                CDU c3 = new CDU()
                {
                    GroupNo = 1,
                    No = 3,
                    Name = "CDU03",
                    Extendable = true,
                    IpAddress = "192.168.1.4",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2015.1.14",
                    Description = null
                };

                using (var trx = new TransactionScope())
                {
                    ctx.Cdu.Add(c1);
                    ctx.Cdu.Add(c2);
                    ctx.Cdu.Add(c3);
                    ctx.SaveChanges();

                    trx.Complete();
                }

                UPS u1 = new UPS()
                {
                    GroupNo = 1,
                    No = 1,
                    Name = "UPS01",
                    MateList = null,
                    CduNo = 1,
                    Specification = "듀라셀",
                    Capacity = "2Kw",
                    IpAddress = "192.168.0.2",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2016.1.15",
                    Description = null
                };

                UPS u2 = new UPS()
                {
                    GroupNo = 1,
                    No = 2,
                    Name = "UPS02",
                    MateList = null,
                    CduNo = 1,
                    Specification = "듀라셀",
                    Capacity = "2Kw",
                    IpAddress = "192.168.0.3",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2016.1.15",
                    Description = null
                };
                
                UPS u3 = new UPS()
                {
                    GroupNo = 1,
                    No = 3,
                    Name = "UPS03",
                    MateList = null,
                    CduNo = 2,
                    Specification = "듀라셀",
                    Capacity = "2Kw",
                    IpAddress = "192.168.0.4",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2016.1.15",
                    Description = null
                };
                
                UPS u4 = new UPS()
                {
                    GroupNo = 2,
                    No = 4,
                    Name = "UPS04",
                    MateList = null,
                    CduNo = 3,
                    Specification = "로케트",
                    Capacity = "2Kw",
                    IpAddress = "192.168.0.5",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2016.1.15",
                    Description = null
                };

                UPS u5 = new UPS()
                {
                    GroupNo = 2,
                    No = 5,
                    Name = "UPS05",
                    MateList = null,
                    CduNo = 3,
                    Specification = "로케트",
                    Capacity = "2Kw",
                    IpAddress = "192.168.0.6",
                    Status = 0,
                    Enabled = true,
                    InstallAt = "2016.1.15",
                    Description = null
                };

                using (var trx = new TransactionScope())
                {
                    ctx.Ups.Add(u1);
                    ctx.Ups.Add(u2);
                    ctx.Ups.Add(u3);
                    ctx.Ups.Add(u4);
                    ctx.Ups.Add(u5);
                    ctx.SaveChanges();

                    trx.Complete();
                }

                
            }
        }
예제 #29
0
        public static async Task <List <string> > GetFastestdeliveryAsync(FastestDeliveryRequestObj deliveryRequest)
        {
            List <string> warehouse_zips = new List <string>();

            List <ZipObj> ZipObjs = DeliveryTime.GetNearestWarehouses(deliveryRequest.Zip);

            foreach (ZipObj zipp in ZipObjs)
            {
                warehouse_zips.Add(zipp.Zip);
            }

            DateTime localDate  = DateTime.Now;
            var      PickupDate = localDate.AddDays(1);
            string   pickup     = PickupDate.ToString("yyyyMMdd");

            var ProbableArrivalDates = new List <string>();

            //todo weights

            foreach (string warehouse in warehouse_zips)
            {
                var request = new UPSRequestObj.UpsRequest
                {
                    TimeInTransitRequest = new TimeInTransitRequest
                    {
                        Request = new Request
                        {
                            RequestOption        = "TNT",
                            TransactionReference = new TransactionReference
                            {
                            }
                        },

                        ShipFrom = new ShipFrom
                        {
                            Address = new Address
                            {
                                StateProvinceCode = "",
                                CountryCode       = "US",
                                PostalCode        = warehouse
                            }
                        },
                        ShipTo = new ShipTo
                        {
                            Address = new Address2
                            {
                                StateProvinceCode = "",
                                CountryCode       = "US",
                                PostalCode        = deliveryRequest.Zip
                            }
                        },
                        Pickup = new Pickup
                        {
                            Date = pickup
                        },

                        ShipmentWeight = new ShipmentWeight
                        {
                            UnitOfMeasurement = new UnitOfMeasurement
                            {
                                Code        = "KGS",
                                Description = ""
                            },
                            Weight = "20"
                        },
                        MaximumListSize = "2"
                    },
                    Security = new Security
                    {
                        UsernameToken = new UsernameToken
                        {
                            Username = "******",
                            Password = "******"
                        },
                        UPSServiceAccessToken = new UPSServiceAccessToken
                        {
                            AccessLicenseNumber = "2D8F460B702D02D5"
                        }
                    }
                };

                var RequestSerialized = JsonConvert.SerializeObject(request);

                UpsResponse resp = await UPS.GetUPSTimeInTransit(RequestSerialized);

                foreach (ServiceSummary service in resp.TimeInTransitResponse.TransitResponse.ServiceSummary)
                {
                    string ArrivalDate = "";
                    ArrivalDate = service.EstimatedArrival.Arrival.Date;
                    ProbableArrivalDates.Add(ArrivalDate);
                }
            }

            return(ProbableArrivalDates);
        }
예제 #30
0
        protected void NextButton_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                // CUSTOM ERROR VALIDATION
                if (Country.SelectedValue.Equals("US"))
                {
                    // MAKE SURE POSTALCODE AND PROVINCECODE WERE PROVIDED
                    if (string.IsNullOrEmpty(Province.Text))
                    {
                        AddCustomErrorMessage("You must enter a valid 2 letter state abbreviation.", Province);
                    }
                    else
                    {
                        // MAKE SURE THE VALUE IS VALID
                        Province.Text = Province.Text.ToUpperInvariant();
                        string[] states = "AL|AK|AS|AZ|AR|CA|CO|CT|DE|DC|FM|FL|GA|GU|HI|ID|IL|IN|IA|KS|KY|LA|ME|MH|MD|MA|MI|MN|MS|MO|MT|NE|NV|NH|NJ|NM|NY|NC|ND|MP|OH|OK|OR|PW|PA|PR|RI|SC|SD|TN|TX|UT|VT|VI|VA|WA|WV|WI|WY|AE|AA|AE|AE|AP".Split("|".ToCharArray());
                        if (Array.IndexOf(states, Province.Text) < 0)
                        {
                            AddCustomErrorMessage("You must enter a valid 2 letter state abbreviation.", Province);
                        }
                    }
                    if (string.IsNullOrEmpty(PostalCode.Text))
                    {
                        AddCustomErrorMessage("Your 5 digit ZIP code is required.", PostalCode);
                    }
                    else
                    {
                        // MAKE SURE ZIP IS VALID FORMAT
                        if (!Regex.IsMatch(PostalCode.Text, "^\\d{5}$"))
                        {
                            AddCustomErrorMessage("You must enter a valid 5 digit ZIP code.", PostalCode);
                        }
                    }
                }
                else if (Country.SelectedValue.Equals("CA"))
                {
                    // MAKE SURE POSTALCODE AND PROVINCECODE WERE PROVIDED
                    if (string.IsNullOrEmpty(Province.Text))
                    {
                        AddCustomErrorMessage("You must enter a valid 2 letter province abbreviation.", Province);
                    }
                    else
                    {
                        // MAKE SURE THE VALUE IS VALID
                        Province.Text = Province.Text.ToUpperInvariant();
                        string[] states = "AB|BC|MB|NB|NL|NT|NS|NU|ON|PE|QC|SK|YT".Split("|".ToCharArray());
                        if ((Array.IndexOf(states, Province.Text) < 0))
                        {
                            AddCustomErrorMessage("You must enter a valid 2 letter province abbreviation.", Province);
                        }
                    }
                    if (string.IsNullOrEmpty(PostalCode.Text))
                    {
                        AddCustomErrorMessage("Your 6 character postal code is required.", PostalCode);
                    }
                    else
                    {
                        // MAKE SURE ZIP IS VALID FORMAT
                        PostalCode.Text = PostalCode.Text.ToUpperInvariant().Replace(" ", "");
                        if (!Regex.IsMatch(PostalCode.Text, "^([A-Za-z]\\d[A-Za-z]( |-)*\\d[A-Za-z]\\d)$"))
                        {
                            AddCustomErrorMessage("You must enter a valid postal code.", PostalCode);
                        }
                    }
                }
                // CHECK FOR VALID PHONE NUMBER
                Phone.Text = Regex.Replace(Phone.Text, "[^0-9]", "");
                Regex phoneRegex = new Regex(@"^\d{10,16}$");
                if (!phoneRegex.IsMatch(Phone.Text))
                {
                    PhoneValidator2.IsValid = false;
                }

                if (Page.IsValid)
                {
                    // CONTINUE WITH REGISTRATION
                    UPS.UpsRegistrationInformation registration = new UPS.UpsRegistrationInformation();
                    registration.ContactName  = ContactName.Text;
                    registration.ContactTitle = ContactTitle.Text;
                    registration.Company      = CompanyName.Text;
                    registration.CompanyUrl   = CompanyUrl.Text;
                    registration.Address1     = Address1.Text;
                    if (!String.IsNullOrEmpty(Address2.Text))
                    {
                        registration.Address2 = Address2.Text;
                    }
                    registration.City        = City.Text;
                    registration.CountryCode = Country.SelectedValue;
                    if ((registration.CountryCode.Equals("US") || registration.CountryCode.Equals("CA")))
                    {
                        registration.StateProvinceCode = Province.Text;
                        registration.PostalCode        = PostalCode.Text;
                    }
                    else
                    {
                        registration.StateProvinceCode = string.Empty;
                        registration.PostalCode        = string.Empty;
                    }
                    Phone.Text = Phone.Text;
                    registration.ContactPhone   = Phone.Text;
                    registration.ContactEmail   = Email.Text;
                    registration.ShipperNumber  = UpsAccount.Text;
                    registration.RequestContact = RequestContact.SelectedValue.Equals("YES");
                    try
                    {
                        // SEND THE REGISTRATION
                        UPS         provider = new UPS();
                        ShipGateway gateway  = new ShipGateway();
                        gateway.Name    = provider.Name;
                        gateway.ClassId = Misc.GetClassId(typeof(UPS));
                        provider.Register(gateway, registration);
                        if (provider.IsActive)
                        {
                            gateway.UpdateConfigData(provider.GetConfigData());
                            gateway.Enabled = true;
                            gateway.Save();
                            Response.Redirect("Register.aspx?ShipGatewayId=" + gateway.Id);
                        }
                    }
                    catch (Exception ex)
                    {
                        AddCustomErrorMessage("Error during registration: " + ex.Message, RequestContact);
                    }
                }
            }
        }
예제 #31
0
 public Guid AddUPS(UPS ups)
 {
     context.UPSes.Add(ups);
     context.SaveChanges();
     return(ups.Id);
 }