Ejemplo n.º 1
0
        public void CheckTwoDayarcelCost()
        {
            var parcel       = new TwoDayPackage(sPerson, rPerson, weight, pricePerOunce, twoDayCharge);
            var expectedCost = weight * pricePerOunce + twoDayCharge;

            Assert.AreEqual(expectedCost, parcel.CalculateCost());
        }
Ejemplo n.º 2
0
        public static Package GetPackage(string UniqueId)
        {
            Package result = null;

            using (SqlConnection dbConnection = new SqlConnection(GetConnectionString()))
            {
                string sql = @"SELECT *
                               FROM PackageTable
                               WHERE UniqueId = @UniqueId";

                dbConnection.Open();

                using (SqlCommand command = new SqlCommand(sql, dbConnection))
                {
                    command.Parameters.Add(new SqlParameter("@UniqueId", UniqueId));

                    //A data reader is a class that runs the Sql command we have given it
                    SqlDataReader reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        string packageType = reader.GetString(reader.GetOrdinal("PackageType"));

                        switch (packageType)
                        {
                        case "package":
                            Package package = new Package();
                            MapPackage(package, reader);

                            result = package;
                            break;

                        case "TwoDayPackage":
                            TwoDayPackage twoDayPackage = new TwoDayPackage();
                            MapPackage(twoDayPackage, reader);
                            result = twoDayPackage;
                            break;

                        case "Overnight":
                            OvernightPackage overnightPackage = new OvernightPackage();
                            MapPackage(overnightPackage, reader);
                            result = overnightPackage;
                            break;
                        }

                        //MapPackage(result, reader);
                    }
                }
                dbConnection.Close();
            }

            return(result);
        }
Ejemplo n.º 3
0
        public static List <Package> GetPackageList()
        {
            List <Package> packages = new List <Package>();

            using (SqlConnection dbConnection = new SqlConnection(GetConnectionString()))
            {
                string sql = @"SELECT *
                               FROM PackageTable";

                dbConnection.Open();

                using (SqlCommand command = new SqlCommand(sql, dbConnection))
                {
                    SqlDataReader reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        string packageType = reader.GetString(reader.GetOrdinal("PackageType"));

                        switch (packageType)
                        {
                        case "package":
                            Package standard = new Package();
                            MapPackage(standard, reader);

                            packages.Add(standard);
                            break;

                        case "TwoDayPackage":
                            TwoDayPackage twoDayPackage = new TwoDayPackage();
                            MapPackage(twoDayPackage, reader);
                            packages.Add(twoDayPackage);
                            break;

                        case "Overnight":
                            OvernightPackage overnightPackage = new OvernightPackage();
                            MapPackage(overnightPackage, reader);
                            packages.Add(overnightPackage);
                            break;
                        }

                        //Package package = new Package();

                        //MapPackage(package, reader);
                        //packages.Add(package);
                    }
                }
                dbConnection.Close();
            }

            return(packages);
        }
Ejemplo n.º 4
0
        public ActionResult Index(PackageViewModel model, string button)
        {
            //get the list of packages from session

            List <Package> packages = PackageDataAccess.GetPackageList();

            switch (model.shippingType)
            {
            case "Standard":
                Package package = new Package();
                LoadPackageFromForm(package, model);
                model.package = package;
                if (button == "Save")
                {
                    UpsertPackage(package);
                }
                break;

            case "Two Day":
                TwoDayPackage twoDayPackage = new TwoDayPackage(5);
                LoadPackageFromForm(twoDayPackage, model);
                model.package = twoDayPackage;
                if (button == "Save")
                {
                    UpsertPackage(twoDayPackage);
                }
                break;

            case "Overnight":
                OvernightPackage overnightPackage = new OvernightPackage(10);
                LoadPackageFromForm(overnightPackage, model);
                model.package = overnightPackage;
                if (button == "Save")
                {
                    UpsertPackage(overnightPackage);
                }
                break;
            }
            //if they used save button, redirect to list page
            if (button == "Save")
            {
                //Go back to the PersonList page
                return(RedirectToAction("ShippingList", "Shipping"));
            }
            else
            {
                return(View(model));
            }
        }
    static void Main()
    {
        try
        {
            // Creates objects of each type of Package
            var normalPackage = new Package("package1", "11 W Mainstreet", "Chicago", "IL", 606000, 500, 1);
            var twoDayPackage = new TwoDayPackage("package2", "21 E Shisharka", "New York", "NY", 546000, 500, 1, 5);
            var overnightPackage = new OvernightPackage("package3", "37 N Lemon", "Los Angelis", "CA", 345000, 500, 1, 10);

            // Tests the method CalculateCost
            Console.WriteLine("Normal Package: $ " + normalPackage.CalculateCost());
            Console.WriteLine("TwoDay Package: $ " + twoDayPackage.CalculateCost());
            Console.WriteLine("Overnight Package: $ " + overnightPackage.CalculateCost());
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
Ejemplo n.º 6
0
        private void SetupPackage()
        {
            var    sender   = GetPersonDetails("Sender");
            var    receiver = GetPersonDetails("Receiver");
            double weight   = GetWeightDetails();

            Console.WriteLine("\tPlease enter 1 to create a Standard packages");
            Console.WriteLine("\tPlease enter 2 to create a Two days package");
            Console.WriteLine("\tPlease enter 3 to create an Overnight package");
            Console.WriteLine();
            var packageOption = (PackageOptionsEnum)GetIntegerOptionFromUser(1, 3);

            switch (packageOption)
            {
            case PackageOptionsEnum.Standard:
                var package = new Package(sender, receiver, weight, COSTPERONCE);
                postOfficeModel.StandardPackages.Add(package);

                break;

            case PackageOptionsEnum.TwoDays:
                var twoDays = new TwoDayPackage(sender, receiver, weight, COSTPERONCE, STANDARDFEE);
                postOfficeModel.TwoDayPackage.Add(twoDays);
                break;

            case PackageOptionsEnum.OverNight:
                Console.WriteLine("\tPlease provide company name:");
                var company          = Console.ReadLine();
                var courier          = GetPersonDetails("Courier").PersonToCourierConverter(company);
                var overnightPackage = new OverNightPackage(sender, receiver, COSTPERONCE, weight, OVERNIGHCHARGE, courier);
                postOfficeModel.OverNightPackage.Add(overnightPackage);
                postOfficeModel.Couriers.Add(courier);

                break;

            default:
                break;
            }

            Console.WriteLine("\t**********You have successfully setup a package to sent************ \n");
        }
        public void addTDP(int Codigo,
                           string Nombre,
                           string Direccion,
                           string Pais,
                           string Departamento,
                           int CodPosRemitente,
                           int CodPosDestinatario,
                           double Peso,
                           double CostoPorGramos,
                           double Cuota)
        {
            TwoDayPackage pkg = new TwoDayPackage(Codigo,
                                                  Nombre,
                                                  Direccion,
                                                  Pais,
                                                  Departamento,
                                                  CodPosRemitente,
                                                  CodPosDestinatario,
                                                  Peso,
                                                  CostoPorGramos,
                                                  Cuota);

            packages.addTDP(pkg);
        }
Ejemplo n.º 8
0
 public void addTDP(TwoDayPackage t)
 {
     tdp.Add(t);
 }