public Delivery Get(string fromDestination, string toDestination, int?packageWeight, string cargoType, int?packageLength, int?packageWidth, int?packageHeight, int?discount) { if (!packageWeight.HasValue || !packageLength.HasValue || !packageHeight.HasValue || !packageWeight.HasValue) { return(ReturnError()); } ApiRequestParams apiRequestParams = new ApiRequestParams() { fromDestination = fromDestination, toDestination = toDestination, packageWeight = packageWeight.Value, cargoType = cargoType, recorded = "false", packageHeight = packageHeight.Value, packageLength = packageLength.Value, packageWidth = packageWidth.Value }; DeliveryData fastest = Utilities.ShortestPathCalculator.ShortestPath(apiRequestParams, discount, "time"); DeliveryData cheapest = Utilities.ShortestPathCalculator.ShortestPath(apiRequestParams, discount, "price"); var delivery = new Delivery() { best = fastest, cheapest = cheapest, fastest = fastest }; return(delivery); }
public DeliveryData[] GetDeliveryTableDataArray(List <Delivery> delivery_list) { if (tableData == null) { return(null); } List <DeliveryData> list = new List <DeliveryData>(); delivery_list.ForEach(delegate(Delivery data) { if (data.dId > 0) { DeliveryData deliveryTableData = GetDeliveryTableData((uint)data.dId); if (deliveryTableData != null) { list.Add(deliveryTableData); } } }); if (list.Count == 0) { return(null); } return(list.ToArray()); }
public async Task <string> Create(DeliveryDataCreateModel data) { string officeDeliveryDataId = null; string homeDeliveryDataId = null; if (data.DeliveredToAnOffice) { officeDeliveryDataId = await this.CreateOfficeDeliveryData(data.OfficeCode, data.OfficeName, data.OfficeAddress, data.OfficeCity, data.OfficeCountry); } else { homeDeliveryDataId = await this.CreateHomeDeliveryData(data.Country, data.City, data.PostCode, data.Street, data.StreetNumber, data.District, data.Block, data.Entrance, data.Floor, data.Apartment); } string customerDataId = await this.CreateCustomerData(data.CustomerName, data.CustomerLastName, data.PhoneNumber, data.Email); DeliveryData thisData = new DeliveryData { Comments = data.Comments, DeliveredToAnOffice = data.DeliveredToAnOffice, OfficeDeliveryDataId = officeDeliveryDataId, HomeDeliveryDataId = homeDeliveryDataId, CustomerDataId = customerDataId }; await this.db.DeliveryData.AddAsync(thisData); await this.db.SaveChangesAsync(); return(thisData.Id); }
public override bool Equals(object obj) { if (obj == null) { return(false); } DeliveryData deliveryData = obj as DeliveryData; if (deliveryData == null) { return(false); } bool flag = id == deliveryData.id && locationNumber == deliveryData.locationNumber && deliveryNumber == deliveryData.deliveryNumber && name == deliveryData.name && type == deliveryData.type && textType == deliveryData.textType && eventID == deliveryData.eventID && fieldMode == deliveryData.fieldMode && difficulty == deliveryData.difficulty && eventFlag == deliveryData.eventFlag && npcID == deliveryData.npcID && npcComment == deliveryData.npcComment && npcClearComment == deliveryData.npcClearComment && clearEventID == deliveryData.clearEventID && clearEventTitle == deliveryData.clearEventTitle && jumpType == deliveryData.jumpType && jumpMapID == deliveryData.jumpMapID && targetPortalID[0] == deliveryData.targetPortalID[0] && targetPortalID[1] == deliveryData.targetPortalID[1] && targetPortalID[2] == deliveryData.targetPortalID[2] && placeName == deliveryData.placeName && enemyName == deliveryData.enemyName && appearQuestId == deliveryData.appearQuestId && appearDeliveryId == deliveryData.appearDeliveryId; if (needs.Length == deliveryData.needs.Length) { for (int i = 0; i < needs.Length; i++) { flag = (flag && needs[i].Equals(deliveryData.needs[i])); } } else { flag = false; } return(flag); }
public int ShowDelivery(DeliveryData deliveryData) { var byer = new BuyerInterface(); var answer = byer.ShowDeliveries(deliveryData); int result; int.TryParse(answer, out result); return(result); }
public int AddServiceAccount(string Login, string Password, string ServiceName) { DeliveryData Service = new DeliveryData { Login = Login, Password = Password, ServiceName = ServiceName }; db.DeliveryDatas.Add(Service); db.SaveChanges(); return(1); }
public DeliveryData GetDeliveryData() { var deliveryData = new DeliveryData(); var IsExist = DataDeserialize <DeliveryData>(ref deliveryData); if (!IsExist) { deliveryData.DeliveryListInit(); } return(deliveryData); }
public decimal GetDelivery(DeliveryData deliveryData) { decimal price = default; var delivery = new DeliveryService(); int k = ShowDelivery(deliveryData); price = delivery.GetDeliveryPrice(deliveryData, deliveryData.Deliveries[k - 1].Method); var logger = new Logger(); logger.SaveIntoFile("The delivery method was selected as " + deliveryData.Deliveries.ElementAt(k - 1).Method); return(price); }
public void CreateOrder(DeliveryData deliveryData, OrderData orderData, ProductData productData, Buyer buyer) { bool isExist = IsExist(orderData, buyer); var answer = 2; var order = new OrderUI(); if (isExist) { answer = GetResult(); } if (answer == 1) { var buyerClient = new BuyerInterface(); buyerClient.ShowOrder(orderData, default, buyer, false);
private Delivery ReturnError() { DeliveryData deliv = new DeliveryData() { success = false }; return(new Delivery() { best = deliv, cheapest = deliv, fastest = deliv }); }
public DeliveryData GetDeliveryTableData(uint id) { if (tableData == null) { return(null); } DeliveryData deliveryData = tableData.Get(id); if (deliveryData == null) { Log.TableError(this, id); deliveryData = new DeliveryData(); deliveryData.name = Log.NON_DATA_NAME; } return(deliveryData); }
private Delivery MapData(DeliveryData deliveryData, List <ProductLineData> linesData) { var lines = linesData.Select(x => new ProductLine( new Product(x.ProductID, x.ProductName, x.ProductWeightInPounds), x.Amount)) .ToList(); return(new Delivery (deliveryData.DeliveryID, new Address( deliveryData.DestinationStreet, deliveryData.DestinationCity, deliveryData.DestinationState, deliveryData.DestinationZipCode), deliveryData.CostEstimate, lines)); }
private (DeliveryData deliveryData, List <ProductLineData> linesData) GetRawData(int id) { using (var connection = new SqlConnection(Settings.ConnectionString)) { string query = @" SELECT * FROM [dbo].[Delivery] d WHERE d.DeliveryID = @ID SELECT l.*, p.WeightInPounds ProductWeightInPounds, p.Name ProductName FROM [dbo].[ProductLine] l INNER JOIN [dbo].[Product] p ON l.ProductID = p.ProductID WHERE l.DeliveryID = @ID"; SqlMapper.GridReader reader = connection.QueryMultiple(query, new { ID = id }); DeliveryData deliveryData = reader.Read <DeliveryData>().SingleOrDefault(); List <ProductLineData> lineData = reader.Read <ProductLineData>().ToList(); return(deliveryData, lineData); } }
public static void WithDelivery(DeliveryData deliveryData) { transaction.delivery = new DeliveryData(); transaction.delivery.birthday = deliveryData.birthday; transaction.delivery.document = deliveryData.document; transaction.delivery.documentTwo = deliveryData.documentTwo; transaction.delivery.mail = deliveryData.mail; transaction.delivery.name = deliveryData.name; transaction.delivery.sex = deliveryData.sex; if (deliveryData.deliveryAddress != null) { transaction.delivery.deliveryAddress = new AddressData(); transaction.delivery.deliveryAddress.city = deliveryData.deliveryAddress.city; transaction.delivery.deliveryAddress.complement = deliveryData.deliveryAddress.complement; transaction.delivery.deliveryAddress.country = deliveryData.deliveryAddress.country; transaction.delivery.deliveryAddress.district = deliveryData.deliveryAddress.district; transaction.delivery.deliveryAddress.number = deliveryData.deliveryAddress.number; transaction.delivery.deliveryAddress.state = deliveryData.deliveryAddress.state; transaction.delivery.deliveryAddress.street = deliveryData.deliveryAddress.street; } if (deliveryData.deliveryPhone != null && deliveryData.deliveryPhone.Count > 0) { List <PhoneData> newPhoneList = new List <PhoneData>(); foreach (var phone in deliveryData.deliveryPhone) { PhoneData newPhone = new PhoneData(); newPhone.ddd = phone.ddd; newPhone.ddi = phone.ddi; newPhone.phone = phone.phone; newPhone.phoneType = phone.phoneType; newPhoneList.Add(newPhone); } transaction.delivery.deliveryPhone = newPhoneList; } }
public void CreateOrder(DeliveryData deliveryData, OrderData orderData, ProductData productData, Buyer buyer) { bool isContinue = true; var buyerClient = new BuyerInterface(); var orderService = new OrderService(); var delivery = new DeliveryUI(); int id = GetId(orderData); while (isContinue) { orderData.Orders.Add(orderService.AddOrderItem(productData, buyer, id)); isContinue = buyerClient.Continue(); } decimal totalPrice = delivery.GetDeliveryPrice(orderData, buyer); decimal deliveryPrice = delivery.GetDelivery(deliveryData); delivery.SetDeliveryPrice(orderData, buyer, deliveryPrice); totalPrice += deliveryPrice; buyerClient.ShowOrder(orderData, totalPrice, buyer, true); var logger = new Logger(); logger.SaveIntoFile("The total order`s price was calculated"); }
public async Task <DeliveryDataDetailsModel> Get(string id) { if (!this.db.DeliveryData.Any(dd => dd.Id == id)) { throw new ArgumentException(ErrorMessages.InvalidDeliveryDataId); } DeliveryData data = await this.db.DeliveryData.FindAsync(id); CustomerData customer = await this.db.CustomerData.FindAsync(data.CustomerDataId); if (data.DeliveredToAnOffice) { OfficeDeliveryData office = await this.db.OfficeDeliveryData.FindAsync(data.OfficeDeliveryDataId); return(this.db.DeliveryData .Where(dd => dd.Id == id) .Select(dd => new DeliveryDataDetailsModel { CustomerName = customer.CustomerName, CustomerLastName = customer.CustomerLastName, PhoneNumber = customer.PhoneNumber, Email = customer.Email, Comments = data.Comments, DeliveredToAnOffice = data.DeliveredToAnOffice, OfficeCode = office.Code, OfficeName = office.Name, OfficeAddress = office.Address, OfficeCity = office.City, OfficeCountry = office.Country }) .FirstOrDefault()); } else { HomeDeliveryData home = await this.db.HomeDeliveryData.FindAsync(data.HomeDeliveryDataId); return(this.db.DeliveryData .Where(dd => dd.Id == id) .Select(dd => new DeliveryDataDetailsModel { CustomerName = customer.CustomerName, CustomerLastName = customer.CustomerLastName, PhoneNumber = customer.PhoneNumber, Email = customer.Email, Country = home.Country, City = home.City, PostCode = home.PostCode, Street = home.Street, StreetNumber = home.StreetNumber, District = home.District, Block = home.Block, Entrance = home.Entrance, Floor = home.Floor, Apartment = home.Apartment, Comments = data.Comments, DeliveredToAnOffice = data.DeliveredToAnOffice, }) .FirstOrDefault()); } }
private OrderData ProcessOrderImportRow(string[] pieces, string line, int lineNumber) { OrderData orderData = null; if (pieces.Length < minimumSupportedColumnsForOrder) { AddError(line, lineNumber, "Invalid line - too few columns for ORDER"); } else { var partyId = pieces[partyIdColumn]; var firstName = pieces[firstNameColumn]; var lastName = pieces[lastNameColumn]; var email = pieces[emailColumn]; var phone = pieces[phoneColumn]; var country = pieces[countryColumn]; var line1 = pieces[addressLine1Column]; var line2 = pieces[addressLine2Column]; var city = pieces[cityColumn]; var stateProvince = pieces[stateProvinceColumn]; var postalCode = pieces[postalCodeColumn]; PartyData party; var updateParty = false; AlternateIdData originatorId = null; if (String.IsNullOrEmpty(partyId)) { party = CreateNewParty(firstName, lastName, country, city, stateProvince, postalCode, email, phone, line1, line2); originatorId = new AlternateIdData("SourceId", Guid.NewGuid().ToString()); updateParty = true; } else party = new PersonData {PartyId = partyId}; var customerParty = new CustomerPartyData { Id = partyId, UpdateParty = updateParty, Party = party, OriginatorCustomerId = originatorId}; var deliveryData = new DeliveryData { DeliveryMethod = new DeliveryMethodData { DeliveryMethodId = "USPS" }, Address = party.Addresses[0], CustomerParty = customerParty }; orderData = new OrderData { BillToCustomerParty = customerParty, SoldToCustomerParty = customerParty, Currency = CommerceSettings.DefaultCurrency, Lines = new OrderLineDataCollection(), OrderReference = new OrderReferenceData(), Delivery = new DeliveryDataCollection { deliveryData } }; } return orderData; }
public async Task <string> Edit(string deliveryDataId, DeliveryDataCreateModel data) { DeliveryData deliveryData = await this.db.DeliveryData.FindAsync(deliveryDataId); if (deliveryData == null) { throw new ArgumentException(ErrorMessages.InvalidDeliveryDataId); } deliveryData.Comments = data.Comments; CustomerData customerData = await this.db.CustomerData.FindAsync(deliveryData.CustomerDataId); customerData.CustomerName = data.CustomerName; customerData.CustomerLastName = data.CustomerLastName; customerData.PhoneNumber = data.PhoneNumber; customerData.Email = data.Email; await this.db.SaveChangesAsync(); if (deliveryData.DeliveredToAnOffice && data.DeliveredToAnOffice) { OfficeDeliveryData officeData = await this.db.OfficeDeliveryData.FindAsync(deliveryData.OfficeDeliveryDataId); officeData.Address = data.OfficeAddress; officeData.Name = data.OfficeName; officeData.City = data.OfficeCity; officeData.Country = data.OfficeCountry; officeData.Code = data.OfficeCode; await this.db.SaveChangesAsync(); } else if (!deliveryData.DeliveredToAnOffice && !data.DeliveredToAnOffice) { HomeDeliveryData homeData = await this.db.HomeDeliveryData.FindAsync(deliveryData.HomeDeliveryDataId); homeData.PostCode = data.PostCode; homeData.City = data.City; homeData.Country = data.Country; homeData.District = data.District; homeData.Street = data.Street; homeData.StreetNumber = data.StreetNumber; homeData.Block = data.Block; homeData.Entrance = data.Entrance; homeData.Floor = data.Floor; homeData.Apartment = data.Apartment; await this.db.SaveChangesAsync(); } else if (!deliveryData.DeliveredToAnOffice && data.DeliveredToAnOffice) { deliveryData.DeliveredToAnOffice = data.DeliveredToAnOffice; HomeDeliveryData homeData = await this.db.HomeDeliveryData.FindAsync(deliveryData.HomeDeliveryDataId); this.db.HomeDeliveryData.Remove(homeData); OfficeDeliveryData newData = new OfficeDeliveryData { Address = data.OfficeAddress, Name = data.OfficeName, City = data.OfficeCity, Country = data.OfficeCountry, Code = data.OfficeCode }; await this.db.OfficeDeliveryData.AddAsync(newData); await this.db.SaveChangesAsync(); deliveryData.OfficeDeliveryDataId = newData.Id; } else { deliveryData.DeliveredToAnOffice = data.DeliveredToAnOffice; OfficeDeliveryData officeData = await this.db.OfficeDeliveryData.FindAsync(deliveryData.OfficeDeliveryDataId); this.db.OfficeDeliveryData.Remove(officeData); HomeDeliveryData newData = new HomeDeliveryData { PostCode = data.PostCode, City = data.City, District = data.District, Street = data.Street, StreetNumber = data.StreetNumber, Block = data.Block, Floor = data.Floor, Apartment = data.Apartment }; await this.db.HomeDeliveryData.AddAsync(newData); await this.db.SaveChangesAsync(); deliveryData.HomeDeliveryDataId = newData.Id; } await this.db.SaveChangesAsync(); return(deliveryDataId); }