bug #6052: Fechamento Conta Corrente - Parâmetro

Descrição	Incluir opções para parametrizar o período de fechamento e geração de boleto:
Semanal - considerando fixo segunda-feira
Decendial
Quinzenal
Mensal

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@41605 d1611594-4594-4d17-8e1d-87c2c4800839
master
vinicius 2015-02-19 20:04:52 +00:00
parent 2af2af9606
commit d406f467a6
5 changed files with 148 additions and 14 deletions

View File

@ -15,6 +15,7 @@ import java.util.Map;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.Predicate; import org.apache.commons.collections.Predicate;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope; import org.springframework.context.annotation.Scope;
@ -209,6 +210,12 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
private Radio radIndvendsegopcionalNo; private Radio radIndvendsegopcionalNo;
private Radio radIndestansegopcionalSi; private Radio radIndestansegopcionalSi;
private Radio radIndestansegopcionalNo; private Radio radIndestansegopcionalNo;
private Radio radIntervalofechamentoSemanal;
private Radio radIntervalofechamentoDecendial;
private Radio radIntervalofechamentoQuinzenal;
private Radio radIntervalofechamentoMensal;
private Button btnAdicionarEmpresaComissao; private Button btnAdicionarEmpresaComissao;
private MyComboboxPuntoVenta cmbPuntoVentaPadre; private MyComboboxPuntoVenta cmbPuntoVentaPadre;
private Combobox cmbFormaPago; private Combobox cmbFormaPago;
@ -285,6 +292,11 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
private Checkbox checkStock; private Checkbox checkStock;
private Checkbox checkPermisoTasaEmbarque; private Checkbox checkPermisoTasaEmbarque;
public static final int INTERVALO_FECHAMENTO_SEMANAL = 7;
public static final int INTERVALO_FECHAMENTO_DECENDIAL = 10;
public static final int INTERVALO_FECHAMENTO_QUINZENAL = 15;
public static final int INTERVALO_FECHAMENTO_MENSAL = 30;
public Button getBtnApagar() { public Button getBtnApagar() {
return btnApagar; return btnApagar;
} }
@ -2238,7 +2250,7 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
try { try {
if (fechamentoParamptovtaList.getSelected() != null) { if (fechamentoParamptovtaList.getSelected() != null) {
int resp = Messagebox.show( int resp = Messagebox.show(
Labels.getLabel("editarPuntoVentaController.MSG.borrarPtoVtaCheckin"), Labels.getLabel("editarPuntoVentaController.MSG.borrarFechamentoParamptovta"),
Labels.getLabel("editarPuntoVentaController.window.title"), Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); Messagebox.YES | Messagebox.NO, Messagebox.QUESTION);
@ -2256,26 +2268,95 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
} }
} }
public void onClick$btnAdicionarFechamentoParamptovta(Event ev) { public void onClick$btnAdicionarFechamentoParamptovta(Event ev) {
if (cmbEmpresaFechamentoParamptovta.getSelectedItem() != null) { if (cmbEmpresaFechamentoParamptovta.getSelectedItem() != null &&
(StringUtils.isNotEmpty(txtIntervalofechamento.getValue()) ||
(radIntervalofechamentoSemanal.isChecked()
|| radIntervalofechamentoDecendial.isChecked()
|| radIntervalofechamentoQuinzenal.isChecked()
|| radIntervalofechamentoMensal.isChecked()
)
) ) {
Empresa empresa = (Empresa) cmbEmpresaFechamentoParamptovta.getSelectedItem().getValue(); Empresa empresa = (Empresa) cmbEmpresaFechamentoParamptovta.getSelectedItem().getValue();
FechamentoParamptovta fechamentoParamptovta = new FechamentoParamptovta(); FechamentoParamptovta fechamentoParamptovta = new FechamentoParamptovta();
fechamentoParamptovta.setEmpresa(empresa); fechamentoParamptovta.setEmpresa(empresa);
fechamentoParamptovta.setPuntoventa(puntoVenta); fechamentoParamptovta.setPuntoventa(puntoVenta);
Integer intervalofechamento = Integer.valueOf(txtIntervalofechamento.getValue()); Integer intervalofechamento = 0;
if(radIntervalofechamentoSemanal.isChecked()){
intervalofechamento = INTERVALO_FECHAMENTO_SEMANAL;
} else if(radIntervalofechamentoDecendial.isChecked()){
intervalofechamento = INTERVALO_FECHAMENTO_DECENDIAL;
} else if(radIntervalofechamentoQuinzenal.isChecked()){
intervalofechamento = INTERVALO_FECHAMENTO_QUINZENAL;
} else if(radIntervalofechamentoMensal.isChecked()){
intervalofechamento = INTERVALO_FECHAMENTO_MENSAL;
}else{
intervalofechamento = Integer.valueOf(txtIntervalofechamento.getValue());
}
fechamentoParamptovta.setIntervalofechamento(intervalofechamento); fechamentoParamptovta.setIntervalofechamento(intervalofechamento);
fechamentoParamptovta.setActivo(true); fechamentoParamptovta.setActivo(true);
fechamentoParamptovta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); fechamentoParamptovta.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
fechamentoParamptovta.setFecmodif(new Date()); fechamentoParamptovta.setFecmodif(new Date());
fechamentoParamptovtaService.suscribir(fechamentoParamptovta); boolean validado = validaFechamentoParamptovta(fechamentoParamptovta);
List<FechamentoParamptovta> params = fechamentoParamptovtaService.buscaParametrosPorPuntoventa(puntoVenta); if(validado){
fechamentoParamptovtaList.setData(params); fechamentoParamptovtaService.suscribir(fechamentoParamptovta);
List<FechamentoParamptovta> params = fechamentoParamptovtaService.buscaParametrosPorPuntoventa(puntoVenta);
fechamentoParamptovtaList.setData(params);
resetDadosFechamentoParamptovta();
} else{
try {
Messagebox.show(
Labels.getLabel("editarPuntoVentaController.MSG.fechamentoParamptovtaInvalidado"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.ERROR);
} catch (Exception ex) {
log.error(ex.toString());
}
}
} }
} }
private void resetDadosFechamentoParamptovta(){
cmbEmpresaFechamentoParamptovta.setSelectedItem(null);
radIntervalofechamentoSemanal.setChecked(false);
radIntervalofechamentoDecendial.setChecked(false);
radIntervalofechamentoQuinzenal.setChecked(false);
radIntervalofechamentoMensal.setChecked(false);
txtIntervalofechamento.setValue(null);
}
private boolean validaFechamentoParamptovta(FechamentoParamptovta fechamentoParamptovta){
boolean validado = true;
Object[] params = fechamentoParamptovtaList.getData();
for(Object objectData : params){
FechamentoParamptovta param = (FechamentoParamptovta) objectData;
if(fechamentoParamptovta.getEmpresa().getEmpresaId() == param.getEmpresa().getEmpresaId()){
validado = false;
}
}
return validado;
}
public Textbox getTxtIntervalofechamento() { public Textbox getTxtIntervalofechamento() {
return txtIntervalofechamento; return txtIntervalofechamento;
} }

