public JsonResult AtualizarStatusPedido(int codigoStatus, List <int> pedidos) { RoteirizacaoBLL roteirizacaoBLL = new RoteirizacaoBLL(); CabecalhoPedidoBLL cabecalhoPedidoBLL = new CabecalhoPedidoBLL(); NotificacoesBLL notificacoesBLL = new NotificacoesBLL(); string mensagemErro; StatusNegociacao status = new StatusNegociacao(codigoStatus); var codigoUsuario = Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"]); foreach (int pedido in pedidos) { if (!roteirizacaoBLL.updateStatusPedido(pedido, codigoStatus, out mensagemErro)) { return(Json(new { sucesso = false, mensagemErro = mensagemErro })); } //Grava Notificação CabecalhoPedido cabecalhoPedido = cabecalhoPedidoBLL.GetPedidoByCodigo(pedido, out mensagemErro); //Notificacoes notificacao = new Notificacoes(); //notificacao.FuncionarioCriador = new Funcionario() { Codigo = codigoUsuario }; //notificacao.FuncionarioDestino = new Funcionario() { Codigo = cabecalhoPedido.FuncionarioVendedor.Codigo }; //notificacao.Mensagem = "Status do pedido " + cabecalhoPedido.Codigo + " atualizado para " + status.Descricao + "!"; //notificacoesBLL.insertNotificacao(notificacao, out mensagemErro); } TempData["mensagemSucesso"] = "Pedidos atualizados com sucesso!"; return(Json(new { sucesso = true })); }
public JsonResult AtualizarRotaCompleta(int codigoInstrutor, string arrayPedidosRota) { RoteirizacaoBLL roteirizacaoBLL = new RoteirizacaoBLL(); CabecalhoPedidoBLL cabecalhoPedidoBLL = new CabecalhoPedidoBLL(); NotificacoesBLL notificacoesBLL = new NotificacoesBLL(); string mensagemErro; List <RotaComplexaViewModel> listaPedidos = JsonConvert.DeserializeObject <List <RotaComplexaViewModel> >(arrayPedidosRota); var codigoUsuario = Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"]); foreach (RotaComplexaViewModel pedido in listaPedidos) { if (!roteirizacaoBLL.updatePedidoRota(pedido.codigoPedido, codigoInstrutor, "", "", Convert.ToDateTime(pedido.dataInicioTreinamento), Convert.ToDateTime(pedido.dataFimTreinamento), 13, out mensagemErro)) { return(Json(new { sucesso = false, mensagemErro = mensagemErro })); } //Grava Notificação CabecalhoPedido cabecalhoPedido = cabecalhoPedidoBLL.GetPedidoByCodigo(pedido.codigoPedido, out mensagemErro); //Notificacoes notificacao = new Notificacoes(); //notificacao.FuncionarioCriador = new Funcionario() { Codigo = codigoUsuario }; //notificacao.FuncionarioDestino = new Funcionario() { Codigo = cabecalhoPedido.FuncionarioVendedor.Codigo }; //notificacao.Mensagem = "Pedido " + cabecalhoPedido.Codigo + " incluído na rota!"; //notificacoesBLL.insertNotificacao(notificacao, out mensagemErro); } TempData["mensagemSucesso"] = "Rota criada com sucesso!"; return(Json(new { sucesso = true })); }
public JsonResult updateNotificacao(int codigoNotificacao) { NotificacoesBLL BLL = new NotificacoesBLL(); string mensagemErro; bool retorno = BLL.updateNotificacao(codigoNotificacao, out mensagemErro); return(Json(new { sucesso = retorno, mensagem = mensagemErro })); }
public JsonResult AtualizarRotaManual(int codigoInstrutor, string arrayPedidosRota, string arrayPedidosAprovados, string observacaoRota) { RoteirizacaoBLL roteirizacaoBLL = new RoteirizacaoBLL(); CabecalhoPedidoBLL cabecalhoPedidoBLL = new CabecalhoPedidoBLL(); NotificacoesBLL notificacoesBLL = new NotificacoesBLL(); string mensagemErro; List <RotaComplexaViewModel> listaPedidos = JsonConvert.DeserializeObject <List <RotaComplexaViewModel> >(arrayPedidosRota); List <RotaComplexaViewModel> listaPedidosAprovados = JsonConvert.DeserializeObject <List <RotaComplexaViewModel> >(arrayPedidosAprovados); var codigoUsuario = Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"]); //INCLUIR CABECALHO ROTA Rota rota = new Rota(); rota.Instrutor = new Funcionario() { Codigo = codigoInstrutor }; rota.DataInicio = Convert.ToDateTime(listaPedidos.Min(x => x.dataInicioTreinamento)); rota.DataFim = Convert.ToDateTime(listaPedidos.Min(x => x.dataFimTreinamento)); rota.Observacao = observacaoRota; rota.Codigo = RotaBLL.insertRota(rota, out mensagemErro); if (rota.Codigo <= 0) { return(Json(new { sucesso = false, mensagemErro = mensagemErro })); } //INCLUIR ITENS ROTA foreach (RotaComplexaViewModel pedido in listaPedidos) { ItemRota itemRota = new ItemRota(); itemRota.Rota = rota; itemRota.CabecalhoPedido = new CabecalhoPedido() { Codigo = pedido.codigoPedido }; itemRota.DataInicio = Convert.ToDateTime(pedido.dataFimTreinamento); itemRota.DataFim = Convert.ToDateTime(pedido.dataFimTreinamento); itemRota.Aprovado = (listaPedidosAprovados.Where(x => x.codigoPedido == pedido.codigoPedido).Count() > 0); if (ItemRotaBLL.insertItemRota(itemRota, out mensagemErro) <= 0) { return(Json(new { sucesso = false, mensagemErro = mensagemErro })); } } TempData["mensagemSucesso"] = "Rota criada com sucesso!"; return(Json(new { sucesso = true })); }
public JsonResult AtualizarPedidoRota(int codigoPedido, int ddlInstrutorRota, string ddlSalaRota, string txtInformacoesAdicionais, DateTime dtpDataInicioTreinamento, DateTime dtpDataFimTreinamento, int codigoStatus, string detalheRetornoPedido = "") { RoteirizacaoBLL roteirizacaoBLL = new RoteirizacaoBLL(); CabecalhoPedidoBLL cabecalhoPedidoBLL = new CabecalhoPedidoBLL(); NotificacoesBLL notificacoesBLL = new NotificacoesBLL(); string mensagemErro; var codigoUsuario = Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"]); if (!roteirizacaoBLL.updatePedidoRota(codigoPedido, ddlInstrutorRota, ddlSalaRota, txtInformacoesAdicionais, dtpDataInicioTreinamento, dtpDataFimTreinamento, codigoStatus, out mensagemErro, detalheRetornoPedido)) { return(Json(new { sucesso = false, mensagemErro = mensagemErro })); } CabecalhoPedido cabecalhoPedido = cabecalhoPedidoBLL.GetPedidoByCodigo(codigoPedido, out mensagemErro); //Grava Notificação //Notificacoes notificacao = new Notificacoes(); //notificacao.FuncionarioCriador = new Funcionario() { Codigo = codigoUsuario }; //notificacao.FuncionarioDestino = new Funcionario() { Codigo = cabecalhoPedido.FuncionarioVendedor.Codigo }; //notificacao.Mensagem = "Pedido " + cabecalhoPedido.Codigo + " incluído na rota!"; //notificacoesBLL.insertNotificacao(notificacao, out mensagemErro); //EM CASO DE PEDIDO PENDENTE (17 / 18) ENVIAR EMAIL PARA O AGENTE RESPONSÁVEL if (codigoStatus == 17 || codigoStatus == 18) { var usuario = new Funcionario(Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"])); string templateEmail = System.IO.File.ReadAllText("./wwwRoot/Templates/TemplateEmailPendencia.html"); templateEmail = templateEmail.Replace("@colaborador", cabecalhoPedido.FuncionarioVendedor.Nome) .Replace("@codigoPedido", cabecalhoPedido.Codigo.ToString()) .Replace("@motivo", detalheRetornoPedido); var emails = "[email protected], [email protected]," + cabecalhoPedido.FuncionarioVendedor.Email; //ENVIAR EMAIL PARA O CLIENTE string Assunto = "A/C " + cabecalhoPedido.FuncionarioVendedor.Nome + " / Cia do Treinamento."; string retornoEmail = Uteis.SendMailRoteirizacao(usuario.Login, emails, Assunto, templateEmail, usuario.Email); } return(Json(new { sucesso = true })); }
public JsonResult getNotificacoes() { NotificacoesBLL BLL = new NotificacoesBLL(); string mensagemErro; int codigoUsuario = Convert.ToInt32(HttpContext.Request.Cookies["CODIGO_USUARIO"]); List <Notificacoes> listaNotificacoes = BLL.getNotificacoes(codigoUsuario, out mensagemErro); if (String.IsNullOrEmpty(mensagemErro)) { return(Json(new { sucesso = true, lista = listaNotificacoes })); } else { return(Json(new { sucesso = false, mensagem = mensagemErro })); } }