0015431: Melhoria VIOP - ESPEC_TotalBus_cobrancaTaxaDiaria - Chamado: REQ-627858;

bug#15431
dev:thiago
qua:junia

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@97720 d1611594-4594-4d17-8e1d-87c2c4800839
master
valdir 2019-09-19 18:32:40 +00:00
parent 508e72f112
commit 0a817d374f
7 changed files with 798 additions and 12 deletions

View File

@ -82,6 +82,8 @@ import com.rjconsultores.ventaboletos.constantes.ConstantesFuncionSistema;
import com.rjconsultores.ventaboletos.entidad.Categoria;
import com.rjconsultores.ventaboletos.entidad.CategoriaBloqueioImpPosterior;
import com.rjconsultores.ventaboletos.entidad.Ciudad;
import com.rjconsultores.ventaboletos.entidad.CobrancaAdcPuntoVenta;
import com.rjconsultores.ventaboletos.entidad.CobrancaAdicionalHistorico;
import com.rjconsultores.ventaboletos.entidad.Colonia;
import com.rjconsultores.ventaboletos.entidad.Constante;
import com.rjconsultores.ventaboletos.entidad.Empresa;
@ -122,6 +124,7 @@ import com.rjconsultores.ventaboletos.exception.IntegracionException;
import com.rjconsultores.ventaboletos.exception.ValidacionCampoException;
import com.rjconsultores.ventaboletos.service.CategoriaBloqueioImpPosteriorService;
import com.rjconsultores.ventaboletos.service.CategoriaService;
import com.rjconsultores.ventaboletos.service.CobrancaAdcPuntoVentaService;
import com.rjconsultores.ventaboletos.service.ColoniaService;
import com.rjconsultores.ventaboletos.service.ConstanteService;
import com.rjconsultores.ventaboletos.service.EmpresaService;
@ -166,6 +169,8 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.PtovtaEstoqueRender;
import com.rjconsultores.ventaboletos.web.utilerias.render.PtovtaHorarioRender;
import com.rjconsultores.ventaboletos.web.utilerias.render.PtovtaUsuarioBancarioRender;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCategoriaBloqueioVendaImpPosterior;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCobrancaAdcPuntoVenta;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCobrancaAdcicionalHistorico;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderEmpresaBloquear;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderParadaPtoVtaCheckin;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderPtoVtaSeguro;
@ -192,6 +197,7 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
private static Logger log = Logger.getLogger(EditarPuntoVentaController.class);
public static final String FUNCION_TIPO_BOLETO_BLOQUEADO = "COM.RJCONSULTORES.ADMINISTRACION.PUNTOVENTA.TIPOBOLETOBLOQUEADO";
public static final String FUNCION_COBRANCA_ADICIONAL = "COM.RJCONSULTORES.ADMINISTRACION.PUNTOVENTA.COBRANCAADICIONAL";
@Autowired
private PuntoVentaService puntoVentaService;
@ -470,6 +476,35 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
@Autowired
private DataSource dataSource;
//CobrancaAdicional
private Textbox descricaoCobranca;
private Doublebox valorCobrancaAdicional;
private List<Empresa> lsEmpresasCobrancaAdicional;
private List<CobrancaAdcPuntoVenta> lsTodasCobrancas;
private Combobox cmbEmpresaCobranca;
private Combobox cmbCobrancasPuntoVenta;
private Radio radioDiario;
private Radio radioSemanal;
private Radio radioMensal;
private Radio radioSegunda;
private Radio radioTerca;
private Radio radioQuarta;
private Radio radioQuinta;
private Radio radioSexta;
private Radio radioPrimeiroDiaMes;
private Radio radioUltimoDiaMes;
private MyListbox cobrancaAdicionalList;
private MyListbox historicoCobrancaList;
private Radio radioProximoCiclo;
private Radio radioProximoDia;
private CobrancaAdcPuntoVenta cobrancaAux = new CobrancaAdcPuntoVenta();
private Datebox dataInicioCobranca;
private Datebox dataFimCobranca;
private Datebox dataInicioHistorico;
private Datebox dataFimHistorico;
private Boolean utilizaCobrancaAdicional = false;
@Autowired
private CobrancaAdcPuntoVentaService cobrancaAdcService;
public Button getBtnApagar() {
return btnApagar;
@ -503,6 +538,7 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
lsCategoriaSel = new HashSet<Object>();
lsCategoriaBloquear = categoriaService.obtenerTodasCategoriasVisibles();
lsEmpresasBloquear = empresaService.obtenerTodos();
lsEmpresasCobrancaAdicional = empresaService.obtenerTodos();
lsEmpresas = obterEmpresasUsuarioLogadoComOpcaoTodas();
lsEmpresasSemTodos = UsuarioLogado.getUsuarioLogado().getEmpresa();
lsMoneda = monedaService.obtenerTodos();
@ -517,6 +553,8 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
lsLogFiles = getLogFiles();
puntoVenta = (PuntoVenta) Executions.getCurrent().getArg().get("puntoVenta");
lsTodasCobrancas = cobrancaAdcService.buscarTodasAsCobrancas(puntoVenta);
super.doAfterCompose(comp);
if(puntoVenta.getIndBloqueiaTipoPassagem()) {
@ -543,17 +581,29 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
}
});
utilizaCobrancaAdicional = utilizaCobrancaAdicional();
aplicarMascara();
popularCombobox(cmbTipoConta, cmbPessoa, cmbForm, cmbLote, cmbPosicao, cmbReceita, cmbEmpresas, cmbUsuarioEmpresa);
popularCombobox(cmbTipoConta, cmbPessoa, cmbForm, cmbLote, cmbPosicao, cmbReceita, cmbEmpresas, cmbUsuarioEmpresa, cmbEmpresaCobranca, cmbCobrancasPuntoVenta);
ptovtaEmpresasBloqueadasList.setItemRenderer(new RenderEmpresaBloquear());
ptovtaPtoVtaCheckinList.setItemRenderer(new RenderParadaPtoVtaCheckin());
ptovtaPtoVtaSeguroList.setItemRenderer(new RenderPtoVtaSeguro());
cobrancaAdicionalList.setItemRenderer(new RenderCobrancaAdcPuntoVenta());
historicoCobrancaList.setItemRenderer(new RenderCobrancaAdcicionalHistorico());
ptovtaCatIndList.setItemRenderer(new RenderPtovtaCatInd());
ptovtaHistoricoList.setItemRenderer(new PuntoVendaHistoricoBloqueioListItemRenderer());
categoriasBloqImpPosteriorList.setItemRenderer(new RenderCategoriaBloqueioVendaImpPosterior());
cobrancaAdicionalList.addEventListener("onDoubleClick", new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
CobrancaAdcPuntoVenta cobranca = (CobrancaAdcPuntoVenta) cobrancaAdicionalList.getSelected();
carregarCobrancaAdicional(cobranca);
}
});
ptovtaComissaoList.setItemRenderer(new RenderPtovtaComissao());
ptovtaComissaoList.addEventListener("onDoubleClick", new EventListener() {
@Override
@ -581,6 +631,7 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
ptovtaCatIndList.setData(puntoVenta.getPtovtaCatIndList());
ptovtaHistoricoList.setData(puntoVenta.getHistoricoPuntoVentaList());
categoriasBloqImpPosteriorList.setData(puntoVenta.getCategoriaBloqImpPosteriorList());
cobrancaAdicionalList.setData(puntoVenta.getCobrancaAdicionalList());
if (puntoVenta.getColonia() != null) {
cmbCiudad.setText(puntoVenta.getColonia().getCiudad().getNombciudad());
@ -995,7 +1046,7 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
}
}
public void popularCombobox(Combobox cmbConta, Combobox cmbPessoa, Combobox cmbForm, Combobox cmbLote, Combobox cmbPosicao, Combobox cmbReceita, Combobox cmbEmpresas, Combobox cmbUsuarioEmpresa) throws Exception {
public void popularCombobox(Combobox cmbConta, Combobox cmbPessoa, Combobox cmbForm, Combobox cmbLote, Combobox cmbPosicao, Combobox cmbReceita, Combobox cmbEmpresas, Combobox cmbUsuarioEmpresa, Combobox cmbEmpresaCobranca, Combobox cmbCobrancasPuntoVenta) throws Exception {
clearCombobox(cmbConta);
clearCombobox(cmbPessoa);
@ -1004,6 +1055,20 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
clearCombobox(cmbPosicao);
clearCombobox(cmbEmpresas);
clearCombobox(cmbUsuarioEmpresa);
clearCombobox(cmbEmpresaCobranca);
clearCombobox(cmbCobrancasPuntoVenta);
for (CobrancaAdcPuntoVenta cb : lsTodasCobrancas) {
Comboitem comboItem = new Comboitem(cb.getDescricao());
comboItem.setValue(cb);
comboItem.setParent(cmbCobrancasPuntoVenta);
}
for (Empresa e : lsEmpresasCobrancaAdicional) {
Comboitem comboItem = new Comboitem(e.getNombempresa());
comboItem.setValue(e);
comboItem.setParent(cmbEmpresaCobranca);
}
for (Empresa e : lsEmpresasBloquear) {
Comboitem comboItem = new Comboitem(e.getNombempresa());
@ -3869,4 +3934,291 @@ public class EditarPuntoVentaController extends MyGenericForwardComposer {
}
}
public List<Empresa> getLsEmpresasCobrancaAdicional() {
return lsEmpresasCobrancaAdicional;
}
public List<CobrancaAdcPuntoVenta> getLsTodasCobrancas() {
return lsTodasCobrancas;
}
public void setLsTodasCobrancas(List<CobrancaAdcPuntoVenta> lsTodasCobrancas) {
this.lsTodasCobrancas = lsTodasCobrancas;
}
public void setLsEmpresasCobrancaAdicional(List<Empresa> lsEmpresasCobrancaAdicional) {
this.lsEmpresasCobrancaAdicional = lsEmpresasCobrancaAdicional;
}
public void onCheck$radioDiario(Event event) {
deselecionaSemana();
deselecionaMensal();
}
public void onCheck$radioSemanal(Event event) {
deselecionaMensal();
}
public void onCheck$radioMensal(Event event) {
deselecionaSemana();
}
public void onCheck$radioSegunda(Event event) {
selecaoRadioButtonCobrancaAdicional();
}
public void onCheck$radioTerca(Event event) {
selecaoRadioButtonCobrancaAdicional();
}
public void onCheck$radioQuarta(Event event) {
selecaoRadioButtonCobrancaAdicional();
}
public void onCheck$radioQuinta(Event event) {
selecaoRadioButtonCobrancaAdicional();
}
public void onCheck$radioSexta(Event event) {
selecaoRadioButtonCobrancaAdicional();
}
public void onCheck$radioPrimeiroDiaMes(Event event) {
selecionadoDiasDoMes();
}
public void onCheck$radioUltimoDiaMes(Event event) {
selecionadoDiasDoMes();
}
private void selecionadoDiasDoMes() {
if(radioPrimeiroDiaMes.isSelected() || radioUltimoDiaMes.isSelected()) {
deselecionaSemana();
radioMensal.setSelected(true);
radioSemanal.setSelected(false);
}
}
private void selecaoRadioButtonCobrancaAdicional() {
if(radioSegunda.isSelected() || radioTerca.isSelected() || radioQuarta.isSelected()
|| radioQuinta.isSelected() || radioSexta.isSelected()) {
radioSemanal.setSelected(true);
radioDiario.setSelected(false);
radioMensal.setSelected(false);
}
}
private void deselecionaSemana() {
radioSegunda.setSelected(false);
radioTerca.setSelected(false);
radioQuarta.setSelected(false);
radioQuinta.setSelected(false);
radioSexta.setSelected(false);
}
private void deselecionaMensal() {
radioPrimeiroDiaMes.setSelected(false);
radioUltimoDiaMes.setSelected(false);
}
public void onClick$btnSalvarCobrancaAdicional(Event ev) {
if(!validaInsercaoCobrancaAdicional()) {
return;
}
boolean novo = true;
for (CobrancaAdcPuntoVenta p : puntoVenta.getCobrancaAdicionalList()) {
if (p.getCobrancaAddPuntoVenta_id() != null && p.getActivo() && p.equals(cobrancaAux)) {
cobrancaAux = p;
novo = false;
}
}
if(novo) {
cobrancaAux = new CobrancaAdcPuntoVenta();
}
Empresa empresa = (Empresa) cmbEmpresaCobranca.getSelectedItem().getValue();
cobrancaAux.setDescricao(descricaoCobranca.getValue());
cobrancaAux.setEmpresa(empresa);
cobrancaAux.setValor(BigDecimal.valueOf(valorCobrancaAdicional.getValue()));
cobrancaAux.setPuntoVenta(puntoVenta);
cobrancaAux.setDiario(radioDiario.isSelected());
cobrancaAux.setSemanal(radioSemanal.isSelected());
cobrancaAux.setMensal(radioMensal.isSelected());
cobrancaAux.setSegunda(radioSegunda.isSelected());
cobrancaAux.setTerca(radioTerca.isSelected());
cobrancaAux.setQuarta(radioQuarta.isSelected());
cobrancaAux.setQuinta(radioQuinta.isSelected());
cobrancaAux.setSexta(radioSexta.isSelected());
cobrancaAux.setPrimeiroDiaUtil(radioPrimeiroDiaMes.isSelected());
cobrancaAux.setUltimoDiaUtil(radioUltimoDiaMes.isSelected());
cobrancaAux.setDataInicial(dataInicioCobranca.getValue());
cobrancaAux.setDataFinal(dataFimCobranca.getValue());
cobrancaAux.setDescontarProximoCiclo(radioProximoCiclo.isSelected());
cobrancaAux.setDescontarProximoDia(radioProximoDia.isSelected());
if(novo) {
puntoVenta.addCobrancaAddPuntoVenta(cobrancaAux);
}
cobrancaAdicionalList.setData(puntoVenta.getCobrancaAdicionalList());
}
private Boolean validaInsercaoCobrancaAdicional() {
try {
if (cmbEmpresaCobranca.getValue() == null) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemEmpresa.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if (descricaoCobranca.getValue() == null || descricaoCobranca.getValue().isEmpty()) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemDescricao.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if (dataInicioCobranca.getValue() == null || dataFimCobranca.getValue() == null) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemDatas.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if (valorCobrancaAdicional.getValue() == null || valorCobrancaAdicional.getValue() == 0) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemValor.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
if (!( radioDiario.isSelected() || radioMensal.isSelected() || radioSemanal.isSelected() )) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemFrequencia.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
} else if(radioSemanal.isSelected()) { //Se escolher semana e não escolher um dia
if(!( radioSegunda.isSelected() || radioTerca.isSelected() || radioQuarta.isSelected()
|| radioQuinta.isSelected() || radioSexta.isSelected())) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemFrequencia.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
}
if (!(radioProximoCiclo.isSelected() || radioProximoDia.isSelected())) {
Messagebox.show(Labels.getLabel("editarPuntoVentaController.erroSemPagamentoDinheiro.value"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return false;
}
} catch (Exception e) {
log.error("Erro ao validar a inserção da cobranca adicional no ponto de venda: ", e);
}
return true;
}
public void onClick$btnApagarCobrancaAdicional(Event event) {
try{
int resp = Messagebox.show(
Labels.getLabel("editarPuntoVentaController.MSG.apagarCobrançaAdicional"),
Labels.getLabel("editarPuntoVentaController.window.title"),
Messagebox.YES | Messagebox.NO, Messagebox.QUESTION);
if (resp == Messagebox.YES) {
CobrancaAdcPuntoVenta cobranca = (CobrancaAdcPuntoVenta)cobrancaAdicionalList.getSelected();
puntoVenta.removeCobrancaAddPuntoVenta(cobranca);
if (cobranca.getCobrancaAddPuntoVenta_id() != null) {
cobrancaAdcService.borrar(cobranca);
}
carregarCobrancaAdicional(null);
cobrancaAdicionalList.setData(puntoVenta.getCobrancaAdicionalList());
}
} catch (Exception e){
log.error("Erro ao apagar cobranca adicional", e);
}
}
private void carregarCobrancaAdicional(CobrancaAdcPuntoVenta cobranca) {
if(cobranca != null) {
cobrancaAux = cobranca;
descricaoCobranca.setValue(cobrancaAux.getDescricao());
valorCobrancaAdicional.setValue(cobrancaAux.getValor().doubleValue());
cmbEmpresaCobranca.setSelectedIndex(lsEmpresasCobrancaAdicional.indexOf(cobrancaAux.getEmpresa()));
dataInicioCobranca.setValue(cobranca.getDataInicial());
dataFimCobranca.setValue(cobranca.getDataFinal());
radioDiario.setSelected(cobrancaAux.getDiario());
radioSemanal.setSelected(cobrancaAux.getSemanal());
radioMensal.setSelected(cobrancaAux.getMensal());
radioSegunda.setSelected(cobrancaAux.getSegunda());
radioTerca.setSelected(cobrancaAux.getTerca());
radioQuarta.setSelected(cobrancaAux.getQuarta());
radioQuinta.setSelected(cobrancaAux.getQuinta());
radioSexta.setSelected(cobrancaAux.getSexta());
radioPrimeiroDiaMes.setSelected(cobrancaAux.getPrimeiroDiaUtil());
radioUltimoDiaMes.setSelected(cobrancaAux.getUltimoDiaUtil());
radioProximoCiclo.setSelected(cobrancaAux.getDescontarProximoCiclo());
radioProximoDia.setSelected(cobrancaAux.getDescontarProximoDia());
}
}
public void onClick$btnPesquisarHistorico(Event event) {
try{
CobrancaAdcPuntoVenta cobranca = (CobrancaAdcPuntoVenta) cmbCobrancasPuntoVenta.getSelectedItem().getValue();
List<CobrancaAdicionalHistorico> historicoCobranca = cobrancaAdcService.buscaHistoricoCobranca(cobranca, dataInicioHistorico.getValue(), dataFimHistorico.getValue());
historicoCobrancaList.setData(historicoCobranca);
} catch (Exception e){
log.error("Erro ao buscar historico da cobranca adicional", e);
}
}
@Transactional
public boolean utilizaCobrancaAdicional() {
Usuario usuarioLogado = usuarioService.obtenerID(UsuarioLogado.getUsuarioLogado().getUsuarioId());
List<UsuarioPerfil> listUsuarioPerfil = usuarioLogado.getUsuarioPerfilList();
for (UsuarioPerfil up : listUsuarioPerfil) {
List<PerfilFuncion> listPerfilFuncion = up.getPerfil().getPerfilFuncionList();
for (PerfilFuncion pf : listPerfilFuncion) {
if(pf.getFuncionSistema().getDescruta().equals(FUNCION_COBRANCA_ADICIONAL))
return true;
}
}
return false;
}
public Boolean getUtilizaCobrancaAdicional() {
return utilizaCobrancaAdicional;
}
public void setUtilizaCobrancaAdicional(Boolean utilizaCobrancaAdicional) {
this.utilizaCobrancaAdicional = utilizaCobrancaAdicional;
}
}

View File

@ -0,0 +1,91 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import java.util.Locale;
import org.zkoss.util.resource.Labels;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.CobrancaAdcPuntoVenta;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.web.utilerias.CurrencyUtil;
public class RenderCobrancaAdcPuntoVenta implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
CobrancaAdcPuntoVenta cobranca = (CobrancaAdcPuntoVenta) o;
Listcell lc = new Listcell(cobranca.getCobrancaAddPuntoVenta_id() == null ? "" : cobranca.getCobrancaAddPuntoVenta_id().toString());
lc.setParent(lstm);
lc = new Listcell(cobranca.getDescricao());
lc.setParent(lstm);
Locale locale = new Locale("pt", "BR");
lc = new Listcell(CurrencyUtil.getCurrencyBigDecimalFromStr(cobranca.getValor(), locale));
lc.setParent(lstm);
lc = new Listcell(getPeriodo(cobranca));
lc.setParent(lstm);
lc = new Listcell(cobranca.getEmpresa().getNombempresa());
lc.setParent(lstm);
lc = new Listcell(getCicloFrequencia(cobranca));
lc.setParent(lstm);
lc = new Listcell(getPagamentoDinheiro(cobranca));
lc.setParent(lstm);
lstm.setAttribute("data", cobranca);
}
private String getPeriodo(CobrancaAdcPuntoVenta cobranca) {
StringBuilder periodo = new StringBuilder();
periodo.append(DateUtil.getStringDate(cobranca.getDataInicial()));
periodo.append(" - ");
periodo.append(DateUtil.getStringDate(cobranca.getDataFinal()));
return periodo.toString();
}
private String getCicloFrequencia(CobrancaAdcPuntoVenta cobranca) {
StringBuilder mensagem = new StringBuilder();
if(cobranca.getDiario()) {
mensagem.append(Labels.getLabel("editarEmpresaController.diario.label") );
} else if(cobranca.getSemanal()) {
mensagem.append(Labels.getLabel("editarEmpresaController.semanal.label")).append("/");
if(cobranca.getSegunda()) {
mensagem.append(Labels.getLabel("editarEmpresaController.segunda.label"));
} else if(cobranca.getTerca()) {
mensagem.append(Labels.getLabel("editarEmpresaController.terca.label"));
} else if(cobranca.getQuarta()) {
mensagem.append(Labels.getLabel("editarEmpresaController.quarta.label"));
} else if(cobranca.getQuinta()) {
mensagem.append(Labels.getLabel("editarEmpresaController.quinta.label"));
} else if(cobranca.getSexta()) {
mensagem.append(Labels.getLabel("editarEmpresaController.sexta.label"));
}
} else if(cobranca.getMensal()) {
mensagem.append(Labels.getLabel("editarEmpresaController.mensal.label")).append("/");
if(cobranca.getPrimeiroDiaUtil()) {
mensagem.append(Labels.getLabel("editarEmpresaController.primeiroDia.label"));
} else if(cobranca.getUltimoDiaUtil()) {
mensagem.append(Labels.getLabel("editarEmpresaController.ultimoDia.label"));
}
}
return mensagem.toString();
}
private String getPagamentoDinheiro(CobrancaAdcPuntoVenta cobranca) {
return Boolean.TRUE.equals(cobranca.getDescontarProximoCiclo())
? Labels.getLabel("editarPuntoVentaController.lbAcumularCiclo")
: Labels.getLabel("editarPuntoVentaController.lbProximoDia");
}
}

View File

@ -0,0 +1,36 @@
package com.rjconsultores.ventaboletos.web.utilerias.render;
import java.util.Locale;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.entidad.CobrancaAdicionalHistorico;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.web.utilerias.CurrencyUtil;
public class RenderCobrancaAdcicionalHistorico implements ListitemRenderer {
public void render(Listitem lstm, Object o) throws Exception {
CobrancaAdicionalHistorico cobranca = (CobrancaAdicionalHistorico) o;
Listcell lc = new Listcell(DateUtil.getStringDate(cobranca.getDataRegistro()));
lc.setParent(lstm);
Locale locale = new Locale("pt", "BR");
lc = new Listcell(CurrencyUtil.getCurrencyBigDecimalFromStr(cobranca.getValorAplicado(), locale));
lc.setParent(lstm);
lc = new Listcell(CurrencyUtil.getCurrencyBigDecimalFromStr(cobranca.getValorAcumulado(), locale));
lc.setParent(lstm);
lc = new Listcell(cobranca.getCobrancaEfetuada() ? "SIM" : "NÃO");
lc.setParent(lstm);
lc = new Listcell(cobranca.getMotivo());
lc.setParent(lstm);
lstm.setAttribute("data", cobranca);
}
}

View File

@ -487,6 +487,8 @@
<value>com.rjconsultores.ventaboletos.entidad.EmpresaTrocoSimples</value>
<value>com.rjconsultores.ventaboletos.entidad.Imagem</value>
<value>com.rjconsultores.ventaboletos.entidad.RutaIcmsExcepcion</value>
<value>com.rjconsultores.ventaboletos.entidad.CobrancaAdcPuntoVenta</value>
<value>com.rjconsultores.ventaboletos.entidad.CobrancaAdicionalHistorico</value>
<value>com.rjconsultores.ventaboletos.entidad.ConfTotem</value>
</list>
</property>

View File

@ -8318,3 +8318,43 @@ relatorioEncerramentoCheckinController.lbDataInicio.value = Data Início
relatorioEncerramentoCheckinController.lbDataFim.value = Data Final
relatorioEncerramentoCheckinController.lbEmpresa.value = Empresa
relatorioEncerramentoCheckinController.lbLocalidade.value = Localidade
#Editar Punto Venda - Cobranca Adicional
editarPuntoVentaController.tab.label.cobrancaAdicional = Cobrança Adicional
editarPuntoVentaController.id.value=ID
editarPuntoVentaController.lbDescricao.value=Descricao
editarPuntoVentaController.lbValor.value=Valor
editarPuntoVentaController.lbEmprea.value=Empresa
editarPuntoVentaController.lbCicloFrequencia.value=Ciclo/Frequêcia
editarPuntoVentaController.lbPagamentoDinheiro.value=Se não houver pagamento em dinheiro no dia da cobranca:
editarPuntoVentaController.lbAcumularCiclo = Descontar no próximo ciclo
editarPuntoVentaController.lbProximoDia = Descontar no dia seguinte
editarEmpresaController.diario.label = Diário
editarEmpresaController.semanal.label = Semanal
editarEmpresaController.mensal.label = Mensal
editarEmpresaController.primeiroDia.label = Primeiro Dia útil do mês
editarEmpresaController.ultimoDia.label = Último Dia útil do mês
editarEmpresaController.segunda.label = Segunda-Feira
editarEmpresaController.terca.label = Terça-Feira
editarEmpresaController.quarta.label = Quarta-Feira
editarEmpresaController.quinta.label = Quinta-Feira
editarEmpresaController.sexta.label = Sexta-Feira
editarPuntoVentaController.erroSemEmpresa.value=Selecione uma empresa
editarPuntoVentaController.erroSemDescricao.value=Insira uma descrição para a cobrança adicional
editarPuntoVentaController.erroSemValor.value=Insira uma valor válido para a cobrança adicional
editarPuntoVentaController.erroSemFrequencia.value=Escolha um Ciclo/Frequência para a cobrança adicional
editarPuntoVentaController.erroSemPagamentoDinheiro.value=Escolha o que fazer quando não há dinheiro no dia especificado para cobrança
editarPuntoVentaController.MSG.apagarCobrançaAdicional=Deseja apagar cobrança adicional?
editarPuntoVentaController.dataInicial.label = Data Inicial
editarPuntoVentaController.dataFinal.label = Data Final
editarPuntoVentaController.erroSemDatas.value = Escolha a data inicial e final da cobrança.
editarPuntoVentaController.lbPeriodo.value= Período
editarPuntoVentaController.abaCobranca.value = Cadastro
editarPuntoVentaController.abaHistorico.value = Histórico
editarPuntoVentaController.btnPesquisar.value= Pesquisar
editarPuntoVentaController.dataRegistro.value= Data
editarPuntoVentaController.valorCobrado.value= V. Cobrado
editarPuntoVentaController.valorAcumulado.value = V. Acumulado
editarPuntoVentaController.Descricao.value = Descrição
editarPuntoVentaController.registroLancado.value = Lançado?
editarPuntoVentaController.dicaMensal.value=Essa funcionalidade não faz cobrança retroativa, so o primeiro dia do mês cadastrado já estiver passado a cobrança só será efetuada no próximo mês, sem valor acumulado.

View File

@ -8829,3 +8829,43 @@ relatorioEncerramentoCheckinController.lbDataInicio.value = Data Início
relatorioEncerramentoCheckinController.lbDataFim.value = Data Final
relatorioEncerramentoCheckinController.lbEmpresa.value = Empresa
relatorioEncerramentoCheckinController.lbLocalidade.value = Localidade
#Editar Punto Venda - Cobranca Adicional
editarPuntoVentaController.tab.label.cobrancaAdicional = Cobrança Adicional
editarPuntoVentaController.id.value=ID
editarPuntoVentaController.lbDescricao.value=Descricao
editarPuntoVentaController.lbValor.value=Valor
editarPuntoVentaController.lbEmprea.value=Empresa
editarPuntoVentaController.lbCicloFrequencia.value=Ciclo/Frequêcia
editarPuntoVentaController.lbPagamentoDinheiro.value=Se não houver pagamento em dinheiro no dia da cobranca:
editarPuntoVentaController.lbAcumularCiclo = Descontar no próximo ciclo
editarPuntoVentaController.lbProximoDia = Descontar no dia seguinte
editarEmpresaController.diario.label = Diário
editarEmpresaController.semanal.label = Semanal
editarEmpresaController.mensal.label = Mensal
editarEmpresaController.primeiroDia.label = Primeiro Dia útil do mês
editarEmpresaController.ultimoDia.label = Último Dia útil do mês
editarEmpresaController.segunda.label = Segunda-Feira
editarEmpresaController.terca.label = Terça-Feira
editarEmpresaController.quarta.label = Quarta-Feira
editarEmpresaController.quinta.label = Quinta-Feira
editarEmpresaController.sexta.label = Sexta-Feira
editarPuntoVentaController.erroSemEmpresa.value=Selecione uma empresa
editarPuntoVentaController.erroSemDescricao.value=Insira uma descrição para a cobrança adicional
editarPuntoVentaController.erroSemValor.value=Insira uma valor válido para a cobrança adicional
editarPuntoVentaController.erroSemFrequencia.value=Escolha um Ciclo/Frequência para a cobrança adicional
editarPuntoVentaController.erroSemPagamentoDinheiro.value=Escolha o que fazer quando não há dinheiro no dia especificado para cobrança
editarPuntoVentaController.MSG.apagarCobrançaAdicional=Deseja apagar cobrança adicional?
editarPuntoVentaController.dataInicial.label = Data Inicial
editarPuntoVentaController.dataFinal.label = Data Final
editarPuntoVentaController.erroSemDatas.value = Escolha a data inicial e final da cobrança.
editarPuntoVentaController.lbPeriodo.value= Período
editarPuntoVentaController.abaCobranca.value = Cadastro
editarPuntoVentaController.abaHistorico.value = Histórico
editarPuntoVentaController.btnPesquisar.value= Pesquisar
editarPuntoVentaController.dataRegistro.value= Data
editarPuntoVentaController.valorCobrado.value= V. Cobrado
editarPuntoVentaController.valorAcumulado.value = V. Acumulado
editarPuntoVentaController.Descricao.value = Descrição
editarPuntoVentaController.registroLancado.value = Lançado?
editarPuntoVentaController.dicaMensal.value=Essa funcionalidade não faz cobrança retroativa, so o primeiro dia do mês cadastrado já estiver passado a cobrança só será efetuada no próximo mês, sem valor acumulado.

View File

@ -33,6 +33,9 @@
<tab
label="${c:l('editarPuntoVentaController.tab.label.endereco')}" />
<tab visible="@{winEditarPuntoVenta$composer.utilizaCobrancaAdicional}"
label="${c:l('editarPuntoVentaController.tab.label.cobrancaAdicional')}" />
<tab
label="${c:l('editarPuntoVentaController.tab.label.comissao')}" />
<tab
@ -412,7 +415,7 @@
</row>
</rows>
</grid>f
</grid>
</tabpanel>
<!-- ENDERECO -->
<tabpanel>
@ -486,6 +489,228 @@
</rows>
</grid>
</tabpanel>
<!-- Cobranca Adicional -->
<tabpanel visible="@{winEditarPuntoVenta$composer.utilizaCobrancaAdicional}">
<tabbox id="tabboxTitle2" >
<tabs>
<tab label="${c:l('editarPuntoVentaController.abaCobranca.value')}" />
<tab label="${c:l('editarPuntoVentaController.abaHistorico.value')}" />
</tabs>
<tabpanels>
<tabpanel>
<grid fixedLayout="true" height="100%">
<columns>
<column width="15%" />
<column />
</columns>
<rows>
<row>
<!--Descricao-->
<label
value="${c:l('editarPuntoVentaController.lbDescricao.value')}" />
<textbox id="descricaoCobranca"
constraint="no empty" width="95%" maxlength="30"
use="com.rjconsultores.ventaboletos.web.utilerias.MyTextbox" />
</row>
<row>
<!--Valor-->
<label
value="${c:l('editarPuntoVentaController.lbValor.value')}" />
<doublebox
id="valorCobrancaAdicional" format=",###.##"
constraint="no empty, no negative" width="95%" />
</row>
<row>
<!--Empresa-->
<label
value="${c:l('editarPuntoVentaController.lbEmprea.value')}" />
<combobox id="cmbEmpresaCobranca"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
constraint="no empty" mold="rounded" buttonVisible="true"
width="95%" model="@{winEditarPuntoVenta$composer.lsEmpresasCobrancaAdicional}"
selectedItem="@{winEditarPuntoVenta$composer.puntoVenta.empresa}" />
</row>
<row spans="2">
<hlayout spacing="5%" style="margin-left: 10%;">
<label
value="${c:l('editarPuntoVentaController.dataInicial.label')}" />
<datebox id="dataInicioCobranca"
mold="rounded" format="dd/MM/yyyy" />
<label
value="${c:l('editarPuntoVentaController.dataFinal.label')}" />
<datebox id="dataFimCobranca"
mold="rounded" format="dd/MM/yyyy" />
</hlayout>
</row>
<row spans="2">
<groupbox >
<caption label="${c:l('editarPuntoVentaController.lbCicloFrequencia.value')}" />
<radiogroup id="frequencia" />
<radiogroup id="subFrequencia" />
<vlayout>
<radio id="radioDiario" label="${c:l('editarEmpresaController.diario.label')}" radiogroup="frequencia" />
<radio id="radioSemanal" label="${c:l('editarEmpresaController.semanal.label')}" radiogroup="frequencia" />
<!-- fulfill="radioSemanal.onCheck"-->
<hlayout spacing="5%" style="margin-left: 6%;">
<radio id="radioSegunda"
label="${c:l('editarEmpresaController.segunda.label')}" radiogroup="subFrequencia" />
<radio id="radioTerca"
label="${c:l('editarEmpresaController.terca.label')}" radiogroup="subFrequencia" />
<radio id="radioQuarta"
label="${c:l('editarEmpresaController.quarta.label')}" radiogroup="subFrequencia" />
<radio id="radioQuinta"
label="${c:l('editarEmpresaController.quinta.label')}" radiogroup="subFrequencia" />
<radio id="radioSexta"
label="${c:l('editarEmpresaController.sexta.label')}" radiogroup="subFrequencia" />
</hlayout>
<radio id="radioMensal" label="${c:l('editarEmpresaController.mensal.label')}" radiogroup="frequencia" />
<!-- fulfill="radioMensal.onCheck" -->
<hlayout spacing="5%" style="margin-left: 10%; ">
<radio id="radioPrimeiroDiaMes"
label="${c:l('editarEmpresaController.primeiroDia.label')}" radiogroup="subFrequencia" />
<radio id="radioUltimoDiaMes"
label="${c:l('editarEmpresaController.ultimoDia.label')}" radiogroup="subFrequencia" />
<image src="/gui/img/Question_mark_1.png" tooltiptext="${c:l('editarPuntoVentaController.dicaMensal.value')}"
style="cursor: help" />
</hlayout>
</vlayout>
</groupbox>
</row>
<row spans="2">
<groupbox >
<radiogroup id="radioCiclo" />
<caption label="${c:l('editarPuntoVentaController.lbPagamentoDinheiro.value')}" />           
            <hlayout spacing="5%" style="margin-left: 10%;">              
<radio id="radioProximoCiclo" radiogroup="radioCiclo"
label="${c:l('editarPuntoVentaController.lbAcumularCiclo')}" />
<radio id="radioProximoDia" radiogroup="radioCiclo"
label="${c:l('editarPuntoVentaController.lbProximoDia')}" />
            </hlayout>
</groupbox>
</row>
</rows>
</grid>
<toolbar>
<hbox spacing="5px" style="padding:1px" align="right">
<button id="btnApagarCobrancaAdicional" height="20"
image="/gui/img/remove.png" width="35px"
tooltiptext="${c:l('editarConfiguracionFormaPagoController.btnApagar.tooltiptext')}" />
<button id="btnSalvarCobrancaAdicional" height="20"
image="/gui/img/add.png" width="35px"
tooltiptext="${c:l('editarConfiguracionFormaPagoController.btnSalvar.tooltiptext')}" />
</hbox>
</toolbar>
<listbox id="cobrancaAdicionalList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
vflex="true" multiple="false" height="100px">
<listhead sizable="true">
<listheader width="6%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.id.value')}" />
<listheader
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbDescricao.value')}" />
<listheader width="9%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbValor.value')}" />
<listheader width="12%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbPeriodo.value')}" />
<listheader
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbEmprea.value')}" />
<listheader
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbCicloFrequencia.value')}" />
<listheader
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.lbPagamentoDinheiro.value')}" />
</listhead>
</listbox>
</tabpanel>
<tabpanel>
<grid fixedLayout="true"
height="100%">
<columns>
<column width="18%" />
<column />
</columns>
<rows>
<row>
<!--Cobranca-->
<label
value="${c:l('editarPuntoVentaController.tab.label.cobrancaAdicional')}" />
<combobox id="cmbCobrancasPuntoVenta"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true"
width="98%" model="@{winEditarPuntoVenta$composer.lsTodasCobrancas}"
/>
</row>
<row spans="2">
<hlayout spacing="5%" style="margin-left: 8%;">
<label
value="${c:l('editarPuntoVentaController.dataInicial.label')}" />
<datebox id="dataInicioHistorico"
mold="rounded" format="dd/MM/yyyy" />
<label
value="${c:l('editarPuntoVentaController.dataFinal.label')}" />
<datebox id="dataFimHistorico"
mold="rounded" format="dd/MM/yyyy" />
<button id="btnPesquisarHistorico" height="20"
width="110px" label="${c:l('editarPuntoVentaController.btnPesquisar.value')}" />
</hlayout>
</row>
</rows>
</grid>
<listbox id="historicoCobrancaList"
use="com.rjconsultores.ventaboletos.web.utilerias.MyListbox"
vflex="true" multiple="false" height="340px">
<listhead sizable="true">
<listheader width="13%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.dataRegistro.value')}" />
<listheader width="15%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.valorCobrado.value')}" />
<listheader width="15%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.valorAcumulado.value')}" />
<listheader width="12%"
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.registroLancado.value')}" />
<listheader
image="/gui/img/builder.gif"
label="${c:l('editarPuntoVentaController.Descricao.value')}" />
</listhead>
</listbox>
</tabpanel>
</tabpanels>
</tabbox>
</tabpanel>
<!-- DADOS COMISSAO -->
<tabpanel>