public MotoristaDTO CadastrarMotorista(MotoristaDTO dto) { Motorista motorista = dto.ParaObjetoDeDominio(); var coo = new GoogleMapsAPIFacade().ObterCoordenadasGeograficas(dto.Endereco).Result; motorista.Endereco.CoordenadaGeografica = new CoordenadaGeografica(coo.Latitude, coo.Longitude); _veiculoRepositorio.Cadastrar(motorista.Veiculo); _coordenadaGeograficaRepositorio.Cadastrar(motorista.Endereco.CoordenadaGeografica); _enderecoRepositorio.Cadastrar(motorista.Endereco); _motoristaRepositorio.Cadastrar(motorista); return(motorista.ParaDTO()); }
public ActionResult Cadastrar([Bind(Include = "Nome, CNH, ValidadeCNH, RG, CPF, Celular, Nextel, MOP")] MotoristaViewModel viewModel) { var motorista = new Motorista( User.ObterTransportadoraId(), viewModel.Nome, viewModel.CNH, viewModel.ValidadeCNH, viewModel.RG, viewModel.CPF, viewModel.Celular, viewModel.Nextel, viewModel.MOP); try { var motoristaComCNH = _motoristaRepositorio.ObterMotoristaPorCNH(viewModel.CNH, User.ObterTransportadoraId()); if (motoristaComCNH != null) { return(RetornarErro($"Já existe um outro motorista cadastrado com a CNH {viewModel.CNH}")); } var motoristaComCPF = _motoristaRepositorio.ObterMotoristaPorCPF(viewModel.CPF, User.ObterTransportadoraId()); if (motoristaComCPF != null) { return(RetornarErro($"Já existe um outro motorista cadastrado com o CPF {viewModel.CPF}")); } if (!Validar(motorista)) { return(RetornarErros()); } _motoristaRepositorio.Cadastrar(motorista); } catch (Exception ex) { return(RetornarErro(ex.Message)); } return(new HttpStatusCodeResult(HttpStatusCode.NoContent)); }
public ActionResult Cadastrar([Bind(Include = "Nome, CNH, ValidadeCNH, RG, CPF, Celular, Nextel, MOP")] MotoristaViewModel viewModel) { var motorista = new Motorista( User.ObterTransportadoraId(), viewModel.Nome, viewModel.CNH, viewModel.ValidadeCNH, viewModel.RG, viewModel.CPF, viewModel.Celular, viewModel.Nextel, viewModel.MOP); var motoristaComCNH = _motoristaRepositorio.ObterMotoristaPorCNH(viewModel.CNH, User.ObterTransportadoraId()); if (motoristaComCNH != null) { ModelState.AddModelError(string.Empty, $"Já existe um outro motorista cadastrado com a CNH {viewModel.CNH}"); return(View(viewModel)); } var motoristaComCPF = _motoristaRepositorio.ObterMotoristaPorCPF(viewModel.CPF, User.ObterTransportadoraId()); if (motoristaComCPF != null) { ModelState.AddModelError(string.Empty, $"Já existe um outro motorista cadastrado com o CPF {viewModel.CPF}"); return(View(viewModel)); } if (Validar(motorista)) { _motoristaRepositorio.Cadastrar(motorista); TempData["Sucesso"] = true; } return(View(viewModel)); }