private void fctAtualizarCotacaoEncerrada(int CotacaoID) { CotacaoService CS = new CotacaoService(); // Buscar Status da cotação ordem 4 int statusID = CS.BuscaStatusSistema(14, 4).Id; //28 //Atualiza Cotação ECC.EntidadeCotacao.Cotacao cotacaoAtualizar; cotacaoAtualizar = CS.BuscarCotacao(CotacaoID); cotacaoAtualizar.StatusSistemaId = statusID; // 28 verificar Status ID CS.AtualizarCotacao(cotacaoAtualizar); //Historico de Cotação HistStatusCotacao cotacaoHistorico = new HistStatusCotacao() { Ativo = true, Cotacao = cotacaoAtualizar, CotacaoId = CotacaoID, DtCriacao = DateTime.Now, StatusSistemaId = statusID // 28 verificar Status ID }; CS.InserirHistoricoCotacao(cotacaoHistorico); }
public void InserirHistoricoCotacao(HistStatusCotacao histCotacao) { Usuario usuario = _usuarioRep.GetSingle(SessaoEconomiza.UsuarioId); histCotacao.UsuarioCriacao = usuario; histCotacao.UsuarioCriacaoId = usuario.Id; _histStatusCotacaoRep.Add(histCotacao); _unitOfWork.Commit(); }
public GeraCotacaoViewModel GeraCotacaoPedidos() { GeraCotacaoViewModel cotacao = new GeraCotacaoViewModel(); var statusId = _statusSisRep.FirstOrDefault(x => x.WorkflowStatusId == 14 && x.Ordem == 1).Id; var qtdPedidos = _pedidoRep.GetAll().Count(x => !x.FlgCotado && x.DtCotacao <= DateTime.Now); if (qtdPedidos > 0) { var pOut = new SqlParameter { ParameterName = "@cotacaoId", SqlDbType = SqlDbType.Int, Direction = ParameterDirection.Output }; _pedidoRep.ExecuteWithStoreProcedure("stp_upd_pedidos_sem_cotar @cotacaoId out", pOut); //Resgata ID da cotação inserida var cotacaoID = Convert.ToInt32(pOut.Value); //Historico de Cotação var cotacaoHistorico = new HistStatusCotacao { Ativo = true, CotacaoId = cotacaoID, DtCriacao = DateTime.Now, UsuarioCriacaoId = 1, StatusSistemaId = statusId }; _histStatusCotacaoRep.Add(cotacaoHistorico); var cot = _cotacaoRep.GetSingle(cotacaoID); var naService = new NotificacoesAlertasService(); var listaUsuario = naService.TrataNovaCotacaoFornecedor(cot, (int)TipoAviso.NovaCotacao); foreach (var retAviso in listaUsuario) { var aviso = new Avisos { UsuarioCriacaoId = 1, DtCriacao = DateTime.Now, Ativo = true, IdReferencia = cot.Id, DataUltimoAviso = DateTime.Now, ExibeNaTelaAvisos = true, TipoAvisosId = (int)TipoAviso.NovaCotacao, //Id TipoAviso para esse aviso URLPaginaDestino = "/#/cotacoes", TituloAviso = "Cotação Pendente de Resposta", ToolTip = "Cotação Pendente de Resposta", DescricaoAviso = "Cotação " + cot.Id + " Pendente de Resposta", ModuloId = 4, //Modulo Fornecedor UsuarioNotificadoId = retAviso.Usuario.Id }; _avisosRep.Add(aviso); } _unitOfWork.Commit(); var usuarios = listaUsuario.Select(x => x.Usuario).Distinct(); var listaToken = usuarios.Select(x => x.TokenSignalR).ToList(); cotacao.CotacaoId = cot.Id; cotacao.ListaTokenUsuarios = listaToken; return(cotacao); } return(cotacao); }