public JsonResult Transmitir(Subempenho entity) { var objModel = new Subempenho(); try { var usuario = App.AutenticacaoService.GetUsuarioLogado(); _modelId = SalvarService(entity, 0); App.SubempenhoService.Transmitir(_modelId, usuario, (int)_funcId); objModel = App.SubempenhoService.Selecionar(_modelId); return(Json(new { Status = "Sucesso", Codigo = _modelId, objModel })); } catch (Exception ex) { objModel = App.SubempenhoService.Selecionar(_modelId); var status = "Falha"; if (objModel.StatusProdesp == "E" && objModel.TransmitirProdesp) { status = "Falha Prodesp"; } if (objModel.StatusProdesp == "S" && !objModel.StatusDocumento && (objModel.StatusSiafemSiafisico == "S")) { status = "Falha Doc"; } return(Json(new { Status = status, Msg = ex.Message, Codigo = objModel.Id, objModel })); } }
private void CreateInstance() { _model1 = CreateInstanceEmpenho("139900009", "32", "11", "139900047", 100, null, null, null, 0, "2013NE00001 N.F.000001-06/13 2013NL00001"); _model2 = CreateInstanceEmpenho("169900049", "20", "11", null, 30311111, "004", "R", null, 0, "2016NE00001 2016NL00001"); _model3 = CreateInstanceEmpenho("169900047", "20", "11", null, 0, null, null, "06065569828", 0, "2013NE00001 N.F.000001-06/13 2013NL00001"); _model4 = CreateInstanceEmpenho("169900049", "20", "11", "179900001", 4444444, null, null, null, 0, "2016NE00001 N.F.123456-09/13 2016NL00001"); }
public void TesteEditarUmEventoDoSubempenhoNoRepositorio() { SalvarEntidadeNoRepositorio(); var entity = _entity; _entity = null; BuscarUmSubempenhoNoRepositorio(entity); var evento = _entity.Eventos.FirstOrDefault(f => f.NumeroEvento.Equals("510600")) as SubempenhoEvento; evento.ValorUnitario = 120; AlterarUmEventoDaEntidadeNoRepositorio(evento); evento = null; BuscarUmSubempenhoNoRepositorio(_entity); var selectedEvent = _entity.Eventos.FirstOrDefault(f => f.NumeroEvento.Equals("510600")); RemoverEntidadeDoRepositorio(_entity); Assert.AreEqual(120, selectedEvent.ValorUnitario); }
public void TesteEditarUmaNotaDoSubempenhoNoRepositorio() { SalvarEntidadeNoRepositorio(); var entity = _entity; _entity = null; BuscarUmSubempenhoNoRepositorio(entity); var nota = _entity.Notas.FirstOrDefault(f => f.CodigoNotaFiscal.Equals("nada consta")) as SubempenhoNota; nota.CodigoNotaFiscal = "1620"; AlterarUmaNotaDaEntidadeNoRepositorio(nota); nota = null; BuscarUmSubempenhoNoRepositorio(_entity); var selectedInvoice = _entity.Notas.FirstOrDefault(f => f.CodigoNotaFiscal.Equals("1620")); RemoverEntidadeDoRepositorio(_entity); Assert.AreEqual("1620", selectedInvoice.CodigoNotaFiscal); }
private IEnumerable <SubempenhoItem> SalvarOuAlterarItens(Subempenho entity, int recursoId, short action, bool salvamentoAposTransmitir) { var salvos = _itens.Buscar(new SubempenhoItem { SubempenhoId = entity.Id }); var deleta = salvos?.Where(w => entity.Itens.All(a => a.Id != w.Id)); _itens.Excluir(deleta, recursoId, action); var itens = new List <SubempenhoItem>(); var seq = 1; foreach (var item in entity.Itens) { var itemSalvo = salvos.FirstOrDefault(x => x.Id == item.Id); item.SequenciaItem = seq++; item.SubempenhoId = entity.Id; //item.QuantidadeMaterialServico = item.QuantidadeLiquidar == 0 ? item.QuantidadeMaterialServico : item.QuantidadeLiquidar; item.QuantidadeMaterialServico = salvamentoAposTransmitir ? item.QuantidadeMaterialServico : item.QuantidadeLiquidar; item.CodigoItemServico = item.CodigoItemServico.FormatarCodigoItem(); item.Valor = item.Valor == 0 && itemSalvo != null && itemSalvo.Id != 0 ? itemSalvo.Valor : item.Valor; item.Id = _itens.SalvarOuAlterar(item, recursoId, action); itens.Add(item.ToSubempenhoItem()); } return(itens); }
public void TesteEditarUmItemDoSubempenhoNoRepositorio() { SalvarEntidadeNoRepositorio(); var entity = _entity; _entity = null; BuscarUmSubempenhoNoRepositorio(entity); var item = _entity.Itens.FirstOrDefault(f => f.CodigoItemServico.Equals("0821-4")) as SubempenhoItem; item.QuantidadeMaterialServico = 12M; AlterarUmItemDaEntidadeNoRepositorio(item); item = null; BuscarUmSubempenhoNoRepositorio(_entity); var selectedItem = _entity.Itens.FirstOrDefault(f => f.CodigoItemServico.Equals("0821-4")); RemoverEntidadeDoRepositorio(_entity); Assert.AreEqual(12M, selectedItem.QuantidadeMaterialServico); }
private void TransmitirProdesp(Subempenho entity, int recursoId) { var cicsmo = new ChaveCicsmo(); try { cicsmo = _chave.ObterChave(recursoId); var result = _prodesp.InserirSubEmpenho(entity, cicsmo.Chave, cicsmo.Senha); _chave.LiberarChave(cicsmo.Codigo); string[] delimiter = result.Split(';'); entity.NumeroProdesp = delimiter[0].Replace(" ", ""); entity.Referencia = delimiter[1]; entity.TransmitidoProdesp = true; entity.StatusProdesp = "S"; entity.DataTransmitidoProdesp = DateTime.Now; entity.MensagemProdesp = null; SalvarOuAlterar(entity, 0, (short)EnumAcao.Transmitir, true); } catch (Exception ex) { _chave.LiberarChave(cicsmo.Codigo); entity.StatusProdesp = "E"; entity.MensagemProdesp = ex.Message; entity.Itens = null; throw SaveLog(ex, (short?)EnumAcao.Transmitir, recursoId); } }
public object InserirSubEmpenhoApoio(string chave, string password, Subempenho entity) { try { var result = DataHelperProdespLiquidacaoDespesa.Procedure_InclusaoSubEmpenhoApoio( chave, password, entity) ?? new Procedure_InclusaoSubEmpenhoApoioRecordType[] { }; var resultItem = result.FirstOrDefault(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new Exception($"Prodesp - {resultItem?.outErro}"); } return(resultItem); } catch (Exception ex) { throw new Exception(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
private void TransmitirSiafem(Subempenho entity, Usuario user, int recursoId) { try { var result = default(string); var ug = _regional.Buscar(new Regional { Id = (int)user.RegionalId }).First().Uge; result = _siafem.InserirSubempenhoSiafem(user.CPF, Decrypt(user.SenhaSiafem), ug, entity); entity.NumeroSiafemSiafisico = result; entity.TransmitidoSiafem = true; entity.StatusSiafemSiafisico = "S"; entity.DataTransmitidoSiafemSiafisico = DateTime.Now; entity.MensagemSiafemSiafisico = null; base.SomarEventos(entity); SalvarOuAlterar(entity, 0, (short)EnumAcao.Transmitir, true); } catch (Exception ex) { entity.StatusSiafemSiafisico = "E"; entity.MensagemSiafemSiafisico = ex.Message; entity.Itens = null; throw SaveLog(ex, (short?)EnumAcao.Transmitir, recursoId); } }
public string InserirSubEmpenho(string chave, string senha, Subempenho subempenho, Estrutura estrutura) { try { var result = DataHelperProdespLiquidacaoDespesa.Procedure_InclusaoSubEmpenho( chave, senha, subempenho, estrutura) ?? new Procedure_InclusaoSubEmpenhoRecordType[] { }; var resultItem = result.FirstOrDefault(); if (HttpContext.Current != null) { HttpContext.Current.Session["terminal"] = resultItem?.outTerminal; } if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new Exception($"Prodesp - {resultItem?.outErro}"); } subempenho.DataVencimento = Convert.ToDateTime(resultItem?.outDataVencimento); return(resultItem?.outNumSubEmpenho + ";" + resultItem?.outReferencia); } catch (Exception ex) { throw new Exception(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public int SalvarOuAlterar(Subempenho entity, int recursoId, short action, bool salvamentoAposTransmitir) { try { entity.Id = _repository.Save(entity); if (entity.Eventos != null) { entity.Eventos = SalvarOuAlterarEventos(entity, recursoId, action); } if (entity.Itens != null) { entity.Itens = SalvarOuAlterarItens(entity, recursoId, action, salvamentoAposTransmitir); } if (entity.Notas != null) { entity.Notas = SalvarOuAlterarNotas(entity, recursoId, action); } if (recursoId > 0) { LogSucesso(action, recursoId, $@" Nº do subempenho Prodesp {entity.NumeroProdesp}, Nº do subempenho SIAFEM/SIAFISICO {entity.NumeroSiafemSiafisico}."); } return(entity.Id); } catch (Exception ex) { throw SaveLog(ex, action, recursoId); } }
public string InserirSubEmpenho(Subempenho objModel, string chave, string senha) { var estrutura = _estutura.Fetch(new Estrutura { Codigo = objModel.NaturezaId }).FirstOrDefault(); return(_prodesp.InserirSubEmpenho(chave, senha, objModel, estrutura)); }
private int SalvarService(Subempenho entity, int funcionalidade) { var acao = entity.Id > 0 ? EnumAcao.Alterar : EnumAcao.Inserir; return(App.SubempenhoService.SalvarOuAlterar( entity, funcionalidade, Convert.ToInt16(acao))); }
private static void GetSubEmpenhoContratoFiltersFactory(Subempenho entity, ref Procedure_InclusaoSubEmpenhoFiltersType filter) { filter.inNumMedicao = entity.NumeroMedicao; filter.inNatureza = entity.NaturezaSubempenhoId; filter.inReferencia = entity.NumeroSiafemSiafisico?.Substring(6, 5) ?? "00001"; filter.inEspecificacaoDesp_01 = entity.DescricaoEspecificacaoDespesa1; filter.inEspecificacaoDesp_02 = entity.DescricaoEspecificacaoDespesa2; filter.inEspecificacaoDesp_03 = entity.DescricaoEspecificacaoDespesa3; }
private static void CriarNovaListaDeNotasFiscaisParaAEntidade(Subempenho entity) { entity.Notas = new List <SubempenhoNota> { new SubempenhoNota { SubempenhoId = entity.Id, CodigoNotaFiscal = "nada consta", Ordem = 1 } }; }
private static void CriarNovaListaDeEventosParaAEntidade(Subempenho entity) { entity.Eventos = new List <SubempenhoEvento> { new SubempenhoEvento { SubempenhoId = entity.Id, NumeroEvento = "510600", Fonte = "004001001", InscricaoEvento = "2017NE00015", ValorUnitario = 10 } }; }
private static void CriarNovaListaDeItensParaAEntidade(Subempenho entity) { entity.Itens = new List <SubempenhoItem> { new SubempenhoItem { SubempenhoId = entity.Id, CodigoItemServico = "0821-4", QuantidadeMaterialServico = 1M, CodigoUnidadeFornecimentoItem = "", StatusSiafisicoItem = "N", SequenciaItem = 1 } }; }
private static void GetSubEmpenhoReciboFiltersFactory(Subempenho entity, ref Procedure_InclusaoSubEmpenhoFiltersType filter) { filter.inCaucaoNumGuia = entity.NumeroGuia; filter.inValorCaucionado = entity.ValorCaucionado.ZeroParaNulo(); filter.inQutoGeralAuto = entity.QuotaGeralAutorizadaPor; filter.inReferencia = entity.NumeroSiafemSiafisico?.Substring(6, 5) ?? "00001"; filter.inEspecificacaoDesp_01 = entity.DescricaoEspecificacaoDespesa1; filter.inEspecificacaoDesp_02 = entity.DescricaoEspecificacaoDespesa2; filter.inEspecificacaoDesp_03 = entity.DescricaoEspecificacaoDespesa3; }
public PesquisaEmpenhoCredorViewModel CreateInstance(Subempenho entity) { return(new PesquisaEmpenhoCredorViewModel() { CodigoCredorOrganizacao = entity.CodigoCredorOrganizacao > 0? entity.CodigoCredorOrganizacao.ToString(): null, NumeroCNPJCPFFornecedor = entity.NumeroCNPJCPFFornecedor, NumeroAnoExercicio = entity.NumeroAnoExercicio != 0 ? entity.NumeroAnoExercicio.ToString(): null, NomeCredor = entity.NomeCredor }); }
public DadoApropriacaoEstruturaViewModel CreateInstance(Subempenho entity, IEnumerable <Estrutura> estrutura, IEnumerable <Regional> regional, IEnumerable <Programa> programa, IEnumerable <Fonte> fonte, IEnumerable <NaturezaTipo> tipoNatureza) { var _programa = programa.Where(x => x.Ano == DateTime.Now.Year); var _natureza = estrutura.FirstOrDefault(w => w.Codigo == entity.NaturezaId); return(new DadoApropriacaoEstruturaViewModel() { Natureza = Convert.ToString(_natureza?.Codigo), NaturezaListItems = estrutura.Select(s => new SelectListItem { Text = $"{s.Natureza.Formatar("0.0.00.00")} - {s.Fonte}", Value = s.Codigo.ToString(), Selected = s.Codigo == _natureza?.Codigo }), Regional = entity.RegionalId > 0 ? entity.RegionalId.ToString() : default(string), RegionalListItems = regional.Select(s => new SelectListItem { Text = s.Descricao, Value = s.Id.ToString(), Selected = s.Id == entity.RegionalId }).ToList(), ProgramaId = entity.ProgramaId > 0 ? entity.ProgramaId.ToString() : default(string), ProgramaListItems = _programa.Select(s => new SelectListItem { Text = $"{s.Cfp.Formatar("00.000.0000.0000")} {s.Descricao}", Value = s.Codigo.ToString(), Selected = s.Codigo == entity.ProgramaId }).ToList(), NaturezaSubempenhoId = tipoNatureza.FirstOrDefault(w => w.Id == entity.NaturezaSubempenhoId)?.Id, NaturezaSubempenhoListItems = tipoNatureza.Select(s => new SelectListItem { Text = s.Descricao, Value = s.Id, Selected = s.Id == NaturezaSubempenhoId }).ToList(), FonteId = entity.FonteId > 0 ? entity.FonteId.ToString() : default(string), FonteListItems = fonte.Select(s => new SelectListItem { Text = s.Codigo, Value = s.Id.ToString(), Selected = s.Codigo == FonteId }).ToList(), CodigoAplicacaoObra = entity.CodigoAplicacaoObra, NumeroCNPJCPFFornecedor = entity.NumeroCNPJCPFFornecedor, CodigoCredorOrganizacao = entity.CodigoCredorOrganizacao < 1 ? default(string) : Convert.ToString(entity.CodigoCredorOrganizacao) }); }
private static void GetSubEmpenhoFiltersFactory(Subempenho entity, ref Procedure_InclusaoSubEmpenhoFiltersType filter) { filter.inCodEspDespesa = entity.CodigoEspecificacaoDespesa; filter.inReferencia = entity.Referencia; filter.inEspecificacaoDesp_01 = entity.DescricaoEspecificacaoDespesa1; filter.inEspecificacaoDesp_02 = entity.DescricaoEspecificacaoDespesa2; filter.inEspecificacaoDesp_03 = entity.DescricaoEspecificacaoDespesa3; filter.inEspecificacaoDesp_04 = entity.DescricaoEspecificacaoDespesa4; filter.inEspecificacaoDesp_05 = entity.DescricaoEspecificacaoDespesa5; filter.inEspecificacaoDesp_06 = entity.DescricaoEspecificacaoDespesa6; filter.inEspecificacaoDesp_07 = entity.DescricaoEspecificacaoDespesa7; filter.inEspecificacaoDesp_08 = entity.DescricaoEspecificacaoDespesa8; }
private Error Retransmissao(Usuario user, Subempenho entity, int recursoId) { var error = new Error(); var cicsmo = new ChaveCicsmo(); try { try { if (entity.TransmitirSiafem && !entity.TransmitidoSiafem) { TransmitirSiafem(entity, user, recursoId); } } catch (Exception ex) { error.SiafemSiafisico = ex.Message; } try { if (entity.TransmitirSiafisico && !entity.TransmitidoSiafisico) { TransmitirSiafisico(entity, user, recursoId); } } catch (Exception ex) { error.SiafemSiafisico = ex.Message; } try { if (entity.TransmitirProdesp && !entity.TransmitidoProdesp) { TransmitirProdesp(entity, recursoId); } } catch (Exception ex) { error.Prodesp = ex.Message; } if ((entity.TransmitidoSiafisico || entity.TransmitidoSiafem) && entity.TransmitidoProdesp) { cicsmo = _chave.ObterChave(recursoId); entity.StatusDocumento = _prodesp.InserirDoc(entity, cicsmo.Chave, cicsmo.Senha, "05"); _chave.LiberarChave(cicsmo.Codigo); } } catch (Exception ex) { throw SaveLog(ex, (short?)EnumAcao.Transmitir, recursoId); } finally { _chave.LiberarChave(cicsmo.Codigo); } return(error); }
public void TesteSelecionarOsEventosDoSubempenhoNoRepositorio() { SalvarEntidadeNoRepositorio(); var entity = _entity; _entity = null; BuscarUmSubempenhoNoRepositorio(entity); RemoverEntidadeDoRepositorio(_entity); Assert.IsNotNull(_entity.Eventos); }
public object ConsultarSubEmpenhoApoio(Subempenho subempenho) { var chave = new ChaveCicsmo(); try { chave = _chave.ObterChave(); return(_prodespLiquidacaoDespesaService.InserirSubEmpenhoApoio(subempenho, chave.Chave, chave.Senha)); } finally { _chave.LiberarChave(chave.Codigo); } }
public void TesteConsultaNotaLancamento() { var subempenho = new Subempenho { NumeroSiafemSiafisico = "2017NL00005", CodigoUnidadeGestora = "162101", TipoEventoId = 8, TransmitirSiafem = true }; var consultaNl = App.SiafemLiquidacaoDespesaService.ConsultaNL(AppConfig.WsSiafemUser, AppConfig.WsPassword, "162101", subempenho.NumeroSiafemSiafisico); var pdf = HelperReport.GerarPdfLiquidacaoDespesa(consultaNl, "Lançamento de Apropriação / Subempenho", subempenho); System.Diagnostics.Process.Start(@"C:\Users\810235\Documents\TestePDF.pdf"); Assert.IsNotNull(consultaNl); }
public ActionResult Save(Subempenho entity) { try { entity.Itens = entity.Itens ?? new List <LiquidacaoDespesaItem>(); var id = SalvarService(entity, Convert.ToInt32(_funcId)); return(Json(new { Status = "Sucesso", Id = id })); } catch (Exception ex) { return(Json(new { Status = "Falha", Msg = ex.Message })); } }
private static void GetSubEmpenhoOrganizacao7FiltersFactory(Subempenho entity, ref Procedure_InclusaoSubEmpenhoFiltersType filter) { filter.inOrganizacao = entity.CodigoCredorOrganizacao.ZeroParaNulo(); filter.inCGC_CPF = entity.NumeroCNPJCPFFornecedor; filter.inCodEspDespesa = entity.CodigoEspecificacaoDespesa; filter.inReferencia = entity.Referencia; filter.inEspecificacaoDesp_01 = entity.DescricaoEspecificacaoDespesa1; filter.inEspecificacaoDesp_02 = entity.DescricaoEspecificacaoDespesa2; filter.inEspecificacaoDesp_03 = entity.DescricaoEspecificacaoDespesa3; filter.inEspecificacaoDesp_04 = entity.DescricaoEspecificacaoDespesa4; filter.inEspecificacaoDesp_05 = entity.DescricaoEspecificacaoDespesa5; filter.inEspecificacaoDesp_06 = entity.DescricaoEspecificacaoDespesa6; filter.inEspecificacaoDesp_07 = entity.DescricaoEspecificacaoDespesa7; filter.inEspecificacaoDesp_08 = entity.DescricaoEspecificacaoDespesa8; }
public object ConsultaInclusaoEmpenhoCredor(string chave, string senha, Subempenho subempenho) { try { var result = DataHelperProdespLiquidacaoDespesa.Procedure_ConsultaEmpenhoCredor( chave, senha, subempenho) ?? new Procedure_ConsultaEmpenhoCredorRecordType[] { }; var resultItem = result.FirstOrDefault(); var propriedade = resultItem.GetType().GetProperties().ToList(); if (!string.IsNullOrEmpty(resultItem?.outErro)) { throw new Exception($"Prodesp - {resultItem?.outErro}"); } return(new ConsultaEmpenhoCredor { outCGC = propriedade.FirstOrDefault(x => x.Name == "outCGC").GetValue(resultItem).ToString(), outContrato = propriedade.FirstOrDefault(x => x.Name == "outContrato").GetValue(resultItem).ToString().Replace("/", ""), //outNotaFiscal = propriedade.FirstOrDefault(x => x.Name == "outNotaFiscal").GetValue(resultItem).ToString(), outDisponivelSubEmpenhar = propriedade.FirstOrDefault(x => x.Name == "outDisponivelSubEmpenhar").GetValue(resultItem).ToString(), outErro = propriedade.FirstOrDefault(x => x.Name == "outErro").GetValue(resultItem).ToString(), outLiqEmpenhado = propriedade.FirstOrDefault(x => x.Name == "outLiqEmpenhado").GetValue(resultItem).ToString(), outLiqSubEmpenhado = propriedade.FirstOrDefault(x => x.Name == "outLiqSubEmpenhado").GetValue(resultItem).ToString(), outNrEmpenho = propriedade.FirstOrDefault(x => x.Name == "outNrEmpenho").GetValue(resultItem).ToString(), outOrganiz = propriedade.FirstOrDefault(x => x.Name == "outOrganiz").GetValue(resultItem).ToString(), outCredorReduzido = propriedade.FirstOrDefault(x => x.Name == "outCredorReduzido").GetValue(resultItem).ToString(), outSucesso = propriedade.FirstOrDefault(x => x.Name == "outSucesso").GetValue(resultItem).ToString(), ListConsultarEmpenhoCredor = result.Select(x => new ListConsultaEmpenhoCredor { outNrEmpenho = x.GetType().GetProperties().ToList().FirstOrDefault(y => y.Name == "outNrEmpenho").GetValue(x).ToString(), outContrato = x.GetType().GetProperties().ToList().FirstOrDefault(y => y.Name == "outContrato").GetValue(x).ToString(), outLiqEmpenhado = x.GetType().GetProperties().ToList().FirstOrDefault(y => y.Name == "outLiqEmpenhado").GetValue(x).ToString(), outLiqSubEmpenhado = x.GetType().GetProperties().ToList().FirstOrDefault(y => y.Name == "outLiqSubEmpenhado").GetValue(x).ToString(), outDisponivelSubEmpenhar = x.GetType().GetProperties().ToList().FirstOrDefault(y => y.Name == "outDisponivelSubEmpenhar").GetValue(x).ToString() }).ToList() }); } catch (Exception ex) { throw new Exception(ex.Message.Contains("EntradaCICS_Fora") ? "Erro na comunicação com WebService Prodesp." : ex.Message); } }
public object ConsultarEmpenhoCredor(Subempenho subempenho) { var chave = new ChaveCicsmo(); try { chave = _chave.ObterChave(); var result = _prodespLiquidacaoDespesaService.InserirEmpenhoCredor(subempenho, chave.Chave, chave.Senha); return(result); } finally { _chave.LiberarChave(chave.Codigo); } }
public void TesteEditarUmSubempenhoNoRepositorio() { SalvarEntidadeNoRepositorio(); var entity = _entity; _entity = null; entity.DescricaoEspecificacaoDespesa8 = "UPDATE TEST OK"; AlterarEntidadeNoRepositorio(entity); BuscarUmSubempenhoNoRepositorio(entity); RemoverEntidadeDoRepositorio(_entity); Assert.AreEqual("UPDATE TEST OK", _entity.DescricaoEspecificacaoDespesa8); }