Example usage for org.apache.poi.ss.usermodel Row getRowNum

List of usage examples for org.apache.poi.ss.usermodel Row getRowNum

Introduction

In this page you can find the example usage for org.apache.poi.ss.usermodel Row getRowNum.

Prototype

int getRowNum();

Source Link

Document

Get row number this row represents

Usage

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parseCarta(Row row) throws Exception {
    Cell cell = null;//from  w  w  w  . j  a v a 2 s . co m
    int col = 0;
    try {
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                    + "' verr ignorta in quanto ha la targa del mezzo non definita.");
            return false;
        }
        Mezzo mezzo = super.findMezzo(ExcelUtils.getCellValue(cell));
        if (!mezzo.isManaged() && !mezziImportati.contains(mezzo.getTarga())) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                    + "' verr ignorta in quanto il mezzo non  presente n nel sistema n nel foglio '"
                    + MEZZI_SHEET + "'.");
            getMezzi().remove(mezzo);
            return false;
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                    + "' verr ignorta in quanto ha il numero carta non definito.");
            return false;
        }
        String numero = StringUtils.cutTo(ExcelUtils.getCellValue(cell), '.');

        String id = null;
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            id = StringUtils.cutTo(ExcelUtils.getCellValue(cell), '.');
        }

        String pin = null;
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            pin = StringUtils.cutTo(ExcelUtils.getCellValue(cell), '.');
        }

        Date scadenza = null;
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            scadenza = ExcelUtils.getAsDate(cell, getConfigManager().getShortDateFormat());
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                    + "' verr ignorta in quanto ha il gestore non definito.");
            return false;
        }
        Integer gestore = Gestore.parse(ExcelUtils.getCellValue(cell));
        if (gestore == null) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                    + "' verr ignorta in quanto il gestore '" + ExcelUtils.getCellValue(cell)
                    + "'  sconosciuto.");
            return false;
        }

        CartaCarburante carta = findCartaCarburante(numero, gestore);
        if (!carta.isManaged()) {
            carta.setMezzo(mezzo);
        } else {
            if (!carta.getMezzo().equals(mezzo)) {
                addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + CARTE_SHEET
                        + "' verr ignorta in quanto " + "il mezzo indicato " + mezzo.getTarga()
                        + "  diverso da quello sul sistema " + carta.getMezzo().getTarga());
                removeCartaCarburante(carta);
                return false;
            }
        }

        // Setto il pin e la scedenza letti prima
        if (pin != null)
            carta.setPinCode(pin);
        if (scadenza != null)
            carta.setScadenza(scadenza);
        if (id != null)
            carta.setIdentificativo(id);

        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            carta.setNote(ExcelUtils.getCellValue(cell));
        }

        // STATO
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            Integer stato = CartaCarburante.Stato.parse(ExcelUtils.getCellValue(cell));
            if (stato == null) {
                addErrorMessage(
                        "Stato carta carburante '" + ExcelUtils.getCellValue(cell) + "' non riconosciuto");
            } else {
                cell = row.getCell(col++);
                Date dataStato = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataStato = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }

                cell = row.getCell(col++);
                String noteStato = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteStato = ExcelUtils.getCellValue(cell);
                }
                // se la carta e' nuovo aggiorno lo stato
                // se la carta e' presente nel db aggiorno lo stato solo se differente da quello attuale 
                if (!carta.isManaged()) {
                    carta.getStato().setStato(stato);
                    carta.getStato().setDataStato(dataStato);
                    carta.getStato().setNoteStato(noteStato);
                    carta.getStato().setUtenteStato(getUser());
                } else if (!carta.getStato().getStato().equals(stato)) {
                    if (dataStato.after(carta.getStato().getDataStato())) {
                        carta.cambiaStato(stato, dataStato, getUser(), noteStato);
                    } else {
                        addErrorMessage("Lo stato della carta " + carta.getNumero()
                                + " non pu essere modificato perch " + "la data stato indicata "
                                + DateUtils.format(dataStato, "dd/MM/yyyy")
                                + " non  successiva alla data stato attuale "
                                + DateUtils.format(carta.getStato().getDataStato(), "dd/MM/yyyy"));
                    }
                }
            }
        } else {
            col++;
            col++;
        }

        // ASSEGNAZIONE
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            String matricola = ExcelUtils.getCellValue(cell);
            Persona pers = service.findPersona(matricola);
            if (!pers.isManaged() && !personeImportate.contains(matricola)) {
                addErrorMessage("La persona indicata nella riga " + row.getRowNum() + " del foglio '"
                        + CARTE_SHEET + "' non  stata trovata o non  unica");
                col++;
            } else {
                cell = row.getCell(col++);
                Date dataAss = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataAss = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }
                dataAss = DateUtils.toMorning(dataAss);

                cell = row.getCell(col++);
                String noteAss = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteAss = ExcelUtils.getCellValue(cell);
                }

                MovimentoAsset last = carta.getLastMovimentoAsset();

                if (last == null) {
                    last = new MovimentoAsset();
                    last.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                    last.setData(dataAss);
                    last.setNote(noteAss);
                    last.setAsset(carta);
                    last.setAssegnatario(pers);
                    carta.getMovimenti().add(last);
                } else if (!last.getAssegnatario().equals(pers)) {
                    if (dataAss.after(last.getData())) {
                        if (last.isConsegnata()) {
                            MovimentoAsset ric = new MovimentoAsset();
                            ric.setTipo(MovimentoAsset.Tipo.RICONSEGNA);
                            ric.setData(DateUtils.toMidnight(DateUtils.addDay(dataAss, -1)));
                            ric.setAsset(carta);
                            ric.setAssegnatario(last.getAssegnatario());
                            carta.getMovimenti().add(ric);
                        }
                        MovimentoAsset cons = new MovimentoAsset();
                        cons.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                        cons.setData(dataAss);
                        cons.setNote(noteAss);
                        cons.setAsset(carta);
                        cons.setAssegnatario(pers);
                        carta.getMovimenti().add(cons);
                    } else {
                        addErrorMessage("L'assegnazione della carta " + carta.getNumero()
                                + " non pu essere modificata perch " + "la data assegnazione indicata "
                                + DateUtils.format(dataAss, "dd/MM/yyyy")
                                + " non  successiva alla data assegnazione attuale "
                                + DateUtils.format(last.getData(), "dd/MM/yyyy"));
                    }
                }
            }
        }
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parsePincard(Row row) throws Exception {
    Cell cell = null;// w w w . j  a va 2  s.  c  o m
    Cell cellCb = null;
    Cell cellCo = null;
    int col = 0;
    try {
        // Codice Busta, Codice Operatore
        cellCb = row.getCell(col++);
        cellCo = row.getCell(col++);

        // Gestore
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PIN_SHEET
                    + "' verr ignorta in quanto ha il gestore non valorizzato.");
            return false;
        }
        Integer gestore = Gestore.parse(ExcelUtils.getCellValue(cell));
        if (gestore == null) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PIN_SHEET
                    + "' verra' ignorta in quanto il gestore '" + ExcelUtils.getCellValue(cell)
                    + "'  sconosciuto.");
            return false;
        }

        if (ExcelUtils.isCellEmpty(cellCb) && Gestore.AGIP.equals(gestore)) {
            // Agip non ammette codici busta vuoti
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PIN_SHEET
                    + "' per gestore AGIP verr ignorta in quanto ha il codice busta non valorizzato.");
            return false;
        }
        String codiceBusta = ExcelUtils.getCellValue(cellCb);

        // Codice Operatore non puo' essere vuoto
        if (ExcelUtils.isCellEmpty(cellCo)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PIN_SHEET
                    + "' verr ignorta in quanto ha il codice operatore non valorizzato.");
            return false;
        }
        String codiceOperatore = ExcelUtils.getCellValue(cellCo);

        PinCard pincard = super.findPincardByOperatore(codiceOperatore, gestore);
        pincard.setCodiceBusta(codiceBusta);

        // Note
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            pincard.setNote(ExcelUtils.getCellValue(cell));
        }

        // STATO
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            Integer stato = PinCard.Stato.parse(ExcelUtils.getCellValue(cell));
            if (stato == null) {
                addErrorMessage("Stato pin card '" + ExcelUtils.getCellValue(cell) + "' non riconosciuto");
            } else {
                cell = row.getCell(col++);
                Date dataStato = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataStato = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }

                cell = row.getCell(col++);
                String noteStato = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteStato = ExcelUtils.getCellValue(cell);
                }
                // se la pin card e' nuovo aggiorno lo stato
                // se la pin card e' presente nel db aggiorno lo stato solo se differente da quello attuale 
                if (!pincard.isManaged()) {
                    pincard.getStato().setStato(stato);
                    pincard.getStato().setDataStato(dataStato);
                    pincard.getStato().setNoteStato(noteStato);
                    pincard.getStato().setUtenteStato(getUser());
                } else if (!pincard.getStato().getStato().equals(stato)) {
                    if (dataStato.after(pincard.getStato().getDataStato())) {
                        pincard.cambiaStato(stato, dataStato, getUser(), noteStato);
                    } else {
                        addErrorMessage("Lo stato della pin card con codice operatore "
                                + pincard.getCodiceOperatore() + " non pu essere modificato perch "
                                + "la data stato indicata " + DateUtils.format(dataStato, "dd/MM/yyyy")
                                + " non  successiva alla data stato attuale "
                                + DateUtils.format(pincard.getStato().getDataStato(), "dd/MM/yyyy"));
                    }
                }
            }
        } else {
            col++;
            col++;
        }

        // ASSEGNAZIONE
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            String matricola = ExcelUtils.getCellValue(cell);
            Persona pers = service.findPersona(matricola);
            if (!pers.isManaged() && !personeImportate.contains(matricola)) {
                addErrorMessage("La persona indicata nella riga " + row.getRowNum() + " del foglio '"
                        + PIN_SHEET + "' non  stata trovata o non  unica");
                col++;
            } else {
                cell = row.getCell(col++);
                Date dataAss = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataAss = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }
                dataAss = DateUtils.toMorning(dataAss);

                cell = row.getCell(col++);
                String noteAss = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteAss = ExcelUtils.getCellValue(cell);
                }

                MovimentoAsset last = pincard.getLastMovimentoAsset();

                if (last == null) {
                    last = new MovimentoAsset();
                    last.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                    last.setData(dataAss);
                    last.setNote(noteAss);
                    last.setAsset(pincard);
                    last.setAssegnatario(pers);
                    pincard.getMovimenti().add(last);
                } else if (!last.getAssegnatario().equals(pers)) {
                    if (dataAss.after(last.getData())) {
                        if (last.isConsegnata()) {
                            MovimentoAsset ric = new MovimentoAsset();
                            ric.setTipo(MovimentoAsset.Tipo.RICONSEGNA);
                            ric.setData(DateUtils.toMidnight(DateUtils.addDay(dataAss, -1)));
                            ric.setAsset(pincard);
                            ric.setAssegnatario(last.getAssegnatario());
                            pincard.getMovimenti().add(ric);
                        }
                        MovimentoAsset cons = new MovimentoAsset();
                        cons.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                        cons.setData(dataAss);
                        cons.setNote(noteAss);
                        cons.setAsset(pincard);
                        cons.setAssegnatario(pers);
                        pincard.getMovimenti().add(cons);
                    } else {
                        addErrorMessage("L'assegnazione della pin card " + pincard.getCodiceOperatore()
                                + " non pu essere modificata perch " + "la data assegnazione indicata "
                                + DateUtils.format(dataAss, "dd/MM/yyyy")
                                + " non  successiva alla data assegnazione attuale "
                                + DateUtils.format(last.getData(), "dd/MM/yyyy"));
                    }
                }
            }
        }
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parseDotazione(Row row) throws Exception {
    Cell cell = null;/* w  w w . j  a v a 2s.  c o m*/
    int col = 0;
    try {
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + DOTAZIONI_SHEET
                    + "' verr ignorta in quanto ha la targa del mezzo non  definita.");
            return false;
        }
        Mezzo mezzo = super.findMezzo(ExcelUtils.getCellValue(cell));
        if (!mezzo.isManaged() && !mezziImportati.contains(mezzo.getTarga())) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + DOTAZIONI_SHEET
                    + "' verr ignorta in quanto il mezzo non  presente n nel sistema n nel foglio '"
                    + MEZZI_SHEET + "'.");
            getMezzi().remove(mezzo);
            return false;
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + DOTAZIONI_SHEET
                    + "' verr ignorta in quanto ha il tipo dotazione non definito.");
            return false;
        }
        //Integer genere = Asset.Tipo.parse( ExcelUtils.getCellValue( cell ) );
        GenereAsset genere = service.findGenereDotazioneMezzo(ExcelUtils.getCellValue(cell));
        if (genere == null) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + DOTAZIONI_SHEET
                    + "' verr ignorta in quanto il genere/tipo '" + ExcelUtils.getCellValue(cell)
                    + "' non  stato riconosciuto.");
            return false;
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + DOTAZIONI_SHEET
                    + "' verr ignorta in quanto ha la matricola non definita.");
            return false;
        }
        String matricola = ExcelUtils.getCellValue(cell);

        DotazioneMezzo dotazione = service.findDotazioneMezzo(matricola, genere, mezzo);

        // STATO
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            Integer stato = DotazioneMezzo.Stato.parse(ExcelUtils.getCellValue(cell));
            if (stato == null) {
                addErrorMessage("Stato dotazione '" + ExcelUtils.getCellValue(cell) + "' non riconosciuto");
            } else {
                cell = row.getCell(col++);
                Date dataStato = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataStato = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }
                dataStato = DateUtils.toMorning(dataStato);

                cell = row.getCell(col++);
                String noteStato = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteStato = ExcelUtils.getCellValue(cell);
                }
                // se la dotazione e' nuova aggiorno lo stato
                // se la dotazione e' presente nel db aggiorno lo stato solo se differente da quello attuale 
                if (!dotazione.isManaged()) {
                    dotazione.getStato().setStato(stato);
                    dotazione.getStato().setDataStato(dataStato);
                    dotazione.getStato().setNoteStato(noteStato);
                    dotazione.getStato().setUtenteStato(getUser());
                } else if (!dotazione.getStato().getStato().equals(stato)) {
                    if (dataStato.after(dotazione.getStato().getDataStato())) {
                        dotazione.cambiaStato(stato, dataStato, getUser(), noteStato);
                    } else {
                        addErrorMessage("Lo stato della dotazione " + dotazione.getMatricola()
                                + " non pu essere modificato perch " + "la data stato indicata "
                                + DateUtils.format(dataStato, "dd/MM/yyyy")
                                + " non  successiva alla data stato attuale "
                                + DateUtils.format(dotazione.getStato().getDataStato(), "dd/MM/yyyy"));
                    }
                }
            }
        } else {
            col++;
            col++;
        }

        // ASSEGNAZIONE
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            matricola = ExcelUtils.getCellValue(cell);
            Persona pers = service.findPersona(matricola);
            if (!pers.isManaged() && !personeImportate.contains(matricola)) {
                addErrorMessage("La persona indicata nella riga " + row.getRowNum() + " del foglio '"
                        + DOTAZIONI_SHEET + "' non  stata trovata o non  unica");
                col++;
            } else {
                cell = row.getCell(col++);
                Date dataAss = new Date();
                if (!ExcelUtils.isCellEmpty(cell)) {
                    dataAss = ExcelUtils.getAsDate(cell, "dd/MM/yyyy");
                }
                dataAss = DateUtils.toMorning(dataAss);

                cell = row.getCell(col++);
                String noteAss = "";
                if (!ExcelUtils.isCellEmpty(cell)) {
                    noteAss = ExcelUtils.getCellValue(cell);
                }

                MovimentoAsset last = dotazione.getLastMovimentoAsset();

                if (last == null) {
                    last = new MovimentoAsset();
                    last.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                    last.setData(dataAss);
                    last.setNote(noteAss);
                    last.setAsset(dotazione);
                    last.setAssegnatario(pers);
                    dotazione.getMovimenti().add(last);
                } else if (!last.getAssegnatario().equals(pers)) {
                    if (dataAss.after(last.getData())) {
                        if (last.isConsegnata()) {
                            MovimentoAsset ric = new MovimentoAsset();
                            ric.setTipo(MovimentoAsset.Tipo.RICONSEGNA);
                            ric.setData(DateUtils.toMidnight(DateUtils.addDay(dataAss, -1)));
                            ric.setAsset(dotazione);
                            ric.setAssegnatario(last.getAssegnatario());
                            dotazione.getMovimenti().add(ric);
                        }
                        MovimentoAsset cons = new MovimentoAsset();
                        cons.setTipo(MovimentoAsset.Tipo.CONSEGNA);
                        cons.setData(dataAss);
                        cons.setNote(noteAss);
                        cons.setAsset(dotazione);
                        cons.setAssegnatario(pers);
                        dotazione.getMovimenti().add(cons);
                    } else {
                        addErrorMessage("L'assegnazione della dotazione " + dotazione.getMatricola()
                                + " non pu essere modificata perch " + "la data assegnazione indicata "
                                + DateUtils.format(dataAss, "dd/MM/yyyy")
                                + " non  successiva alla data assegnazione attuale "
                                + DateUtils.format(last.getData(), "dd/MM/yyyy"));
                    }
                }
            }
        }
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parsePolizza(Row row) throws Exception {
    Cell cell = null;//from  www .j  a va 2  s. c o  m
    int col = 0;
    try {
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto ha la targa del mezzo non  definita.");
            return false;
        }
        Mezzo mezzo = super.findMezzo(ExcelUtils.getCellValue(cell));
        if (!mezzo.isManaged() && !mezziImportati.contains(mezzo.getTarga())) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto il mezzo non  presente n nel sistema n nel foglio '"
                    + MEZZI_SHEET + "'.");
            getMezzi().remove(mezzo);
            return false;
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto la compagnia non  definita.");
            return false;
        }
        CompagniaAssicurazione comp = service.findCompagnia(ExcelUtils.getCellValue(cell));

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto il numero polizza non  definito.");
            return false;
        }
        Polizza polizza = service.findPolizza(ExcelUtils.getCellValue(cell), comp);

        if (polizza.isManaged()) {
            if (!polizza.getMezzo().equals(mezzo)) {
                addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                        + "' verr ignorta " + "in quanto il numero polizza " + polizza.getNumero()
                        + " della compagnia " + comp.getNome() + "  gi presente sul sistema "
                        + "associata al mezzo " + polizza.getMezzo().getTarga() + ".");
                service.removePolizza(polizza);
                return false;
            }
        } else {
            polizza.setMezzo(mezzo);
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto la data decorrenza non  definita.");
            service.removePolizza(polizza);
            return false;
        }
        polizza.setDataDecorrenza(ExcelUtils.getAsDate(cell, "dd/MM/yyyy"));

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto il la data scadenza non  definita.");
            service.removePolizza(polizza);
            return false;
        }
        polizza.setDataScadenza(ExcelUtils.getAsDate(cell, "dd/MM/yyyy"));

        if (polizza.getDataDecorrenza().after(polizza.getDataScadenza())) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POLIZZE_SHEET
                    + "' verr ignorta in quanto il la data decorrenza  successiva alla data scadenza.");
            service.removePolizza(polizza);
            return false;
        }
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parsePostazioni(Row row) throws Exception {
    Cell cell = null;// w w w  .j a v a2s  . co  m
    int col = 0;
    String posName, centroCosto = null, areaName, provName;
    try {
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POSTAZIONI_SHEET
                    + "' verr ignorta in quanto la postazione non  definita.");
            return false;
        }
        posName = ExcelUtils.getCellValue(cell);

        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            centroCosto = ExcelUtils.getCellValue(cell);
        }

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POSTAZIONI_SHEET
                    + "' verr ignorta in quanto l'area non  definita.");
            return false;
        }
        areaName = ExcelUtils.getCellValue(cell);

        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + POSTAZIONI_SHEET
                    + "' verr ignorta in quanto la provincia non  definita.");
            return false;
        }
        provName = ExcelUtils.getCellValue(cell);

        Provincia prov = service.findProvincia(provName);
        Area area = service.findArea(areaName, prov);
        Postazione post = service.findPostazione(posName, area);
        post.setCentroCosto(centroCosto);
        postazioniImportate.add(post.getNome());
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:it.redev.parco.job.AnagraficaParserJob.java

