private LogRepasse AdicionarLogRepasse(int idRepasse, int idStatus, string motivo) { LogRepasse log = new LogRepasse { Id = 0, IdRepasse = idRepasse, IdStatusRepasse = idStatus, Descricao = motivo, }; _logRepasseRepository.Adicionar(log); return(log); }
private void AtualizarRepasseQuandoAprovandoOuNegando(AprovarRepasseDto aprovarRepasseDto, RepasseNivelUm repasseNivelUm) { repasseNivelUm.Usuario = aprovarRepasseDto.Usuario; repasseNivelUm.Status = aprovarRepasseDto.Status; LogRepasse log = new LogRepasse { IdStatusRepasse = repasseNivelUm.Status == StatusRepasseEacesso.NEGADO.GetDescription() ? _dominioRepository.Buscar(x => x.DescricaoValor.Equals(StatusRepasseEacesso.NEGADO.GetDescription())).FirstOrDefault().Id : _dominioRepository.Buscar(x => x.DescricaoValor.Equals(StatusRepasseEacesso.APROVADO_NIVEL_UM.GetDescription())).FirstOrDefault().Id, Descricao = repasseNivelUm.Status == StatusRepasseEacesso.NEGADO.GetDescription() ? aprovarRepasseDto.Motivo : string.Empty, DataAlteracao = DateTime.Now, Usuario = repasseNivelUm.Usuario }; repasseNivelUm.MotivoNegacao = repasseNivelUm.Status == StatusRepasseEacesso.NEGADO.GetDescription() ? aprovarRepasseDto.Motivo : null; repasseNivelUm.LogsRepasse.Add(log); if (aprovarRepasseDto.Status == StatusRepasseEacesso.APROVADO_NIVEL_DOIS.GetDescription() && !CelulaDestinoPagadoraExterior(repasseNivelUm.IdCelulaDestino)) { int idDominioRepasseAprovadoNivelDois = _dominioRepository.Buscar((int)StatusRepasseEacesso.APROVADO_NIVEL_DOIS, StatusRepasseEacesso.VL_TIPO_DOMINIO.GetDescription()).Id; log = new LogRepasse { Id = 0, IdRepasse = repasseNivelUm.Id, IdStatusRepasse = idDominioRepasseAprovadoNivelDois, Descricao = string.Empty, DataAlteracao = DateTime.Now, Usuario = repasseNivelUm.Usuario }; repasseNivelUm.LogsRepasse.Add(log); } _repasseNivelUmRepository.Update(repasseNivelUm); _unitOfWork.Commit(); }
public void RealizarMigracaoRepasseEacesso() { var repasses = _repasseRepository.BuscarTodosMigracaoRepasse(); var repasseSTFCORP = _repasseNivelUmRepository.BuscarTodos(); List <RepasseNivelUm> repasseNivelUmLista = new List <RepasseNivelUm>(); var periodoVigente = _periodoRepasseService.BuscarPeriodoVigente(); var countAdd = 0; var countTotal = 0; repasses.ForEach(r => { var clienteOrigiem = obterNomeCliente(r.IdClienteOrigem); var clienteDestino = _clienteRepository.BuscarPorId(r.IdClienteDestino).NomeFantasia; var servicoOrigiem = obterNomeServico(r.IdServicoOrigem); var servicoDestino = _clienteServicoRepository.BuscarPorId(r.IdServicoDestino).Nome; var nomeProficiional = obterNomeProfissional(r.IdProfissional); var repasseNivelUm = new RepasseNivelUm { IdClienteOrigem = r.IdClienteOrigem.GetValueOrDefault(), IdClienteDestino = r.IdClienteDestino, IdCelulaDestino = r.IdCelulaDestino, DataRepasse = r.DataRepasse, DescricaoProjeto = r.DescricaoProjeto, IdCelulaOrigem = r.IdCelulaOrigem, IdEpm = 0,//Não mapeado IdMoeda = r.IdMoeda, IdOrigem = r.IdOrigem, IdProfissional = r.IdProfissional, IdRepasseEacesso = r.Id, IdRepasseMaeEAcesso = r.IdRepasseMae, IdServicoDestino = r.IdServicoDestino, IdServicoOrigem = r.IdServicoOrigem.GetValueOrDefault(), Justificativa = r.Justificativa, MotivoNegacao = r.MotivoNegacao, NomeClienteDestino = clienteDestino, NomeClienteOrigem = clienteOrigiem, NomeProfissional = nomeProficiional, NomeServicoDestino = servicoDestino, NomeServicoOrigem = servicoOrigiem, QuantidadeItens = (int)r.QuantidadeItens, RepasseInterno = false, //não mapeado Status = r.Status, ValorCustoProfissional = r.ValorCustoProfissional, ValorTotal = r.ValorTotal, ValorUnitario = r.ValorUnitario, DataAlteracao = DateTime.Now, Usuario = "STFCORP" }; //TODO IMPLEMENATAR e TESTAR LogRepasse log = new LogRepasse { IdStatusRepasse = 4849, Descricao = SharedEnuns.StatusRepasseEacesso.NAO_ANALISADO.GetDescription(), DataAlteracao = repasseNivelUm.DataAlteracao, Usuario = repasseNivelUm.Usuario }; repasseNivelUm.LogsRepasse.Add(log); repasseNivelUmLista.Add(repasseNivelUm); countAdd++; countTotal++; bool encontrado = false; if (countAdd == 100 || repasses.Count == countAdd) { _repasseNivelUmRepository.AdicionarRange(repasseNivelUmLista); foreach (var repasse in repasseSTFCORP) { if (repasseNivelUm.IdRepasseEacesso == repasse.IdRepasseEacesso) { encontrado = true; } } if (!encontrado) { _unitOfWork.Commit(); } else { encontrado = false; } countAdd = 0; repasseNivelUmLista = new List <RepasseNivelUm>(); } ; }); }