/// <summary> /// ПРоверка на дублирвоание записей /// </summary> public ValidationInfo NeedSaveSpecificationType(ActiveSpecificationType checkItem) { var curSpecificationType = activeSpecificationTypeService.GetAllActiveSpecificationType() .FirstOrDefault(o => o.ActiveTypeId == checkItem.ActiveTypeId && o.TypeName == checkItem.TypeName && o.Id != checkItem.Id); if (curSpecificationType != null) { return(ValidationInfo.addError("Характеристика с такими значениями уже существует в системе: " + curSpecificationType.ActiveType.TypeCode)); } return(ValidationInfo.isValid()); }
public void SaveActiveSpecificationType(ActiveSpecificationType newActiveSpecificationType) { if (newActiveSpecificationType.Id == 0) { dbContext.ActiveSpecificationTypes.Add(newActiveSpecificationType); } else { var curActiveSpecificationType = dbContext.ActiveSpecificationTypes.Single(o => o.Id == newActiveSpecificationType.Id); curActiveSpecificationType.ActiveTypeId = newActiveSpecificationType.ActiveTypeId; curActiveSpecificationType.TypeName = newActiveSpecificationType.TypeName; curActiveSpecificationType.MeasureType = newActiveSpecificationType.MeasureType; curActiveSpecificationType.IsDeleted = newActiveSpecificationType.IsDeleted; } dbContext.SaveChanges(); }
public ActionResult CreateActiveSpecificationType(ActiveSpecificationTypeCreateModel newSpecification) { var activeTypes = activeTypesService.GetAllActiveTypes(); foreach (var item in activeTypes) { newSpecification.ActiveTypeItems.Add(new SelectListItem { Text = item.TypeCode + " (" + item.TypeName + ") ", Value = item.Id.ToString() }); } if (ModelState.IsValid) { foreach (var itemType in newSpecification.ActiveTypeId) { var createSpecification = new ActiveSpecificationType { ActiveTypeId = itemType, TypeName = newSpecification.TypeName, MeasureType = newSpecification.MeasureType }; var validation = catalogsValidator.NeedSaveSpecificationType(createSpecification); //проверка на существование повторяющейся записи. сохранение только в случае, если такой записи нет if (validation.IsValid) { activeSpecificationTypeService.SaveActiveSpecificationType(createSpecification); } else { ViewBag.WarningMessage = validation.ValidationMessage; return(View(newSpecification)); } } return(RedirectToAction("Index")); } return(View(newSpecification)); }
public ActionResult SaveEditSpecificationType(ActiveSpecificationTypeEditModel editSpecificationType) { if (ModelState.IsValid) { var saveSpecificationType = new ActiveSpecificationType { Id = editSpecificationType.Id, ActiveTypeId = editSpecificationType.ActiveTypeId, TypeName = editSpecificationType.TypeName, MeasureType = editSpecificationType.MeasureType, IsDeleted = editSpecificationType.IsDeleted }; var validation = catalogsValidator.NeedSaveSpecificationType(saveSpecificationType); if (validation.IsValid) { activeSpecificationTypeService.SaveActiveSpecificationType(saveSpecificationType); return(RedirectToAction("Index")); } else { ViewBag.WarningMessage = validation.ValidationMessage; } } var activeTypes = activeTypesService.GetAllActiveTypes(); foreach (var item in activeTypes) { editSpecificationType.ActiveTypeItems.Add(new SelectListItem { Selected = item.Id == editSpecificationType.ActiveTypeId, Text = item.TypeCode + " (" + item.TypeName + ") ", Value = item.Id.ToString() }); } return(View("EditSpecificationType", editSpecificationType)); }