public void AutorizarOB(OBAutorizacao model, List <string> checados, object viewModel, string UGMudapah, int recursoId, short action, Usuario user) { bool executar = false; var dadosUsuarioSiafem = _siafem.ConsultarUsuarioHomologacaoProducao(user.CPF, user.Senha, true); USUARIO = dadosUsuarioSiafem.usuario; SENHA = dadosUsuarioSiafem.senha; try { foreach (var item in model.Items) { executar = checados.Contains(item.NumOB); if (item.TransmissaoItemStatusSiafem != "S" && executar) { AutorizarItemOB(user, item, UGMudapah); } } } catch (Exception ex) { throw SaveLog(ex, action, recursoId); } }
public int Save(OBAutorizacao entity) { var paramIdAutorizacaoOB = new SqlParameter("@id_autorizacao_ob", entity.IdAutorizacaoOB); var paramIdExecucaoPD = new SqlParameter("@id_execucao_pd", entity.IdExecucaoPD); var paramNumeroAgrupamento = new SqlParameter("@nr_agrupamento", entity.NumeroAgrupamento); var paramUnidadeGestora = new SqlParameter("@unidade_gestora", entity.UnidadeGestora); var paramAnoOB = new SqlParameter("@ano_ob", entity.AnoOB); var paramValor = new SqlParameter("@valor_total_autorizacao", entity.Valor); var paramQuantidadeAutorizacao = new SqlParameter("@qtde_autorizacao", entity.QuantidadeAutorizacao); var paramTransmissaoStatusSiafem = new SqlParameter("@cd_transmissao_status_siafem", entity.TransmissaoStatusSiafem); var TransmissaoMensagemSiafem = new SqlParameter("@ds_transmissao_mensagem_siafem", entity.TransmissaoMensagemSiafem); var paramNumeroContrato = new SqlParameter("@nr_contrato", entity.NumeroContrato); var paramCodigoAplicacaoObra = new SqlParameter("@cd_aplicacao_obra", entity.CodigoAplicacaoObra); var paramGestao = new SqlParameter("@gestao", entity.GestaoPagadora); var paramUgPagadora = new SqlParameter("@ug_pagadora", entity.UgPagadora); #region Confirmacao var paramTipoPagamento = new SqlParameter("@id_tipo_pagamento", entity.TipoPagamento); var paramEhConfirmacaoPagamento = new SqlParameter("@fl_confirmacao", entity.EhConfirmacaoPagamento); var paramDataConfirmacao = new SqlParameter("@dt_confirmacao", entity.DataConfirmacao.ValidateDBNull()); #endregion var dbResult = DataHelper.Get <int>("PR_AUTORIZACAO_OB_SALVAR", paramIdAutorizacaoOB, paramIdExecucaoPD, paramNumeroAgrupamento , paramUnidadeGestora, paramAnoOB, paramValor, paramQuantidadeAutorizacao, paramTransmissaoStatusSiafem, TransmissaoMensagemSiafem , paramNumeroContrato, paramCodigoAplicacaoObra, paramGestao, paramUgPagadora , paramTipoPagamento, paramEhConfirmacaoPagamento, paramDataConfirmacao); return(dbResult); }
public void RelacionarAutorizacaoComPagamentoDesdobrado(OBAutorizacao entity, IEnumerable <OBAutorizacaoItem> entityItem, List <string> checados) { try { int contador = 0; string itemChecado = string.Empty; foreach (var item in entityItem) { if (contador < checados.Count) { if (item.NumOB == checados[contador]) { itemChecado = checados[contador]; contador++; } } if (itemChecado != string.Empty) { _confirmacaoPgtoItemRepository.RelacionarExecucaoComPagamentoDesdobrado(item); itemChecado = string.Empty; } } } catch (Exception ex) { throw ex; } }
public int Salvar(ref OBAutorizacao entity, List <string> checados, int recursoId, short action) { try { var id = _repository.Save(entity); entity.IdAutorizacaoOB = id; //int numeroAgrupamentoOb = action == (int)EnumAcao.Inserir ? _repository.GetNumeroAgrupamento() : 0; foreach (var item in entity.Items) { //if (action == 1) //{ // item.AgrupamentoItemOB = numeroAgrupamentoOb; //} item.IdAutorizacaoOB = id; item.AgrupamentoItemOB = item.Codigo.HasValue && item.Codigo != 0 ? 0 : item.AgrupamentoItemOB; var iditem = SalvarItem(item); item.Codigo = iditem; item.IdAutorizacaoOBItem = iditem; } return(id); } catch (Exception ex) { throw SaveLog(ex, action, recursoId); } }
public DadoAutorizacaoDeOBViewModel(OBAutorizacao entity) { Items = new List <DadoAutorizacaoDeOBItemViewModel>(); ItemsConfirmacaoPagamento = new List <DadoAutorizacaoDeOBItemViewModel>(); filtroListaOB = new FiltroListaOB(); Codigo = entity.IdAutorizacaoOB; IdAutorizacaoOB = entity.IdAutorizacaoOB; IdExecucaoPD = entity.IdExecucaoPD; filtroListaOB.IdAutorizacaoOB = entity.IdAutorizacaoOB; AgrupamentoOB = entity.IdAutorizacaoOB; TipoExecucao = entity.TipoExecucao; GestaoPagadora = entity.Gestao; UGPagadora = entity.UnidadeGestora; AnoOB = entity.AnoOB; Valor = entity.Valor.HasValue ? entity.Valor.ToString(): "0"; TransmissaoTransmitidoSiafem = entity.TransmissaoTransmitidoSiafem; TransmissaoMensagemSiafem = entity.TransmissaoMensagemSiafem; TransmisaoStatusSiafem = entity.TransmissaoStatusSiafem; TransmissaoDataSiafem = entity.TransmissaoDataSiafem; NumeroContrato = entity.NumeroContrato; CodigoAplicacaoObra = entity.CodigoAplicacaoObra; UGPagadora = entity.UgPagadora; UGLiquidante = entity.UgLiquidante; GestaoPagadora = entity.Gestao; GestaoLiquidante = entity.GestaoLiquidante; filtroListaOB.NumOB = entity.NumOB; filtroListaOB.Agrupamento = Convert.ToInt32(entity.NumOB); filtroListaOB.GestaoPagadora = entity.Gestao; filtroListaOB.UGPagadora = entity.UgPagadora; filtroListaOB.TipoPagamento = entity.TipoPagamento; foreach (var item in entity.Items) { this.Items.Add(new DadoAutorizacaoDeOBItemViewModel(item)); } //foreach (var itemConfirmacao in entity.Items) //{ // this.ItemsConfirmacaoPagamento.Add(new DadoAutorizacaoDeOBItemViewModel(itemConfirmacao)); //} IdExecucaoPD = entity.IdExecucaoPD; IdConfirmacaoPagamento = entity.IdConfirmacaoPagamento; confirmacaoPagamento = entity.Confirmacao; this.confirmacaoPagamento = entity.Confirmacao; this.TipoPagamento = entity.TipoPagamento; this.EhConfirmacaoPagamento = entity.EhConfirmacaoPagamento ? SimNao.Sim : SimNao.Nao; this.DataConfirmacao = entity.DataConfirmacao; }
public void RelacionarAutorizacaoComPagamentoDesdobrado(OBAutorizacao entity, IEnumerable <OBAutorizacaoItem> entityItem, List <string> checados) { try { App.ConfirmacaoPagamentoService.RelacionarAutorizacaoComPagamentoDesdobrado(entity, entity.Items, checados); } catch (Exception ex) { throw ex; } }
public void RemoverItensNaoPertencentesOb(OBAutorizacao entity) { foreach (var item in entity.Items) { var agrupado = item.AgrupamentoItemOB == 0; if (!agrupado) { _repositoryAutorizacaoObItem.Remove(item.Codigo.GetValueOrDefault()); } } }
public int Add(OBAutorizacao entity) { return(DataHelper.Get <int>("PR_CONFIRMACAO_PAGAMENTO_INCLUIR", new SqlParameter("@id_tipo_documento", entity.DocumentoTipoId), new SqlParameter("@ano_referencia", entity.AnoOB), new SqlParameter("@nr_documento", entity.NumeroDocumento), new SqlParameter("@id_tipo_pagamento", entity.TipoPagamento), new SqlParameter("@dt_confirmacao", entity.DataConfirmacaoCombo.ValidateDBNull()), new SqlParameter("@dt_cadastro", entity.DataCadastro), new SqlParameter("@cd_transmissao_status_prodesp", entity.StatusProdesp), new SqlParameter("@fl_transmissao_transmitido_prodesp", entity.TransmitidoProdesp), new SqlParameter("@dt_transmissao_transmitido_prodesp", entity.DataTransmitidoProdesp.ValidateDBNull()), new SqlParameter("@ds_transmissao_mensagem_prodesp", entity.MensagemServicoProdesp))); }
public void DeletarNaoAgrupados(OBAutorizacao entity) { try { foreach (var item in entity.Items) { DeletarNaoAgrupados(item.IdAutorizacaoOB.ToString()); break; } } catch (Exception ex) { throw ex; } }
public IEnumerable <OBAutorizacao> FetchForGrid(OBAutorizacao entity, DateTime?since, DateTime?until) { return(DataHelper.List <OBAutorizacao>("[dbo].[PR_AUTORIZACAO_DE_OB_ITEM_GRID]", new SqlParameter("@ug_pagadora", entity.UgPagadora), new SqlParameter("@gestao_pagadora", entity.GestaoPagadora), new SqlParameter("@ds_numob", entity.NumOB), new SqlParameter("@favorecidoDesc", entity.FavorecidoDesc), new SqlParameter("@cd_despesa", entity.CodigoDespesa), new SqlParameter("@valor", entity.Valor), new SqlParameter("@cd_transmissao_status_siafem", entity.TransmissaoStatusSiafem), new SqlParameter("@de", since), new SqlParameter("@ate", until), new SqlParameter("@cd_aplicacao_obra", entity.CodigoAplicacaoObra), new SqlParameter("@nr_contrato", entity.NumeroContrato) )); }
public FiltroViewModel CreateInstance(OBAutorizacao objModel, DateTime de, DateTime ate) { return(new FiltroViewModel() { StatusSiafem = Convert.ToString(objModel.TransmissaoStatusSiafem == "S").ToLower(), StatusSiafemListItems = new SelectListItem[] { new SelectListItem { Text = "Sucesso", Value = "S" }, new SelectListItem { Text = "Erro", Value = "E" }, new SelectListItem { Text = "Não transmitido", Value = "N" } }, }); }
public FiltroGridViewModel CreateInstance(OBAutorizacao entity) { FiltroGridViewModel filtro = new Models.FiltroGridViewModel(); filtro.Id = entity.IdAutorizacaoOB.ToString(); filtro.ValorTotal = entity.Valor; filtro.StatusSiafem = entity.TransmissaoStatusSiafem; filtro.MensagemSiafem = entity.TransmissaoMensagemSiafem; filtro.StatusProdesp = entity.StatusProdesp; filtro.MensagemProdesp = entity.MensagemServicoProdesp; filtro.GestaoLiquidante = entity.GestaoLiquidante; filtro.UnidadeGestora = entity.UnidadeGestora; filtro.Gestao = entity.Gestao; filtro.UGPagadora = entity.UgPagadora; filtro.GestaoPagadora = entity.GestaoPagadora; filtro.Data = entity.DataCadastro.ToShortDateString(); return(filtro); }
public ActionResult Retransmitir(int[] ListaDeOB, string filtroMudapah) { try { var entity = new OBAutorizacao(); var entityItensDaOB = new OBAutorizacaoItem(); foreach (var itemDaLista in ListaDeOB) { entityItensDaOB.ItensSelecionados = App.AutorizacaoDeOBService.ConsultarItensDaOB(itemDaLista); foreach (var item in entityItensDaOB.ItensSelecionados) { App.AutorizacaoDeOBService.AutorizarItemOB(_userLoggedIn, item, filtroMudapah); } } return(Json(new { Status = "Sucesso" })); } catch (Exception ex) { return(Json(new { Status = "Falha", Msg = ex.Message })); } }
private void SalvarItem(OBAutorizacao entity, OBAutorizacaoItem item) { var confirmacaoPagamento = new ConfirmacaoPagamento(); confirmacaoPagamento.IdTipoDocumento = item.DocumentoTipoId; confirmacaoPagamento.AnoReferencia = Convert.ToInt32(item.AnoAserpaga); confirmacaoPagamento.DataConfirmacao = item.DataConfirmacaoItem; confirmacaoPagamento.TipoPagamento = item.TipoPagamento; confirmacaoPagamento.IdAutorizacaoOB = item.IdAutorizacaoOB; confirmacaoPagamento.IdExecucaoPD = item.IdExecucaoPD; confirmacaoPagamento.IdAutorizacaoOB = item.IdAutorizacaoOB; confirmacaoPagamento.ValorTotalConfirmado = Convert.ToDecimal(item.ValorItem); if (entity.IdConfirmacaoPagamento == 0) { entity.IdConfirmacaoPagamento = _confirmacaoPgtoRepository.Add(confirmacaoPagamento); } else { confirmacaoPagamento.Id = entity.IdConfirmacaoPagamento; confirmacaoPagamento.StatusProdesp = item.TransmissaoItemStatusProdesp; _confirmacaoPgtoRepository.Edit(confirmacaoPagamento); } item.id_confirmacao_pagamento = entity.IdConfirmacaoPagamento; //var items = this._confirmacaoPgtoItemRepository.Fetch(new ConfirmacaoPagamentoItem() { IdAutorizacaoOBItem = item.IdAutorizacaoOBItem }); //if (items.Any()) //{ // _confirmacaoPgtoItemRepository.Edit(item); //} //else //{ _confirmacaoPgtoItemRepository.Add(item); //} }
public void TransmitirProdesp(OBAutorizacao entity, List <string> marcados, DateTime?dataConfirmacao, int?tipoPagamento, bool primeiraVez, int recursoId) { try { bool jaConfirmado = false; List <string> opsJaConfirmadas = new List <string>(); foreach (var item in entity.Items) { if (!string.IsNullOrWhiteSpace(item.NumOP)) { var op = item.NumOP.Substring(5, 6); jaConfirmado = opsJaConfirmadas.Contains(op); var foiExecutado = marcados.Contains(item.NumOB); if (item.Executar || (item.IsDesdobramento && jaConfirmado)) { TransmitirConfirmacaoPagamentoItem(recursoId, entity, item, dataConfirmacao, tipoPagamento, (item.Executar && !jaConfirmado), foiExecutado); if (!opsJaConfirmadas.Contains(op)) { opsJaConfirmadas.Add(op); } } } } RemoverItensNaoPertencentesOb(entity, primeiraVez); } catch (Exception ex) { entity.StatusProdesp = "E"; entity.MensagemServicoProdesp = ex.Message; } }
public IEnumerable <OBAutorizacao> FetchForGrid(OBAutorizacao entity, DateTime since, DateTime until) { throw new NotImplementedException(); }
public IEnumerable <OBAutorizacao> Fetch(OBAutorizacao entity) { throw new NotImplementedException(); }
private void Salvar(ref OBAutorizacao model, List <string> checados) { var acao = model.IdAutorizacaoOB > 0 ? EnumAcao.Alterar : EnumAcao.Inserir; App.AutorizacaoDeOBService.Salvar(ref model, checados, Convert.ToInt32(_funcId), Convert.ToInt16(acao)); }
public void TransmitirConfirmacaoPagamentoItem(int recursoId, OBAutorizacao ob, OBAutorizacaoItem item, DateTime?dataConfirmacao, int?tipoPagamento, bool transmitir, bool foiExecutado) { var cicsmo = new ChaveCicsmo(); try { cicsmo = _chave.ObterChave(recursoId); item.AnoAserpaga = dataConfirmacao.ToString().Substring(6, 4); item.DataConfirmacaoItem = dataConfirmacao; item.DocumentoTipoId = item.IdTipoDocumento; item.NumeroDocumento = item?.NumeroDocumento; item.TipoPagamento = tipoPagamento; item.DataCadastro = DateTime.Now; if (transmitir) { _prodespContaUnica.Inserir_ConfirmacaoPagamento(cicsmo.Chave, cicsmo.Senha, ref item); } item.DataConfirmacaoItem = dataConfirmacao; item.TransmissaoItemTransmitidoProdesp = true; item.TransmissaoItemStatusProdesp = "S"; item.TransmissaoItemDataProdesp = DateTime.Now; item.TransmissaoItemMensagemProdesp = null; } catch (Exception ex) { if (ex.Message.Contains("FCFG404 - PAGAMENTO CONFIRMADO EM")) { var dataTexto = new Regex(@".+\s(\d{2}\/\d{2}\/\d{2,4})").Match(ex.Message); if (dataTexto.Success) { var grupo = dataTexto.Groups[1]; var data = DateTime.Parse(grupo.Value); item.DataConfirmacaoItem = data; item.TransmissaoItemTransmitidoProdesp = true; item.TransmissaoItemStatusProdesp = "S"; item.TransmissaoItemDataProdesp = DateTime.Now; item.TransmissaoItemMensagemProdesp = null; } } else { item.DataConfirmacaoItem = null; item.TransmissaoItemTransmitidoProdesp = false; item.TransmissaoItemStatusProdesp = "E"; item.TransmissaoItemDataProdesp = DateTime.Now; item.TransmissaoItemMensagemProdesp = ex.Message; } } finally { _chave.LiberarChave(cicsmo.Codigo); var codigoEpdi = item.Codigo; if (!foiExecutado) { item.Codigo = null; } SalvarItem(ob, item); item.Codigo = codigoEpdi; } }
public IEnumerable <OBAutorizacao> ConsultarItensAgrupadosPorOB(OBAutorizacao entity, DateTime?De, DateTime?Ate) { return(_repository.FetchForGrid(entity, De, Ate)); }
public OBAutorizacao ToEntity() { OBAutorizacao retorno = new OBAutorizacao(); //retorno.IdAutorizacaoOB = Codigo; retorno.IdAutorizacaoOB = IdAutorizacaoOB; retorno.IdConfirmacaoPagamento = IdConfirmacaoPagamento; //retorno.IdAutorizacaoOB = filtroListaOB.IdAutorizacaoOB; retorno.TipoPagamento = TipoPagamento; retorno.NumeroAgrupamento = Codigo; //AgrupamentoOB; retorno.TipoExecucao = TipoExecucao; retorno.NumOB = filtroListaOB.NumOB; retorno.NumeroAgrupamento = filtroListaOB.Agrupamento; //retorno.UnidadeGestora = this.uni.UGPagadora; //retorno.Gestao = this.Gestao; retorno.UgPagadora = this.UGPagadora; retorno.GestaoPagadora = this.GestaoPagadora; decimal outvalue = 0; Decimal.TryParse(Valor, out outvalue); retorno.Valor = outvalue; retorno.AnoOB = AnoOB; retorno.QuantidadeAutorizacao = Items.Count; retorno.TransmissaoStatusSiafem = TransmisaoStatusSiafem; retorno.TransmissaoMensagemSiafem = TransmissaoMensagemSiafem; retorno.TransmissaoTransmitidoSiafem = TransmissaoTransmitidoSiafem; retorno.TransmissaoDataSiafem = TransmissaoDataSiafem; retorno.NumeroContrato = NumeroContrato; retorno.CodigoAplicacaoObra = CodigoAplicacaoObra; var lista = new List <OBAutorizacaoItem>(); foreach (var item in Items) { var itemCorreto = item.ToEntity(); itemCorreto.GestaoPagadora = this.GestaoPagadora; itemCorreto.UGPagadora = this.UGPagadora; lista.Add(itemCorreto); } retorno.Items = lista.AsEnumerable(); var listaConfirmacaoPagamentoItens = new List <OBAutorizacaoItem>(); foreach (var itemConfirmacaoPagamento in Items) { var itemConfirmacaoPagamentoCorreto = itemConfirmacaoPagamento.ToEntity(); itemConfirmacaoPagamentoCorreto.GestaoPagadora = this.GestaoPagadora; itemConfirmacaoPagamentoCorreto.UGPagadora = this.UGPagadora; listaConfirmacaoPagamentoItens.Add(itemConfirmacaoPagamentoCorreto); } retorno.ItemsConfirmacaoPagamento = listaConfirmacaoPagamentoItens.AsEnumerable(); //retorno.IdExecucaoPD = Items.Select(x => x.IdExecucaoPD).FirstOrDefault(); #region Confirmacao retorno.EhConfirmacaoPagamento = this.EhConfirmacaoPagamento == SimNao.Sim; retorno.TipoPagamento = this.TipoPagamento; retorno.DataConfirmacao = Convert.ToDateTime(this.DataConfirmacao); #endregion return(retorno); }