14394: Melhoria performace Dispositivo Venda Embarcada

fixes bug#14394
dev:valdir
qua:marcelo

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@93415 d1611594-4594-4d17-8e1d-87c2c4800839
master
leonardo 2019-05-17 17:56:04 +00:00
parent cbf7810ce3
commit 9fdbee3494
1 changed files with 17 additions and 5 deletions

View File

@ -4,6 +4,10 @@
*/ */
package com.rjconsultores.ventaboletos.web.utilerias.render; package com.rjconsultores.ventaboletos.web.utilerias.render;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.zkoss.zul.Listcell; import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem; import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer; import org.zkoss.zul.ListitemRenderer;
@ -11,6 +15,7 @@ import org.zkoss.zul.ListitemRenderer;
import com.rjconsultores.ventaboletos.dao.BoletoDAO; import com.rjconsultores.ventaboletos.dao.BoletoDAO;
import com.rjconsultores.ventaboletos.entidad.Boleto; import com.rjconsultores.ventaboletos.entidad.Boleto;
import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada;
import com.rjconsultores.ventaboletos.vo.embarcada.PtoVtaUsuarioUltimaVendaDispositivoVO;
import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;
/** /**
@ -20,16 +25,21 @@ import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;
public class RenderDispositivoVendaEmbarcada implements ListitemRenderer { public class RenderDispositivoVendaEmbarcada implements ListitemRenderer {
private BoletoDAO boletoDAO; private BoletoDAO boletoDAO;
private Map<String, PtoVtaUsuarioUltimaVendaDispositivoVO> ultimaVendaDispositivo;
public RenderDispositivoVendaEmbarcada() { public RenderDispositivoVendaEmbarcada() {
boletoDAO = (BoletoDAO) AppContext.getApplicationContext().getBean("boletoDAO"); boletoDAO = (BoletoDAO) AppContext.getApplicationContext().getBean("boletoDAO");
List<PtoVtaUsuarioUltimaVendaDispositivoVO> itens = boletoDAO.buscarUltimaVendaDosDispositivosEmbarcada();
ultimaVendaDispositivo = new HashMap<String, PtoVtaUsuarioUltimaVendaDispositivoVO>();
for (PtoVtaUsuarioUltimaVendaDispositivoVO vo : itens){
ultimaVendaDispositivo.put(vo.getImei(), vo);
}
} }
public void render(Listitem lstm, Object o) throws Exception { public void render(Listitem lstm, Object o) throws Exception {
DispositivoEmbarcada dispositivoEmbarcada = (DispositivoEmbarcada) o; DispositivoEmbarcada dispositivoEmbarcada = (DispositivoEmbarcada) o;
Boleto boleto = boletoDAO.buscarPeloImeiDoDispositivo(dispositivoEmbarcada.getImei());
Listcell lc = new Listcell(dispositivoEmbarcada.getDispositivoEmbarcadaId().toString()); Listcell lc = new Listcell(dispositivoEmbarcada.getDispositivoEmbarcadaId().toString());
lc.setParent(lstm); lc.setParent(lstm);
@ -80,11 +90,13 @@ public class RenderDispositivoVendaEmbarcada implements ListitemRenderer {
lc = new Listcell(String.format("%s - %s", dispositivoEmbarcada.getUsuario().getUsuarioId(), dispositivoEmbarcada.getUsuario().getNombusuario())); lc = new Listcell(String.format("%s - %s", dispositivoEmbarcada.getUsuario().getUsuarioId(), dispositivoEmbarcada.getUsuario().getNombusuario()));
lc.setParent(lstm); lc.setParent(lstm);
if (boleto != null) {
lc = new Listcell(String.format("%s - %s", boleto.getPuntoVenta().getPuntoventaId(), boleto.getPuntoVenta().getNombpuntoventa()));// mostrar o ponto de venda referente ao último bpe emitido PtoVtaUsuarioUltimaVendaDispositivoVO vo = ultimaVendaDispositivo.get(dispositivoEmbarcada.getImei());
if (vo != null) {
lc = new Listcell(String.format("%s - %s", vo.getPuntoventaId(), vo.getNombpuntoventa()));// mostrar o ponto de venda referente ao último bpe emitido
lc.setParent(lstm); lc.setParent(lstm);
lc = new Listcell(String.format("%s - %s", boleto.getUsuario().getUsuarioId(), boleto.getUsuario().getNombusuario())); // Essa informação deve ser buscada na ultima venda registrada nessa maquina lc = new Listcell(String.format("%s - %s", vo.getUsuarioId(), vo.getNombusuario())); // Essa informação deve ser buscada na ultima venda registrada nessa maquina
lc.setParent(lstm); lc.setParent(lstm);
} }