bug#22266

dev: Valdevir
qua: 

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@108245 d1611594-4594-4d17-8e1d-87c2c4800839
master
celio 2021-08-11 12:46:13 +00:00
parent ffa367f964
commit 09a8218109
1 changed files with 145 additions and 101 deletions

View File

@ -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,7 +812,25 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
public void onClick$btnExportarExcel(Event ev) throws InterruptedException {
validacion();
try {
gerarExcel(false);
} catch (Exception ex) {
log.info("** Erro ao exportar escala de tarifa: " + ex);
log.error("** Erro ao exportar escala de tarifa: " + ex);
Messagebox.show(Labels.getLabel("MSG.Error"), Labels.getLabel("tarifaEscalaContorller.window.title"), Messagebox.OK,
Messagebox.ERROR);
}
}
/**
* @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();
@ -863,32 +889,48 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
}
// linha vazia entre o cabeçalho e escala:
HSSFRow rowEspaco = sheet1.createRow(5);
rowEspaco.createCell(0).setCellValue("");
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());
row.createCell(j).setCellValue(tmp.getPrecio().setScale(2).toString());
} else if (st instanceof Parada) {
Parada parada = (Parada) st;
HSSFCell cell = row.createCell(j);
HSSFCell cell = row.createCell(j+1);
cell.setCellStyle(estilo);
cell.setCellValue(parada.getDescparada()+" "+"("+parada.getCveparada()+")");
cell.setCellValue(parada.getCveparada());
} else {
row.createCell(j).setCellValue(st.toString());
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";
@ -897,22 +939,24 @@ public class TarifaEscalaContorller extends MyGenericForwardComposer {
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();
} catch (Exception ex) {
log.info("** Erro ao exportar escala de tarifa: " + ex);
log.error("** Erro ao exportar escala de tarifa: " + ex);
Messagebox.show(Labels.getLabel("MSG.Error"), Labels.getLabel("tarifaEscalaContorller.window.title"), Messagebox.OK,
Messagebox.ERROR);
}
}
public void onChange$cmbClaseServicio(Event ev) {