Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1 | espaco | 1 | package nfe.util; |
| 2 | |||
| 3 | import java.io.IOException; |
||
| 4 | import java.io.InputStream; |
||
| 5 | |||
| 6 | import org.ini4j.Wini; |
||
| 7 | |||
| 8 | import nfe.dom.ConfiguracoesIniciaisNfe; |
||
| 9 | import nfe.exception.NfeException; |
||
| 10 | |||
| 11 | /** |
||
| 12 | * @author Samuel Oliveira |
||
| 13 | * |
||
| 14 | */ |
||
| 15 | public class WebServiceUtil { |
||
| 16 | |||
| 17 | public static String getUrl(String tipo, String servico) throws NfeException { |
||
| 18 | |||
| 19 | try { |
||
| 20 | |||
| 21 | ConfiguracoesIniciaisNfe config = ConfiguracoesIniciaisNfe.getInstance(); |
||
| 22 | String secao = tipo + "_" + config.getEstado() + "_" |
||
| 23 | + (config.getAmbiente().equals(ConstantesUtil.AMBIENTE.HOMOLOGACAO) ? "H" : "P"); |
||
| 24 | |||
| 25 | InputStream is = WebServiceUtil.class.getResourceAsStream("/WebServicesNfe.ini"); |
||
| 26 | |||
| 27 | Wini ini = new Wini(); |
||
| 28 | ini.getConfig().setLowerCaseOption(true); |
||
| 29 | ini.load(is); |
||
| 30 | String url = ini.get(secao, "usar"); |
||
| 31 | |||
| 32 | if (servico.equals(ConstantesUtil.SERVICOS.DISTRIBUICAO_DFE) || servico.equals(ConstantesUtil.SERVICOS.MANIFESTACAO)) { |
||
| 33 | secao = config.getAmbiente().equals(ConstantesUtil.AMBIENTE.HOMOLOGACAO) ? "NFe_AN_H" : "NFe_AN_P"; |
||
| 34 | |||
| 35 | if (servico.equals(ConstantesUtil.SERVICOS.MANIFESTACAO)) { |
||
| 36 | servico = ConstantesUtil.SERVICOS.EVENTO; |
||
| 37 | } |
||
| 38 | |||
| 39 | } else if (!servico.equals(ConstantesUtil.SERVICOS.URL_CONSULTANFCE) |
||
| 40 | && !servico.equals(ConstantesUtil.SERVICOS.URL_QRCODE) && ObjetoUtil.differentNull(url)) { |
||
| 41 | secao = url; |
||
| 42 | } else if(config.isContigenciaSCAN()){ |
||
| 43 | //SVC-RS |
||
| 44 | if(config.getEstado().equals(Estados.GO) |
||
| 45 | || config.getEstado().equals(Estados.AM) |
||
| 46 | || config.getEstado().equals(Estados.BA) |
||
| 47 | || config.getEstado().equals(Estados.CE) |
||
| 48 | || config.getEstado().equals(Estados.MA) |
||
| 49 | || config.getEstado().equals(Estados.MS) |
||
| 50 | || config.getEstado().equals(Estados.MT) |
||
| 51 | || config.getEstado().equals(Estados.PA) |
||
| 52 | || config.getEstado().equals(Estados.PE) |
||
| 53 | || config.getEstado().equals(Estados.PI) |
||
| 54 | || config.getEstado().equals(Estados.PR)){ |
||
| 55 | secao = tipo + "_SVRS_" + (config.getAmbiente().equals(ConstantesUtil.AMBIENTE.HOMOLOGACAO) ? "H" : "P"); |
||
| 56 | //SVC-AN |
||
| 57 | }else{ |
||
| 58 | secao = tipo + "_SVAN_" + (config.getAmbiente().equals(ConstantesUtil.AMBIENTE.HOMOLOGACAO) ? "H" : "P"); |
||
| 59 | } |
||
| 60 | } |
||
| 61 | |||
| 62 | url = ini.get(secao, servico.toLowerCase()); |
||
| 63 | |||
| 64 | if(ObjetoUtil.isEmpty(url)){ |
||
| 65 | throw new NfeException("WebService de "+servico+" não encontrado para "+config.getEstado().getNome()); |
||
| 66 | } |
||
| 67 | |||
| 68 | if (config.isLog()){ |
||
| 69 | System.out.println("WebService - " + url); |
||
| 70 | } |
||
| 71 | return url; |
||
| 72 | |||
| 73 | } catch (IOException e) { |
||
| 74 | throw new NfeException(e.getMessage()); |
||
| 75 | } |
||
| 76 | |||
| 77 | } |
||
| 78 | public static String getUrlConsultaCadastro(String uf) throws NfeException { |
||
| 79 | |||
| 80 | String tipo = ConstantesUtil.NFE; |
||
| 81 | String servico = ConstantesUtil.SERVICOS.CONSULTA_CADASTRO; |
||
| 82 | try { |
||
| 83 | |||
| 84 | ConfiguracoesIniciaisNfe config = ConfiguracoesIniciaisNfe.getInstance(); |
||
| 85 | String secao = tipo + "_" + uf.toUpperCase() + "_" |
||
| 86 | + (config.getAmbiente().equals(ConstantesUtil.AMBIENTE.HOMOLOGACAO) ? "H" : "P"); |
||
| 87 | |||
| 88 | InputStream is = WebServiceUtil.class.getResourceAsStream("/WebServicesNfe.ini"); |
||
| 89 | |||
| 90 | Wini ini = new Wini(); |
||
| 91 | ini.getConfig().setLowerCaseOption(true); |
||
| 92 | ini.load(is); |
||
| 93 | String url = ini.get(secao, servico.toLowerCase()); |
||
| 94 | |||
| 95 | if(ObjetoUtil.isEmpty(url)){ |
||
| 96 | throw new NfeException("WebService de "+servico+" não encontrado para "+uf); |
||
| 97 | } |
||
| 98 | |||
| 99 | if (config.isLog()) { |
||
| 100 | System.out.println("WebService - " + url); |
||
| 101 | } |
||
| 102 | return url; |
||
| 103 | |||
| 104 | } catch (IOException e) { |
||
| 105 | throw new NfeException(e.getMessage()); |
||
| 106 | } |
||
| 107 | |||
| 108 | } |
||
| 109 | |||
| 110 | } |