1650 - Melhorias e Alterações no Projeto TLK

This commit is contained in:
2018-09-05 16:48:44 -03:00
parent 75c904982d
commit b92f6ae4ce
4 changed files with 512 additions and 57 deletions
+93 -18
View File
@@ -24,6 +24,7 @@
engine.getField('ufOrigem')["setValue(java.lang.Object)"](null);
engine.getField('ufDestino')["setValue(java.lang.Object)"](null);
engine.getField('formaPagamento')["setValue(java.lang.Object)"](null);
engine.getField('placaCarreta')["setValue(java.lang.Object)"](null);
}
function fncSubTotal() {
@@ -74,7 +75,6 @@
function run() {
engine.getField('valorImposto').setEnabled(false);
engine.getField('valorLiquido').setEnabled(false);
engine.getField('placaCarreta').setEnabled(false);
engine.setGlobalVariable('abertura',1);
engine.getField('frotaTerceiro').setValue('F');
engine.getField('ftFrotaTerceiro').setValue('A');
@@ -142,7 +142,17 @@
</valueChange>
</events>
</DBComboBox>
<TextField type="string" id="placaCarreta" caption="Placa carreta" width="100%" expandRatio="0.1" />
<DBComboBox type="string" id="placaCarreta" width="100%" required="true" expandRatio="0.2" align="TOP_LEFT" caption="Placa carreta">
<datasource>
<freeQuery connection-key="vitruvio">
<![CDATA[
Select * from veiculo where placa_carreta is not null
]]>
</freeQuery>
</datasource>
<key-field>PLACA_CARRETA</key-field>
<caption-field>PLACA_CARRETA</caption-field>
</DBComboBox>
<DBComboBox type="string" id="funcionario" required="true" width="100%" expandRatio="0.2" align="TOP_LEFT" caption="Funcionário">
<datasource>
<freeQuery connection-key="vitruvio">
@@ -218,18 +228,18 @@
</freeQuery>
</datasource>
<key-field>CHAVE_ESTADO</key-field>
<caption-field>NOME</caption-field>
<caption-field>SIGLA</caption-field>
</DBComboBox>
<DBComboBox type="string" id="ufDestino" caption="UF Destino" width="100%" expandRatio="0.1" >
<datasource>
<freeQuery connection-key="vitruvio">
<![CDATA[
Select cp.chave_estado, e.nome from clientes_praca cp inner join estados e on e.chave_estado = cp.chave_estado where cp.chave_cliente = ${codigo}
Select cp.chave_estado, e.sigla from clientes_praca cp inner join estados e on e.chave_estado = cp.chave_estado where cp.chave_cliente = ${codigo}
]]>
</freeQuery>
</datasource>
<key-field>CHAVE_ESTADO</key-field>
<caption-field>NOME</caption-field>
<caption-field>SIGLA</caption-field>
<bind>
<parameter value-type="number" defaultValue="-1" parameterName="codigo" field-ref="cliente"/>
</bind>
@@ -273,7 +283,7 @@
<caption-field>NOME</caption-field>
</DBComboBox>
<DecimalField type="decimal" id="valorImposto" caption="Valor impostos (R$)" format="#,##0.00" description="Valor impostos" width="100%" expandRatio="0.2" />
<DecimalField type="decimal" id="valorLiquido" caption="Frete - Impostos (R$)" format="#,##0.00" description="Valor frete menos o valor dos impostos" width="100%" expandRatio="0.2" />
<DecimalField type="decimal" id="valorLiquido" caption="Valor Líquido (Frete - Impostos) (R$)" format="#,##0.00" description="Valor frete menos o valor dos impostos" width="100%" expandRatio="0.2" />
<ButtonWidget id="btnGravar" caption="Gravar" align="BOTTOM_RIGHT" description="Grava o lançamento" width="100" >
<onClickScript language="JavaScript">
<![CDATA[
@@ -284,8 +294,8 @@
var dbVitruvio = new db('vitruvio');
var sql;
dbVitruvio.transaction(function() {
sql = "insert into controle_receitas_fretes (chave_receita_frete,data,chave_cliente,chave_veiculo,chave_funcionario,valor_frete,valor_imposto,valor_liquido,chave_tipo_frete,cte,frota_terceiro,uf_origem,uf_destino,chave_forma_pagamento) " +
" values (" + dbVitruvio.getSequenceNextValSql('controle_rec_fr_seq') + ",:data,:chave_cliente,:chave_veiculo,:chave_funcionario,:valor_frete,:valor_imposto,:valor_liquido,:tipo_frete,:cte,:frota_terceiro,:uf_origem,:uf_destino,:forma_pagamento)";
sql = "insert into controle_receitas_fretes (chave_receita_frete,data,chave_cliente,chave_veiculo,chave_funcionario,valor_frete,valor_imposto,valor_liquido,chave_tipo_frete,cte,frota_terceiro,uf_origem,uf_destino,chave_forma_pagamento,placa_carreta) " +
" values (" + dbVitruvio.getSequenceNextValSql('controle_rec_fr_seq') + ",:data,:chave_cliente,:chave_veiculo,:chave_funcionario,:valor_frete,:valor_imposto,:valor_liquido,:tipo_frete,:cte,:frota_terceiro,:uf_origem,:uf_destino,:forma_pagamento,:placa_carreta)";
this.update(sql, {
data: engine.getField('dataLancamento').getValue(),
chave_cliente: Number(engine.getField('cliente').getValue()),
@@ -299,7 +309,8 @@
frota_terceiro: String(engine.getField('frotaTerceiro').getValue()),
uf_origem: Number(engine.getField('ufOrigem').getValue()),
uf_destino: Number(engine.getGlobalVariable('praca')),
forma_pagamento: engine.getField('formaPagamento').getValue()
forma_pagamento: engine.getField('formaPagamento').getValue(),
placa_carreta: engine.getField('placaCarreta').getValue()
});
});
engine.getField('tbLancamentos').refresh();
@@ -367,7 +378,7 @@
</freeQuery>
</datasource>
<key-field>CHAVE_ESTADO</key-field>
<caption-field>NOME</caption-field>
<caption-field>SIGLA</caption-field>
</DBComboBox>
<ButtonWidget id="btnFiltrar" caption="Filtrar" align="MIDDLE_LEFT" description="Aplica filtro" width="100" >
<onClickScript language="JavaScript">
@@ -415,7 +426,7 @@
</value>
</Label>
</HorizontalLayout>
<DBTable id="tbLancamentos" type="number" showRowCount="true" width="100%" rows="9" selectable="false" exportXLS="true" editable="true" >
<DBTable id="tbLancamentos" type="number" showRowCount="true" width="100%" rows="6" selectable="false" exportXLS="true" editable="true" >
<datasource>
<sqlBuilderDataSource connection-key="vitruvio" language="JavaScript">
<![CDATA[
@@ -423,7 +434,6 @@
var sql = "Select ccf.chave_receita_frete, ccf.data, " +
" (select co.nome from clientes co where co.codigo = ccf.chave_cliente) cliente," +
" (select cv.placa from veiculo cv where cv.codigo = ccf.chave_veiculo) veiculo," +
" (select cv.placa_carreta from veiculo cv where cv.codigo = ccf.chave_veiculo) placa_carreta," +
" (select cf.nome from funcionario cf where cf.codigo = ccf.chave_funcionario) funcionario," +
" ccf.cte," +
" (select descricao from tipo_frete where codigo = ccf.chave_tipo_frete) tipo_frete," +
@@ -433,14 +443,14 @@
" (select nome from forma_pagamento where codigo = ccf.chave_forma_pagamento) forma_pagamento," +
" replace(replace(replace(to_char(ccf.valor_frete, '9999999999D99'),',','-' ),'.',','),'-','.') valor_frete, " +
" replace(replace(replace(to_char(ccf.valor_imposto, '9999999999D99'),',','-' ),'.',','),'-','.') valor_imposto, " +
" replace(replace(replace(to_char(ccf.valor_liquido, '9999999999D99'),',','-' ),'.',','),'-','.') valor_liquido " +
" replace(replace(replace(to_char(ccf.valor_liquido, '9999999999D99'),',','-' ),'.',','),'-','.') valor_liquido, " +
" ccf.placa_carreta placa_carreta " +
" from controle_receitas_fretes ccf" +
" where 1 = 2";
if (engine) {
sql = "Select ccf.chave_receita_frete, ccf.data, " +
" (select co.nome from clientes co where co.codigo = ccf.chave_cliente) cliente," +
" (select cv.placa from veiculo cv where cv.codigo = ccf.chave_veiculo) veiculo," +
" (select cv.placa_carreta from veiculo cv where cv.codigo = ccf.chave_veiculo) placa_carreta," +
" (select cf.nome from funcionario cf where cf.codigo = ccf.chave_funcionario) funcionario," +
" ccf.cte," +
" (select descricao from tipo_frete where codigo = ccf.chave_tipo_frete) tipo_frete," +
@@ -450,7 +460,8 @@
" (select nome from forma_pagamento where codigo = ccf.chave_forma_pagamento) forma_pagamento," +
" ccf.valor_frete valor_frete, " +
" ccf.valor_imposto valor_imposto, " +
" ccf.valor_liquido valor_liquido " +
" ccf.valor_liquido valor_liquido, " +
" ccf.placa_carreta placa_carreta " +
" from controle_receitas_fretes ccf" +
" where ccf.data between '" + engine.getField('dataInicio') + "' and '" + engine.getField('dataFinal') + "'";
if (engine.getField('ftFuncionario').getValue()) {
@@ -594,7 +605,71 @@
]]>
</scriptColumnGenerator>
</generated>
<column name="PLACA_CARRETA" caption="Placa carreta" expand-ratio="0.1" commitOnValueChange="true" />
<generated name="PLACA_CARRETA" caption="Placa carreta" cache="false" expand-ratio="0.05" >
<scriptColumnGenerator language="JavaScript">
<![CDATA[
importClass(Packages.com.vaadin.ui.ComboBox);
importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
importClass(Packages.com.vaadin.data.Property);
var setUsuario = function(chave, cliente) {
if (cliente) {
var sqlAtualiza = "UPDATE controle_receitas_fretes SET placa_carreta = ? "+
" WHERE CHAVE_RECEITA_FRETE = ? ";
var params = new java.util.ArrayList();
params.add(cliente);
params.add(chave);
vQueryService.executePSUpdateQuery('vitruvio', sqlAtualiza, params.toArray());
} else {
var sqlAtualiza = "UPDATE controle_receitas_fretes SET placa_carreta = null "+
" WHERE CHAVE_RECEITA_FRETE = ? ";
var params = new java.util.ArrayList();
params.add(chave);
vQueryService.executePSUpdateQuery('vitruvio', sqlAtualiza, params.toArray());
}
};
function generate(itemId, columnId, item, container) {
var sql = "Select placa_carreta from veiculo where placa_carreta is not null";
var ds = vQueryService.executeQuery('vitruvio', sql);
if(ds == null){
return null;
}
var map = new java.util.LinkedHashMap();
while(ds.next()) {
map.put(ds.getString('PLACA_CARRETA'), ds.getString('PLACA_CARRETA'));
}
var combo = new ComboBox();
combo.setWidth("100%");
ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
var linha = item;
if(linha.getItemProperty('PLACA_CARRETA').getValue()) {
combo.setValue(linha.getItemProperty('PLACA_CARRETA').getValue());
}
combo.addValueChangeListener(new Property.ValueChangeListener() {
valueChange: function(event) {
setUsuario(linha.getItemProperty('CHAVE_RECEITA_FRETE').getValue().longValue(),
event.getProperty().getValue());
},
hashCode: function() {
return combo.hashCode();
}
});
return combo;
}
]]>
</scriptColumnGenerator>
</generated>
<generated name="FUNCIONARIO" caption="Funcionário" cache="false" expand-ratio="0.1" >
<scriptColumnGenerator language="JavaScript">
<![CDATA[
@@ -1050,8 +1125,8 @@
]]>
</scriptColumnGenerator>
</generated>
<column name="VALOR_IMPOSTO" caption="Valor impostos" format="#.##0,00" decimalSeparator=","/>
<column name="VALOR_LIQUIDO" caption="Lucro (Frete - Impostos)" format="#.##0,00" decimalSeparator=","/>
<column name="VALOR_IMPOSTO" caption="Valor impostos" format="###0.00" decimalSeparator="," expand-ratio="0.2"/>
<column name="VALOR_LIQUIDO" caption="Lucro (Frete - Impostos)" format="###0.00" decimalSeparator="," expand-ratio="1"/>
</columns>
<events>
<itemChange>