/// <summary> /// Obtém a URL para uso no DANFE da NFCe /// </summary> /// <param name="tipoAmbiente"></param> /// <param name="estado"></param> /// <param name="tipoUrlDanfeNfce"></param> /// <returns></returns> public static string ObterUrl(TipoAmbiente tipoAmbiente, Estado estado, TipoUrlDanfeNfce tipoUrlDanfeNfce) { var query = from qr in EndQrCodeNfce where qr.TipoAmbiente == tipoAmbiente && qr.Estado == estado && qr.TipoUrlDanfeNfce == tipoUrlDanfeNfce select qr.Url; var listaRetorno = query as IList<string> ?? query.ToList(); var qtdeRetorno = listaRetorno.Count(); if (qtdeRetorno == 0) throw new Exception(string.Format("Não foi possível obter o {0}, para o Estado {1}, ambiente: {2}", tipoUrlDanfeNfce.Descricao(), estado, tipoAmbiente.Descricao())); if (qtdeRetorno > 1) throw new Exception("A função ObterUrl obteve mais de um resultado!"); return listaRetorno.FirstOrDefault(); }
/// <summary> /// Obtém a URL para uso no DANFE da NFCe /// </summary> /// <param name="infNFeSupl"></param> /// <param name="tipoAmbiente"></param> /// <param name="estado"></param> /// <param name="tipoUrlConsultaPublica"></param> /// <returns></returns> public static string ObterUrl(this infNFeSupl infNFeSupl, TipoAmbiente tipoAmbiente, Estado estado, TipoUrlConsultaPublica tipoUrlConsultaPublica, VersaoServico versaoServico = VersaoServico.ve310) {// todo endereço qrcode var query = from qr in EndQrCodeNfce where qr.TipoAmbiente == tipoAmbiente && qr.Estado == estado && qr.TipoUrlConsultaPublica == tipoUrlConsultaPublica && qr.VersaoServico == versaoServico select qr.Url; var listaRetorno = query as IList <string> ?? query.ToList(); var qtdeRetorno = listaRetorno.Count(); if (qtdeRetorno == 0) { throw new Exception(string.Format("Não foi possível obter o {0}, para o Estado {1}, ambiente: {2}", tipoUrlConsultaPublica.Descricao(), estado, tipoAmbiente.Descricao())); } if (qtdeRetorno > 1) { throw new Exception("A função ObterUrl obteve mais de um resultado!"); } return(listaRetorno.FirstOrDefault()); }
/// <summary> /// Obtém a URL para uso no DANFE da NFCe /// </summary> /// <param name="tipoAmbiente"></param> /// <param name="estado"></param> /// <param name="tipoUrlDanfeNfce"></param> /// <returns></returns> public static string ObterUrl(TipoAmbiente tipoAmbiente, Estado estado, TipoUrlDanfeNfce tipoUrlDanfeNfce) { var query = from qr in EndQrCodeNfce where qr.TipoAmbiente == tipoAmbiente && qr.Estado == estado && qr.TipoUrlDanfeNfce == tipoUrlDanfeNfce select qr.Url; var listaRetorno = query as IList <string> ?? query.ToList(); var qtdeRetorno = listaRetorno.Count(); if (qtdeRetorno == 0) { throw new Exception(string.Format("Não foi possível obter o {0}, para o Estado {1}, ambiente: {2}", tipoUrlDanfeNfce.Descricao(), estado, tipoAmbiente.Descricao())); } if (qtdeRetorno > 1) { throw new Exception("A função ObterUrl obteve mais de um resultado!"); } return(listaRetorno.FirstOrDefault()); }