Ejemplo n.º 1
0
        public ActionResult Edit(string id, ProductSaleDetailDetailView productSaleDetailDetailView)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    EditProductSaleDetailRequest request = new EditProductSaleDetailRequest();

                    request.ID = Guid.Parse(id);
                    request.ModifiedEmployeeID      = GetEmployee().ID;
                    request.Discount                = productSaleDetailDetailView.ProductSaleDetailView.Discount;
                    request.Imposition              = productSaleDetailDetailView.ProductSaleDetailView.Imposition;
                    request.LineDiscount            = productSaleDetailDetailView.ProductSaleDetailView.LineDiscount;
                    request.LineImposition          = productSaleDetailDetailView.ProductSaleDetailView.LineImposition;
                    request.MainProductSaleDetailID = productSaleDetailDetailView.ProductSaleDetailView.MainProductSaleDetailID;
                    request.ProductPriceID          = productSaleDetailDetailView.ProductSaleDetailView.ProductID;
                    request.RollbackNote            = productSaleDetailDetailView.ProductSaleDetailView.RollbackNote;
                    request.SaleID     = productSaleDetailDetailView.ProductSaleDetailView.SaleID;
                    request.UnitPrice  = productSaleDetailDetailView.ProductSaleDetailView.UnitPrice;
                    request.Units      = productSaleDetailDetailView.ProductSaleDetailView.Units;
                    request.RowVersion = productSaleDetailDetailView.ProductSaleDetailView.RowVersion;

                    EditResponse response = this._productSaleDetailService.EditProductSaleDetail(request);

                    if (response.Success)
                    {
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(productSaleDetailDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(productSaleDetailDetailView));
                }
            }

            return(View(productSaleDetailDetailView));
        }
Ejemplo n.º 2
0
        public GeneralResponse EditProductSaleDetail(EditProductSaleDetailRequest request)
        {
            GeneralResponse response = new GeneralResponse();

            //    ProductSaleDetail productSaleDetail = new ProductSaleDetail();
            //    productSaleDetail = _productSaleDetailRepository.FindBy(request.ID);

            //    if (productSaleDetail != null)
            //    {
            //        try
            //        {
            //            productSaleDetail.ModifiedDate = PersianDateTime.Now;
            //            productSaleDetail.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
            //            productSaleDetail.Discount = request.Discount;
            //            productSaleDetail.Imposition = request.Imposition;
            //            //productSaleDetail.ProductPrice = this._productRepository.FindBy(request.ProductID);
            //            productSaleDetail.RollbackNote = request.RollbackNote;
            //            productSaleDetail.Sale = this._saleRepository.FindBy(request.SaleID);
            //            productSaleDetail.UnitPrice = request.UnitPrice;
            //            productSaleDetail.Units = request.Units;

            //            if (productSaleDetail.RowVersion != request.RowVersion)
            //            {
            //                response.hasCenter = false;
            //                response.ErrorMessages.Add("کارشناس محترم، یک کاربر همزمان با شما در حال ویرایش این رکورد است. بنابراین اطلاعات شما ذخیره نمی شود.");
            //                return response;
            //            }
            //            else
            //            {
            //                productSaleDetail.RowVersion += 1;
            //            }

            //            if (productSaleDetail.GetBrokenRules().Count() > 0)
            //            {
            //                response.hasCenter = false;
            //                foreach (BusinessRule businessRule in productSaleDetail.GetBrokenRules())
            //                {
            //                    response.ErrorMessages.Add(businessRule.Rule);
            //                }

            //            return response;
            //        }

            //        _productSaleDetailRepository.Save(productSaleDetail);
            //        _uow.Commit();

            //        response.hasCenter = true;
            //    }
            //    catch (Exception ex)
            //    {
            //        response.hasCenter = false;
            //        response.ErrorMessages.Add(ex.Message);
            //    }
            //}
            //else
            //{
            //    response.hasCenter = false;
            //    response.ErrorMessages.Add("هیچ موردی جهت ویرایش وجود ندارد.");
            //}
            return(response);
        }