public Custommer(int Id, int Cpr, string Name, Account.Account account, CreditScore.CreditScore creditScore, Address.Address address) { this.id = Id; this.cpr = Cpr; this.name = Name; this.account = account; this.creditScore = creditScore; this.address = address; }
public void setAddress(Address.Address address) { this.address = address; }
/* a method that create shipment and return [0] tracking pin, [1] self link, [2] label link */ public string[] CreateShipment(Address.Address address, Package package) { // set error to false Error = false; // string uri = "https://ct.soa-gw.canadapost.ca/rs/" + CUSTOMER_NUMBER + '/' + CUSTOMER_NUMBER + "/shipment"; string uri = "https://soa-gw.canadapost.ca/rs/" + CUSTOMER_NUMBER + '/' + CUSTOMER_NUMBER + "/shipment"; // create http post request HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri); request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(USER_ID + ':' + PASSWORD))); request.Method = "POST"; request.ContentType = "application/vnd.cpc.shipment-v8+xml"; request.Accept = "application/vnd.cpc.shipment-v8+xml"; string textXml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<shipment xmlns=\"http://www.canadapost.ca/ws/shipment-v8\">" + "<group-id>" + DateTime.Today.ToString("yyyyMMdd") + "</group-id>" + "<requested-shipping-point>L5J4S7</requested-shipping-point>" + "<delivery-spec>"; string serviceCode; switch (package.Service) { case "Regular Parcel": serviceCode = "DOM.RP"; break; case "Xpresspost": serviceCode = "DOM.XP"; break; case "Priority": serviceCode = "DOM.PC"; break; default: serviceCode = "DOM.EP"; break; } textXml += "<service-code>" + serviceCode + "</service-code>" + "<sender>" + "<company>Ashlin BPG Marketing</company>" + "<contact-phone>(905) 855-3027</contact-phone>" + "<address-details>" + "<address-line-1>2351 Royal Windsor Dr</address-line-1>" + "<city>Mississauga</city>" + "<prov-state>ON</prov-state>" + "<country-code>CA</country-code>" + "<postal-zip-code>L5J4S7</postal-zip-code>" + "</address-details>" + "</sender>" + "<destination>" + "<name>" + address.Name + "</name>" + "<address-details>" + "<address-line-1>" + address.Address1 + "</address-line-1>"; if (address.Address2 != "") { textXml += "<address-line-2>" + address.Address2 + "</address-line-2>"; } textXml += "<city>" + address.City + "</city>" + "<prov-state>" + address.State + "</prov-state>" + "<country-code>CA</country-code>" + "<postal-zip-code>" + address.PostalCode + "</postal-zip-code>" + "</address-details>" + "</destination>" + "<parcel-characteristics>" + "<weight>" + Math.Round(package.Weight, 4) + "</weight>" + "<dimensions>" + "<length>" + package.Length + "</length>" + "<width>" + package.Width + "</width>" + "<height>" + package.Height + "</height>" + "</dimensions>" + "</parcel-characteristics>" + "<print-preferences>" + "<output-format>4x6</output-format>" + "</print-preferences>" + "<preferences>" + "<show-packing-instructions>true</show-packing-instructions>" + "</preferences>" + "<settlement-info>" + "<contract-id>" + CONTRACT_NUMBER + "</contract-id>" + "<intended-method-of-payment>Account</intended-method-of-payment>" + "</settlement-info>" + "</delivery-spec>" + "</shipment>"; // turn request string into a byte stream byte[] postBytes = Encoding.UTF8.GetBytes(textXml); // send request using (Stream requestStream = request.GetRequestStream()) requestStream.Write(postBytes, 0, postBytes.Length); // get the response from the server HttpWebResponse response; try { response = (HttpWebResponse)request.GetResponse(); } catch (WebException wex) { // set error to true Error = true; // the case if it is a bad request -> return the error message using (HttpWebResponse errorResponse = (HttpWebResponse)wex.Response) using (StreamReader reader = new StreamReader(errorResponse.GetResponseStream())) ErrorMessage = reader.ReadToEnd(); return(null); } string result; using (StreamReader streamReader = new StreamReader(response.GetResponseStream())) result = streamReader.ReadToEnd(); // get tracking pin, refund link and label link string[] returnString = new string[3]; doc.LoadXml(result); // get namespace var xmlns = doc.DocumentElement.Attributes["xmlns"]; XmlNamespaceManager namespaceManager = new XmlNamespaceManager(doc.NameTable); namespaceManager.AddNamespace("ns", xmlns.Value); // getting tracking pin XmlNode node = doc.SelectSingleNode("/ns:shipment-info", namespaceManager); returnString[0] = node["tracking-pin"].InnerText; // self and label links node = doc.SelectSingleNode("/ns:shipment-info/ns:links", namespaceManager); foreach (XmlNode child in node) { if (child.Attributes["rel"].Value == "self") { returnString[1] = child.Attributes["href"].Value; } else if (child.Attributes["rel"].Value == "label") { returnString[2] = child.Attributes["href"].Value; } } return(returnString); }
/// <summary> /// Create a new instance of class Student by asking all the required fields to the user /// </summary> /// <returns>student</returns> public Student CreateStudent() { Student student; breakOutStud: // Going back to this line if one of the student's information has not a correct format/value. // Required fields to create a student (part 1) // // First name Console.WriteLine("Please enter the student's first name:"); string firstName = Console.ReadLine(); // Last name Console.WriteLine("Please enter the student's last name:"); string lastName = Console.ReadLine(); // Student number Console.WriteLine("Please enter the student number:"); string studentNumber = Console.ReadLine(); // Age int age; while (true) { Console.WriteLine("Please enter the student's age:"); string ageString = Console.ReadLine(); if (int.TryParse(ageString, out int result)) { age = result; break; } else { Console.WriteLine("Error! This is not an integer number. Please try again."); } } // Every mandatory fields is filled, we can try to create an instance of Student try { student = new Student(firstName, lastName, studentNumber, age); } catch (Exception ex) { Console.WriteLine(ex.Message); // In case of problem diplay the error message goto breakOutStud; // And go back to the beginning of this method } // End of part 1 // // Address part // Address.Address addressInfos; breakOutAddress: // Going back to this line if one of the address information has not a correct format/value. // Address number int addressNum; while (true) { Console.WriteLine("Please enter the student's address number:"); string addressNumString = Console.ReadLine(); if (int.TryParse(addressNumString, out int result)) { addressNum = result; break; } else { Console.WriteLine("Error! This is not an integer number. Please try again."); } } // Street Console.WriteLine("Please enter the student's street name:"); string street = Console.ReadLine(); // City Console.WriteLine("Please enter the student's city name:"); string city = Console.ReadLine(); // Country Console.WriteLine("Please enter the student's country:"); string country = Console.ReadLine(); // Try to create address instance with all the infos try { addressInfos = new Address.Address(addressNum, street, city, country); } catch (Exception ex) { Console.WriteLine(ex.Message); // In case of problem, display the error message goto breakOutAddress; // And go back to the beginning of address part } student.AddressInfos = addressInfos; // End of address part // // Scores array part // int choice; int[] scores; while (true) { Console.WriteLine("You have 2 options to enter the student's score array:\n\t" + "1. Entering the scores one by one in the array manually\n\t" + "2. Create an array with x random scores inside (you just choose 'x' value)"); Console.Write("Please choose an option (1 or 2) > "); string choiceString = Console.ReadLine(); if (int.TryParse(choiceString, out int result) && (int.Parse(choiceString) == 1 || int.Parse(choiceString) == 2)) { choice = result; break; } else { Console.WriteLine("Error! It's not a valid choice, please choose 1 or 2."); } } if (choice == 1) { scores = ScoresManual(); } else { scores = ScoresAuto(); } student.Scores = scores; // End of scores array part // // Every fields is filled, we can return the student return(student); }
public Weather(UnitType unitType, Address.Address address, IWeatherService weatherService) { _unitType = unitType; _address = address; _weatherService = weatherService; }