quarta-feira, 22 de abril de 2015

Clube de Trocas - Mais um sistema / site desenvolvido

Clube de Trocas - TROQUE INUTILIDADE POR NECESSIDADE !

Boa tarde pessoal,

Mais um sistema / site desenvolvido, utilizando ótimas práticas de desenvolvimento. MVC, HTML5, CSS3, javascript, jQuery, ajax, bootstrap (responsivo) e muito mais. Vale a pena acessar e navegar para conferir.

http://clubedetrocas.trade/

http://clubedetrocas.trade/

terça-feira, 7 de abril de 2015

DropDownList em Cascata com ASP.NET MVC, jQuery e Ajax



Neste post farei um exemplo de carregamento de dropdown a partir do valor de outro dropdown utilizando o ajax.

Esta necessidade pode ocorrer em vários casos de negócio, irei fazer um exemplo simples de carregamento de cidades baseado no estado selecionado.

  • Dropdown (lista de estados), neste caso carregamos ao inicializar a página (via método construtor da Model).
  • Dropdown (lista de cidades), será carregada após a seleção de um estado.

HTML (MVC):
DropDownList Estado:
@Html.DropDownListFor(vm => vm.Uf, Model.UfList, new { @class = "form-control selectpicker show-tick", data_live_search = "true", id = "ddlUf" })

