bug#22266
dev: Valdevir qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@108245 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
ffa367f964
commit
09a8218109
|
@ -6,7 +6,9 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.tarifas;
|
|||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
|
@ -25,6 +27,8 @@ import org.apache.poi.hssf.usermodel.HSSFFont;
|
|||
import org.apache.poi.hssf.usermodel.HSSFRow;
|
||||
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Controller;
|
||||
|
@ -87,6 +91,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
|
|||
public class TarifaEscalaContorller extends MyGenericForwardComposer {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Autowired
|
||||
private TarifaService tarifaService;
|
||||
@Autowired
|
||||
|
@ -113,6 +118,7 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
|
|||
private CiudadService ciudadService;
|
||||
@Autowired
|
||||
private MarcaClaseServicioService marcaClaseServicioService;
|
||||
|
||||
private List<Marca> lsMarcas;
|
||||
private List<ClaseServicio> lsClaseServico;
|
||||
private List<Moneda> lsMonedas;
|
||||
|
@ -134,8 +140,10 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
|
|||
private Map<String, Tarifa> mapTramoTarifaNovo;
|
||||
private Map<Tramo, Decimalbox> mapTarifaTextbox;
|
||||
private List<List> lsGridRender;
|
||||
|
||||
private static Logger log = Logger.getLogger(TarifaEscalaContorller.class);
|
||||
|
||||
|
||||
public List<ClaseServicio> getLsClaseServico() {
|
||||
return lsClaseServico;
|
||||
}
|
||||
|
@ -804,107 +812,7 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
|
|||
public void onClick$btnExportarExcel(Event ev) throws InterruptedException {
|
||||
validacion();
|
||||
try {
|
||||
HSSFWorkbook wb = new HSSFWorkbook();
|
||||
|
||||
// fonte em negrito:
|
||||
HSSFFont fonte = wb.createFont();
|
||||
fonte.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
|
||||
HSSFCellStyle estilo = wb.createCellStyle();
|
||||
estilo.setFont(fonte);
|
||||
|
||||
HSSFSheet sheet1 = wb.createSheet(Labels.getLabel("tarifaEscalaContorller.window.title"));
|
||||
|
||||
// cabeçalho:
|
||||
VigenciaTarifa vt = (VigenciaTarifa) (cmbVigencia.getSelectedItem() != null ? cmbVigencia.getSelectedItem().getValue() : null);
|
||||
if (vt != null) {
|
||||
HSSFRow rowVigencia = sheet1.createRow(0);
|
||||
rowVigencia.createCell(0).setCellValue(
|
||||
Labels.getLabel("tarifaEscalaContorller.lhFeciniciovigencia.label") + ": " + vt.toString());
|
||||
} else {
|
||||
HSSFRow rowVigencia = sheet1.createRow(0);
|
||||
rowVigencia.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhFeciniciovigencia.label") + ": ");
|
||||
}
|
||||
|
||||
Moneda moneda = (Moneda) (cmbMoneda.getSelectedItem() != null ? cmbMoneda.getSelectedItem().getValue() : null);
|
||||
if (moneda != null) {
|
||||
HSSFRow rowMoneda = sheet1.createRow(1);
|
||||
rowMoneda.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMoneda.label") + ": " + moneda.toString());
|
||||
} else {
|
||||
HSSFRow rowMoneda = sheet1.createRow(1);
|
||||
rowMoneda.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMoneda.label") + ": ");
|
||||
}
|
||||
|
||||
Ruta ruta = (Ruta) (cmbRuta.getSelectedItem() != null ? cmbRuta.getSelectedItem().getValue() : null);
|
||||
if (ruta != null) {
|
||||
HSSFRow rowRuta = sheet1.createRow(2);
|
||||
rowRuta.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhRuta.label") + ": " + ruta.toString());
|
||||
} else {
|
||||
HSSFRow rowRuta = sheet1.createRow(2);
|
||||
rowRuta.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhRuta.label") + ": ");
|
||||
}
|
||||
|
||||
Marca marca = (Marca) (cmbMarca.getSelectedItem() != null ? cmbMarca.getSelectedItem().getValue() : null);
|
||||
if (marca != null) {
|
||||
HSSFRow rowMarca = sheet1.createRow(3);
|
||||
rowMarca.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMarca.label") + ": " + marca.toString());
|
||||
} else {
|
||||
HSSFRow rowMarca = sheet1.createRow(3);
|
||||
rowMarca.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMarca.label") + ": ");
|
||||
}
|
||||
|
||||
ClaseServicio claseService = (ClaseServicio) (cmbClaseServicio.getSelectedItem() != null ? cmbClaseServicio.getSelectedItem().getValue() : null);
|
||||
if (claseService != null) {
|
||||
HSSFRow rowClaseService = sheet1.createRow(4);
|
||||
rowClaseService.createCell(0).setCellValue(
|
||||
Labels.getLabel("tarifaEscalaContorller.lhClaseServicio.label") + ": " + claseService.toString());
|
||||
} else {
|
||||
HSSFRow rowClaseService = sheet1.createRow(4);
|
||||
rowClaseService.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhClaseServicio.label") + ": ");
|
||||
}
|
||||
|
||||
// linha vazia entre o cabeçalho e escala:
|
||||
HSSFRow rowEspaco = sheet1.createRow(5);
|
||||
rowEspaco.createCell(0).setCellValue("");
|
||||
|
||||
for (int i = 0; i < lsGridRender.size(); i++) {
|
||||
List list = lsGridRender.get(i);
|
||||
|
||||
HSSFRow row = sheet1.createRow(i + 6);
|
||||
for (int j = 0; j < list.size(); j++) {
|
||||
Object st = list.get(j);
|
||||
|
||||
if (st instanceof Tarifa) {
|
||||
Tarifa tmp = (Tarifa) st;
|
||||
|
||||
row.createCell(j).setCellValue(tmp.getPrecio().setScale(2).toString());
|
||||
} else if (st instanceof Parada) {
|
||||
Parada parada = (Parada) st;
|
||||
|
||||
HSSFCell cell = row.createCell(j);
|
||||
cell.setCellStyle(estilo);
|
||||
|
||||
cell.setCellValue(parada.getCveparada());
|
||||
} else {
|
||||
row.createCell(j).setCellValue(st.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
String nomeArquivo = UsuarioLogado.getUsuarioLogado().getNombusuario() + "_" + Calendar.getInstance().getTime().getTime() + "_"
|
||||
+ "escala";
|
||||
|
||||
File fNomeArquivo = File.createTempFile(nomeArquivo, ".tmp");
|
||||
|
||||
FileOutputStream stream = new FileOutputStream(fNomeArquivo);
|
||||
stream.flush();
|
||||
wb.write(stream);
|
||||
stream.close();
|
||||
|
||||
InputStream is = null;
|
||||
is = new FileInputStream(fNomeArquivo);
|
||||
Filedownload.save(is, "application/xls", "escala.xls");
|
||||
|
||||
fNomeArquivo.delete();
|
||||
gerarExcel(false);
|
||||
} catch (Exception ex) {
|
||||
|
||||
log.info("** Erro ao exportar escala de tarifa: " + ex);
|
||||
|
@ -915,6 +823,142 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws IOException
|
||||
* @throws FileNotFoundException
|
||||
*/
|
||||
private void gerarExcel(Boolean isImprimir) throws IOException, FileNotFoundException {
|
||||
HSSFWorkbook wb = new HSSFWorkbook();
|
||||
Workbook wbi = new XSSFWorkbook();
|
||||
|
||||
|
||||
// fonte em negrito:
|
||||
HSSFFont fonte = wb.createFont();
|
||||
fonte.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
|
||||
HSSFCellStyle estilo = wb.createCellStyle();
|
||||
estilo.setFont(fonte);
|
||||
|
||||
HSSFSheet sheet1 = wb.createSheet(Labels.getLabel("tarifaEscalaContorller.window.title"));
|
||||
|
||||
// cabeçalho:
|
||||
VigenciaTarifa vt = (VigenciaTarifa) (cmbVigencia.getSelectedItem() != null ? cmbVigencia.getSelectedItem().getValue() : null);
|
||||
if (vt != null) {
|
||||
HSSFRow rowVigencia = sheet1.createRow(0);
|
||||
rowVigencia.createCell(0).setCellValue(
|
||||
Labels.getLabel("tarifaEscalaContorller.lhFeciniciovigencia.label") + ": " + vt.toString());
|
||||
} else {
|
||||
HSSFRow rowVigencia = sheet1.createRow(0);
|
||||
rowVigencia.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhFeciniciovigencia.label") + ": ");
|
||||
}
|
||||
|
||||
Moneda moneda = (Moneda) (cmbMoneda.getSelectedItem() != null ? cmbMoneda.getSelectedItem().getValue() : null);
|
||||
if (moneda != null) {
|
||||
HSSFRow rowMoneda = sheet1.createRow(1);
|
||||
rowMoneda.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMoneda.label") + ": " + moneda.toString());
|
||||
} else {
|
||||
HSSFRow rowMoneda = sheet1.createRow(1);
|
||||
rowMoneda.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMoneda.label") + ": ");
|
||||
}
|
||||
|
||||
Ruta ruta = (Ruta) (cmbRuta.getSelectedItem() != null ? cmbRuta.getSelectedItem().getValue() : null);
|
||||
if (ruta != null) {
|
||||
HSSFRow rowRuta = sheet1.createRow(2);
|
||||
rowRuta.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhRuta.label") + ": " + ruta.toString());
|
||||
} else {
|
||||
HSSFRow rowRuta = sheet1.createRow(2);
|
||||
rowRuta.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhRuta.label") + ": ");
|
||||
}
|
||||
|
||||
Marca marca = (Marca) (cmbMarca.getSelectedItem() != null ? cmbMarca.getSelectedItem().getValue() : null);
|
||||
if (marca != null) {
|
||||
HSSFRow rowMarca = sheet1.createRow(3);
|
||||
rowMarca.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMarca.label") + ": " + marca.toString());
|
||||
} else {
|
||||
HSSFRow rowMarca = sheet1.createRow(3);
|
||||
rowMarca.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhMarca.label") + ": ");
|
||||
}
|
||||
|
||||
ClaseServicio claseService = (ClaseServicio) (cmbClaseServicio.getSelectedItem() != null ? cmbClaseServicio.getSelectedItem().getValue() : null);
|
||||
if (claseService != null) {
|
||||
HSSFRow rowClaseService = sheet1.createRow(4);
|
||||
rowClaseService.createCell(0).setCellValue(
|
||||
Labels.getLabel("tarifaEscalaContorller.lhClaseServicio.label") + ": " + claseService.toString());
|
||||
} else {
|
||||
HSSFRow rowClaseService = sheet1.createRow(4);
|
||||
rowClaseService.createCell(0).setCellValue(Labels.getLabel("tarifaEscalaContorller.lhClaseServicio.label") + ": ");
|
||||
}
|
||||
|
||||
// linha vazia entre o cabeçalho e escala:
|
||||
HSSFRow rowEspaco = sheet1.createRow(6);
|
||||
rowEspaco.createCell(1).setCellValue("");
|
||||
|
||||
int destino = 0;
|
||||
Boolean isSec = false;
|
||||
for (int i = 0; i < lsGridRender.size(); i++) {
|
||||
List list = lsGridRender.get(i);
|
||||
HSSFRow row = sheet1.createRow(i + 6);
|
||||
destino++;
|
||||
isSec = false;
|
||||
for (int j = 0; j < list.size(); j++) {
|
||||
Object st = list.get(j);
|
||||
|
||||
if (st instanceof Tarifa) {
|
||||
Tarifa tmp = (Tarifa) st;
|
||||
if(i>=1 && destino <= lsGridRender.size()) {
|
||||
row.createCell(0).setCellValue(destino);
|
||||
}
|
||||
row.createCell(j+1).setCellValue(tmp.getPrecio().setScale(2).toString());
|
||||
|
||||
} else if (st instanceof Parada) {
|
||||
Parada parada = (Parada) st;
|
||||
|
||||
HSSFCell cell = row.createCell(j+1);
|
||||
cell.setCellStyle(estilo);
|
||||
cell.setCellValue(parada.getDescparada()+" "+"("+parada.getCveparada()+")");
|
||||
|
||||
} else {
|
||||
|
||||
if(!isSec) {
|
||||
row.createCell(j+1).setCellValue(destino+1);
|
||||
isSec = true;
|
||||
} else {
|
||||
row.createCell(j+1).setCellValue(st.toString());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
sheet1.setFitToPage(true);
|
||||
sheet1.getPrintSetup().setFitWidth((short)1);
|
||||
sheet1.getPrintSetup().setFitHeight((short)0);
|
||||
|
||||
String nomeArquivo = UsuarioLogado.getUsuarioLogado().getNombusuario() + "_" + Calendar.getInstance().getTime().getTime() + "_"
|
||||
+ "escala";
|
||||
|
||||
File fNomeArquivo = File.createTempFile(nomeArquivo, ".tmp");
|
||||
|
||||
FileOutputStream stream = new FileOutputStream(fNomeArquivo);
|
||||
stream.flush();
|
||||
|
||||
if (isImprimir) {
|
||||
wbi.write(stream);
|
||||
} else {
|
||||
wb.write(stream);
|
||||
}
|
||||
stream.close();
|
||||
|
||||
InputStream is = null;
|
||||
is = new FileInputStream(fNomeArquivo);
|
||||
|
||||
if (isImprimir) {
|
||||
Filedownload.save(is, "application/xls", "escala.xls");
|
||||
} else {
|
||||
Filedownload.save(is, "application/xls", "escala.xls");
|
||||
}
|
||||
|
||||
fNomeArquivo.delete();
|
||||
}
|
||||
|
||||
public void onChange$cmbClaseServicio(Event ev) {
|
||||
Comboitem cbiClaseServicio = cmbClaseServicio.getSelectedItem();
|
||||
|
||||
|
|
Loading…
Reference in New Issue