/// <summary> /// Determina o funcionário que fará a entrega /// </summary> /// <param name="filtros"></param> /// <returns></returns> public string AlterarFuncionarioEntrega(Guid idEntrega, Guid idFuncionario) { //Requisição para conferir RequisicaoAlterarFuncionarioEntregaDto requisicaoDto = new RequisicaoAlterarFuncionarioEntregaDto() { IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdFuncionario = idFuncionario, Id = idEntrega }; //Consumir o serviço PedidoEntregaBll entregaBll = new PedidoEntregaBll(true); RetornoDto retornoDto = new RetornoDto(); entregaBll.AlterarFuncionarioEntrega(requisicaoDto, ref retornoDto); string retorno = new JavaScriptSerializer().Serialize(retornoDto); return(retorno); }
/// <summary> /// Altera o funcionário responsável pela entrega /// </summary> /// <param name="requisicaoDto"></param> /// <param name="retornoDto"></param> /// <returns></returns> public bool AlterarFuncionarioEntrega(RequisicaoAlterarFuncionarioEntregaDto requisicaoDto, ref RetornoDto retornoDto) { string mensagemErro = ""; if (!UtilitarioBll.ValidarIdentificacao(requisicaoDto.Identificacao, requisicaoDto.IdUsuario, ref mensagemErro)) { retornoDto.Retorno = false; retornoDto.Mensagem = mensagemErro; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, mensagemErro); return(false); } if (!UtilitarioBll.ValidarUsuarioAdm(requisicaoDto.Identificacao, ref mensagemErro)) { retornoDto.Retorno = false; retornoDto.Mensagem = "Este usuário não é administrador. Para alterar o funcionário das entregas é necessário " + $"logar com um usuário administrador. {mensagemErro}"; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, retornoDto.Mensagem); } // Validar o id da entrega if (requisicaoDto.Id == Guid.Empty || requisicaoDto.Id == null) { retornoDto.Retorno = false; retornoDto.Mensagem = "O id da entrega não foi preenchido."; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, mensagemErro); return(false); } // Validar o id do funcionário if (requisicaoDto.IdFuncionario == Guid.Empty || requisicaoDto.IdFuncionario == null) { retornoDto.Retorno = false; retornoDto.Mensagem = "O funcionário não foi informado."; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, mensagemErro); return(false); } PedidoEntregaVo entregaVo; if (!ObterPorIdBd(requisicaoDto.Id, out entregaVo, ref mensagemErro)) { retornoDto.Mensagem = "Erro ao obter o pedido: " + mensagemErro; retornoDto.Retorno = false; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, retornoDto.Mensagem); return(false); } // Preencher os dados da conferência entregaVo.IdFuncionario = requisicaoDto.IdFuncionario; if (!EditarBd(entregaVo, ref mensagemErro)) { retornoDto.Retorno = false; retornoDto.Mensagem = "Falha ao editar os novos dados da entrega: " + mensagemErro; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, retornoDto.Mensagem); return(false); } if (salvar) { // Salva as alterações if (!pizzaByteContexto.Salvar(ref mensagemErro)) { retornoDto.Retorno = false; retornoDto.Mensagem = "Erro ao salvar os novos dados: " + mensagemErro; logBll.ResgistrarLog(requisicaoDto, LogRecursos.AlterarFuncionarioEntrega, requisicaoDto.Id, retornoDto.Mensagem); return(false); } } retornoDto.Retorno = true; retornoDto.Mensagem = "OK"; return(true); }