public string GerarFatura(string postedData) { var js = new JavaScriptSerializer(); var boleto = js.Deserialize <LoteBoleto>(postedData); var fatura = new FaturaViewModel(); var tokenIUGU = new RepositorioParametro().Listar().FirstOrDefault().TokenIUGU; var response = ""; string faturaJSON = ""; try { //Util.EnviarBoletoPorEmail(boleto, "boleto.pdf"); if (boleto.TituloId != null) { fatura = Util.GerarFatura(boleto); } else { fatura = Util.GerarFatura((int)boleto.TituloRecorrenteId, boleto.ModeloBoletoId, boleto.DataVencimento, boleto.Valor); } faturaJSON = js.Serialize(fatura); using (WebClient client = new WebClient()) { client.Encoding = System.Text.Encoding.UTF8; client.Headers.Add("Content-Type", "application/json"); client.Headers.Add("Authorization", "Basic " + tokenIUGU); response = client.UploadString("https://api.iugu.com/v1/invoices", "POST", faturaJSON); } var faturaResponse = js.Deserialize <FaturaResponse>(response); if (faturaResponse != null) { var faturaGerada = new FaturaGerada(); faturaGerada.DataVencimento = DateTime.Parse(faturaResponse.due_date); faturaGerada.IuguId = faturaResponse.id; faturaGerada.TituloId = boleto.TituloId; faturaGerada.TituloRecorrenteId = boleto.TituloRecorrenteId; faturaGerada.UrlFatura = faturaResponse.secure_url; var repoFaturaGerada = new RepositorioFaturaGerada(); repoFaturaGerada.Incluir(faturaGerada); } return("Enviado"); } catch (WebException e) { return(StreamToString(e.Response.GetResponseStream()) + " " + faturaJSON); } }
public FaturaResponse BuscarFaturaIUGU(string iuguId) { using (WebClient client = new WebClient()) { client.Encoding = System.Text.Encoding.UTF8; var tokenIUGU = new RepositorioParametro().Listar().FirstOrDefault().TokenIUGU; client.Headers.Add("Content-Type", "application/json"); client.Headers.Add("Authorization", "Basic " + tokenIUGU); var response = client.DownloadString("https://api.iugu.com/v1/invoices/" + iuguId); var js = new JavaScriptSerializer(); var faturaResponse = js.Deserialize <FaturaResponse>(response); return(faturaResponse); } }
private void EnviarEmailPosLiquidacao(List <Liquidacao> liquidacoes, Titulo obj) { var pessoa = new RepositorioPessoa().BuscarPorId(obj.PessoaId); if (pessoa.RecebeEmailLiquidacao) { Parametro parametro = new RepositorioParametro().Listar().FirstOrDefault(); foreach (var item in liquidacoes) { var empresa = new RepositorioEmpresa().BuscarPorId(parametro.EmpresaId); var email = new Email(pessoa.EmailFinanceiro, SubstituiVariaveis(item, parametro.TextoEmailLiquidacao), parametro.AssuntoEmailLiquidacao, empresa.EmailFinanceiro); email.DispararMensagem(); } } }
public string SegundaVia(string iuguId, string dataVencimentoSelecionada) { var segundaVia = new SegundaVia(); segundaVia.current_fines_option = "true"; segundaVia.due_date = dataVencimentoSelecionada; segundaVia.ignore_due_email = "false"; segundaVia.ignore_canceled_email = "true"; var js = new JavaScriptSerializer(); var segundaViaJSON = js.Serialize(segundaVia); var tokenIUGU = new RepositorioParametro().Listar().FirstOrDefault().TokenIUGU; var response = ""; using (WebClient client = new WebClient()) { client.Encoding = System.Text.Encoding.UTF8; client.Headers.Add("Content-Type", "application/json"); client.Headers.Add("Authorization", "Basic " + tokenIUGU); var address = "https://api.iugu.com/v1/invoices/" + iuguId + "/duplicate"; response = client.UploadString(address, "POST", segundaViaJSON); } var faturaResponse = js.Deserialize <FaturaResponse>(response); if (faturaResponse != null) { var repoFaturaGerada = new RepositorioFaturaGerada(); var faturaAntiga = repo.Listar().Where(fg => fg.IuguId == iuguId).FirstOrDefault(); faturaAntiga.IuguId = faturaResponse.id; faturaAntiga.UrlFatura = faturaResponse.secure_url; repoFaturaGerada.Alterar(faturaAntiga); } return(response); }