private AdministrationServiceResult createLaboratory(LaboratoryInputModel inputData, Municipios city, Estados state) { AdministrationServiceResult result = new AdministrationServiceResult(); Laboratory laboratory = new Laboratory { Name = inputData.Name, Active = inputData.Active, City = city, State = state }; context.Laboratories.Add(laboratory); return(result); }
public ActionResult AddOrUpdate(LaboratoryInputModel inputData) { var applicationService = new LaboratoryService(context); var result = applicationService.addOrUpdateLaboratory(inputData); if (result.IsValid) { return(RedirectToAction("Index")); } ViewBag.States = getStatesWithLaboratories(); ViewBag.Errors = result.Errors; return(View("AddOrModifyLaboratory", inputData)); }
private AdministrationServiceResult updateLaboratory(LaboratoryInputModel inputData, Municipios city, Estados state) { AdministrationServiceResult result = new AdministrationServiceResult(); var laboratory = context.Laboratories.Where(l => l.ID == inputData.Id).FirstOrDefault(); if (laboratory != null) { laboratory.Name = inputData.Name; laboratory.Active = inputData.Active; laboratory.City = city; laboratory.State = state; context.Entry(laboratory).State = EntityState.Modified; } else { result.Errors.Add("Laboratorio no válido"); } return(result); }
public AdministrationServiceResult addOrUpdateLaboratory(LaboratoryInputModel inputData) { AdministrationServiceResult result = new AdministrationServiceResult(); if (inputData != null) { var city = context.Municipios.Where(c => c.Id == inputData.CityId).FirstOrDefault(); if (city == null) { result.Errors.Add("Municipio no válido"); } var state = context.Estados.Where(st => st.Id == inputData.StateId).FirstOrDefault(); if (state == null) { result.Errors.Add("Estado no válido"); } if (result.IsValid) { AdministrationServiceResult operationResult = null; if (inputData.Id > 0) { operationResult = this.updateLaboratory(inputData, city, state); } else { operationResult = this.createLaboratory(inputData, city, state); } context.SaveChanges(); result.Errors.AddRange(operationResult.Errors); } } else { result.Errors.Add("Datos de entrada no válidos"); } return(result); }