Example #1
0
        public void AdicionarAtividade(ItemCatalogo itemCatalogo, int quantidade, int modalidaExecucaoId, decimal tempoPrevistoPorItem, string descricao, IEnumerable <Guid> idsAssuntos, IEnumerable <Guid> idsObjetos)
        {
            VerificarPossibilidadeAlteracao();
            var atividade = PactoTrabalhoAtividade.Criar(this.PactoTrabalhoId, itemCatalogo.ItemCatalogoId, quantidade, modalidaExecucaoId, tempoPrevistoPorItem, descricao);

            if (idsAssuntos != null)
            {
                foreach (var idAssunto in idsAssuntos)
                {
                    atividade.AdicionarAssunto(idAssunto);
                }
            }
            if (idsObjetos != null)
            {
                foreach (var idObjeto in idsObjetos)
                {
                    atividade.AdicionarObjeto(idObjeto);
                }
            }

            this.Atividades.Add(atividade);
            if (itemCatalogo.FormaCalculoTempoItemCatalogoId == (int)FormaCalculoTempoItemCatalogoEnum.PredefinidoPorDia)
            {
                atividade.AtualizarTempoPrevistoTotal(WorkingDays.DiffDays(this.DataInicio, this.DataFim, this.DiasNaoUteis, false));
            }
        }
Example #2
0
        /// <summary>
        /// Muda as atividades que tem mais de um item para que fiquem com somente um para que o analista possa acompanhar cada uma delas
        /// </summary>
        private void ConverterAtividadesAgrupadasParaUnicas()
        {
            var atividadesAgrupadas = this.Atividades.Where(a => a.Quantidade > 1).ToList();

            foreach (var atividade in atividadesAgrupadas)
            {
                for (var index = 1; index < atividade.Quantidade; index++)
                {
                    this.Atividades.Add(PactoTrabalhoAtividade.Criar(atividade.PactoTrabalhoId, atividade.ItemCatalogoId, 1, atividade.TempoPrevistoPorItem, atividade.Descricao));
                }
                atividade.Alterar(atividade.ItemCatalogoId, 1, atividade.TempoPrevistoPorItem, atividade.Descricao);
            }
        }
Example #3
0
        public void AprovarNovaAtividade(Guid itemCatalogoId, int quantidade, decimal tempoPrevistoPorItem, Int32 situacaoId, DateTime?dataInicio, DateTime?dataFim, Decimal?tempoRealizado, string descricao, bool atualizarPrazo)
        {
            var atividade = PactoTrabalhoAtividade.Criar(this, itemCatalogoId, quantidade, tempoPrevistoPorItem, descricao);

            atividade.AlterarAndamento(situacaoId, dataInicio, dataFim, tempoRealizado, ignorarValidacoes: true);
            this.Atividades.Add(atividade);
            this.AtualizarPercentualExecucao();

            if (atualizarPrazo)
            {
                var novaDataFim = atividade.CalcularAjusteNoPrazo(this.DataFim, DiasNaoUteis);
                this.AlterarPeriodo(novaDataFim);
            }
        }
Example #4
0
        public void AprovarNovaAtividade(ItemCatalogo itemCatalogo, int quantidade, int modalidaExecucaoId, decimal tempoPrevistoPorItem, Int32 situacaoId, DateTime?dataInicio, DateTime?dataFim, Decimal?tempoRealizado, string descricao, bool atualizarPrazo)
        {
            var atividade = PactoTrabalhoAtividade.Criar(this, itemCatalogo, quantidade, modalidaExecucaoId, tempoPrevistoPorItem, descricao);

            atividade.AlterarAndamento(situacaoId, dataInicio, dataFim, tempoRealizado, ignorarValidacoes: true);
            this.Atividades.Add(atividade);

            if (itemCatalogo.FormaCalculoTempoItemCatalogoId == (int)FormaCalculoTempoItemCatalogoEnum.PredefinidoPorDia)
            {
                atividade.AtualizarTempoPrevistoTotal(WorkingDays.DiffDays(this.DataInicio, this.DataFim, this.DiasNaoUteis, false));
            }

            if (atualizarPrazo)
            {
                var novaDataFim = atividade.CalcularAjusteNoPrazo(this.DataFim, DiasNaoUteis, tempoPrevistoPorItem);
                this.AlterarPeriodo(novaDataFim);
            }

            this.AtualizarPercentualExecucao();
        }