public PartialViewResult AddParam(string optionName, string paramName) { TempOptionParams TempOptionParams = EntityRepository.TemplateOptions.Where(po => po.OptionName == optionName)?.Select(p => p.TempOptionParams.Where(par => par.ParameterName == paramName).FirstOrDefault()).FirstOrDefault(); ProductOptionDetails.ProductOptionParamsDetails parameter = new ProductOptionDetails.ProductOptionParamsDetails { ParameterId = Guid.NewGuid(), Paramname = TempOptionParams?.ParameterName, ParamTooltip = TempOptionParams?.ParameterTooltip, ParamPrice = TempOptionParams?.ParameterPrice ?? Decimal.Zero, Sale = TempOptionParams?.ParameterSale }; return(PartialView("~/Views/Shared/EditorTemplates/ProductOptionParamsDetails.cshtml", parameter)); }
public void SaveTemplateOption(TemplateOptionDetails tempOptionsDetails) { TemplateOptions dbtemplateOptions = context.TemplateOptions.Find(tempOptionsDetails.TempOptionId); if (dbtemplateOptions != null) { dbtemplateOptions.OptionName = tempOptionsDetails.TempOptionName; dbtemplateOptions.OptionType = tempOptionsDetails.TempOptionType; foreach (TemplateOptionDetails.TempOptionParamsDetails item in tempOptionsDetails.TempOptionParamsDetailsCollection) { TempOptionParams dbParam = context.TemplateOptions.Find(tempOptionsDetails.TempOptionId).TempOptionParams.Where(p => p.ParameterId == item.ParameterId).FirstOrDefault(); if (dbParam != null) { dbParam.ParameterName = item.ParameterName; dbParam.ParameterPrice = item.ParameterPrice; dbParam.ParameterTooltip = item.ParameterTooltip; dbParam.ParameterSale = item.ParameterSale; } } } else { dbtemplateOptions = new TemplateOptions(); dbtemplateOptions.OptionId = Guid.NewGuid(); dbtemplateOptions.OptionName = tempOptionsDetails.TempOptionName; dbtemplateOptions.OptionType = tempOptionsDetails.TempOptionType; if (tempOptionsDetails.TempOptionParamsDetailsCollection != null) { foreach (TemplateOptionDetails.TempOptionParamsDetails item in tempOptionsDetails.TempOptionParamsDetailsCollection) { TempOptionParams dbParam = new TempOptionParams { }; dbParam.ParameterId = Guid.NewGuid(); dbParam.ParentOptionId = dbtemplateOptions.OptionId; dbParam.ParameterName = item.ParameterName; dbParam.ParameterPrice = item.ParameterPrice; dbParam.ParameterTooltip = item.ParameterTooltip; dbParam.ParameterSale = item.ParameterSale; } } context.TemplateOptions.Add(dbtemplateOptions); } context.SaveChanges(); }