public static int EnviarNotaFiscal(out NotaFiscal notaFiscal, out ConfiguracaoEntity config, Destinatario destinatario = null) { notaFiscal = null; config = ConfiguracaoService.GetConfiguracao(); var ambiente = Ambiente.Homologacao; var modeloNota = Modelo.Modelo65; var tipoEmissao = TipoEmissao.Normal; var documentoDanfe = destinatario != null ? destinatario.DocumentoDanfe : "CPF"; //Encapsular isso aqui var emitente = EmissorService.GetEmissor(); var codigoUF = (CodigoUfIbge)Enum.Parse(typeof(CodigoUfIbge), emitente.Endereco.UF); var serie = config.SerieNFCeHom; var numero = config.ProximoNumNFCeHom; var identificacao = GetIdentificacao(codigoUF, DateTime.Now, emitente, modeloNota, Convert.ToInt32(serie), numero, tipoEmissao, ambiente, documentoDanfe); var produtos = GetProdutos(config); var totalNFe = GetTotalNFe(); var pagamentos = GetPagamentos(); var infoAdicional = new InfoAdicional(produtos); var transporte = new Transporte(modeloNota, null, null); notaFiscal = new NFe.Core.TO.NotaFiscal(emitente, destinatario, identificacao, transporte, totalNFe, infoAdicional, produtos, pagamentos); string cscId = config.CscIdHom; string csc = config.CscHom; NotaFiscalService notaService = new NotaFiscalService(); return(notaService.EnviarNotaFiscalAsync(notaFiscal, cscId, csc).Result); }
public async Task <Core.NotasFiscais.NotaFiscal> EnviarNota(NotaFiscalModel notaFiscalModel, Modelo modelo) { notaFiscalModel.ValidateModel(); if (notaFiscalModel.HasErrors) { throw new ArgumentException("Nota fiscal contém erros de validação não resolvidos."); } if (notaFiscalModel.Pagamentos[0].FormaPagamento != "Sem Pagamento" && notaFiscalModel.Produtos.Sum(c => c.QtdeProduto * c.ValorUnitario) != notaFiscalModel.Pagamentos.Sum(p => p.QtdeParcelas * p.ValorParcela)) { await _dialogService.ShowError("Valor total da nota não corresponde ao valor de pagamento.", "Erro!", "Ok", null); throw new ArgumentException("Valor total da nota não corresponde ao valor de pagamento."); } Core.NotasFiscais.NotaFiscal notaFiscal = null; var config = _configuracaoService.GetConfiguracao(); var ambiente = config.IsProducao ? Ambiente.Producao : Ambiente.Homologacao; await Task.Run(() => { var modeloNota = modelo; const TipoEmissao tipoEmissao = TipoEmissao.Normal; //verificar status do serviço e etc var destinatario = GetDestinatario(notaFiscalModel, ambiente, modelo); var documentoDanfe = destinatario != null ? destinatario.DocumentoDanfe : "CPF"; //Encapsular isso aqui var emitente = _emissorService.GetEmissor(); var codigoUF = (CodigoUfIbge)Enum.Parse(typeof(CodigoUfIbge), emitente.Endereco.UF); var identificacao = GetIdentificacao(notaFiscalModel, codigoUF, DateTime.Now, emitente, modeloNota, Convert.ToInt32(notaFiscalModel.Serie), notaFiscalModel.Numero, tipoEmissao, ambiente, documentoDanfe); var produtos = GetProdutos(notaFiscalModel, config); var pagamentos = GetPagamentos(notaFiscalModel); var totalNFe = GetTotalNFe(notaFiscalModel); var infoAdicional = new InfoAdicional(produtos); var transporte = GetTransporte(notaFiscalModel, modelo); notaFiscal = new Core.NotasFiscais.NotaFiscal(emitente, destinatario, identificacao, transporte, totalNFe, infoAdicional, produtos, pagamentos); var cscId = ambiente == Ambiente.Homologacao ? config.CscIdHom : config.CscId; var csc = ambiente == Ambiente.Homologacao ? config.CscHom : config.Csc; _enviaNotaFiscalService.EnviarNotaFiscal(notaFiscal, cscId, csc); }); NotaEnviadaEvent(notaFiscal); return(notaFiscal); }
public void Insertar(InfoAdicional InfoAdicional) { try { BD_SIRESEPEntities entities = new BD_SIRESEPEntities(); entities.InfoAdicional.Add(InfoAdicional); entities.SaveChanges(); } catch (Exception ee) { throw; } }
public void Eliminar(InfoAdicional InfoAdicional) { try { BD_SIRESEPEntities entities = new BD_SIRESEPEntities(); var result = entities.InfoAdicional.Find(InfoAdicional.idInfoAdicional); entities.InfoAdicional.Remove(result); entities.SaveChanges(); } catch (Exception ee) { throw; } }
public void Insertar(InfoAdicional InfoAdicional) { try { using (TransactionScope scope = new TransactionScope()) { DAL.Clases.ManInfoAdicional._Instancia.Insertar(InfoAdicional); scope.Complete(); } } catch (Exception ee) { throw; } }
public void Actualizar(InfoAdicional InfoAdicional) { try { using (BD_SIRESEPEntities entities = new BD_SIRESEPEntities()) { entities.Entry(InfoAdicional).State = System.Data.Entity.EntityState.Modified; entities.SaveChanges(); } } catch (Exception ee) { throw; } }
private static NotaFiscal PreencherNotaFiscal() { var endereçoEmitente = new Endereco("QUADRA 200 CONJUNTO 20", "20", "BRASILIA", "BRASILIA", "70000000", "DF"); var emitente = new Emissor("RAZAO SOCIAL", "NOME FANTASIA", "12345678998765", "1234567898765", "1234567898765", "4784900", "Regime Normal", endereçoEmitente, "99999999"); var identificação = new IdentificacaoNFe(CodigoUfIbge.DF, DateTime.Now, emitente.CNPJ, Modelo.Modelo65, 1, "20887", TipoEmissao.Normal, Ambiente.Homologacao, emitente, "Venda", FinalidadeEmissao.Normal, true, PresencaComprador.Presencial, "CPF"); var transporte = new Transporte(Modelo.Modelo65, null, null); const int valorTotalProdutos = 65; var totalIcms = new IcmsTotal(0, 0, 0, 0, 0, valorTotalProdutos, 0, 0, 0, 0, 0, 0, 0, 0, valorTotalProdutos, 0); var totalNFe = new TotalNFe { IcmsTotal = totalIcms }; var impostos = new List <Imposto> { new Imposto { CST = "60", TipoImposto = TipoImposto.Icms }, new Imposto { CST = "04", TipoImposto = TipoImposto.PIS } }; var grupoImpostos = new GrupoImpostos { CFOP = "5656", Descricao = "Gás Venda", Impostos = impostos }; var produtos = new List <Produto> { new Produto(grupoImpostos, 0, "5656", "0001", "GLP 13KG", "27111910", 1, "UN", 65, 0, false) }; var pagamentos = new List <Pagamento> { new Pagamento(FormaPagamento.Dinheiro) { Valor = 65 } }; var infoAdicional = new InfoAdicional(produtos); var notaFiscal = new NotaFiscal(emitente, null, identificação, transporte, totalNFe, infoAdicional, produtos, pagamentos); return(notaFiscal); }
protected void AgregarPerfil_Click(object sender, EventArgs e) { #region Info Adicional adic = new InfoAdicional(); adic.nivelIdioma = TxtIdioma.Value; adic.idIdioma = getID6(ListaIdiomas.SelectedValue); adic.idLicenciaConducir = getID7(ListaLicencias.SelectedValue); SIRESEP.BS.Clases.ManInfoAdicional._Instancia.Insertar(adic); #endregion #region Info Habilidades habi = new InfoHabilidad(); habi.habilidad = txtHabilidades.Value; SIRESEP.BS.Clases.ManInfoHabilidad._Instancia.Insertar(habi); #endregion #region Certificaciones certi = new Certificaciones(); certi.nombre = txtCertificacion.Value; certi.ano = Convert.ToDateTime(fechaCerti.Text); SIRESEP.BS.Clases.ManCertificaciones._Instancia.Insertar(certi); #endregion #region Info Laboral laboral = new InfoLaboral(); laboral.profesion = txtProfesion.Value; laboral.tiempoExperiencia = Convert.ToInt32(txtExperiencia.Value); SIRESEP.BS.Clases.ManInfoLaboral._Instancia.Insertar(laboral); #endregion #region Info de estudios estu = new InfoEstudios(); estu.idInstitucion = getID3(lista3.SelectedValue); estu.idCarrera = getID4(lista4.SelectedValue); estu.idGradoEstudio = getID5(lista5.SelectedValue); SIRESEP.BS.Clases.ManInfoEstudios._Instancia.Insertar(estu); Insertado.Visible = true; #endregion #region Datos personales perfilpersona = new PerfilPersona(); string UsuarioSes = (Session["ced"].ToString()); var query = (from a in SIRESEP.BS.ManUsuario._Instancia.Mostrar().AsEnumerable() where a._cedula.Contains(UsuarioSes) select a._idUsuario); int idUsuario; idUsuario = Convert.ToInt32(query.First()); perfilpersona.nombre = nombreFront.Value; perfilpersona.apellidos = apellidosFront.Value; perfilpersona.fechaNacimiento = Convert.ToDateTime(fechaFront.Text); perfilpersona.telefono = Convert.ToInt32(telefonoFront.Value); perfilpersona.direccion = DireccionFront.Value; perfilpersona.idNacionalidad = getID(lista1.SelectedItem.Value); perfilpersona.idGenero = getID2(lista2.SelectedItem.ToString()); perfilpersona.idEstado = 1; perfilpersona.usuarioCrea = Environment.UserName; perfilpersona.fechaCreacion = Convert.ToDateTime(DateTime.Now); perfilpersona.usuarioModifica = "n/a"; perfilpersona.FechaModifica = Convert.ToDateTime(DateTime.Now); perfilpersona.idUsuario = idUsuario; SIRESEP.BS.Clases.ManPerfilPersona._Instancia.Insertar(perfilpersona); Response.Write("<script>alert('Insertado correctamente!')</script>"); Formulario1.Visible = false; Label1.Visible = true; #endregion }