DropDownList Cidade:
@Html.DropDownListFor(vm => vm.Cidade, Model.CidadeList, new { @class = "form-control selectpicker show-tick", data_live_search = "true", id = "ddlCidade" })
Onde,
Cidade / Uf (string) e CidadeList / UfList (SelectList


JavaScript (Ajax):
No change (seleciona) do DowpDown “Estados” iremos via ajax retornar uma lista de Cidades para popular o DropDown “Cidades”.
$("#ddlUf").change(function () {

    $.ajax({
        url: @Url.Action("CarregarCidade", "Endereco"), //Ação CarregarCidade e Controller Endereco
        type: 'POST',
        dataType: "json",
        data: { Estado: $("#ddlUf").val() }, //Envia o valor que foi selecionado do Estado (UF)
        success: function (response) { // Recebe um Json com uma lista de cidades (value e text)

            var myObject = eval('(' + response.json + ')'); // Transforma em um object

            $("#ddlCidade").empty();// Limpa o DropDown Cidades (caso exista alguma informação)

            for (var i = 0; i < myObject.length; i++) { // Percorre a lista de cidades retornadas
                $("#ddlCidade").append('<option value="' + myObject[i].CodCidade + '">' + myObject[i].Cidade + '</option>'); // (Append) Cria os registros dentro do DropDown
            };
        }
    });
});

MVC Controller (CarregarCidade):
Controller Endereco:


  [HttpPost]
 public JsonResult CarregarCidade(string Estado)
 {
       var jsonSerialiser = new JavaScriptSerializer();
       var json = jsonSerialiser.Serialize(ListarCidade(Estado)); // o método “ListaCidade” retorna uma List<objeto>, que será serializado para Json.

       return Json(json, JsonRequestBehavior.AllowGet); // retorna json serializado
}

Em breve mais posts relacionados a Ajax.
Obrigado.


quarta-feira, 10 de setembro de 2014

JavaScript: Máscara para validar um CPF ou CNPJ no mesmo campo

Ótima mascara para validar um CPF ou CNPJ no mesmo campo em JavaScript.

Código JavaScript:

        function mascaraMutuario(o, f) {
            v_obj = o
            v_fun = f
            setTimeout('execmascara()', 1)
        }
        function execmascara() {
            v_obj.value = v_fun(v_obj.value)
        }

        function cpfCnpj(v) {
            //Remove tudo o que não é dígito
            v = v.replace(/\D/g, "")
            if (v.length <= 14) { //CPF
                //Coloca um ponto entre o terceiro e o quarto dígitos
                v = v.replace(/(\d{3})(\d)/, "$1.$2")
                //Coloca um ponto entre o terceiro e o quarto dígitos
                //de novo (para o segundo bloco de números)
                v = v.replace(/(\d{3})(\d)/, "$1.$2")
                //Coloca um hífen entre o terceiro e o quarto dígitos
                v = v.replace(/(\d{3})(\d{1,2})$/, "$1-$2")
            } else { //CNPJ
                //Coloca ponto entre o segundo e o terceiro dígitos
                v = v.replace(/^(\d{2})(\d)/, "$1.$2")
                //Coloca ponto entre o quinto e o sexto dígitos
                v = v.replace(/^(\d{2})\.(\d{3})(\d)/, "$1.$2.$3")
                //Coloca uma barra entre o oitavo e o nono dígitos
                v = v.replace(/\.(\d{3})(\d)/, ".$1/$2")
                //Coloca um hífen depois do bloco de quatro dígitos
                v = v.replace(/(\d{4})(\d)/, "$1-$2")
            }
            return v
        }
Código HTML:

<input type='text' name='cpfcnpj' onkeypress='mascaraMutuario(this,cpfCnpj)' onblur='clearTimeout()'>




quinta-feira, 22 de maio de 2014

Oracle - Converter para inteiro resultado de uma estrutura CASE para utilização no c#

Oracle - Converter para inteiro resultado de uma estrutura CASE para utilização no c#

                A seguir demonstrarei como converter uma string para inteiro (Int32 – c#) utilizando o case dentro de um select.

--Correta (Neste caso, o valor que retornar no case, será convertido para Number(5), ou seja Int32 em c#)
SELECT CAST(CASE WHEN 'campo_tabela' = 'campo_tabela' THEN '1' ELSE '2' END AS NUMBER(5)) AS ORIGEM
FROM dual;

A seguir demonstrarei o problema que estava tendo ocorrendo na conversão utilizando o case.

--Incorreta (Neste caso, o cast estava sendo feito nos valores dentro do case (1 e 2), e de forma implícita o case converte para decimal).
SELECT  CASE WHEN 'campo_tabela' = 'campo_tabela' THEN CAST('1' AS NUMBER(5)) ELSE CAST('2' AS NUMBER(5)) END AS ORIGEM

FROM  dual;


Definir Auto-Replace no PL/SQL

Definir Auto-Replace no PL/SQL

A seguir vou demonstrar como definir automaticamente a substituição de palavras / comandos / querys no PL/SQL.
                Por exemplo, se digitar “FRON” desejo que apareça “FROM”, pode definir este e diversos outros casos.

Como definir:
1.       Abra o PL/SQL:
2.       Clique em Tools > Preferences.
3.       No menu do lado esquerdo localize (User Interface) e clique em Editor.
4.       Na tela central localize “Auto Replece”, neste campo devemos setar o caminho de um arquivo .txt contendo as palavras que gostaríamos de auto modificar, conforme exemplo a seguir:

AutoReplace.txt (Nome do arquivo)
WHERER=WHERE
ADN =AND
S*F = SELECT * FROM
FROn =FROM



Clique em apply.


PL/SQL - Como definir palavras chaves como maiúsculas


Como definir palavras chaves como maiúsculas no PL/SQL

O padrão de desenvolvimento é um requisito muito importante em uma equipe de desenvolvimento,
a seguir irei demonstrar uma maneira simples e eficaz de definir automáticamente todas as palavras chaves em maiúscula (caixa alta) ao digitar sua query.
Como definir:
1.       Abra o PL/SQL
2.       Clique no menu tools > Preferences > No menu esquerdo, localize (User Interface) e clique em Editor.
3.       Localize Keyword Case e marque a opção Uppercase.
4.       Clique em Apply.


Pronto, com este procedimento já está configurado as palavras chaves automaticamente ao montar sua query.
Abra um SQL Window e digita uma query e verifique, se a mesma esta definindo automaticamente todas as palavras chaves.


Obrigado e até a próxima dica.