public ActionResult AtualizaStatus(int id, modItens item) { if (Session["nomelogin"] != null) { try { item.idItem = id; _db.pubDesenvolvedorAtualizaStatusItem(item); string corpo_email = "<html><head><title>sistema de os</title></head>" + "<body><h2>item nº: <b style='color:blue;'>{0}</b></h2> projeto: <b>{1}</b> - versão: <b>{2}</b></br><br>" + "<h3><b style='color:red;'><p>status alterado</p></b></h3>" + "</br>" + "<ul><li><b>solicitante:</b> <u>{3}</u> - <b>departamento:</b> {4} </li>" + "</br>" + "<li><b>prioridade:</b> {5} - <b>desenvolvedor responsável:</b> {6} , status do item: <b style='color: red;'>{7}</b> </li>" + "</br></br>" + "<li><b>descrição da solicitação:</b> {8} </li>" + "</body></html>", corpo = string.Empty, //<--- variável utilizada depois para concatenar o corpo do e-mail com os outros valores a serem preenchidos vindos do bd. lst_hist = string.Empty, lst_desi = string.Empty, lst_prod = string.Empty; //cria variável que realiza consulta no banco, do último item criado para enviar e-mail. // var resultado = _db.pubconsultaporiditemenvioemail(id); //seta variáveis que serão utilizadas para o corpo do e-mail var iditem = 0; var projeto = string.Empty; var versao = string.Empty; var nomesoli = string.Empty; var depto = string.Empty; var desc = string.Empty; var prior = string.Empty; var emaildesenv = string.Empty; var emailreq = string.Empty; var emailalte = string.Empty; var desenvolv = string.Empty; var descdesen = string.Empty; var tpstatus = string.Empty; //saída para o envio da mensagem var msg = "e-mail enviado!"; //busca cada campo a ser preenchido no envio de e-mail (carrega corpo_mail) //foreach (var final in resultado) //{ // iditem = final.iditem; //incrementa as variáveis com os valores do select após save do item. // projeto = final.nomeprojeto; // versao = final.versao; // nomesoli = final.solicitante; // depto = final.depto; // desc = final.desc; // prior = final.prioridade; // emaildesenv = final.emaildev; // emailreq = final.emailuser; // emailalte = final.emailalter; // desenvolv = final.desenvolvedor; // descdesen = final.descricaodev; // tpstatus = final.statusitem; //} //concatena o corpo do e-mail com os valores das variáveis, conforme posição dos campos no texto html acima, exemplo: {0}, {1}, {2}... corpo = string.Format(corpo_email, iditem, projeto, versao, nomesoli, depto, prior, desenvolv, tpstatus, desc); //chama a classe do repositório onde está setado o envio do e-mail. var envia = new EnviaEmailRepository(); if (emailreq == string.Empty || emailalte == string.Empty) { //utiliza o método de envio de e-mail e concate o corpo, texto, campos a serem utilizados para envio conforme montado acima. envia.MandaEmail(string.Concat(emaildesenv), string.Concat("projeto: ", projeto, " versão: ", versao, " item: [ ", iditem.ToString(), " ]", " - status alterado :"), corpo, out msg); } else if (emailreq == string.Empty) { //utiliza o método de envio de e-mail e concate o corpo, texto, campos a serem utilizados para envio conforme montado acima. envia.MandaEmail(string.Concat(emaildesenv, "; ", emailalte), string.Concat("projeto: ", projeto, " versão: ", versao, " item: [ ", iditem.ToString(), " ]", " - status alterado :"), corpo, out msg); } else if (emailalte == string.Empty) { envia.MandaEmail(string.Concat(emaildesenv, "; ", emailreq), string.Concat("projeto: ", projeto, " versão: ", versao, " item: [ ", iditem.ToString(), " ]", " - status alterado :"), corpo, out msg); } else { envia.MandaEmail(string.Concat(emaildesenv, "; ", emailreq, "; ", emailalte), string.Concat("projeto: ", projeto, " versão: ", versao, " item: [ ", iditem.ToString(), " ]", " - status alterado :"), corpo, out msg); } //após todo o processo, exibe mensagem em tela com número do item e que foi enviado ao desenvolvedor. ViewBag.mensagem = "status do item nº: " + iditem + " alterado com sucesso!"; return(ViewBag.mensagem); } catch { ViewBag.departamento = new SelectList(dbContext.TB_DEPARTAMENTO, "id_departamento", "nome"); ViewBag.desenvolvedor = new SelectList(dbContext.TB_DESENVOLVEDORES, "id_dev", "nome_desenvolvedor"); ViewBag.tipodesenvolvimento = new SelectList(dbContext.TB_TIPO_DESENVOLVIMENTO, "id_tipo_desenv", "descricao"); ViewBag.status = new SelectList(dbContext.TB_STATUS_DESENVOLVIMENTO, "id_status", "descricao"); ViewBag.prioridade = new SelectList(dbContext.TB_PRIORIDADE_ITEM, "id", "prioridade_tipo"); return(View()); } } else { return(RedirectToAction("logar", "usuario")); } }
public ActionResult AdminsAtualizaItemAberto(int id, modItens item) { try { string login = Session["NomeLogin"].ToString(); item.idItem = id; item.idUsuarioLogado = login; _db.pubAdminAtualizaItensEmAberto(item); //Monta corpo do e-mail para envio ao desenvolvedor, admins do sistema e usuário abertura. string corpo_email = "<html><head><title>Sistema de OS</title></head>" + "<body><h2>Item Nº: <b style='color:blue;'>{0}</b></h2> Projeto: <b>{1}</b> - Versão: <b>{2}</b></br><br>" + "<h3><b style='color:red;'><p>Item Alterado</p></b></h3>" + "</br>" + "<ul><li><b>Solicitante:</b> <u>{3}</u> - <b>Departamento:</b> {4} </li>" + "</br>" + "<li><b>Prioridade:</b> {5} - <b>Desenvolvedor designado:</b> {6} , Status do Item: {7} </li>" + "</br></br>" + "<li><b>Descrição:</b> {8} </li>" + "</body></html>", corpo = string.Empty, //<--- Variável utilizada depois para concatenar o corpo do e-mail com os outros valores a serem preenchidos vindos do BD. lst_hist = string.Empty, lst_desi = string.Empty, lst_prod = string.Empty; //Cria variável que realiza consulta no banco, do último item criado para enviar e-mail. // var resultado = _db.pubConsultaPorIdItemEnvioEmail(id); //Seta variáveis que serão utilizadas para o corpo do e-mail var idItem = 0; var projeto = string.Empty; var versao = string.Empty; var nomeSoli = string.Empty; var depto = string.Empty; var desc = string.Empty; var prior = string.Empty; var emailDesenv = string.Empty; var emailReq = string.Empty; var desenvolv = string.Empty; var emailAlter = string.Empty; var statusIt = string.Empty; //saída para o envio da mensagem var msg = "E-mail enviado!"; //Busca cada campo a ser preenchido no envio de e-mail (carrega corpo_mail) //foreach (var final in resultado) //{ // idItem = final.idItem; //incrementa as variáveis com os valores do select após save do item. // projeto = final.nomeProjeto; // versao = final.versao; // nomeSoli = final.solicitante; // depto = final.depto; // desc = final.desc; // prior = final.prioridade; // emailDesenv = final.emailDev; // emailReq = final.emailUser; // emailAlter = final.emailAlter; // desenvolv = final.desenvolvedor; // statusIt = final.statusItem; //} //concatena o corpo do e-mail com os valores das variáveis, conforme posição dos campos no texto html acima, exemplo: {0}, {1}, {2}... corpo = string.Format(corpo_email, idItem, projeto, versao, nomeSoli, depto, prior, desenvolv, statusIt, desc); //chama a classe do repositório onde está setado o envio do e-mail. var envia = new EnviaEmailRepository(); if (emailReq == string.Empty || emailAlter == string.Empty) { //utiliza o método de envio de e-mail e concate o corpo, texto, campos a serem utilizados para envio conforme montado acima. envia.MandaEmail(string.Concat(emailDesenv), string.Concat("Projeto: ", projeto, " Versão: ", versao, " Item: [ ", idItem.ToString(), " ]", " - Alterado :"), corpo, out msg); } else if (emailReq == string.Empty) { envia.MandaEmail(string.Concat(emailDesenv, "; ", emailAlter), string.Concat("Projeto: ", projeto, " Versão: ", versao, " Item: [ ", idItem.ToString(), " ]", " - Alterado :"), corpo, out msg); } else if (emailAlter == string.Empty) { envia.MandaEmail(string.Concat(emailDesenv, "; ", emailReq), string.Concat("Projeto: ", projeto, " Versão: ", versao, " Item: [ ", idItem.ToString(), " ]", " - Alterado :"), corpo, out msg); } else { envia.MandaEmail(string.Concat(emailDesenv, "; ", emailReq, "; ", emailAlter), string.Concat("Projeto: ", projeto, " Versão: ", versao, " Item: [ ", idItem.ToString(), " ]", " - Alterado :"), corpo, out msg); } //Após todo o processo, exibe mensagem em tela com número do item e que foi enviado ao desenvolvedor. ViewBag.Mensagem = "Item Nº: " + idItem + " alterado com sucesso!"; return(ViewBag.Mensagem); } catch { ViewBag.Departamento = new SelectList(dbContext.TB_DEPARTAMENTO, "ID_DEPARTAMENTO", "NOME"); ViewBag.Desenvolvedor = new SelectList(dbContext.TB_DESENVOLVEDORES, "ID_DEV", "NOME_DESENVOLVEDOR"); ViewBag.TipoDesenvolvimento = new SelectList(dbContext.TB_TIPO_DESENVOLVIMENTO, "ID_TIPO_DESENV", "DESCRICAO"); ViewBag.Status = new SelectList(dbContext.TB_STATUS_DESENVOLVIMENTO, "ID_STATUS", "DESCRICAO"); ViewBag.Prioridade = new SelectList(dbContext.TB_PRIORIDADE_ITEM, "ID", "PRIORIDADE_TIPO"); ViewBag.Erro = "Problema ao tentar gerar solicitação ! "; return(View(item)); } }
public ActionResult Create(int id, modItens item) { if (Session["NomeLogin"] != null) { try { //aqui, seta as variáveis para salvar/gravar um novo item atrelado a uma OS (Build). item.idNmSolicitacao = id; item.dtAbertura = DateTime.Now; item.idUsuarioLogado = Session["NomeLogin"].ToString(); //<-- Utiliza o login do usuário para enviar e-mail de abertura. //anexo de arquivo no sistema int anexo = 0; for (int i = 0; i < Request.Files.Count; i++) { HttpPostedFileBase arquivo = Request.Files[i]; if (arquivo.ContentLength > 0) { var uploadPath = Server.MapPath("~/Images_Anexos"); string caminhoArq = Path.Combine(@uploadPath, Path.GetFileName(arquivo.FileName)); arquivo.SaveAs(caminhoArq); anexo++; } } ViewData["Mensagem"] = String.Format("{0} arquivo salvo com sucesso.", anexo); //Salva no banco de dados o novo item aberto. _db.pubCadastraNovoItem(item); //Monta corpo do e-mail para envio ao desenvolvedor, admins do sistema e usuário abertura. string corpo_email = "<html><head><title>Sistema de OS</title></head>" + "<body><h2>Item Nº: <b style='color:blue;'>{0}</b></h2> Projeto: <b>{1}</b> - Versão: <b>{2}</b></br><br>" + "<h3><b style='color:red;'><p>Aviso de novo item</p></b></h3>" + "</br>" + "<ul><li><b>Solicitante:</b> <u>{3}</u> - <b>Departamento:</b> {4} </li>" + "</br>" + "<li><b>Prioridade:</b> {5} - <b>Desenvolvedor Responsável:</b> {6} </li>" + "</br></br>" + "<li><b>Descrição:</b> {7} </li>" + "</body></html>", //designado = "<li><b>Data: </b>{0}<ul><li><b>Nome: </b>{1}</li></ul></li>", //<--- Ainda não está sendo utilizado. corpo = string.Empty, //<--- Variável utilizada depois para concatenar o corpo do e-mail com os outros valores a serem preenchidos vindos do BD. lst_hist = string.Empty, lst_desi = string.Empty, lst_prod = string.Empty; //Cria variável que realiza consulta no banco, do último item criado para enviar e-mail. //var resultado = "";//_db.pubConsultaItemParaEnvioEmail(); //Seta variáveis que serão utilizadas para o corpo do e-mail var idItem = 0; var projeto = string.Empty; var versao = string.Empty; var nomeSoli = string.Empty; var depto = string.Empty; var desc = string.Empty; var prior = string.Empty; var emailDesenv = string.Empty; var emailReq = string.Empty; var desenvolv = string.Empty; //saída para o envio da mensagem var msg = "E-mail enviado!"; //Busca cada campo a ser preenchido no envio de e-mail (carrega corpo_mail) //foreach (var final in resultado) //{ // idItem = final.idItem; //incrementa as variáveis com os valores do select após save do item. // projeto = final.nomeProjeto; // versao = final.versao; // nomeSoli = final.solicitante; // depto = final.depto; // desc = final.desc; // prior = final.prioridade; // emailDesenv = final.emailDev; // emailReq = final.emailUser; // desenvolv = final.desenvolvedor; //} //concatena o corpo do e-mail com os valores das variáveis, conforme posição dos campos no texto html acima, exemplo: {0}, {1}, {2}... corpo = string.Format(corpo_email, idItem, projeto, versao, nomeSoli, depto, prior, desenvolv, desc); //chama a classe do repositório onde está setado o envio do e-mail. var envia = new EnviaEmailRepository(); //utiliza o método de envio de e-mail e concate o corpo, texto, campos a serem utilizados para envio conforme montado acima envia.MandaEmail(string.Concat(emailReq, ";", emailDesenv), string.Concat("Projeto: ", projeto, " Versão: ", versao, " Item: [ ", idItem.ToString(), " ]", " - Aviso de novo item"), corpo, out msg); //Após todo o processo, exibe mensagem em tela com número do item e que foi enviado ao desenvolvedor. ViewBag.Mensagem = "Item Nº: " + idItem + " enviado para desenvolvimento!"; return(ViewBag.Mensagem); } catch { ViewBag.Departamento = new SelectList(dbContext.TB_DEPARTAMENTO, "ID_DEPARTAMENTO", "NOME"); ViewBag.Desenvolvedor = new SelectList(dbContext.TB_DESENVOLVEDORES, "ID_DEV", "NOME_DESENVOLVEDOR"); ViewBag.TipoDesenvolvimento = new SelectList(dbContext.TB_TIPO_DESENVOLVIMENTO, "ID_TIPO_DESENV", "DESCRICAO"); ViewBag.Status = new SelectList(dbContext.TB_STATUS_DESENVOLVIMENTO, "ID_STATUS", "DESCRICAO"); ViewBag.Prioridade = new SelectList(dbContext.TB_PRIORIDADE_ITEM, "ID", "PRIORIDADE_TIPO"); return(View()); } } else { return(RedirectToAction("Logar", "Usuario")); } }