public void Update(DoctorBindingModel model) { using (var context = new ClinicDataBase()) { using (var transaction = context.Database.BeginTransaction()) { try { var element = context.Doctors.FirstOrDefault(rec => rec.Id == model.Id); if (element == null) { throw new Exception("Элемент не найден"); } CreateModel(model, element); context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }
private void ButtonCreateDoctor_OnClick(object sender, RoutedEventArgs e) { ValidateTextBoxes(); var firstName = TextBoxFirstName.Text; var secondName = TextBoxSecondName.Text; var description = TextBoxDescription.Text; var priceAsString = TextBoxPrice.Text; var price = Convert.ToInt32(priceAsString); var newDoctorModel = new DoctorBindingModel( 0, firstName, secondName, description, price); var response = ApiClient.PostRequest <ResponseModel, DoctorBindingModel>("/api/doctor/createDoctor/", newDoctorModel); // TODO обработать ответ в popup :) ((ControlDoctorService)_hostWindow).UpdateDoctorsList(); Close(); }
public HttpResponseMessage Post(DoctorBindingModel value) { try { Doctor doctor = m_repository.GetById(value.Id); doctor.Image = value.Image; doctor.Text = value.Text; doctor.PersonInfo.Name = value.Name; doctor.PersonInfo.Surname = value.Surname; doctor.PersonInfo.Middlename = value.Middlename; m_repository.Update(doctor); return(new HttpResponseMessage(HttpStatusCode.OK)); } catch (EntityAlreadyExistsException exp) { return(ResponseCreator.GenerateResponse(HttpStatusCode.BadRequest, exp)); } catch (EntityNotFoundException exp) { return(ResponseCreator.GenerateResponse(HttpStatusCode.NotFound, exp)); } catch (Exception exp) { return(ResponseCreator.GenerateResponse(HttpStatusCode.InternalServerError, exp)); } }
private Doctor CreateModel(DoctorBindingModel model, Doctor doctor) { doctor.F_Name = model.F_Name; doctor.L_Name = model.L_Name; doctor.Login = model.Login; doctor.Password = model.Password; doctor.EMail = model.EMail; return(doctor); }
public void Delete(DoctorBindingModel model) { var element = _doctorStorage.GetElement(new DoctorBindingModel { Id = model.Id }); if (element == null) { throw new Exception("Пользователь не найден"); } _doctorStorage.Delete(model); }
public List <DoctorViewModel> Read(DoctorBindingModel model) { if (model == null) { return(_doctorStorage.GetFullList()); } if (model.Id.HasValue) { return(new List <DoctorViewModel> { _doctorStorage.GetElement(model) }); } return(_doctorStorage.GetFilteredList(model)); }
public async Task <IActionResult> CreatePeople(DoctorBindingModel DoctorModel) { RegistrationBinding BindingModel = new RegistrationBinding(); BindingModel.DoctorModel = DoctorModel; Doctor doctor = new Doctor(); doctor.Email = BindingModel.DoctorModel.Email; doctor.Firstname = BindingModel.DoctorModel.Firstname; doctor.Lastname = BindingModel.DoctorModel.Lastname; doctor.Gender = BindingModel.DoctorModel.Gender; doctor.Specialty = BindingModel.DoctorModel.Specialty; doctor.Address = BindingModel.DoctorModel.Address; if (ModelState.IsValid) { IdentityUser doctorUser = new IdentityUser(); doctorUser.Email = doctor.Email; doctorUser.UserName = doctor.UserName; var Password = "******"; doctorUser.EmailConfirmed = true; doctorUser.PhoneNumberConfirmed = true; doctorUser.TwoFactorEnabled = false; doctorUser.LockoutEnabled = true; doctorUser.AccessFailedCount = 0; doctorUser.NormalizedEmail = doctor.Email.Normalize(); doctorUser.NormalizedUserName = doctor.UserName.Normalize(); doctorUser.PhoneNumber = doctor.PhoneNumber; PasswordHasher <IdentityUser> hasher = new PasswordHasher <IdentityUser>(); var PasswordHash = hasher.HashPassword(doctorUser, Password); doctorUser.PasswordHash = PasswordHash; var createDoctor = _userManager.CreateAsync(doctorUser); createDoctor.Wait(); if (createDoctor.Result.Succeeded) { var result = _userManager.AddToRoleAsync(doctorUser, "Doctor"); result.Wait(); doctor.UserId = doctorUser.Id; _context.Add(doctor); } await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View("Add", BindingModel)); }
public DoctorViewModel CreateDoctor(DoctorBindingModel doctorBindingModel) { var doctor = _doctorRepository.CreateDoctor(new Doctor { FirstName = doctorBindingModel.FirstName, LastName = doctorBindingModel.LastName, Description = doctorBindingModel.Description, Price = doctorBindingModel.Price, IsActive = true }); return(new DoctorViewModel { FirstName = doctor.FirstName, LastName = doctor.LastName, Description = doctor.Description, Price = doctor.Price }); }
public void CreateOrUpdate(DoctorBindingModel model) { var element = _doctorStorage.GetElement(new DoctorBindingModel { Login = model.Login, EMail = model.EMail }); if (element != null && element.Id != model.Id) { throw new Exception(" Доктор с такими данными уже существует"); } if (model.Id.HasValue) { _doctorStorage.Update(model); } else { _doctorStorage.Insert(model); } }
public DoctorViewModel UpdateDoctor(DoctorBindingModel doctorBindingModel) { var doctor = _doctorRepository.UpdateDoctor(new Doctor { Id = doctorBindingModel.Id, FirstName = doctorBindingModel.FirstName, LastName = doctorBindingModel.LastName, Description = doctorBindingModel.Description, Price = doctorBindingModel.Price }); return(new DoctorViewModel { Id = doctor.Id, FirstName = doctor.FirstName, LastName = doctor.LastName, Description = doctor.Description, Price = doctor.Price }); }
public void Insert(DoctorBindingModel model) { using (var context = new ClinicDataBase()) { using (var transaction = context.Database.BeginTransaction()) { try { context.Doctors.Add(CreateModel(model, new Doctor())); context.SaveChanges(); transaction.Commit(); } catch { transaction.Rollback(); throw; } } } }
public List <DoctorViewModel> GetFilteredList(DoctorBindingModel model) { if (model == null) { return(null); } using (var context = new ClinicDataBase()) { return(context.Doctors .Where(rec => rec.Login == model.Login && rec.Password == model.Password) .Select(rec => new DoctorViewModel { Id = rec.Id, F_Name = rec.F_Name, L_Name = rec.L_Name, Login = rec.Login, Password = rec.Password, EMail = rec.EMail }) .ToList()); } }
public DoctorViewModel GetElement(DoctorBindingModel model) { if (model == null) { return(null); } using (var context = new ClinicDataBase()) { var doctor = context.Doctors .FirstOrDefault(rec => rec.Login == model.Login || rec.Id == model.Id); return(doctor != null ? new DoctorViewModel { Id = doctor.Id, F_Name = doctor.F_Name, L_Name = doctor.L_Name, Login = doctor.Login, Password = doctor.Password, EMail = doctor.EMail } : null); } }
public IHttpActionResult UpdateDoctor(DoctorBindingModel doctorBindingModel) { DoctorViewModel doctorViewModel = _doctorService.UpdateDoctor(doctorBindingModel); return(Ok(new ResponseModel(doctorViewModel, "Данные доктора успешно обновлены"))); }
public IHttpActionResult CreateDoctor(DoctorBindingModel doctorBindingModel) { DoctorViewModel doctorViewModel = _doctorService.CreateDoctor(doctorBindingModel); return(Ok(new ResponseModel(doctorViewModel))); }