public void CriarBroadcastsParaAberturaPeriodoRepasse(PeriodoRepasseDto periodoRepasseDto) { var funcionalidadesRepasse = _funcionalidadeRepository.Buscar(x => x.NmFuncionalidade.ToUpper().Contains("REPASSE")); var usuarios = _usuarioPerfilRepository.BuscarUsuariosPorFuncionalidades(funcionalidadesRepasse.Select(x => x.Id).ToArray()).Distinct(); var lastBroadcastId = _broadcastItemRepository.BuscarUltimoId(); var broadcastItem = new BroadcastItem { //TO_DO validar auto-increment Id = ++lastBroadcastId, Descricao = MontarDescricaoBroadcastDeAberturaPeriodoRepasse(periodoRepasseDto, periodoRepasseDto.ehAlteracaoCronograma), Titulo = periodoRepasseDto.ehAlteracaoCronograma ? "Alteração de Cronograma - Periodo de Repasse" : "Abertura de Período de Repasse", }; _broadcastItemRepository.Adicionar(broadcastItem); _broadcastRepository.AddRange(usuarios.Select(user => new Broadcast { LgUsuarioVinculado = user, IdBroadcastItem = broadcastItem.Id, DataCriacao = DateTime.Now })); _unitOfWork.Commit(); }
public void CriarBroadcastsParaReajusteDeContrato(string funcionalidadeEnvio) { var funcionalidades = _funcionalidadeRepository.Buscar(x => x.NmFuncionalidade == funcionalidadeEnvio); var usuarios = _usuarioPerfilRepository.BuscarUsuariosPorFuncionalidades(funcionalidades.Select(x => x.Id).ToArray()).Distinct(); var lastBroadcastId = _broadcastItemRepository.BuscarUltimoId(); var broadcastItem = new BroadcastItem { Id = ++lastBroadcastId, Descricao = MontarDescricaoReajusteDeContrato(), Titulo = "Solicitação de Reajuste de Contrato" }; _broadcastItemRepository.Adicionar(broadcastItem); _broadcastRepository.AddRange(usuarios.Select(user => new Broadcast { LgUsuarioVinculado = user, IdBroadcastItem = broadcastItem.Id, DataCriacao = DateTime.Now })); _unitOfWork.Commit(); }
public void CriarBroadcastsParaAprovacaoHoras(List <BroadcastAprovacaoHorasDto> aprovacoes) { var lastBroadcastId = _broadcastItemRepository.BuscarUltimoId(); var broadcastList = new List <Broadcast>(); //TO_DO validar esse id foreach (var aprovacao in aprovacoes) { var broadcastItem = new BroadcastItem { Id = ++lastBroadcastId, Descricao = MontarDescricaoBroadcastDeAprovacaoHoras(aprovacao), Titulo = "Abertura de Aprovação de Pagamento", }; _broadcastItemRepository.Adicionar(broadcastItem); broadcastList.Add(new Broadcast { LgUsuarioVinculado = aprovacao.LoginAprovador, IdBroadcastItem = broadcastItem.Id, DataCriacao = DateTime.Now }); } _broadcastRepository.AddRange(broadcastList); _unitOfWork.Commit(); }