View File

@ -5,6 +5,7 @@ import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer; import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.FechamentoParamptovta; import com.rjconsultores.ventaboletos.entidad.FechamentoParamptovta;
import com.rjconsultores.ventaboletos.web.gui.controladores.catalogos.EditarPuntoVentaController;
public class FechamentoParamptovtaListItemRenderer implements ListitemRenderer { public class FechamentoParamptovtaListItemRenderer implements ListitemRenderer {
@ -18,10 +19,35 @@ public class FechamentoParamptovtaListItemRenderer implements ListitemRenderer {
empresaCell.setParent(listItem); empresaCell.setParent(listItem);
// private Integer intervalofechamento; // private Integer intervalofechamento;
Listcell intervalofechamento = new Listcell(params.getIntervalofechamento().toString());
String intervaloFechamentoStr = getIntervaloFechamentoStr(params.getIntervalofechamento());
Listcell intervalofechamento = new Listcell(intervaloFechamentoStr);
intervalofechamento.setParent(listItem); intervalofechamento.setParent(listItem);
listItem.setAttribute("data", params); listItem.setAttribute("data", params);
} }
private String getIntervaloFechamentoStr(Integer intervaloFechamento){
String intervaloFechamentoStr = "";
if(EditarPuntoVentaController.INTERVALO_FECHAMENTO_SEMANAL == intervaloFechamento){
intervaloFechamentoStr = String.format("Semanal(%s dias)", intervaloFechamento);
} else if(EditarPuntoVentaController.INTERVALO_FECHAMENTO_DECENDIAL == intervaloFechamento){
intervaloFechamentoStr = String.format("Decendial(%s dias)", intervaloFechamento);
} else if(EditarPuntoVentaController.INTERVALO_FECHAMENTO_QUINZENAL == intervaloFechamento){
intervaloFechamentoStr = String.format("Quinzenal(%s dias)", intervaloFechamento);
} else if(EditarPuntoVentaController.INTERVALO_FECHAMENTO_MENSAL == intervaloFechamento){
intervaloFechamentoStr = "Mensal";
} else {
intervaloFechamentoStr = intervaloFechamento.toString();
}
return intervaloFechamentoStr;
}
} }

