package it.agilis.mens.azzeroCO2.client.services; import it.agilis.mens.azzeroCO2.shared.Eventi; import it.agilis.mens.azzeroCO2.shared.model.OrdineModel; import it.agilis.mens.azzeroCO2.shared.model.evento.ManifestiPieghevoliFogliModel; import it.agilis.mens.azzeroCO2.shared.model.evento.PubblicazioniRilegateModel; import it.agilis.mens.azzeroCO2.shared.model.evento.TipoDiCartaModel; import it.agilis.mens.azzeroCO2.shared.model.pagamento.PagamentoModel; import it.agilis.mens.azzeroCO2.shared.model.unaPubblicazione.BigliettiDaVisitaModel; import it.agilis.mens.azzeroCO2.shared.vto.*; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.List; /** * Created by IntelliJ IDEA. * User: giovannilt * Date: 10/26/11 * Time: 7:49 PM * To change this template use File | Settings | File Templates. */ public class AzzerroCO2UtilsClientHelper { public static OrdineVTO getDettaglioVTO(OrdineModel ordineModel) { OrdineVTO ordineVTO = new OrdineVTO(); ordineVTO.setEventiType(ordineModel.getEventiType()); ordineVTO.setNome(ordineModel.getNome()); ordineVTO.setId(ordineModel.getId()); ordineVTO.setOrdineId(ordineModel.getOrdineId()); ordineVTO.setProgettoDiCompensazioneModel(ordineModel.getProgettoDiCompensazioneModel()); ordineVTO.setSellaRicevutaDiPagamento(ordineModel.getPagamentoModel()); if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.EVENTO) { ordineVTO.setNottiModel(ordineModel.getNottiModel()); ordineVTO.setEnergiaModel(ordineModel.getEnergiaModel()); ordineVTO.setTrasportoMerciModel(ordineModel.getTrasportoMerciModel()); ordineVTO.setTrasportoPersoneModel(ordineModel.getTrasportoPersoneModel()); ordineVTO.setDove(ordineModel.getDove()); ordineVTO.setFine(ordineModel.getFine()); ordineVTO.setInizio(ordineModel.getInizio()); ordineVTO.setNote(ordineModel.getNote()); ordineVTO.setManifestiPieghevoliFogliVTO(getManifestiPiegjevoliFogltioVTOList(ordineModel.getManifestiPieghevoliFogliModel())); ordineVTO.setPubblicazioniRilegateVTO(getPubblicazioniRilegateVTOList(ordineModel.getPubblicazioniRilegateModel())); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.ANNO_DI_ATTIVITA) { ordineVTO.setNottiModel(ordineModel.getNottiModel()); ordineVTO.setEnergiaModel(ordineModel.getEnergiaModel()); ordineVTO.setTrasportoMerciModel(ordineModel.getTrasportoMerciModel()); ordineVTO.setTrasportoPersoneModel(ordineModel.getTrasportoPersoneModel()); ordineVTO.setDove(ordineModel.getDove()); ordineVTO.setAnno(ordineModel.getAnno()); ordineVTO.setDove(ordineModel.getDove()); ordineVTO.setNote(ordineModel.getNote()); ordineVTO.setManifestiPieghevoliFogliVTO(getManifestiPiegjevoliFogltioVTOList(ordineModel.getManifestiPieghevoliFogliModel())); ordineVTO.setPubblicazioniRilegateVTO(getPubblicazioniRilegateVTOList(ordineModel.getPubblicazioniRilegateModel())); ordineVTO.setSitoWebModel(ordineModel.getSitoWebModel()); ordineVTO.setBigliettiDaVisitaVTO(getBigliettiDaVisitaModelVTO(ordineModel.getBigliettiDaVisitaModel())); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.WEB) { ordineVTO.setSitoWebModel(ordineModel.getSitoWebModel()); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.UNA_PUBBLICAZIONE) { ordineVTO.setManifestiPieghevoliFogliVTO(getManifestiPiegjevoliFogltioVTOList(ordineModel.getManifestiPieghevoliFogliModel())); ordineVTO.setPubblicazioniRilegateVTO(getPubblicazioniRilegateVTOList(ordineModel.getPubblicazioniRilegateModel())); ordineVTO.setBigliettiDaVisitaVTO(getBigliettiDaVisitaModelVTO(ordineModel.getBigliettiDaVisitaModel())); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.CONOSCI_CO2) { ordineVTO.setConoscoCO2(ordineModel.getConoscoCO2Model()); } if (ordineModel.getCouponModel() != null) { ordineVTO.setCouponModel(ordineModel.getCouponModel()); } return ordineVTO; } private static BigliettiDaVisitaModelVTO getBigliettiDaVisitaModelVTO(BigliettiDaVisitaModel bigliettiDaVisita) { if (bigliettiDaVisita == null) return null; BigliettiDaVisitaModelVTO _return = new BigliettiDaVisitaModelVTO(); _return.setId(bigliettiDaVisita.getId()); _return.setGrammaturaBiglietti(bigliettiDaVisita.getGrammaturaBiglietti()); _return.setGrammaturaCartelline(bigliettiDaVisita.getGrammaturaCartelline()); _return.setTipoDiCartaBiglietti(getTipoDiCartaVTO(bigliettiDaVisita.getTipoDiCartaBiglietti())); _return.setTipoDiCartaCartelline(getTipoDiCartaVTO(bigliettiDaVisita.getTipoDiCartaCartelline())); _return.setTiraturaBiglietti(bigliettiDaVisita.getTiraturaBiglietti()); _return.setTiraturaCartelline(bigliettiDaVisita.getTiraturaCartelline()); return _return; } private static ArrayList<PubblicazioniRilegateVTO> getPubblicazioniRilegateVTOList(List<PubblicazioniRilegateModel> pubblicazioniRilegateModel) { if (pubblicazioniRilegateModel == null) return null; ArrayList<PubblicazioniRilegateVTO> _return = new ArrayList<PubblicazioniRilegateVTO>(); for (PubblicazioniRilegateModel p : pubblicazioniRilegateModel) { _return.add(getPubblicazioniRilegateVTO(p)); } return _return; } private static PubblicazioniRilegateVTO getPubblicazioniRilegateVTO(PubblicazioniRilegateModel p) { PubblicazioniRilegateVTO _return = new PubblicazioniRilegateVTO(); _return.setAltezza(p.getAltezza()); _return.setCategoria(p.getCategoria()); _return.setGrammatura(p.getGrammatura()); _return.setTiratura(p.getTiratura()); _return.setGrammaturaCopertina(p.getGrammaturaCopertina()); _return.setId(p.getId()); _return.setLarghezza(p.getLarghezza()); _return.setNumeroDiPagine(p.getNumeroDiPagine()); _return.setTipoDiCarta(getTipoDiCartaVTO(p.getTipoDiCarta())); _return.setTipoDiCartaCopertina(getTipoDiCartaVTO(p.getTipoDiCartaCopertina())); _return.setId(p.getId()); return _return; } private static ArrayList<ManifestiPieghevoliFogliVTO> getManifestiPiegjevoliFogltioVTOList(List<ManifestiPieghevoliFogliModel> manifestiPieghevoliFogliModel) { if (manifestiPieghevoliFogliModel == null) return null; ArrayList<ManifestiPieghevoliFogliVTO> _return = new ArrayList<ManifestiPieghevoliFogliVTO>(); for (ManifestiPieghevoliFogliModel m : manifestiPieghevoliFogliModel) { _return.add(getManifestiPiegjevoliFogltioVTO(m)); } return _return; } private static ManifestiPieghevoliFogliVTO getManifestiPiegjevoliFogltioVTO(ManifestiPieghevoliFogliModel m) { ManifestiPieghevoliFogliVTO _return = new ManifestiPieghevoliFogliVTO(); _return.setAltezza(m.getAltezza()); _return.setCategoria(m.getCategoria()); _return.setGrammatura(m.getGrammatura()); _return.setId(m.getId()); _return.setLarghezza(m.getAltezza()); _return.setNumeroDiPagine(m.getNumeroDiPagine()); _return.setTiratura(m.getTiratura()); _return.setTipoDiCartaVTO(getTipoDiCartaVTO(m.getTipoDiCarta())); return _return; } private static TipoDiCartaVTO getTipoDiCartaVTO(TipoDiCartaModel tipoDiCarta) { if (tipoDiCarta == null) return null; TipoDiCartaVTO _return = new TipoDiCartaVTO(); _return.setId(tipoDiCarta.getId()); _return.setNome(tipoDiCarta.getNome()); _return.setParametro(tipoDiCarta.getParametro()); return _return; } public static OrdineModel getDettaglioModel(OrdineVTO ordineVTO) { OrdineModel ordineModel = new OrdineModel(); ordineModel.setEventiType(ordineVTO.getEventiType()); ordineModel.setOrdineId(ordineVTO.getOrdineId()); ordineModel.setId(ordineVTO.getId()); ordineModel.setPagamentoModel(ordineVTO.getPagamentoModel()); ordineModel.setProgettoDiCompensazioneModel(ordineVTO.getProgettoDiCompensazioneModel()); ordineModel.setNome(ordineVTO.getNome()); if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.EVENTO) { ordineModel.setEnergiaModel(ordineVTO.getEnergiaModel()); ordineModel.setTrasportoMerciModel(ordineVTO.getTrasportoMerciModel()); ordineModel.setTrasportoPersoneModel(ordineVTO.getTrasportoPersoneModel()); ordineModel.setNottiModel(ordineVTO.getNottiModel()); ordineModel.setDove(ordineVTO.getDove()); ordineModel.setFine(ordineVTO.getFine()); ordineModel.setInizio(ordineVTO.getInizio()); ordineModel.setNote(ordineVTO.getNote()); ordineModel.setManifestiPieghevoliFogliModel(getManifestiPiegjevoliFogltioModelList(ordineVTO.getManifestiPieghevoliFogliVTO())); ordineModel.setPubblicazioniRilegateModel(getPubblicazioniRilegateModelList(ordineVTO.getPubblicazioniRilegateVTO())); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.ANNO_DI_ATTIVITA) { ordineModel.setEnergiaModel(ordineVTO.getEnergiaModel()); ordineModel.setTrasportoMerciModel(ordineVTO.getTrasportoMerciModel()); ordineModel.setTrasportoPersoneModel(ordineVTO.getTrasportoPersoneModel()); ordineModel.setNottiModel(ordineVTO.getNottiModel()); ordineModel.setDove(ordineVTO.getDove()); ordineModel.setAnno(ordineVTO.getAnno()); ordineModel.setNote(ordineVTO.getNote()); ordineModel.setManifestiPieghevoliFogliModel(getManifestiPiegjevoliFogltioModelList(ordineVTO.getManifestiPieghevoliFogliVTO())); ordineModel.setPubblicazioniRilegateModel(getPubblicazioniRilegateModelList(ordineVTO.getPubblicazioniRilegateVTO())); ordineModel.setSitoWebModel(ordineVTO.getSitoWebModel()); ordineModel.setBigliettiDaVisitaModel(getBigliettiDaVisitaModel(ordineVTO.getBigliettiDaVisitaVTO())); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.WEB) { ordineModel.setSitoWebModel(ordineVTO.getSitoWebModel()); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.CONOSCI_CO2) { ordineModel.setConoscoCO2Model(ordineVTO.getConoscoCO2Model()); } else if (Eventi.valueOf(ordineModel.getEventiType()) == Eventi.UNA_PUBBLICAZIONE) { ordineModel.setManifestiPieghevoliFogliModel(getManifestiPiegjevoliFogltioModelList(ordineVTO.getManifestiPieghevoliFogliVTO())); ordineModel.setPubblicazioniRilegateModel(getPubblicazioniRilegateModelList(ordineVTO.getPubblicazioniRilegateVTO())); ordineModel.setBigliettiDaVisitaModel(getBigliettiDaVisitaModel(ordineVTO.getBigliettiDaVisitaVTO())); } if (ordineVTO.getCouponModel() != null) { ordineModel.setCouponModel(ordineVTO.getCouponModel()); } return ordineModel; } private static BigliettiDaVisitaModel getBigliettiDaVisitaModel(BigliettiDaVisitaModelVTO bigliettiDaVisitaVTO) { if (bigliettiDaVisitaVTO == null) return null; BigliettiDaVisitaModel _return = new BigliettiDaVisitaModel(); _return.setId(bigliettiDaVisitaVTO.getId()); _return.setGrammaturaBiglietti(bigliettiDaVisitaVTO.getGrammaturaBiglietti()); _return.setGrammaturaCartelline(bigliettiDaVisitaVTO.getGrammaturaCartelline()); _return.setTipoDiCartaBiglietti(getTipoDiCartaModel(bigliettiDaVisitaVTO.getTipoDiCartaBiglietti())); _return.setTipoDiCartaCartelline(getTipoDiCartaModel(bigliettiDaVisitaVTO.getTipoDiCartaCartelline())); _return.setTiraturaBiglietti(bigliettiDaVisitaVTO.getTiraturaBiglietti()); _return.setTiraturaCartelline(bigliettiDaVisitaVTO.getTiraturaCartelline()); return _return; } private static ArrayList<PubblicazioniRilegateModel> getPubblicazioniRilegateModelList(List<PubblicazioniRilegateVTO> pubblicazioniRilegateVTO) { if (pubblicazioniRilegateVTO == null) return null; ArrayList<PubblicazioniRilegateModel> _return = new ArrayList<PubblicazioniRilegateModel>(); for (PubblicazioniRilegateVTO p : pubblicazioniRilegateVTO) { _return.add(getPubblicazioniRilegateModel(p)); } return _return; } private static PubblicazioniRilegateModel getPubblicazioniRilegateModel(PubblicazioniRilegateVTO p) { PubblicazioniRilegateModel _return = new PubblicazioniRilegateModel(); _return.setAltezza(p.getAltezza()); _return.setCategoria(p.getCategoria()); _return.setGrammatura(p.getGrammatura()); _return.setGrammaturaCopertina(p.getGrammaturaCopertina()); _return.setId(p.getId()); _return.setLarghezza(p.getLarghezza()); _return.setNumeroDiPagine(p.getNumeroDiPagine()); _return.setTipoDiCarta(getTipoDiCartaModel(p.getTipoDiCarta())); _return.setTipoDiCartaCopertina(getTipoDiCartaModel(p.getTipoDiCartaCopertina())); _return.setTiratura(p.getTiratura()); return _return; } private static List<ManifestiPieghevoliFogliModel> getManifestiPiegjevoliFogltioModelList(List<ManifestiPieghevoliFogliVTO> manifestiPieghevoliFogliVTO) { if (manifestiPieghevoliFogliVTO == null) return null; ArrayList<ManifestiPieghevoliFogliModel> _return = new ArrayList<ManifestiPieghevoliFogliModel>(); for (ManifestiPieghevoliFogliVTO m : manifestiPieghevoliFogliVTO) { _return.add(getManifestiPiegjevoliFogltioModel(m)); } return _return; } private static ManifestiPieghevoliFogliModel getManifestiPiegjevoliFogltioModel(ManifestiPieghevoliFogliVTO m) { ManifestiPieghevoliFogliModel _return = new ManifestiPieghevoliFogliModel(); _return.setAltezza(m.getAltezza()); _return.setCategoria(m.getCategoria()); _return.setGrammatura(m.getGrammatura()); _return.setId(m.getId()); _return.setLarghezza(m.getLarghezza()); _return.setTiratura(m.getTiratura()); _return.setNumeroDiPagine(m.getNumeroDiPagine()); _return.setTipoDiCarta(getTipoDiCartaModel(m.getTipoDiCartaVTO())); return _return; } private static TipoDiCartaModel getTipoDiCartaModel(TipoDiCartaVTO tipoDiCartaVTO) { if (tipoDiCartaVTO == null) { return null; } TipoDiCartaModel _return = new TipoDiCartaModel(); _return.setId(tipoDiCartaVTO.getId()); _return.setNome(tipoDiCartaVTO.getNome()); _return.setParametro(tipoDiCartaVTO.getParametro()); return _return; } public static String getMAC_MD5(PagamentoModel model) { String s = model.getMERCHANT_ID() + model.getORDER_ID() + model.getIMPORTO() + model.getDIVISA() + model.getABI() + model.getITEMS() + model.key; s = s.toUpperCase(); return encodeMD5(s); } public static String getMAC_MD5(String toMd5) { return encodeMD5(toMd5); } private static String encodeMD5(String stringToEncode) { byte[] uniqueKey = stringToEncode.getBytes(); byte[] hash; try { hash = MessageDigest.getInstance("MD5").digest(uniqueKey); } catch (NoSuchAlgorithmException e) { throw new Error("no MD5 support in this VM"); } StringBuffer hashString = new StringBuffer(); for (int i = 0; i < hash.length; ++i) { String hex = Integer.toHexString(hash[i]); if (hex.length() == 1) { hashString.append('0'); hashString.append(hex.charAt(hex.length() - 1)); } else { hashString.append(hex.substring(hex.length() - 2)); } } return hashString.toString(); } }