none
Alerta com ASP.NET MVC4 RRS feed

  • Pergunta

  • Olá sou novo por aqui. Estou buscando ajuda.

    Como criar uma mensagem de alerta no ASP.Net para avisar que hoje é o seu dia de aniversário.

    Pretendo que essa mensagem se repita quando chegar o dia de um colaborador da empresa.

    Aplicação estará no servidor.

    Obrigado. 


    NekFred,Lda

    segunda-feira, 17 de julho de 2017 21:03

Respostas

  • Amigo, boa noite,

    Em sua Controller

    public ActionResult Index(string filter = null)
    {

    //consulta para verificar se a data é igual do usuario logado.

    If(dataniver == DateTime.Now)

    {

    ViewBag.Message = "***PARABÉNS PELO SEU DIA***" ;

    }

    return View();
    }

    Aee na sua pagina Index.cshtml vc coloca o trecho de codigo abaixo:

    <link href="~/Content/Alerta.css" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Scripts/Alerta.js")"></script>

    @if (ViewBag.Message != null)

    {
    <script type="text/javascript">
    window.onload = function () {
    debugger;
    Alert.render("@ViewBag.Message");
    };
    </script>
    }

    Para estilizar a caixa de alerta, crei um css e chamei de Alerta.css com o seguinte:

    #dialogoverlay{
        display: none;
        opacity: .8;
        position: fixed;
        top: 0px;
        left: 0px;
        background: #FFF;
        width: 100%;
        z-index: 10;
    }
    #dialogbox{
        display: none;
        position: fixed;
        background: #000;
        border-radius:7px;
        width:550px;
        z-index: 10;
    }
    #dialogbox > div{ background:#FFF; margin:8px; }
    #dialogbox > div > #dialogboxhead{ background: #666; font-size:19px; padding:10px; color:#CCC; }
    #dialogbox > div > #dialogboxbody{ background:#333; padding:20px; color:#FFF; }
    #dialogbox > div > #dialogboxfoot{ background: #666; padding:10px; text-align:right; }

    E criei também um javascript chamado Alerta.js com o seguinte codigo:

    function CustomAlert(){
    this.render = function(dialog){
    var winW = window.innerWidth;
    var winH = window.innerHeight;
    var dialogoverlay = document.getElementById('dialogoverlay');
    var dialogbox = document.getElementById('dialogbox');
    dialogoverlay.style.display = "block";
    dialogoverlay.style.height = winH+"px";
    dialogbox.style.left = (winW/2) - (550 * .5)+"px";
    dialogbox.style.top = "100px";
    dialogbox.style.display = "block";
    document.getElementById('dialogboxhead').innerHTML = "Mensagem do Sistema";
    document.getElementById('dialogboxbody').innerHTML = dialog;
    document.getElementById('dialogboxfoot').innerHTML = '<button onclick="Alert.ok()">OK</button>';
    }
        this.ok = function(){
            document.getElementById('dialogbox').style.display = "none";
            document.getElementById('dialogoverlay').style.display = "none";
        }
    }
    var Alert = new CustomAlert();

    espero que ajude.

    Abraços!!!


    Jimi Anderson

    sábado, 29 de julho de 2017 23:58

Todas as Respostas

  • Esta mensagem será aberta quando entra no Sistema?

    Paulo Marcelo Dalbosco

    terça-feira, 18 de julho de 2017 14:20
  • Sim, Paulo Barbosa.

    Esta mensagem será aberta quando abrir o sistema e funciona como um lembrete do estilo do Outlook.

    Ela deve ser programada como eventos e quando chegar a data programada ela dispara o lembrete dizendo 

    por exemplo: "Hoje é dia de Aniversário de XXXXXXX, envia-lhe uma felicitação".

    Atenciosamente,

    Nekrumah Campos.


    NekFred,Lda

    quarta-feira, 26 de julho de 2017 17:20
  • Pode existir várias formas de fazer isso, uma ideia seria fazer uma validação no GET de sua página, se o usuário estiver de aniverário, passar um dado para view exibir em um popup.

    Para passar o objeto para a view vc pode usar um TempData, e para exibir poderá usar dialog do Jquery.

    http://jqueryui.com/
     

    Paulo Marcelo Dalbosco

    quarta-feira, 26 de julho de 2017 17:52
  • Amigo, boa noite,

    Em sua Controller

    public ActionResult Index(string filter = null)
    {

    //consulta para verificar se a data é igual do usuario logado.

    If(dataniver == DateTime.Now)

    {

    ViewBag.Message = "***PARABÉNS PELO SEU DIA***" ;

    }

    return View();
    }

    Aee na sua pagina Index.cshtml vc coloca o trecho de codigo abaixo:

    <link href="~/Content/Alerta.css" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Scripts/Alerta.js")"></script>

    @if (ViewBag.Message != null)

    {
    <script type="text/javascript">
    window.onload = function () {
    debugger;
    Alert.render("@ViewBag.Message");
    };
    </script>
    }

    Para estilizar a caixa de alerta, crei um css e chamei de Alerta.css com o seguinte:

    #dialogoverlay{
        display: none;
        opacity: .8;
        position: fixed;
        top: 0px;
        left: 0px;
        background: #FFF;
        width: 100%;
        z-index: 10;
    }
    #dialogbox{
        display: none;
        position: fixed;
        background: #000;
        border-radius:7px;
        width:550px;
        z-index: 10;
    }
    #dialogbox > div{ background:#FFF; margin:8px; }
    #dialogbox > div > #dialogboxhead{ background: #666; font-size:19px; padding:10px; color:#CCC; }
    #dialogbox > div > #dialogboxbody{ background:#333; padding:20px; color:#FFF; }
    #dialogbox > div > #dialogboxfoot{ background: #666; padding:10px; text-align:right; }

    E criei também um javascript chamado Alerta.js com o seguinte codigo:

    function CustomAlert(){
    this.render = function(dialog){
    var winW = window.innerWidth;
    var winH = window.innerHeight;
    var dialogoverlay = document.getElementById('dialogoverlay');
    var dialogbox = document.getElementById('dialogbox');
    dialogoverlay.style.display = "block";
    dialogoverlay.style.height = winH+"px";
    dialogbox.style.left = (winW/2) - (550 * .5)+"px";
    dialogbox.style.top = "100px";
    dialogbox.style.display = "block";
    document.getElementById('dialogboxhead').innerHTML = "Mensagem do Sistema";
    document.getElementById('dialogboxbody').innerHTML = dialog;
    document.getElementById('dialogboxfoot').innerHTML = '<button onclick="Alert.ok()">OK</button>';
    }
        this.ok = function(){
            document.getElementById('dialogbox').style.display = "none";
            document.getElementById('dialogoverlay').style.display = "none";
        }
    }
    var Alert = new CustomAlert();

    espero que ajude.

    Abraços!!!


    Jimi Anderson

    sábado, 29 de julho de 2017 23:58