示例#1
0
        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 }));
        }
示例#2
0
        //[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 })); }
        }
示例#3
0
        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 }));
        }