License:Open Source License

private boolean parsePersona(Row row) throws Exception {
    Cell cell = null;/*from   ww  w .  j a v a2s .c om*/
    int col = 0;
    String matricola, nome, cognome, qualifica = null;
    try {
        // Matricola
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PERSONE_SHEET
                    + "' verr ignorta in quanto la matricola non  definita.");
            return false;
        }
        matricola = ExcelUtils.getCellValue(cell);

        // Cognome
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PERSONE_SHEET
                    + "' verr ignorta in quanto il cognome non  definito.");
            return false;
        }
        cognome = ExcelUtils.getCellValue(cell);

        // Nome
        cell = row.getCell(col++);
        if (ExcelUtils.isCellEmpty(cell)) {
            addErrorMessage("La riga " + row.getRowNum() + " del foglio '" + PERSONE_SHEET
                    + "' verr ignorta in quanto il nome non  definito.");
            return false;
        }
        nome = ExcelUtils.getCellValue(cell);

        // Qualifica
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            qualifica = ExcelUtils.getCellValue(cell);
        }

        // Postazione
        Postazione pos = null;
        cell = row.getCell(col++);
        if (!ExcelUtils.isCellEmpty(cell)) {
            String npos = ExcelUtils.getCellValue(cell);
            pos = service.findPostazione(npos);
            if (pos == null && !postazioniImportate.contains(npos)) {
                addErrorMessage("La postazione indicata nella riga " + row.getRowNum() + " del foglio '"
                        + PERSONE_SHEET
                        + "' non  stata trovata o non  unica, la persona sar inserita senza assegnazione");
            }
        }

        Persona pers = service.findPersona(matricola);
        pers.setNome(nome);
        pers.setCognome(cognome);
        pers.setQualifica(qualifica);
        pers.setPostazione(pos);
        personeImportate.add(matricola);
    } catch (Exception e) {
        addErrorMessage("Error parsing: " + ExcelUtils.getCellValue(cell));
        throw e;
    }
    return true;
}

