public ActionResult Create(string saleId) { try { SaleReturnViewModel saleReturnVm = new SaleReturnViewModel(); List <SaleReturnDetailViewModel> saleReturnDetails = new List <SaleReturnDetailViewModel>(); SuperShopSaleViewModel saleVm = Mapper.Map <SuperShopSaleViewModel>(_saleService.GetById(saleId)); List <SuperShopSaleDetailViewModel> saleDetails = Mapper.Map <List <SuperShopSaleDetailViewModel> >(_saleService.GetAllSaleDetailbyMasterId(saleId).ToList()); if (saleDetails.Any()) { foreach (var saleDetail in saleDetails) { SaleReturnDetailViewModel saleReturnDetail = new SaleReturnDetailViewModel { Select = true, SaleId = saleDetail.SaleId, SaleDetailId = saleDetail.Id, ProductId = saleDetail.ProductId, ProductCode = saleDetail.ProductCode, ProductName = saleDetail.ProductName, SoldQuantity = saleDetail.Quantity, SoldAmount = saleDetail.TotalAmount, UOMId = saleDetail.UOMId, UOMName = saleDetail.UOMName, RemainingQuantity = saleDetail.Quantity - _saleReturnService.GetSumOfAlreadyReturnQty(saleDetail.SaleId, saleDetail.ProductId), SalePrice = saleDetail.SalePrice, ReturnUnitPrice = saleDetail.SalePrice, CompanyId = saleDetail.CompanyId, BranchId = saleDetail.BranchId, SupplierId = saleDetail.SupplierId, }; saleReturnDetail.ReturnQuantity = saleReturnDetail.RemainingQuantity; saleReturnDetail.ReturnAmount = saleDetail.SalePrice * saleReturnDetail.ReturnQuantity; saleReturnDetails.Add(saleReturnDetail); } } saleReturnVm.SelectAll = true; saleReturnVm.SaleId = saleVm.Id; saleReturnVm.SaleDate = saleVm.SaleDate; saleReturnVm.CustomerId = saleVm.CustomerId; saleReturnVm.CustomerName = saleVm.CustomerName; saleReturnVm.CompanyId = saleVm.CompanyId; saleReturnVm.BranchId = saleVm.BranchId; saleReturnVm.SalesReturnDate = DateTime.Now; saleReturnVm.SaleReturnDetails = new List <SaleReturnDetailViewModel>(); saleReturnVm.SaleReturnDetails.AddRange(saleReturnDetails); return(View(saleReturnVm)); } catch (Exception ex) { return(JavaScript($"ShowResult('{ex.Message}','failure')")); } }
public JavaScriptResult Create(SaleReturnViewModel saleReturnvm, string Type) { try { if (saleReturnvm.SaleReturnDetails.Any(x => x.Select && x.ReturnQuantity > 0)) { SaleReturn saleReturn = Mapper.Map <SaleReturn>(saleReturnvm); List <SaleReturnDetail> saleReturnDetailList = Mapper.Map <List <SaleReturnDetail> >(saleReturnvm.SaleReturnDetails.Where(x => x.Select && x.ReturnQuantity > 0)); saleReturn.SaleReturnDetails = new List <SaleReturnDetail>(); foreach (var item in saleReturnDetailList) { saleReturn.SaleReturnDetails.Add(item); } _saleReturnService.Add(saleReturn, Type); return(JavaScript($"ShowResult('{"Data saved successfully."}','{"success"}','{"redirect"}','{"/SuperShopSaleReturn/Index?companyId=" + saleReturn.CompanyId + "&&branchId=" + saleReturn.BranchId}')")); } return(JavaScript($"ShowResult('{"Enter quantity!"}','{"failure"}')")); } catch (Exception ex) { return(JavaScript($"ShowResult('{ex.Message}','failure')")); } }