View File

@ -822,6 +822,12 @@ editarPuntoVentaController.puntoventa.label = Agencia
editarPuntoVentaController.btnPesquisa.label = Pesquisa editarPuntoVentaController.btnPesquisa.label = Pesquisa
editarPuntoVentaController.intervalofechamento.label = Intervalo Fechamento(dias) editarPuntoVentaController.intervalofechamento.label = Intervalo Fechamento(dias)
editarPuntoVentaController.fecmodif.label = Ult. Atual. editarPuntoVentaController.fecmodif.label = Ult. Atual.
editarPuntoVentaController.radIntervalofechamentoSemanal.value=Semanal
editarPuntoVentaController.radIntervalofechamentoDecendial.value=Decendial
editarPuntoVentaController.radIntervalofechamentoQuinzenal.value=Quinzenal
editarPuntoVentaController.radIntervalofechamentoMensal.value=Mensal
editarPuntoVentaController.MSG.borrarFechamentoParamptovta=Deseja eliminar este parâmetro ?
editarPuntoVentaController.MSG.fechamentoParamptovtaInvalidado=Já existe parâmetro cadastrado.
# Editar comisión ponto de venta # Editar comisión ponto de venta
editarPuntoVentaComissaoController.window.title = Comisión empresa/Punto de venta editarPuntoVentaComissaoController.window.title = Comisión empresa/Punto de venta

View File

@ -853,7 +853,12 @@ editarPuntoVentaController.puntoventa.label = Agencia
editarPuntoVentaController.btnPesquisa.label = Pesquisa editarPuntoVentaController.btnPesquisa.label = Pesquisa
editarPuntoVentaController.intervalofechamento.label = Intervalo Fechamento(dias) editarPuntoVentaController.intervalofechamento.label = Intervalo Fechamento(dias)
editarPuntoVentaController.fecmodif.label = Ult. Atual. editarPuntoVentaController.fecmodif.label = Ult. Atual.
editarPuntoVentaController.radIntervalofechamentoSemanal.value=Semanal
editarPuntoVentaController.radIntervalofechamentoDecendial.value=Decendial
editarPuntoVentaController.radIntervalofechamentoQuinzenal.value=Quinzenal
editarPuntoVentaController.radIntervalofechamentoMensal.value=Mensal
editarPuntoVentaController.MSG.borrarFechamentoParamptovta=Deseja eliminar este parâmetro ?
editarPuntoVentaController.MSG.fechamentoParamptovtaInvalidado=Já existe parâmetro cadastrado.
# Editar comissão ponto de venda # Editar comissão ponto de venda
editarPuntoVentaComissaoController.window.title = Comissão Empresa/Ponto de Venda editarPuntoVentaComissaoController.window.title = Comissão Empresa/Ponto de Venda

View File

@ -1221,6 +1221,10 @@
<tabpanel> <tabpanel>
<grid fixedLayout="true"> <grid fixedLayout="true">
<columns>
<column width="30%" />
<column width="70%" />
</columns>
<rows> <rows>
<row> <row>
<label value="${c:l('editarPuntoVentaController.lbEmpresa.value')}" /> <label value="${c:l('editarPuntoVentaController.lbEmpresa.value')}" />
@ -1231,12 +1235,24 @@
model="@{winEditarPuntoVenta$composer.lsEmpresas}" model="@{winEditarPuntoVenta$composer.lsEmpresas}"
constraint="no empty" /> constraint="no empty" />
</row> </row>
<row>
<label value="${c:l('editarPuntoVentaController.intervalofechamento.label')}" />
<radiogroup Id="radIntervalofechamento">
<radio id="radIntervalofechamentoSemanal"
label="${c:l('editarPuntoVentaController.radIntervalofechamentoSemanal.value')}" />
<radio id="radIntervalofechamentoDecendial"
label="${c:l('editarPuntoVentaController.radIntervalofechamentoDecendial.value')}" />
<radio id="radIntervalofechamentoQuinzenal"
label="${c:l('editarPuntoVentaController.radIntervalofechamentoQuinzenal.value')}" />
<radio id="radIntervalofechamentoMensal"
label="${c:l('editarPuntoVentaController.radIntervalofechamentoMensal.value')}" />
</radiogroup>
</row>
<row> <row>
<label value="${c:l('editarPuntoVentaController.intervalofechamento.label')}" /> <label value="${c:l('editarPuntoVentaController.intervalofechamento.label')}" />
<textbox id="txtIntervalofechamento" <textbox id="txtIntervalofechamento"
width="190px" width="50px"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
constraint="no empty" />
</row> </row>
</rows> </rows>
</grid> </grid>