From source file:itpreneurs.itp.report.archive.CellStyleDetails.java

License:Apache License

public static void main(String[] args) throws Exception {

    //     if(args.length == 0) {
    //        throw new IllegalArgumentException("Filename must be given");
    //     }//from w ww.j a  v  a 2s.c om

    String filename = "/Users/vincentgong/Documents/workspaces/Resource/itpreneurs/report/Workbook1.xlsx";

    Workbook wb = WorkbookFactory.create(new File(filename));
    DataFormatter formatter = new DataFormatter();

    for (int sn = 0; sn < wb.getNumberOfSheets(); sn++) {
        Sheet sheet = wb.getSheetAt(sn);
        System.out.println("Sheet #" + sn + " : " + sheet.getSheetName());

        for (Row row : sheet) {
            System.out.println("  Row " + row.getRowNum());

            for (Cell cell : row) {
                CellReference ref = new CellReference(cell);
                System.out.print("    " + ref.formatAsString());
                System.out.print(" (" + cell.getColumnIndex() + ") ");

                CellStyle style = cell.getCellStyle();
                System.out.print("Format=" + style.getDataFormatString() + " ");
                System.out.print("FG=" + renderColor(style.getFillForegroundColorColor()) + " ");
                System.out.print("BG=" + renderColor(style.getFillBackgroundColorColor()) + " ");

                Font font = wb.getFontAt(style.getFontIndex());
                System.out.print("Font=" + font.getFontName() + " ");
                System.out.print("FontColor=");
                if (font instanceof HSSFFont) {
                    System.out.print(renderColor(((HSSFFont) font).getHSSFColor((HSSFWorkbook) wb)));
                }
                if (font instanceof XSSFFont) {
                    System.out.print(renderColor(((XSSFFont) font).getXSSFColor()));
                }

                System.out.println();
                System.out.println("        " + formatter.formatCellValue(cell));
            }
        }

        System.out.println();
    }
}

