Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.automaster.client.ui.paineis.dialogs.editar.cadastronovo; import com.automaster.client.Info; import com.google.gwt.core.shared.GWT; import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.Record; import com.smartgwt.client.types.Alignment; import com.smartgwt.client.types.AnimationEffect; import com.smartgwt.client.types.CharacterCasing; import com.smartgwt.client.util.SC; import com.smartgwt.client.widgets.IButton; import com.smartgwt.client.widgets.Label; import com.smartgwt.client.widgets.Window; import com.smartgwt.client.widgets.events.ClickEvent; import com.smartgwt.client.widgets.events.ClickHandler; import com.smartgwt.client.widgets.events.CloseClickEvent; import com.smartgwt.client.widgets.events.CloseClickHandler; import com.smartgwt.client.widgets.form.DynamicForm; import com.smartgwt.client.widgets.form.fields.TextAreaItem; import com.smartgwt.client.widgets.form.fields.TextItem; import com.smartgwt.client.widgets.form.validator.LengthRangeValidator; import com.smartgwt.client.widgets.grid.ListGrid; import com.smartgwt.client.widgets.layout.HLayout; import java.util.ArrayList; import java.util.TreeMap; /** * * @author Adriano */ public class EditarNovaPessoaAutorizada extends Window { private int contador; public EditarNovaPessoaAutorizada(final ListGrid listPesAut, final ArrayList<TreeMap<String, String>> dadosVeiculoCopia) { final Window windowAux = this; setTitle("Nova Pessoa Autorizada"); setWidth(500); setHeight(400); setShowMinimizeButton(false); setIsModal(true); setShowModalMask(true); centerInPage(); setLayoutAlign(Alignment.CENTER); Label label = new Label("<strong><h3>Cadastrar Nova Pessoa Autorizada</h3></strong>"); label.setAlign(Alignment.CENTER); label.setStyleName(scClassName); final DynamicForm formNovaPesAut = new DynamicForm(); formNovaPesAut.setMargin(15); formNovaPesAut.setAutoFocus(true); final TextItem itemNome = new TextItem(); itemNome.setTitle("Nome"); itemNome.setName("nome"); itemNome.setKeyPressFilter("[a-zA-Z? [0-9]"); itemNome.setRequired(true); itemNome.setCharacterCasing(CharacterCasing.UPPER); itemNome.setWidth(300); LengthRangeValidator tamanhoNome = new LengthRangeValidator(); tamanhoNome.setMin(3); itemNome.setValidators(tamanhoNome); final TextItem itemTelefone = new TextItem(); itemTelefone.setTitle("Nmero"); itemTelefone.setName("numero"); itemTelefone.setRequired(true); itemTelefone.setMask("(##)#####-####"); itemTelefone.setWidth(300); LengthRangeValidator tamanhoTelefone = new LengthRangeValidator(); tamanhoTelefone.setMin(11); itemTelefone.setValidators(tamanhoTelefone); final TextAreaItem descricao = new TextAreaItem(); descricao.setTitle("Descrio"); descricao.setName("descricao"); descricao.setPrintFullText(false); descricao.setWidth(300); descricao.setValue(""); formNovaPesAut.setFields(itemNome, itemTelefone, descricao); addCloseClickHandler(new CloseClickHandler() { @Override public void onCloseClick(CloseClickEvent event) { destroy(); } }); HLayout hButoes = new HLayout(); hButoes.setWidth(200); hButoes.setMembersMargin(3); hButoes.setLayoutAlign(Alignment.CENTER); IButton cadastrar = new IButton("Cadastrar"); IButton limpar = new IButton("Limpar"); hButoes.setMargin(5); hButoes.addMember(cadastrar); hButoes.addMember(limpar); cadastrar.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (formNovaPesAut.validate()) { contador = 0; final Window janelaCarregando = new Window(); janelaCarregando.setShowTitle(false); janelaCarregando.setWidth(100); janelaCarregando.setHeight(50); janelaCarregando.setShowEdges(false); janelaCarregando.setShowCloseButton(false); janelaCarregando.setShowMinimizeButton(false); janelaCarregando.setIsModal(true); janelaCarregando.setShowModalMask(true); janelaCarregando.centerInPage(); janelaCarregando.setLayoutAlign(Alignment.CENTER); final Label mensagem = new Label("Carregando.."); mensagem.setHeight(16); new Timer() { public void run() { if (contador != 100) { contador += 1 + (int) (5 * Math.random()); schedule(1 + (int) (50 * Math.random())); mensagem.setContents("Carregando: " + contador + "%"); janelaCarregando.addItem(mensagem); janelaCarregando.setAnimateTime(1200); janelaCarregando.animateShow(AnimationEffect.FADE); if (contador >= 100) { mensagem.setContents("Carregando: 100%"); TreeMap<String, String> novoPessoaAutorizada = new TreeMap<String, String>(); //GWT.log("Linha 1"+descricao.getValue()); novoPessoaAutorizada.put("codVeiculo", dadosVeiculoCopia.get(0).get("codVeiculo")); novoPessoaAutorizada.put("nomePes", itemNome.getValueAsString()); novoPessoaAutorizada.put("telefonePes", itemTelefone.getValueAsString()); novoPessoaAutorizada.put("descricaoPes", descricao.getValueAsString()); //GWT.log("Linha 2"); Info.dbService.cadastrarPessoaAutorizada(novoPessoaAutorizada, new AsyncCallback<Boolean>() { @Override public void onFailure(Throwable caught) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void onSuccess(Boolean novaPessoaAut) { if (novaPessoaAut == true) { Info.dbService.buscarUltimaPessoaAutorizada( new AsyncCallback<Integer>() { @Override public void onFailure(Throwable caught) { throw new UnsupportedOperationException( "Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void onSuccess(Integer ultimaPessoaAut) { if (ultimaPessoaAut > 0) { TreeMap<String, String> veiculo = new TreeMap<String, String>(); //GWT.log("Linha 3"); veiculo.put("codInstalador", dadosVeiculoCopia.get(0) .get("codInstalador")); veiculo.put("nomeInstalador", dadosVeiculoCopia.get(0) .get("nomeInstalador")); veiculo.put("codVeiculoInd", "null"); veiculo.put("placaIndicador", dadosVeiculoCopia.get(0) .get("placaIndicador")); veiculo.put("codParcela", dadosVeiculoCopia.get(0) .get("codParcela")); veiculo.put("valorParcela", dadosVeiculoCopia.get(0) .get("valorParcela")); veiculo.put("numeroParcela", dadosVeiculoCopia.get(0) .get("numeroParcela")); veiculo.put("codTc", dadosVeiculoCopia .get(0).get("codTc")); veiculo.put("descricaoTc", dadosVeiculoCopia.get(0) .get("descricaoTc")); veiculo.put("codVeiculo", dadosVeiculoCopia.get(0) .get("codVeiculo")); veiculo.put("placaVeiculo", dadosVeiculoCopia.get(0) .get("placaVeiculo")); veiculo.put("chassi", dadosVeiculoCopia .get(0).get("chassi")); veiculo.put("fabricante", dadosVeiculoCopia.get(0) .get("fabricante")); veiculo.put("modelo", dadosVeiculoCopia .get(0).get("modelo")); veiculo.put("cor", dadosVeiculoCopia .get(0).get("cor")); veiculo.put("ano", dadosVeiculoCopia .get(0).get("ano")); veiculo.put("dataAdesao", dadosVeiculoCopia.get(0) .get("dataAdesao")); veiculo.put("ativoVeic", dadosVeiculoCopia.get(0) .get("ativoVeic")); veiculo.put("desconto", dadosVeiculoCopia.get(0) .get("desconto")); veiculo.put("codEquipamento", dadosVeiculoCopia.get(0) .get("codEquipamento")); veiculo.put("idEquipamento", dadosVeiculoCopia.get(0) .get("idEquipamento")); veiculo.put("codModeloEquipamento", dadosVeiculoCopia.get(0).get( "codModeloEquipamento")); veiculo.put("descricaoModelo", dadosVeiculoCopia.get(0).get( "descricaoModelo")); veiculo.put("fabricanteMod", dadosVeiculoCopia.get(0) .get("fabricanteMod")); veiculo.put("codPlano", dadosVeiculoCopia.get(0) .get("codPlano")); veiculo.put("descricaoPlano", dadosVeiculoCopia.get(0) .get("descricaoPlano")); veiculo.put("valorPlano", dadosVeiculoCopia.get(0) .get("valorPlano")); veiculo.put("codCidade", dadosVeiculoCopia.get(0) .get("codCidade")); veiculo.put("cidadeNome", dadosVeiculoCopia.get(0) .get("cidadeNome")); veiculo.put("codEstado", dadosVeiculoCopia.get(0) .get("codEstado")); veiculo.put("estadoNome", dadosVeiculoCopia.get(0) .get("estadoNome")); veiculo.put("codPad", null); veiculo.put("corFio", null); veiculo.put("padraoLd", null); veiculo.put("sinalPad", null); veiculo.put("funcaoPad", null); veiculo.put("ativoPad", null); //GWT.log("Linha 4"); veiculo.put("descricaoPad", null); //GWT.log("Linha 5"); veiculo.put("codPes", String .valueOf(ultimaPessoaAut)); veiculo.put("nomePes", itemNome.getValueAsString()); veiculo.put("telefonePes", itemTelefone .getValueAsString()); veiculo.put("descricaoPes", descricao.getValueAsString()); //GWT.log("Linha 6"); // Adicionando o novo padro de ligao no DadosVeiculosCopia dadosVeiculoCopia.add(veiculo); Record padLigacao = new Record(); // GWT.log("Linha 7"); padLigacao.setAttribute("codigo", String .valueOf(ultimaPessoaAut)); padLigacao.setAttribute("nomePes", ((itemNome == null) ? "Sem informao" : itemNome .getValueAsString())); padLigacao.setAttribute("telefonePes", (itemTelefone == null) ? "Sem informao" : itemTelefone .getValueAsString()); padLigacao.setAttribute("descricaoPes", ((descricao == null) || descricao .getValueAsString() .equalsIgnoreCase( "") ? "Sem informao" : descricao .getValueAsString())); //GWT.log("Linha 8"); listPesAut.addData(padLigacao); SC.say("Nova pessoa autorizada adicionada com sucesso!"); } else { SC.warn("ERRO ao buscar o ltima pessoa autorizada cadastrada"); } } }); } else { SC.warn("ERRO ao inserir nova pessoa autorizada"); } } }); janelaCarregando.addItem(mensagem); janelaCarregando.setAnimateTime(1200); janelaCarregando.animateHide(AnimationEffect.FADE); contador = 100; janelaCarregando.destroy(); } } else { contador = 0; } } }.schedule(50); windowAux.destroy(); } } }); limpar.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { itemNome.clearValue(); itemTelefone.clearValue(); descricao.clearValue(); formNovaPesAut.focusInItem(itemNome); } }); addItem(label); addItem(formNovaPesAut); addItem(hButoes); } }