public void LoadNewOrderControls() { _supplierOrder = new SupplierOrder(); _supplierOrder.DateOrdered = DateTime.Now.Date; _supplierOrder.EmployeeID = _loggedInEmployeeID; _supplierOrder.SupplierID = _supplier.SupplierID; _supplierOrder.OrderComplete = false; _supplierOrderLine = new SupplierOrderLine(); this.txtItemDescription.Text = _itemSupplier.Name; this.txtUnitPrice.Text = _itemSupplier.UnitPrice.ToString("c"); _supplierOrderLine.ItemID = _itemSupplier.ItemID; _supplierOrderLine.SupplierItemID = _itemSupplier.SupplierItemID; _supplierOrderLine.UnitPrice = _itemSupplier.UnitPrice; _supplierOrderLine.Description = _itemSupplier.Description; this.lblItemDescription.Visibility = Visibility.Visible; this.txtItemDescription.Visibility = Visibility.Visible; this.lblOrderQty.Visibility = Visibility.Visible; this.txtOrderQuantity.Visibility = Visibility.Visible; this.lblUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.IsReadOnly = true; this.txtExtendedPrice.Visibility = Visibility.Visible; this.lblExtendedPrice.Visibility = Visibility.Visible; this.dgOrderLines.Visibility = Visibility.Visible; btnAddOrder.Content = "Submit Order"; }
/// <summary> /// Laura Simmonds /// Created: /// 2017/05/08 /// /// Invokes a stored procedure to create a new order line in the database. /// </summary> /// <param name="supplierOrderLine">The order line to create.</param> /// <returns>The new order line number that is auto generated by the database.</returns> public static int CreateSupplierOrderLine(SupplierOrderLine supplierOrderLine) { int rowsAffected = 0; var conn = DBConnection.GetConnection(); var cmdText = @"sp_create_supplier_order_line"; var cmd = new SqlCommand(cmdText, conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@COMPANY_ORDER_ID", supplierOrderLine.SupplierProductOrderID); cmd.Parameters.AddWithValue("@PRODUCT_ID", supplierOrderLine.ProductID); cmd.Parameters.AddWithValue("@PRODUCT_NAME", (object)supplierOrderLine.ProductName ?? DBNull.Value); cmd.Parameters.AddWithValue("@QUANTITY", supplierOrderLine.Quantity); try { conn.Open(); //int.TryParse(cmd.ExecuteScalar().ToString(), out orderLineID); //decimal id = (decimal)cmd.ExecuteScalar(); //orderLineID = (int)id; rowsAffected = cmd.ExecuteNonQuery(); } catch (Exception) { throw; } finally { conn.Close(); } return(rowsAffected); }
public ActionResult AddToList(int Product, int Quantity) { db.Configuration.ProxyCreationEnabled = false; bool inList = false; int SuppOrdID = Convert.ToInt32(TempData["SuppOrdID"]); SupplierOrder so = db.SupplierOrders.Include(sos => sos.Supplier) .Include(sos => sos.SupplierOrderLines) .Where(sos => sos.SupplierOrderID == SuppOrdID) .FirstOrDefault(); foreach (SupplierOrderLine sol in so.SupplierOrderLines) { if (sol.ProductID == Product) { inList = true; sol.QuantityOrdered += Quantity; db.SaveChanges(); break; } } if (!inList) { SupplierOrderLine newLine = new SupplierOrderLine(); newLine.ProductID = Product; newLine.QuantityOrdered = Quantity; newLine.QuantityReceived = 0; newLine.SupplierOrderID = Convert.ToInt32(TempData["SuppOrdID"]); so.SupplierOrderLines.Add(newLine); db.SaveChanges(); } return(RedirectToAction("MakeSupplierOrder", new { id = so.SupplierID })); }
public void TestUpdateSupplierOrder() { SupplierOrder newSupplierOrder = new SupplierOrder() { SupplierID = 100005, SupplierOrderID = 100010, DateOrdered = DateTime.Today, Description = "test order", EmployeeID = 100000, OrderComplete = false }; SupplierOrderLine supplierOrderLine1 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = 100, QtyReceived = 0, UnitPrice = 1.00M }; SupplierOrderLine supplierOrderLine2 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "testString", ItemID = 100015, OrderQty = 500, QtyReceived = 0, UnitPrice = 1.00M }; List <SupplierOrder> supplierOrders; List <SupplierOrderLine> lines; SupplierOrder supplierOrder; _supplierOrderLines.Add(supplierOrderLine1); _supplierOrderLines.Add(supplierOrderLine2); //Act _supplierOrderManager.CreateSupplierOrder(newSupplierOrder, _supplierOrderLines); newSupplierOrder.Description = "updated description"; _supplierOrderLines[0].OrderQty = 10000; _supplierOrderLines[1].OrderQty = 10001; _supplierOrderManager.UpdateSupplierOrder(newSupplierOrder, _supplierOrderLines); supplierOrders = _supplierOrderManager.RetrieveAllSupplierOrders(); supplierOrder = supplierOrders.Find(s => s.SupplierOrderID == 100010); lines = _supplierOrderManager.RetrieveAllSupplierOrderLinesBySupplierOrderID(100010); Assert.AreEqual(supplierOrder.Description, "updated description"); Assert.AreEqual(lines[0].OrderQty, 10000); Assert.AreEqual(lines[1].OrderQty, 10001); }
public List <SupplierOrderLine> SelectSupplierOrderLinesBySupplierOrderID(int supplierOrderID) { /// <summary> /// Eric Bostwick /// Created 3/7/2019 /// Gets list of All SupplierOrderLines from SupplierOrderLine table /// </summary> /// <returns> /// List of SupplierOrderLine Objects /// </returns> List <SupplierOrderLine> supplierOrderLines = new List <SupplierOrderLine>(); var conn = DBConnection.GetDbConnection(); var cmdText = @"sp_select_all_supplier_order_lines"; //sp_retrieve_itemsuppliers_by_itemid var cmd = new SqlCommand(cmdText, conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@SupplierOrderID", supplierOrderID); try { conn.Open(); var reader = cmd.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { SupplierOrderLine supplierOrderLine = new SupplierOrderLine(); supplierOrderLine.ItemID = reader.GetInt32(reader.GetOrdinal("ItemID")); supplierOrderLine.Description = reader["Description"].ToString(); supplierOrderLine.OrderQty = reader.GetInt32(reader.GetOrdinal("OrderQty")); supplierOrderLine.QtyReceived = reader.GetInt32(reader.GetOrdinal("QtyReceived")); supplierOrderLine.SupplierOrderID = reader.GetInt32(reader.GetOrdinal("SupplierOrderID")); supplierOrderLine.UnitPrice = (decimal)reader.GetSqlMoney(reader.GetOrdinal("UnitPrice")); supplierOrderLines.Add(supplierOrderLine); } } } catch (Exception) { throw; } finally { conn.Close(); } return(supplierOrderLines); }
/// <summary> /// Laura Simmonds /// Created: /// 2017/05/08 /// /// Calls supplier order line accessor create order line /// and retrieves the order line id /// </summary> /// <param name="orderLine"></param> /// <returns></returns> public int CreateOrderLine(SupplierOrderLine supplierOrderLine) { int result = 0; try { result = SupplierOrderLineAccessor.CreateSupplierOrderLine(supplierOrderLine); } catch (Exception) { throw; } return(result); }
public void TestCreateSupplierOrderValidInput() { //arrange SupplierOrder newSupplierOrder = new SupplierOrder() { SupplierID = 100005, SupplierOrderID = 100010, DateOrdered = DateTime.Today, Description = "test order", EmployeeID = 100000, OrderComplete = false }; SupplierOrderLine supplierOrderLine1 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = 100, QtyReceived = 0, UnitPrice = 1.00M }; SupplierOrderLine supplierOrderLine2 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = 100, QtyReceived = 0, UnitPrice = 1.00M }; List <SupplierOrderLine> supplierOrderLines = new List <SupplierOrderLine>(); supplierOrderLines.Add(supplierOrderLine1); supplierOrderLines.Add(supplierOrderLine2); //Act _supplierOrderManager.CreateSupplierOrder(newSupplierOrder, supplierOrderLines); //Assert _supplierOrders = _supplierOrderManager.RetrieveAllSupplierOrders(); Assert.IsNotNull(_supplierOrders.Find(x => x.SupplierOrderID == newSupplierOrder.SupplierOrderID && x.DateOrdered == newSupplierOrder.DateOrdered && x.Description == newSupplierOrder.Description && x.EmployeeID == newSupplierOrder.EmployeeID && x.OrderComplete == newSupplierOrder.OrderComplete) ); }
public void TestCreateSupplierOrderInValidLineDescriptionTooLong() { string testString = createString(1001); //arrange SupplierOrder newSupplierOrder = new SupplierOrder() { SupplierID = 100005, SupplierOrderID = 100010, DateOrdered = DateTime.Today, Description = "test", EmployeeID = 100000, OrderComplete = false }; SupplierOrderLine supplierOrderLine1 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = 100, QtyReceived = 0, UnitPrice = 1.00M }; SupplierOrderLine supplierOrderLine2 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = testString, ItemID = 100015, OrderQty = 500, QtyReceived = 0, UnitPrice = 1.00M }; List <SupplierOrderLine> supplierOrderLines = new List <SupplierOrderLine>(); supplierOrderLines.Add(supplierOrderLine1); supplierOrderLines.Add(supplierOrderLine2); //Act _supplierOrderManager.CreateSupplierOrder(newSupplierOrder, supplierOrderLines); }
public void TestCreateSupplierOrderInValidInputOrderQtyNegative() { //arrange SupplierOrder newSupplierOrder = new SupplierOrder() { SupplierID = 100005, SupplierOrderID = 100010, DateOrdered = DateTime.Today, Description = "test order", EmployeeID = 100000, OrderComplete = false }; SupplierOrderLine supplierOrderLine1 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = 100, QtyReceived = 0, UnitPrice = 1.00M }; SupplierOrderLine supplierOrderLine2 = new SupplierOrderLine() { SupplierOrderID = 100010, Description = "test item 1", ItemID = 100015, OrderQty = -5, QtyReceived = 0, UnitPrice = 1.00M }; List <SupplierOrderLine> supplierOrderLines = new List <SupplierOrderLine>(); supplierOrderLines.Add(supplierOrderLine1); supplierOrderLines.Add(supplierOrderLine2); //Act _supplierOrderManager.CreateSupplierOrder(newSupplierOrder, supplierOrderLines); }
/// <summary> /// Eric Bostwick /// 2/27/2019 /// Double click the grid to edit the line /// It will remove the item from the grid so it can be readded /// the item combo box /// </summary> private void DgOrderLines_MouseDoubleClick(object sender, MouseButtonEventArgs e) { _supplierOrderLine = (SupplierOrderLine)dgOrderLines.SelectedItem; _supplierOrderLines.Remove(_supplierOrderLine); dgOrderLines.Items.Refresh(); _itemSuppliers = _supplierOrderManager.RetrieveAllItemSuppliersBySupplierID(_supplier.SupplierID); _itemSupplier = _itemSuppliers.Find(s => s.ItemID == _supplierOrderLine.ItemID); txtUnitPrice.Text = _supplierOrderLine.UnitPrice.ToString(); this.txtOrderQuantity.Text = _supplierOrderLine.OrderQty.ToString(); this.lblItemDescription.Visibility = Visibility.Visible; this.txtItemDescription.Visibility = Visibility.Visible; this.lblOrderQty.Visibility = Visibility.Visible; this.txtOrderQuantity.Visibility = Visibility.Visible; this.lblUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.IsReadOnly = true; this.txtExtendedPrice.Visibility = Visibility.Visible; this.lblExtendedPrice.Visibility = Visibility.Visible; this.dgOrderLines.Visibility = Visibility.Visible; }
public void LoadEditOrderControls() { _supplierOrderLine = new SupplierOrderLine(); this.txtItemDescription.Text = _itemSupplier.Name; this.txtUnitPrice.Text = _itemSupplier.UnitPrice.ToString("c"); _supplierOrderLine.ItemID = _itemSupplier.ItemID; _supplierOrderLine.UnitPrice = _itemSupplier.UnitPrice; _supplierOrderLine.Description = _itemSupplier.Description; _supplierOrderLine.SupplierItemID = _itemSupplier.SupplierItemID; this.lblItemDescription.Visibility = Visibility.Visible; this.txtItemDescription.Visibility = Visibility.Visible; this.lblOrderQty.Visibility = Visibility.Visible; this.txtOrderQuantity.Visibility = Visibility.Visible; this.lblUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.Visibility = Visibility.Visible; this.txtUnitPrice.IsReadOnly = true; this.txtExtendedPrice.Visibility = Visibility.Visible; this.lblExtendedPrice.Visibility = Visibility.Visible; this.dgOrderLines.Visibility = Visibility.Visible; btnAddOrder.Content = "Update Order"; }
/// <summary> /// Author: Kevin Broskow /// Created : 3/25/2019 /// Handles the event of the submit button being clicked /// /// </summary> private void btnSubmit_Click(object sender, RoutedEventArgs e) { if (this.btnSubmit.Content.Equals("Submit")) { ticket.SupplierOrderID = order.SupplierOrderID; ticket.ReceivingTicketExceptions = this.txtException.Text; ticket.ReceivingTicketCreationDate = DateTime.Now; for (int i = 0; i < dgOrderRecieving.Items.Count - 1; i++) { dgOrderRecieving.SelectedIndex = i; SupplierOrderLine temp = (SupplierOrderLine)dgOrderRecieving.SelectedItem; var _tempLine = supplierOrderLine.Find(x => x.ItemID == temp.ItemID); _tempLine.QtyReceived = temp.QtyReceived; if (_tempLine.OrderQty != temp.QtyReceived) { orderComplete = false; } supplierOrderLine.Find(x => x.ItemID == temp.ItemID).QtyReceived = temp.QtyReceived; } try { order.OrderComplete = orderComplete; _supplierManager.UpdateSupplierOrder(order, supplierOrderLine); _receivingManager.createReceivingTicket(ticket); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else if (this.btnSubmit.Content.Equals("Save")) { ticket.ReceivingTicketExceptions = this.txtException.Text; ticket.ReceivingTicketCreationDate = DateTime.Now; for (int i = 0; i < dgOrderRecieving.Items.Count - 1; i++) { dgOrderRecieving.SelectedIndex = i; SupplierOrderLine temp = (SupplierOrderLine)dgOrderRecieving.SelectedItem; var _tempLine = supplierOrderLine.Find(x => x.ItemID == temp.ItemID); _tempLine.QtyReceived = temp.QtyReceived; if (_tempLine.OrderQty != temp.QtyReceived) { orderComplete = false; } supplierOrderLine.Find(x => x.ItemID == temp.ItemID).QtyReceived = temp.QtyReceived; } try { order.OrderComplete = orderComplete; _supplierManager.UpdateSupplierOrder(order, supplierOrderLine); _receivingManager.updateReceivingTicket(originalTicket, ticket); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else if (this.btnSubmit.Content.Equals("Complete")) { ticket.SupplierOrderID = _specialOrder.SpecialOrderID; ticket.ReceivingTicketExceptions = this.txtException.Text; ticket.ReceivingTicketCreationDate = DateTime.Now; for (int i = 0; i < dgOrderRecieving.Items.Count - 1; i++) { dgOrderRecieving.SelectedIndex = i; SpecialOrderLine temp = (SpecialOrderLine)dgOrderRecieving.SelectedItem; var _tempLine = specialOrderLines.Find(x => x.NameID == temp.NameID); _tempLine.QtyReceived = temp.QtyReceived; if (_tempLine.OrderQty != temp.QtyReceived) { orderComplete = false; } specialOrderLines.Find(x => x.NameID == temp.NameID).QtyReceived = temp.QtyReceived; } try { if (orderComplete) { _specialManager.EditSpecialOrder(_specialOrder, _specialOrder); } int i = 0; foreach (var item in specialOrderLines) { _specialManager.EditSpecialOrderLine(originalSpecialOrderLine[i], item); i++; } //_receivingManager.createReceivingTicket(ticket); } catch (Exception ex) { MessageBox.Show(ex.Message); } } this.Close(); }