From source file:jacobi.test.util.JacobiDataSource.java

License:Open Source License

private Matrix createMatrix(Row row) {
    Throw.when().isNull(() -> row, () -> "No dimension row.")
            .isNull(() -> row.getCell(0), () -> "Undefined number of rows at row #" + row.getRowNum())
            .isNull(() -> row.getCell(1), () -> "Undefined number of columns at row #" + row.getRowNum())
            .isFalse(() -> row.getCell(0).getCellType() == Cell.CELL_TYPE_NUMERIC,
                    () -> "Invalid number of rows at row #" + row.getRowNum())
            .isFalse(() -> row.getCell(1).getCellType() == Cell.CELL_TYPE_NUMERIC,
                    () -> "Invalid number of columns at row #" + row.getRowNum());

    double numRows = row.getCell(0).getNumericCellValue();
    double numCols = row.getCell(1).getNumericCellValue();

    Throw.when()//from w  w  w.  ja v a2  s .  c o m
            .isFalse(() -> this.isInteger(numRows),
                    () -> "Invalid number of rows " + numRows + " at row #" + row.getRowNum())
            .isFalse(() -> this.isInteger(numCols),
                    () -> "Invalid number of columns " + numCols + " at row #" + row.getRowNum());

    return Matrices.zeros((int) numRows, (int) numCols);
}

