public static void UpdatePurchaseItem(Item_PurchaseOrder pItem) { using (TransactionScope ts = new TransactionScope()) { StationeryEntities entities = new StationeryEntities(); Item_PurchaseOrder item = entities.Item_PurchaseOrder.Where(x => x.ItemCode == pItem.ItemCode && x.PurchaseOrderID == pItem.PurchaseOrderID).First(); item.OrderQty = pItem.OrderQty; item.Amount = pItem.Amount; entities.SaveChanges(); ts.Complete(); } }
protected void GvPurchaseDetail_RowUpdating(object sender, GridViewUpdateEventArgs e) { // Retrieve the row being edited. decimal price, amount; int qty; int index = GvPurchaseDetail.EditIndex; GridViewRow row = GvPurchaseDetail.Rows[index]; TextBox qtyTxt = row.FindControl("txtorderQty") as TextBox; bool ok = int.TryParse(qtyTxt.Text, NumberStyles.Currency, CultureInfo.CurrentCulture.NumberFormat, out qty); Label priceLbl = (Label)GvPurchaseDetail.Rows[e.RowIndex].FindControl("lblPrice"); ok = decimal.TryParse(priceLbl.Text, NumberStyles.Currency, CultureInfo.CurrentCulture.NumberFormat, out price); Label amountLbl = (Label)GvPurchaseDetail.Rows[e.RowIndex].FindControl("lblAmount"); ok = decimal.TryParse(amountLbl.Text, NumberStyles.Currency, CultureInfo.CurrentCulture.NumberFormat, out amount); Label itemLbl = (Label)GvPurchaseDetail.Rows[e.RowIndex].FindControl("lblItemCode"); amount = qty * price; amountLbl.Text = String.Format("{0:C}", amount); Item_PurchaseOrder item = new Item_PurchaseOrder(); item.Amount = amount; item.OrderQty = qty; item.PurchaseOrderID = orderid; item.ItemCode = itemLbl.Text; pCtrlr.UpdatePurchaseItem(item); GvPurchaseDetail.EditIndex = -1; BindGrid(); ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "<script language='javascript'>alert('" + "Item Updated!" + "');</script>"); }
protected void BtnProceed_Click(object sender, EventArgs e) { if (Page.IsValid) { Dictionary <PurchaseOrder, List <Item_PurchaseOrder> > purchaseItemList = new Dictionary <PurchaseOrder, List <Item_PurchaseOrder> >(pComparer); for (int i = 0; i < GvreorderItems.Rows.Count; i++) { PurchaseOrder pOrder = new PurchaseOrder(); GridViewRow gvRow = GvreorderItems.Rows[i]; if (((CheckBox)gvRow.FindControl("CbxItem")).Checked) { DropDownList splrControl = (DropDownList)gvRow.FindControl("ddlSupplierList"); ListItem suplierInfo = splrControl.SelectedItem; pOrder.SupplierCode = suplierInfo.Value; Label amntlbl = (Label)gvRow.FindControl("lblAmount"); if (!purchaseItemList.ContainsKey(pOrder)) { pOrder.OrderDate = DateTime.Now.Date; pOrder.ApprovedBy = Convert.ToInt32(ddlsupervisorNames.SelectedItem.Value); pOrder.ExpectedDate = DateTime.ParseExact(txtDate.Text, "d", CultureInfo.InvariantCulture); pOrder.Status = "Pending"; pOrder.TotalAmount += decimal.Parse(amntlbl.Text, System.Globalization.NumberStyles.Currency); pOrder.RequestedBy = (int)Session["empID"]; purchaseItemList.Add(pOrder, null); } Item_PurchaseOrder pItems = new Item_PurchaseOrder(); Label itemlbl = (Label)gvRow.FindControl("lblItemCode"); pItems.ItemCode = itemlbl.Text; pItems.PurchaseOrderID = pOrder.PurchaseOrderID; TextBox qtyTxtBx = (TextBox)gvRow.FindControl("txtReorderQty"); pItems.OrderQty = Convert.ToInt32(qtyTxtBx.Text); Label priceLbl = (Label)gvRow.FindControl("lblPrice"); pItems.ItemCode = itemlbl.Text; pItems.Amount = pItems.OrderQty * decimal.Parse(priceLbl.Text, System.Globalization.NumberStyles.Currency); List <Item_PurchaseOrder> ItemList = null; if (purchaseItemList[pOrder] != null) { ItemList = purchaseItemList[pOrder]; ItemList.Add(pItems); purchaseItemList[pOrder] = ItemList; } else { ItemList = new List <Item_PurchaseOrder>(); ItemList.Add(pItems); purchaseItemList[pOrder] = ItemList; } } } if (purchaseItemList.Count == 0) { ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "<script language='javascript'>alert('" + "Please select items first!" + "');</script>"); } else { pCtrlr.AddPurchaseOrder(purchaseItemList); Session["ReorderItem"] = null; ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "<script language='javascript'>alert('" + "Purchase Done, Awaiting Approval!" + "');</script>"); Response.Redirect(LoginController.PurchaseOrderListURI); } } }
public void UpdatePurchaseItem(Item_PurchaseOrder pItem) { EFBroker_PurchaseOrder.UpdatePurchaseItem(pItem); return; }
protected void Page_Load(object sender, EventArgs e) { string itemCode = Request.QueryString["itemCode"]; string adjustment = "Adjustment"; //strings for stock card transaction type string disbursement = "Disbursement"; string purchase = "Purchase"; if (!ValidatorUtil.isEmpty(itemCode)) { Item item = EFBroker_Item.GetItembyItemCode(itemCode); string currentYear = DateTime.Now.Year.ToString(); List <PriceList> plList = EFBroker_PriceList.GetPriceListByItemCode(itemCode).Where(c => c.TenderYear == currentYear).ToList(); if (item != null && plList.Count > 0) { lblItemCode.Text = item.ItemCode; lblItemName.Text = item.Description; lblBin.Text = item.Bin; lblUom.Text = item.UnitOfMeasure; foreach (PriceList pl in plList) { switch (pl.SupplierRank) { case 1: lblSupp1.Text = pl.SupplierCode; break; case 2: lblSupp2.Text = pl.SupplierCode; break; case 3: lblSupp3.Text = pl.SupplierCode; break; } } if (plList.Count < 3) // N/A on supplier labels if there are less than 3 suppliers { lblSupp3.Text = "N/A"; if (plList.Count < 2) { lblSupp2.Text = "N/A"; } } List <StockCard> scList = EFBroker_StockCard.GetStockCardsByItemCode(itemCode); List <StockCardDisplayRow> scDisplayList = new List <StockCardDisplayRow>(); foreach (StockCard sc in scList) { if (sc.TransactionType == adjustment || sc.TransactionType == disbursement || sc.TransactionType == purchase) { //Possible to display 3 types of stock card entries (each accessing different tables) StockCardDisplayRow scdr = new StockCardDisplayRow(); if (sc.TransactionType == adjustment) { Discrepency d = EFBroker_Discrepancy.GetDiscrepancyById((int)sc.TransactionDetailID); scdr.TransDate = ((DateTime)d.Date).ToShortDateString(); scdr.TransDetails = "Adjustment ID. " + sc.TransactionDetailID; scdr.Quantity = "ADJ " + GetQuantityString((int)sc.Qty); } else if (sc.TransactionType == purchase) { PurchaseOrder po = EFBroker_PurchaseOrder.GetPurchaseOrderById((int)sc.TransactionDetailID); scdr.TransDate = ((DateTime)po.ExpectedDate).ToShortDateString(); scdr.TransDetails = "Supplier - " + po.SupplierCode; Item_PurchaseOrder ipo = EFBroker_PurchaseOrder.GetPurchaseOrderItem(po.PurchaseOrderID, itemCode); scdr.Quantity = GetQuantityString((int)sc.Qty); } else if (sc.TransactionType == disbursement) { Disbursement db = EFBroker_Disbursement.GetDisbursmentbyDisbID((int)sc.TransactionDetailID); scdr.TransDate = ((DateTime)db.CollectionDate).ToShortDateString(); scdr.TransDetails = EFBroker_DeptEmployee.GetDepartByDepCode(db.DeptCode).DeptName; scdr.Quantity = GetQuantityString((int)sc.Qty); } scdr.Balance = (int)sc.Balance; scDisplayList.Add(scdr); } } gvTransactions.DataSource = scDisplayList; gvTransactions.DataBind(); } else //if item is not found or no entries found in price list table { Response.Redirect(LoginController.StationeryCatalogueURI); } } else //if there is no itemCode in querystring { Response.Redirect(LoginController.StationeryCatalogueURI); } }