public async Task <ActionResult> Create(SaveClinicViewModel saveClinic) { try { if (ModelState.IsValid) { var clinic = Mapper.Map <SaveClinicViewModel, Clinic>(saveClinic); var user = await _userManager.GetUserAsync(HttpContext.User); await _userManager.RemoveFromRoleAsync(user, "Basic"); await _userManager.AddToRoleAsync(user, "Clinic"); clinic.UserId = user.Id; _context.Clinic.Add(clinic); _context.SaveChanges(); return(RedirectToAction("Index", "Home")); } throw new Exception("Campos inválidos"); } catch { return(View()); } }
public async Task <ActionResult> Delete(Guid id, SaveClinicViewModel saveClinic) { try { if (id != saveClinic.Id) { return(BadRequest()); } var clinic = await _context.Clinic.SingleOrDefaultAsync(c => c.Id == id); clinic.IsActive = false; _context.Clinic.Update(clinic); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "Home")); } catch { return(View()); } }
public ActionResult Edit(Guid id, SaveClinicViewModel saveClinic) { try { if (id != saveClinic.Id) { return(BadRequest()); } if (ModelState.IsValid) { var clinic = Mapper.Map <Clinic>(saveClinic); _context.Clinic.Update(clinic); _context.SaveChanges(); return(RedirectToAction("Index", "Home")); } throw new Exception("Campos inválidos"); } catch (DbUpdateException e) { return(StatusCode(401, e.Message)); } }