Skip to content

Instantly share code, notes, and snippets.

@wharley
Created October 28, 2016 15:36
Show Gist options
  • Save wharley/e40e8cd64d2955cc2efbc278d28f630f to your computer and use it in GitHub Desktop.
Save wharley/e40e8cd64d2955cc2efbc278d28f630f to your computer and use it in GitHub Desktop.
qx.Class.define("ekoosweb.receita.ECadastro",
{
extend : qx.ui.window.Window,
construct : function(id, objUsu) {
this.base(arguments);
this.__id = null;
this.__objUsu = objUsu;
if ( id !== undefined )
this.__id = id;
this.setLayout(new qx.ui.layout.VBox(5));
this.set({
modal : true,
allowMinimize : false,
allowMaximize : false,
caption : "Alteração de receita",
icon : "icon/16/apps/utilities-terminal.png"
});
this.main();
this.open();
},
events: {
"requestKind": "qx.event.type.Event",
"requestData": "qx.event.type.Event",
"requestPerson": "qx.event.type.Event",
"requestBank": "qx.event.type.Event",
"requestPayment": "qx.event.type.Event",
"requestSave": "qx.event.type.Event"
},
members : {
main : function() {
/***
*** Componentes
***/
var grid = new qx.ui.layout.Grid( 5, 5 );
var form = new qx.ui.container.Composite( grid );
grid.setColumnWidth(0, 200);
grid.setColumnWidth(1, 200);
grid.setColumnWidth(2, 200);
grid.setColumnWidth(3, 200);
var maplabel = {rich : true};
var lbCodigo = new qx.ui.basic.Label("Receita");
var tfCodigo = new qx.ui.form.TextField().set({
value : this.__id == null ? null : this.__id.toString(),
invalidMessage : "Código não cadastrado!",
filter : /[0-9]/
});
var lbDescricao = new qx.ui.basic.Label("<b>*</b>Nome:").set(maplabel);
var tfDescricao = new qx.ui.form.TextField().set({
filter : /[0-9A-Za-z /-]/,
maxLength : 100,
invalidMessage : "Campo Obrigatório!"
});
var lbTipo = new qx.ui.basic.Label("Tipo Receita:").set(maplabel);
var sbTipo = new qx.ui.form.SelectBox().set({
invalidMessage : "Campo Obrigatório!"
});
var btnTipo = new qx.ui.form.Button(null, "icon/16/actions/list-add.png").set({
allowStretchX : false
});
var ctTipo = new qx.ui.container.Composite(new qx.ui.layout.HBox(5));
ctTipo.add(sbTipo, { flex : 1 });
ctTipo.add(btnTipo);
var lbPessoa = new qx.ui.basic.Label("Pessoa:").set(maplabel);
var sbPessoa = new qx.ui.form.SelectBox();
var btnPessoa = new qx.ui.form.Button(null, "icon/16/actions/list-add.png").set({
allowStretchX : false
});
var ctPessoa = new qx.ui.container.Composite(new qx.ui.layout.HBox(5));
ctPessoa.add(sbPessoa, { flex : 1 });
ctPessoa.add(btnPessoa);
var lbDtLanc = new qx.ui.basic.Label("<b>*</b>Data do lançamento:").set(maplabel);
var dfDtLanc = new qx.ui.form.DateField().set({});
var lbDtVenc = new qx.ui.basic.Label("<b>*</b>Data de referência:").set(maplabel);
var dfDtVenc = new qx.ui.form.DateField().set({});
var lbDtPagt = new qx.ui.basic.Label("Pagamento:").set(maplabel);
var dfDtPagt = new qx.ui.form.DateField().set({
enabled: false
});
var lbValorReal = new qx.ui.basic.Label("<b>*</b>Valor:").set(maplabel);
var tfValorReal = new qx.ui.form.TextField().set({
filter : /[0-9.,]/,
maxLength : 18,
invalidMessage : "Campo Obrigatório!"
});
var lbPeriodo = new qx.ui.basic.Label("<b>*</b>Periodo:").set(maplabel);
var tfPeriodo = new qx.ui.form.TextField().set({
filter : /[0-9A-Za-z ]/,
maxLength : 100,
invalidMessage : "Campo Obrigatório!",
visibility: "hidden"
});
var lbDocumento = new qx.ui.basic.Label("Identificação do documento:");
var tfDocumento = new qx.ui.form.TextField().set({
invalidMessage : "Código não cadastrado!",
filter : /[0-9]/
});
var chBoleto = new qx.ui.form.CheckBox("Boleto ?");
var lbObservacao = new qx.ui.basic.Label("Observação:").set(maplabel);
var tfObsercacao = new qx.ui.form.TextArea();
var lbBanco = new qx.ui.basic.Label("Banco:").set(maplabel);
var sbBanco = new qx.ui.form.SelectBox().set({
enabled: false
});
var lbPagto = new qx.ui.basic.Label("Tipo Pagamento:").set(maplabel);
var sbPagto = new qx.ui.form.SelectBox().set({
enabled: false
});
var btnsalvar = new qx.ui.form.Button("Salvar", "icon/16/actions/dialog-apply.png");
var btnlimpar = new qx.ui.form.Button("Limpar", "icon/16/actions/edit-clear.png");
var btnsair = new qx.ui.form.Button("Voltar", "icon/16/actions/application-exit.png");
var botoes = new qx.ui.container.Composite( new qx.ui.layout.HBox(5));
botoes.add(btnsalvar);
botoes.add(btnlimpar);
botoes.add(btnsair);
form.add(lbCodigo, {row : 0, column : 0 });
form.add(tfCodigo, {row : 1, column : 0 });
form.add(lbDocumento, {row : 0, column : 1 });
form.add(tfDocumento, {row : 1, column : 1 });
form.add(lbDescricao, {row : 0, column : 2, colSpan: 2 });
form.add(tfDescricao, {row : 1, column : 2, colSpan: 2 });
//form.add(lbPessoa, {row : 2, column : 0 });
//form.add(ctPessoa, {row : 3, column : 0, colSpan: 4 });
form.add(lbTipo, {row : 2, column : 0 });
form.add(ctTipo, {row : 3, column : 0, colSpan: 4 });
form.add(lbBanco, {row : 4, column : 0, colSpan: 2 });
form.add(sbBanco, {row : 5, column : 0, colSpan: 2 });
form.add(lbPagto, {row : 4, column : 2, colSpan: 2 });
form.add(sbPagto, {row : 5, column : 2, colSpan: 2 });
// form.add(lbPeriodo, {row : 8, column : 0 });
// form.add(tfPeriodo, {row : 9, column : 0 });
form.add(lbDtLanc, {row : 6, column : 0 });
form.add(dfDtLanc, {row : 7, column : 0, colSpan: 2 });
//form.add(lbDtVenc, {row : 6, column : 2 });
//form.add(dfDtVenc, {row : 7, column : 2 });
form.add(lbDtPagt, {row : 6, column : 2 });
form.add(dfDtPagt, {row : 7, column : 2 });
form.add(lbValorReal, {row : 6, column : 3 });
form.add(tfValorReal, {row : 7, column : 3 });
//form.add(chBoleto, {row : 11, column : 2 });
form.add(lbObservacao, {row : 8, column : 0 });
form.add(tfObsercacao, {row : 9, column : 0, colSpan: 4 });
form.add(botoes, {row : 10, column : 0 });
/***
*** Containers
***/
this.add(form);
/***
*** Eventos
***/
this.addListener("requestSave", function(){
var objDados = {
seq_receita: tfCodigo.getValue() || "",
documento_numero: tfDocumento.getValue() || "",
nome_receita: tfDescricao.getValue() || "",
periodo: "",
parcela: "",
data_lancamento: dfDtLanc.getValue() || "",
data_vencimento: dfDtVenc.getValue() || "",
data_pagamento: dfDtPagt.getValue() || "",
confirmada: 'N',
fag: 'N',
boleto: chBoleto.getValue() ? 'S' : 'N',
quitada: 'N',
valor_real: tfValorReal.getValue().replace(",", ".") || "0",
valor_desconto: "0",
valor_juros: "0",
valor_budget: "0",
valor_total_receita: tfValorReal.getValue().replace(",", ".") || "0",
observacao: tfObsercacao.getValue() || "",
cod_pessoa: sbPessoa.getSelection()[0].getUserData("id"),
seq_tipo_receita: sbTipo.getSelection()[0].getUserData("id"),
cod_banco: sbBanco.getSelection()[0].getUserData("id"),
num_grupo_repeticao_receita: null,
codigo_tipo_pag: sbPagto.getSelection()[0].getUserData("id"),
num_filial: this.__objUsu.cod_filial_corrente
}
if ( objDados.nome_receita != "" && objDados.seq_tipo_receita !== null &&
objDados.data_lancamento !== "" && objDados.valor_real !== "" ) {
var req = new qx.io.request.Xhr();
req.setUrl("/updateReceita");
req.setMethod("POST");
req.setRequestData(objDados);
req.send();
req.addListener("success", function(e) {
var req = e.getTarget();
var response = req.getResponse();
if (response.resposta){
dialog.Dialog.alert("Gravado com Sucesso");
btnsair.fireEvent("execute");
}
}, this)
} else {
if ( objDados.nome_receita == "" ) {
tfDescricao.setValid(false);
}
if ( objDados.seq_tipo_receita == null ) {
sbTipo.setValid(false);
}
if ( objDados.data_lancamento == "" ) {
dfDtLanc.setValid(false);
}
if ( objDados.valor_real == "" ) {
tfValorReal.setValid(false);
}
}
})
this.addListener("requestData", function(){
var reqEdit = new qx.io.request.Xhr();
reqEdit.setUrl("/byIdReceita");
reqEdit.setMethod("POST");
reqEdit.setRequestData({"id": tfCodigo.getValue(), "num_filial": this.__objUsu.cod_filial_corrente});
reqEdit.send();
reqEdit.addListener("success", function (e) {
var data = e.getTarget().getResponse().data;
if ( data.length > 0 ) {
tfCodigo.setValid(true);
tfDescricao.setValue(data[0].nome_receita);
tfDocumento.setValue(data[0].documento_numero);
tfPeriodo.setValue(data[0].periodo);
dfDtLanc.setValue(new Date(data[0].data_lancamento));
dfDtVenc.setValue(data[0].data_vencimento == null ? null : new Date(data[0].data_vencimento));
dfDtPagt.setValue(data[0].data_pagamento == null ? null : new Date(data[0].data_pagamento));
chBoleto.setValue(data[0].boleto == 'S' ? true : false);
tfValorReal.setValue(data[0].valor_real ? data[0].valor_real.toString() : '0,00');
tfObsercacao.setValue(data[0].observacao);
//tfDescricao.setEnabled(data[0].data_pagamento == null ? true : false);
//btnsalvar.setEnabled(data[0].data_pagamento == null ? true : false);
tfDocumento.setEnabled(data[0].data_pagamento == null ? true : false);
tfPeriodo.setEnabled(data[0].data_pagamento == null ? true : false);
dfDtVenc.setEnabled(data[0].data_pagamento == null ? true : false);
chBoleto.setEnabled(data[0].data_pagamento == null ? true : false);
//tfValorReal.setEnabled(data[0].data_pagamento == null ? true : false);
tfObsercacao.setEnabled(data[0].data_pagamento == null ? true : false);
dfDtLanc.setEnabled(data[0].data_pagamento == null ? true : false);
sbPessoa.setEnabled(data[0].data_pagamento == null ? true : false);
sbTipo.setEnabled(data[0].data_pagamento == null ? true : false);
for ( var i = 0; i < sbPessoa.getChildren().length; i++ ) {
if (sbPessoa.getChildren()[i].getUserData("id") == data[0].cod_pessoa)
sbPessoa.setSelection([sbPessoa.getChildren()[i]]);
}
for ( var i = 0; i < sbTipo.getChildren().length; i++ ) {
if (sbTipo.getChildren()[i].getUserData("id") == data[0].seq_tipo_receita)
sbTipo.setSelection([sbTipo.getChildren()[i]]);
}
for ( var i = 0; i < sbBanco.getChildren().length; i++ ) {
if (sbBanco.getChildren()[i].getUserData("id") == data[0].cod_banco)
sbBanco.setSelection([sbBanco.getChildren()[i]]);
}
for ( var i = 0; i < sbPagto.getChildren().length; i++ ) {
if (sbPagto.getChildren()[i].getUserData("id") == data[0].codigo_tipo_pag)
sbPagto.setSelection([sbPagto.getChildren()[i]]);
}
tfDescricao.focus();
} else {
tfCodigo.resetValue();
tfCodigo.setValid(false);
}
}, this);
})
this.addListener("requestPayment", function(){
var reqPagto = new qx.io.request.Xhr();
reqPagto.setUrl("/byTpPagtoall");
reqPagto.setMethod("POST");
reqPagto.setRequestData({});
reqPagto.send();
reqPagto.addListener("success", function(e) {
var data = e.getTarget().getResponse().data;
sbPagto.removeAll();
var obj = new qx.ui.form.ListItem( "--" );
obj.setUserData( "id", null );
sbPagto.add( obj );
for ( var i = 0; i < data.length; i++ ) {
var obj = new qx.ui.form.ListItem( data[i].desc_tipo_pag );
obj.setUserData( "id", data[i].codigo_tipo_pag );
sbPagto.add( obj );
}
this.fireEvent("requestData")
}, this);
})
this.addListener("requestBank", function(){
var reqBanco = new qx.io.request.Xhr();
reqBanco.setUrl("/byBancoAll");
reqBanco.setMethod("POST");
reqBanco.setRequestData({"num_filial": this.__objUsu.cod_filial_corrente});
reqBanco.send();
reqBanco.addListener("success", function(e) {
var data = e.getTarget().getResponse().data;
sbBanco.removeAll();
var obj = new qx.ui.form.ListItem( "--" );
obj.setUserData( "id", null );
sbBanco.add( obj );
for ( var i = 0; i < data.length; i++ ) {
var obj = new qx.ui.form.ListItem( data[i].nome_banco );
obj.setUserData( "id", data[i].cod_banco );
sbBanco.add( obj );
}
this.fireEvent("requestPayment")
}, this);
})
this.addListener("requestPerson", function(){
var reqPessoa = new qx.io.request.Xhr();
reqPessoa.setUrl("/byPessoaall");
reqPessoa.setMethod("POST");
reqPessoa.setRequestData({"num_filial": this.__objUsu.cod_filial_corrente});
reqPessoa.send();
reqPessoa.addListener("success", function(e) {
var data = e.getTarget().getResponse().data;
sbPessoa.removeAll();
var obj = new qx.ui.form.ListItem( "--" );
obj.setUserData( "id", null );
sbPessoa.add( obj );
for ( var i = 0; i < data.length; i++ ) {
var obj = new qx.ui.form.ListItem( data[i].nome );
obj.setUserData( "id", data[i].cod_pessoa );
sbPessoa.add( obj );
}
this.fireEvent("requestBank")
}, this);
})
this.addListener("requestKind", function(){
var reqTipo = new qx.io.request.Xhr();
reqTipo.setUrl("/byTpReceitaAll");
reqTipo.setMethod("POST");
reqTipo.setRequestData({"num_filial": this.__objUsu.cod_filial_corrente});
reqTipo.send();
reqTipo.addListener("success", function (e) {
var data = e.getTarget().getResponse().data;
sbTipo.removeAll();
for ( var i = 0; i < data.length; i++ ) {
var obj = new qx.ui.form.ListItem( data[i].descricao );
obj.setUserData( "id", data[i].seq_tipo_receita );
sbTipo.add( obj );
}
this.fireEvent("requestPerson");
}, this);
})
this.fireEvent("requestKind");
this.addListener("appear", function() {
this.center();
if ( this.__id != null )
tfDocumento.focus();
else
tfCodigo.focus();
});
btnPessoa.addListener("execute", function(e){
var win = new ekoosweb.pessoa.Cadastro(this.__objUsu);
win.addListener("close", function() {
win.destroy();
this.fireEvent("requestPerson")
}, this);
}, this);
btnTipo.addListener("execute", function(e){
var win = new ekoosweb.tipoReceita.Cadastro(this.__objUsu);
win.addListener("close", function() {
win.destroy();
this.fireEvent("requestKind");
}, this);
}, this);
btnsalvar.addListener("execute", function(){
this.fireEvent("requestSave")
}, this);
btnsair.addListener("execute", function(){
this.close();
}, this);
}
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment