// Check TODO.txt Issue #2 NOT READY YET public void UpdateDeliveryTime() { if (content.Count == 0) { this.deliveryDate = ""; } else { UpdateTotalItems(); string planningQuery = "SELECT * FROM planning"; // Acess planning to compute an estimate delivery time DataTable planningTable = InternalApp.GetDataTable(planningQuery); DataRow firstDateRow = planningTable.Rows[planningTable.Rows.Count - 1]; DateTime firstDateAvailable = Convert.ToDateTime(firstDateRow["date"]); DateTime today = DateTime.Now; int result = DateTime.Compare(firstDateAvailable, today); if (result < 0) { firstDateAvailable = today; } float speed = 9; // TEMPORARY speed fixed at 9 bikes per week float delay = (totalItems / speed) + 3; // Convert delay in days + add 3 days for the delivery DateTime newDeliveryDate = firstDateAvailable.AddDays(Math.Ceiling(delay)); if (newDeliveryDate.DayOfWeek == DayOfWeek.Saturday) { newDeliveryDate = newDeliveryDate.AddDays(2); } if (newDeliveryDate.DayOfWeek == DayOfWeek.Sunday) { newDeliveryDate = newDeliveryDate.AddDays(1); } this.deliveryDate = newDeliveryDate.ToString("yyyy-MM-dd"); } }
public void Build() { DataTable partTable = InternalApp.GetDataTable($"SELECT * FROM model_structure WHERE model_name='{type}'"); foreach (DataRow partRow in partTable.Rows) { Part part = new Part(partRow.Field <string>("reference"), partRow.Field <int>("quantity")); this.AddPart(part); part.Use(); } this.UpdateState("Done"); //Comment for testing }
public Part(string reference, int quantity) { string strQuantity; this.reference = reference; this.quantity = quantity; DataTable nameTable = InternalApp.GetDataTable($"SELECT * FROM parts_catalog WHERE reference='{reference}'"); //Facultatif this.name = nameTable.Rows[0].Field <string>("name"); DataTable partDataTable = InternalApp.GetDataTable($"SELECT * FROM parts_stock WHERE reference='{reference}'"); DataRow partDataRow = partDataTable.Rows[0]; strQuantity = partDataRow["quantity"].ToString(); this.stock = Int32.Parse(strQuantity); }