Exemple #1
0
        public async Task <SessaoOuput> IniciarSessao(SessaoInput param)
        {
            using (var conn = base.GetConnection())
            {
                conn.Open();
                DynamicParameters parameter = new DynamicParameters();
                parameter.Add("@Email", param.Email);
                parameter.Add("@Senha", param.Senha);
                parameter.Add("@ID_Identificador", 0, DbType.Int32, ParameterDirection.Output);
                parameter.Add("@Tipo", string.Empty, DbType.String, ParameterDirection.Output);
                parameter.Add("@Return_Code", 0, DbType.Int32, ParameterDirection.Output);
                parameter.Add("@ErrMsg", string.Empty, DbType.String, ParameterDirection.Output);

                await conn.ExecuteAsync(sql : "st_Login",
                                        param : parameter,
                                        commandType : CommandType.StoredProcedure);

                if (parameter.Get <int>("@Return_Code") > 0)
                {
                    return(new SessaoOuput
                    {
                        ID_Identificador = 0,
                        Tipo = string.Empty,
                        Return_Code = parameter.Get <int>("@Return_Code"),
                        ErrMsg = parameter.Get <string>("@ErrMsg")
                    });
                }

                return(new SessaoOuput
                {
                    ID_Identificador = parameter.Get <int>("@ID_Identificador"),
                    Tipo = parameter.Get <string>("@Tipo"),
                    Return_Code = 0,
                    ErrMsg = string.Empty
                });
            }
        }
        public async Task <ActionResult> IniciarSessao(SessaoInput param)
        {
            var retorno = await _service.IniciarSessao(param);

            if (retorno.Return_Code > 0)
            {
                var dados = new {
                    Return_Code = retorno.Return_Code,
                    ErrMsg      = retorno.ErrMsg
                };

                return(BadRequest(dados));
            }
            else
            {
                var dados = new {
                    ID_Identificador = retorno.ID_Identificador,
                    Tipo             = retorno.Tipo,
                    Token            = Token.GerarToken(retorno)
                };

                return(Ok(dados));
            }
        }
 public async Task <SessaoOuput> IniciarSessao(SessaoInput param)
 {
     return(await _repository.IniciarSessao(param));
 }