public ActionResult TesteWs() { string lstrAvisos; NFSePmspSender nfse = new NFSePmspSender(); nfse.Empresa = getEmpresa(out lstrAvisos); return(View(nfse)); }
public ActionResult TesteWs(NFSePmspSender emp) { NFSePmspSender lobjNfe = new NFSePmspSender(); IEnvioParam param = null; string lstrAvisoForn; switch (emp.Operacao) { case enmOperacaoNfsePmsp.eEnvioLote: case enmOperacaoNfsePmsp.eTesteEnvio: case enmOperacaoNfsePmsp.eCancelamentoNF: param = new EnvioParamListaFaturamentos(emp.Operacao); break; case enmOperacaoNfsePmsp.eConsultaRecebidasPeriodo: case enmOperacaoNfsePmsp.eConsultaEnviadaPeriodo: param = new EnvioParamPeriodo(emp.Operacao, DateTime.Now.Date.AddMonths(-1), DateTime.Now.Date); break; case enmOperacaoNfsePmsp.eConsultaCNPJ: param = new EnvioParamConsultaCNPJ(); break; default: break; } if (param != null) { lobjNfe.iniciaEnvio(param, getEmpresa(out lstrAvisoForn), 1); } else { lobjNfe.Erros.Add("Nao foi definido o parametro de envio da NF"); } return(View(lobjNfe)); }
private Empresa getEmpresa(out string astrAvisos) { NFSePmspSender nfse = new NFSePmspSender(); Empresa lobjEmpresa = new Empresa(); string lstrCertificado = Certificado.getCurrentSerial(out lobjEmpresa); lobjEmpresa.SerialCertificado = lstrCertificado; nfse.iniciaEnvio(new EnvioParamConsultaCNPJ(), lobjEmpresa, 1); lobjEmpresa.CcmPmsp = nfse.InscricaoMunicipalCCM; lobjEmpresa.EmiteNF = nfse.EmiteNF.ToString(); astrAvisos = string.Empty; if (string.IsNullOrEmpty(lobjEmpresa.CcmPmsp) == false) { try { CadastroPessoaPMSP lobjCmmResult = ListResultadoCcm.getDadosFromPMSPByCcm(lobjEmpresa.CcmPmsp); if (lobjCmmResult.SituacaoCcm == enmSituacaoCcm.eCcmEncontrado) { if (string.IsNullOrEmpty(lobjEmpresa.CNPJ)) { lobjEmpresa.CNPJ = lobjCmmResult.CpfCnpj; } if (Utils.LimpaCpfCnpj(lobjEmpresa.CNPJ) == Utils.LimpaCpfCnpj(lobjCmmResult.CpfCnpj)) { lobjEmpresa.ListaServicos = lobjCmmResult.Servicos; if (lobjCmmResult.Servicos.Count >= 1) { lobjEmpresa.CodigoServicoPMSP = lobjCmmResult.Servicos[0].Codigo; } lobjEmpresa.Nome = lobjCmmResult.RazaoSocial; switch (lobjCmmResult.TipoPessoa) { case "PJ SIMPLES": lobjEmpresa.OptanteSimplesNacional = "S"; break; case "PJ COMUM": lobjEmpresa.OptanteSimplesNacional = "N"; break; default: break; } } else { astrAvisos = "O CNPJ encontrado no certificado não é o mesmo cadastrado na prefeitura, favor consulte o analista responsável"; } } else { astrAvisos = "Não foi encontrado um CCM válido, favor consulte o analista responsável"; } } catch (Exception Erro) { astrAvisos = "Ocorreu o seguinte erro ao obter os dados da prefeitura " + Erro.Message; } } else { astrAvisos = "Devido a falta de identificação de CCM via web service da prefeitura, não é possível identificar demais dados"; } return(lobjEmpresa); }