public IEnumerable <ConsultaDesdobramento> ConsultaDesdobramento(string key, string password, string number, int type) { var result = DataHelperProdespPagamentoContaUnica.Procedure_ConsultaDesdobramento(key, password, number, type) ?? new Procedure_ConsultaDesdobramentoRecordType[] { }; if (!string.IsNullOrEmpty(result[0]?.outErro)) { throw new SidsException($"Prodesp - {result[0]?.outErro}"); } var consultaDesdobramentos = new List <ConsultaDesdobramento>(); foreach (var resultItem in result) { var consultaDesdobramento = new ConsultaDesdobramento(); var subempenhoProprietys = consultaDesdobramento.GetType().GetProperties().ToList(); var propriedade = resultItem.GetType().GetProperties().ToList(); foreach (var subempenhoPropriety in subempenhoProprietys) { subempenhoPropriety.SetValue(consultaDesdobramento, propriedade.FirstOrDefault(x => x.Name == subempenhoPropriety.Name)?.GetValue(resultItem).ToString()); } consultaDesdobramentos.Add(consultaDesdobramento); } return(consultaDesdobramentos); }
public object ConsultaDesdobramentoApoio(string key, string password, Desdobramento objModel) { try { if (objModel.DesdobramentoTipoId == 1) { var result = DataHelperProdespPagamentoContaUnica.Procedure_DesdobramentoISSQNApoio( key, password, objModel) ?? new Procedure_DesdobramentoISSQNApoioRecordType[] { }; var resultItem = result.FirstOrDefault(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } return(resultItem); } else { var result = DataHelperProdespPagamentoContaUnica.Procedure_DesdobramentoOutrosApoio(key, password, objModel) ?? new Procedure_DesdobramentoOutrosApoioRecordType[] { }; var resultItem = result.FirstOrDefault(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } return(resultItem); } } catch (Exception ex) { throw new SidsException(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public void Inserir_PreparacaoPagamento(string key, string password, ref PreparacaoPagamento entity, Regional orgao) { if (entity.PreparacaoPagamentoTipoId == 1) { var result = DataHelperProdespPagamentoContaUnica.Procedure_PreparacaoPagtoOrgao(key, password, entity, orgao) ?? new Procedure_PreparacaoPagtoOrgaoRecordType[] { }; var resultItem = result[0] ?? new Procedure_PreparacaoPagtoOrgaoRecordType(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } entity.ValorTotal = Convert.ToDecimal(resultItem.outTotal); entity.NumeroOpFinal = resultItem.outNumOPFinal.Replace("-", string.Empty); entity.NumeroOpInicial = resultItem.outNumOPInicial.Replace("-", string.Empty); entity.QuantidadeOpPreparada = Convert.ToInt32(resultItem.outQuantidadeOPs.Replace(",", "").Replace(".", "")); } else { var result = DataHelperProdespPagamentoContaUnica.Procedure_PreparacaoPagtoDocGerador(key, password, entity) ?? new Procedure_PreparacaoPagtoDocGeradorRecordType[] { }; var resultItem = result[0] ?? new Procedure_PreparacaoPagtoDocGeradorRecordType(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } entity.ValorTotal = Convert.ToDecimal(resultItem.outTotal); entity.NumeroOpFinal = resultItem.outNumeroOPFinal.Replace("-", ""); entity.NumeroOpInicial = resultItem.outNumeroOPInicial.Replace("-", ""); entity.QuantidadeOpPreparada = Convert.ToInt32(resultItem.outQtdadeOP.Replace(",", "").Replace(".", "")); } }
public IEnumerable <Credor> ConsultaCredorReduzido(string key, string password, string organizacao) { try { var result = DataHelperProdespPagamentoContaUnica.Procedure_ConsultaCredorReduzido(key, password, organizacao); var resultItem = result.ToList(); if (!string.IsNullOrEmpty(resultItem[0]?.outErro)) { throw new SidsException($"Prodesp - {resultItem[0]?.outErro}"); } return(resultItem.Select(x => new Credor { Prefeitura = x.outNome, Conveniado = !string.IsNullOrWhiteSpace(x.outConveniado), BaseCalculo = !string.IsNullOrWhiteSpace(x.outBaseCalc), NomeReduzidoCredor = x.outNomeReduzido, CpfCnpjUgCredor = x.outCodCredor.Replace("/", "").Replace(".", "").Replace("-", "") })); } catch (Exception ex) { throw new SidsException(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public void DesbloqueioOp(string key, string password, IProgramacaoDesembolso programacaoDesembolso) { var result = DataHelperProdespPagamentoContaUnica.Procedure_DesbloqueioPagtoDoc(key, password, programacaoDesembolso) ?? new Procedure_DesbloqueioPagtoDocRecordType[] { }; if (!string.IsNullOrEmpty(result[0]?.outErro)) { throw new SidsException($"Prodesp - {result[0]?.outErro}"); } }
public IEnumerable <object> BloqueioOpApoio(string key, string password, ProgramacaoDesembolso programacaoDesembolso) { var result = DataHelperProdespPagamentoContaUnica.Procedure_BloqueioPagtoDocApoio(key, password, programacaoDesembolso) ?? new Procedure_BloqueioPagtoDocApoioRecordType[] { }; if (!string.IsNullOrEmpty(result[0]?.outErro)) { throw new SidsException($"Prodesp - {result[0]?.outErro}"); } return(result); }
public void Inserir_ConfirmacaoPagamento(string key, string password, ref OBAutorizacaoItem entity, Regional orgao) { var result = DataHelperProdespPagamentoContaUnica.Procedure_ConfirmacaoPagtoOPApoio(key, password, entity, orgao) ?? new Procedure_ConfirmacaoPagtoOPRecordType[] { }; var resultItem = result[0] ?? new Procedure_ConfirmacaoPagtoOPRecordType(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } //entity.ValorTotal = Convert.ToDecimal(resultItem.outTotal); //entity.NumeroOpFinal = resultItem.outNumOPFinal.Replace("-", string.Empty); //entity.NumeroOpInicial = resultItem.outNumOPInicial.Replace("-", string.Empty); //entity.QuantidadeOpPreparada = Convert.ToInt32(resultItem.outQuantidadeOPs); }
private void TransmitirConfirmacaoProdesp(ConfirmacaoPagamento entity, ChaveCicsmo cicsmo, ref bool todosTransmitidos, ref string verificaNumeroGerador, Regional orgao, ConfirmacaoPagamentoItem item) { if (item.NumeroDocumentoGerador.Substring(0, 17) != verificaNumeroGerador) { ConfirmacaoPagamento confirmarPagamentoUnico = new ConfirmacaoPagamento(); confirmarPagamentoUnico.DataConfirmacao = entity.DataConfirmacao; confirmarPagamentoUnico.AnoReferencia = entity.AnoReferencia; confirmarPagamentoUnico.IdTipoDocumento = Convert.ToInt16(item.NumeroOp.Substring(4, 1)); confirmarPagamentoUnico.NumeroOP = item.NumeroOp; confirmarPagamentoUnico.TipoPagamento = entity.TipoPagamento; orgao.Id = Convert.ToInt16(item.NumeroOp.Substring(2, 2)); var result = DataHelperProdespPagamentoContaUnica.Procedure_ConfirmacaoPagtoOPApoio(cicsmo.Chave, cicsmo.Senha, confirmarPagamentoUnico, orgao); verificaNumeroGerador = item.NumeroDocumentoGerador.Substring(0, 17); if (!string.IsNullOrWhiteSpace(result[0].outErro)) { confirmarPagamentoUnico.DataTransmitidoProdesp = DateTime.Now; confirmarPagamentoUnico.StatusProdesp = "E"; confirmarPagamentoUnico.TransmitidoProdesp = false; confirmarPagamentoUnico.NumeroDocumento = item.NumeroNlDocumento; confirmarPagamentoUnico.Id = entity.Id; confirmarPagamentoUnico.MensagemServicoProdesp = result[0].outErro; confirmarPagamentoUnico.NumeroDocumentoItem = item.NumeroDocumentoGerador; } else { confirmarPagamentoUnico.DataTransmitidoProdesp = DateTime.Now; confirmarPagamentoUnico.StatusProdesp = "S"; confirmarPagamentoUnico.TransmitidoProdesp = true; confirmarPagamentoUnico.NumeroDocumento = entity.NumeroDocumento; confirmarPagamentoUnico.Id = entity.Id; confirmarPagamentoUnico.NumeroDocumentoItem = item.NumeroDocumentoGerador; } this.AtualizarPagamento(confirmarPagamentoUnico); if (todosTransmitidos) { todosTransmitidos = confirmarPagamentoUnico.StatusProdesp.Equals("S"); } } }
public void Inserir_DesdobramentoOutros(string key, string password, ref Desdobramento entity) { try { var result = DataHelperProdespPagamentoContaUnica.Procedure_DesdobramentoOutros(key, password, entity) ?? new Procedure_DesdobramentoOutrosRecordType[] { }; var resultItem = result[0] ?? new Procedure_DesdobramentoOutrosRecordType(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } entity.DescricaoCredor = resultItem?.outCredor01; entity.NomeReduzidoCredor = resultItem?.outCredorReduz; entity.TipoDespesa = resultItem?.outTipoDespesa; entity.ValorDistribuido = Convert.ToDecimal(resultItem?.outValorOriginal); var filteProperties = resultItem.GetType().GetProperties().ToList(); foreach (var identificacaoDesdobramento in entity.IdentificacaoDesdobramentos) { foreach (var filterPropriety in filteProperties) { if (identificacaoDesdobramento.NomeReduzidoCredor.ToUpper() == filterPropriety.GetValue(resultItem).ToString().ToUpper() && filterPropriety.Name != "outCredorReduz") { var name = filterPropriety.Name; var index = name.Substring(name.Length - 2, 2); var valor = filteProperties.FirstOrDefault(x => x.Name == $"outValor_{index}")?.GetValue(resultItem).ToString(); var baseCalc = filteProperties.FirstOrDefault(x => x.Name == $"outPorcentagem_{index}")?.GetValue(resultItem).ToString(); identificacaoDesdobramento.TipoBloqueio = filteProperties.FirstOrDefault(x => x.Name == $"outTipoBloqueio_{index}")?.GetValue(resultItem).ToString(); identificacaoDesdobramento.ValorDesdobrado = Convert.ToDecimal((valor == "" ? "0" : valor)); identificacaoDesdobramento.ValorPercentual = Convert.ToDecimal(baseCalc == "" ? "0" : baseCalc); } } } } catch (Exception ex) { throw new SidsException(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public object ConsultarPreparacaoPgtoTipoDespesaDataVenc(string key, string password, PreparacaoPagamento objModel) { try { var result = DataHelperProdespPagamentoContaUnica.Procedure_PreparacaoPagtoOrgaoApoioRecordType(key, password, objModel) ?? new Procedure_PreparacaoPagtoOrgaoApoioRecordType[] { }; var resultItem = result.FirstOrDefault(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new SidsException($"Prodesp - {resultItem?.outErro}"); } return(resultItem); } catch (Exception ex) { throw new SidsException(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public void AnulacaoDesdobramento(string key, string password, ref Desdobramento entity) { try { var result = DataHelperProdespPagamentoContaUnica.Procedure_AnulacaoDesdobramento(key, password, entity); var resultItem = result.ToList(); if (!string.IsNullOrEmpty(resultItem[0]?.outErro)) { throw new SidsException($"Prodesp - {resultItem[0]?.outErro}"); } } catch (Exception ex) { throw new SidsException(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public IEnumerable <ProgramacaoDesembolsoAgrupamento> ConsultaDocumentoGerador(string key, string password, ProgramacaoDesembolso programacaoDesembolso, Regional orgao) { var result = DataHelperProdespPagamentoContaUnica.Procedure_ConsultaPagtosPrepararSDFF(key, password, programacaoDesembolso, orgao) ?? new Procedure_ConsultaPagtosPrepararSDFFRecordType[] { }; if (!string.IsNullOrEmpty(result[0]?.outErro)) { throw new SidsException($"Prodesp - {result[0]?.outErro}"); } if (string.IsNullOrEmpty(result[0]?.outNumDoc)) { throw new SidsException($"Prodesp - Nenhum pagamento a preparar encontrado"); } var documentoGeradorList = ProgramacaoDesembolsoAgrupamentosFactory(result); documentoGeradorList.Where(x => string.IsNullOrWhiteSpace(x.NumeroDocumento)).ToList().ForEach(x => x.NumeroDocumento = programacaoDesembolso.NumeroDocumento); documentoGeradorList.Where(x => x.DocumentoTipoId == 0).ToList().ForEach(x => x.DocumentoTipoId = programacaoDesembolso.DocumentoTipoId); return(documentoGeradorList); }
private void TransmitirProdesp(ConfirmacaoPagamento entity, int recursoId) { string verificaNumeroGerador = string.Empty; try { var itens = entity.Items.OrderBy(p => p.NumeroDocumentoGerador); //Transmitir confirmação Prodesp Model.Entity.Seguranca.Regional orgao = new Model.Entity.Seguranca.Regional(); foreach (var item in itens) { if (string.IsNullOrWhiteSpace(entity.FonteLista)) // remover, não necessita quando usamos o selecionar { if (item.NumeroDocumentoGerador.Substring(0, 17) != verificaNumeroGerador) { ConfirmacaoPagamento confirmarPagamentoUnico = new ConfirmacaoPagamento(); confirmarPagamentoUnico.Senha = entity.Senha; confirmarPagamentoUnico.Chave = entity.Chave; confirmarPagamentoUnico.DataConfirmacao = entity.DataConfirmacao; confirmarPagamentoUnico.AnoReferencia = entity.AnoReferencia; confirmarPagamentoUnico.IdTipoDocumento = Convert.ToInt16(item.NumeroDocumentoGerador.Substring(0, 2)); confirmarPagamentoUnico.NumeroOP = item.NumeroOp; confirmarPagamentoUnico.TipoPagamento = entity.TipoPagamento; orgao.Id = Convert.ToInt16(item.NumeroOp.Substring(2, 2)); var result = DataHelperProdespPagamentoContaUnica.Procedure_ConfirmacaoPagtoOPApoio(entity.Chave, entity.Senha, confirmarPagamentoUnico, orgao); verificaNumeroGerador = item.NumeroDocumentoGerador.Substring(0, 17); if (result[0].outErro == "" || result[0].outErro == null) { confirmarPagamentoUnico.DataTransmitidoProdesp = DateTime.Now; confirmarPagamentoUnico.StatusProdesp = "S"; confirmarPagamentoUnico.TransmitidoProdesp = true; confirmarPagamentoUnico.NumeroDocumento = entity.NumeroDocumento; confirmarPagamentoUnico.id_confirmacao_pagamento = entity.Id; confirmarPagamentoUnico.NumeroDocumentoItem = item.NumeroDocumentoGerador; } else { confirmarPagamentoUnico.DataTransmitidoProdesp = DateTime.Now; confirmarPagamentoUnico.StatusProdesp = "E"; confirmarPagamentoUnico.TransmitidoProdesp = false; confirmarPagamentoUnico.NumeroDocumento = item.NumeroNlDocumento; confirmarPagamentoUnico.id_confirmacao_pagamento = entity.Id; confirmarPagamentoUnico.MensagemServicoProdesp = result[0].outErro; confirmarPagamentoUnico.NumeroDocumentoItem = item.NumeroDocumentoGerador; } var update = this.AtualizarPagamento(confirmarPagamentoUnico); } } } } catch (Exception ex) { throw SaveLog(ex, (short)EnumAcao.Transmitir, recursoId); } }