From source file:joinery.impl.Serialization.java

License:Open Source License

public static DataFrame<Object> readXls(final InputStream input) throws IOException {
    final Workbook wb = new HSSFWorkbook(input);
    final Sheet sheet = wb.getSheetAt(0);
    final List<Object> columns = new ArrayList<>();
    final List<List<Object>> data = new ArrayList<>();

    for (final Row row : sheet) {
        if (row.getRowNum() == 0) {
            // read header
            for (final Cell cell : row) {
                columns.add(readCell(cell));
            }/* w w  w .j  av  a 2 s  . c o m*/
        } else {
            // read data values
            final List<Object> values = new ArrayList<>();
            for (final Cell cell : row) {
                values.add(readCell(cell));
            }
            data.add(values);
        }
    }

    // create data frame
    final DataFrame<Object> df = new DataFrame<>(columns);
    for (final List<Object> row : data) {
        df.append(row);
    }

    return df.convert();
}

From source file:manager.supplier.service.SupplierFileService.java

private List<MainCustomer> getCustomerListFromExcel(File finalFile, JSONObject json, HttpServletRequest request)
        throws Exception {
    List<MainCustomer> items = new ArrayList<MainCustomer>();
    String fileName = finalFile.getName();

    boolean isE2007 = false; //?excel2007?  
    if (fileName.endsWith("xlsx")) {
        isE2007 = true;//from   w w w.j a  va2  s  .c  o  m
    }
    InputStream input = new FileInputStream(finalFile);
    Workbook wb = null;
    //??(20032007)??  
    if (isE2007) {
        wb = new XSSFWorkbook(input);
    } else {
        wb = new HSSFWorkbook(input);
    }
    Sheet sheet = wb.getSheetAt(6);// ?  
    for (Row row : sheet) { //?
        //
        if (row.getRowNum() > 2) {
            MainCustomer item = new MainCustomer();
            if (row.getCell(0) == null || row.getCell(1) == null) {
                json.put("success", false);
                json.put("message", "?7" + (row.getRowNum() + 1) + "??");
                break;
            }
            row.getCell(0).setCellType(Cell.CELL_TYPE_STRING);
            row.getCell(1).setCellType(Cell.CELL_TYPE_STRING);
            item.setCustomer_name((row.getCell(0) == null) ? "" : row.getCell(0).getStringCellValue());
            item.setCompany_name((row.getCell(1) == null) ? "" : row.getCell(1).getStringCellValue());
            items.add(item);
        } else if (row.getRowNum() == 1) {//
            String name = (row.getCell(0) == null) ? "" : row.getCell(0).toString().trim();
            if (!"?".equals(name)) {
                json.put("success", false);
                json.put("message", "?");
                break;
            }
        }
    }
    input.close();
    return items;
}