public ActionResult AddProduct() { int qid = Request.Form["QuotationId"].ParseInt(); var id = Request.Form["selProduct"].Split(':'); // ProductId:PriceNet int qty = Request.Form["ProductQty"].ParseInt(); Decimal price = Request.Form["ProductPrice"].ParseDecimal(); Decimal discount = Request.Form["ProductDiscount"].ParseDecimal(); if (id.Count() > 0) { int pid = int.Parse(id[0]); TblQuotationDetail ob = uow.Modules.QuotationDetail.Get(0); ob.QuotationId = qid; ob.ProductId = pid; ob.Quantity = qty; ob.PriceNet = price * qty; ob.PriceVat = uow.Modules.System.GetVatFromNet(price * qty); // ob.PriceVat = (price * qty * vat) - (price * qty); ob.PriceTot = price * qty + ob.PriceVat; ob.DiscountNet = discount; ob.DiscountVat = uow.Modules.System.GetVatFromNet(discount); ob.DiscountTot = discount + ob.DiscountVat; uow.Modules.QuotationDetail.Set(ob); uow.SaveChanges(); } return(RedirectToAction("Detail", MVCController, new { id = qid, tab = "Product", msg = "", msgType = AlertMsgType.Success })); }
//[Authorized] public ActionResult DetailDelete() { int qid = Request.Form["QuotationId"].ParseInt(); try { int id = Request.Form["Id"].ParseInt(); TblQuotationDetail ob = uow.Modules.QuotationDetail.Get(id); if (ob == null) { return(RedirectToAction("Detail", MVCController, new { id = qid, tab = "Product", msg = "ไม่พบข้อมูลที่ต้องการ", msgType = AlertMsgType.Warning })); } uow.Modules.QuotationDetail.Delete(ob); uow.SaveChanges(); return(RedirectToAction("Detail", MVCController, new { id = qid, tab = "Product", msg = "ลบข้อมูลเรียบร้อยแล้ว", msgType = AlertMsgType.Success })); } catch (Exception ex) { return(RedirectToAction("Detail", MVCController, new { id = qid, tab = "Product", msg = ex.GetMessage(), msgType = AlertMsgType.Danger })); } }
public ActionResult AddProduct() { int qid = Request.Form["QuotationId"].ParseInt(); var productId = Request.Form["selProduct"].Split(':'); // ProductId:PriceNet var SelQuotationProductId = Request.Form["SelQuotationProductId"].ParseInt(); // ProductId:PriceNet int qty = Request.Form["ProductQty"].ParseInt(); Decimal price = Request.Form["ProductPrice"].ParseDecimal(); Decimal discount = Request.Form["ProductDiscount"].ParseDecimal(); int WHId = Request.Form["selWareHose"].ParseInt(); decimal realDiscount = 0; var remark = Request.Form["Remark"]; if (productId.Count() > 0) { int pid = int.Parse(productId[0]); TblQuotationDetail ob = SelQuotationProductId > 0 ? uow.Modules.QuotationDetail.Get(SelQuotationProductId) : uow.Modules.QuotationDetail.Get(qid, Converting.ToInt(productId[0]), WHId); realDiscount = discount; ob.QuotationId = qid; ob.WHId = WHId; ob.ProductId = pid; ob.Quantity = qty; ob.CalType = Request.Form["selCalType"].ParseInt(); ob.PriceUnit = price; ob.PriceNet = price * qty; ob.PriceVat = uow.Modules.System.GetVatFromNet(price * qty); // ob.PriceVat = (price * qty * vat) - (price * qty); ob.PriceTot = price * qty + ob.PriceVat; if (ob.CalType == 1) { realDiscount = ((ob.PriceNet * discount) / 100); } ob.Discount = discount; ob.DiscountNet = realDiscount; ob.DiscountVat = uow.Modules.System.GetVatFromNet(realDiscount); ob.DiscountTot = realDiscount + ob.DiscountVat; ob.TotalNet = ob.PriceNet - realDiscount; ob.TotalVat = ob.PriceVat - ob.DiscountVat; ob.TotalTot = ob.PriceTot - ob.DiscountTot; ob.Remark = remark; uow.Modules.QuotationDetail.Set(ob); uow.SaveChanges(); TblQuotation objQuoation = uow.Modules.Quotation.GetDetail(qid); objQuoation.SubTotalNet = objQuoation.TblQuotationDetail.Sum(o => o.PriceNet); objQuoation.SubTotalVat = objQuoation.TblQuotationDetail.Sum(o => o.PriceVat); objQuoation.SubTotalTot = objQuoation.TblQuotationDetail.Sum(o => o.PriceTot); objQuoation.DiscountNet = objQuoation.TblQuotationDetail.Sum(o => o.DiscountNet); objQuoation.DiscountVat = objQuoation.TblQuotationDetail.Sum(o => o.DiscountVat); objQuoation.DiscountTot = objQuoation.TblQuotationDetail.Sum(o => o.DiscountTot); objQuoation.SummaryNet = objQuoation.TblQuotationDetail.Sum(o => o.TotalNet); objQuoation.SummaryVat = objQuoation.TblQuotationDetail.Sum(o => o.TotalVat); objQuoation.SummaryTot = objQuoation.TblQuotationDetail.Sum(o => o.TotalTot); uow.Modules.Quotation.Set(objQuoation); uow.SaveChanges(); } return(RedirectToAction("Detail", MVCController, new { id = qid, tab = "Product", msg = "", msgType = AlertMsgType.Success })); }