Exemple #1
0
        public bool Deletar(int TipoRateioId)
        {
            if (!EhPermitidoDeletar())
            {
                messageQueue.Add(Resource.Sigim.ErrorMessages.PrivilegiosInsuficientes, TypeMessage.Error);
                return(false);
            }

            if (TipoRateioId == 0)
            {
                messageQueue.Add(Resource.Sigim.ErrorMessages.NenhumRegistroEncontrado, TypeMessage.Error);
                return(false);
            }

            bool bolOK            = true;
            var  rateioAutomatico = new RateioAutomatico();
            var  listaRemocao     = ListarPeloTipoRateio(TipoRateioId);

            foreach (var item in listaRemocao)
            {
                rateioAutomatico = new RateioAutomatico();
                rateioAutomatico = rateioAutomaticoRepository.ObterPeloId(item.Id);
                try
                {
                    rateioAutomaticoRepository.Remover(rateioAutomatico);
                    bolOK = true;
                }
                catch (Exception)
                {
                    bolOK = false;
                    break;
                }
            }

            if (bolOK == true)
            {
                rateioAutomaticoRepository.UnitOfWork.Commit();
                messageQueue.Add(Resource.Sigim.SuccessMessages.ExcluidoComSucesso, TypeMessage.Success);
            }
            else
            {
                rateioAutomaticoRepository.UnitOfWork.RollbackChanges();
                messageQueue.Add(Resource.Sigim.ErrorMessages.ExclusaoErro, TypeMessage.Error);
            }

            return(bolOK);
        }
Exemple #2
0
        public bool Salvar(int TipoRateioId, List <RateioAutomaticoDTO> listaDto)
        {
            if (!EhPermitidoSalvar())
            {
                messageQueue.Add(Resource.Sigim.ErrorMessages.PrivilegiosInsuficientes, TypeMessage.Error);
                return(false);
            }

            if (listaDto == null)
            {
                throw new ArgumentNullException("dto");
            }

            if (ValidaSalvar(listaDto) == false)
            {
                return(false);
            }

            var rateioAutomatico = new RateioAutomatico();
            var listaRemocao     = ListarPeloTipoRateio(TipoRateioId);

            foreach (var item in listaRemocao)
            {
                rateioAutomatico = new RateioAutomatico();
                rateioAutomatico = rateioAutomaticoRepository.ObterPeloId(item.Id);
                rateioAutomaticoRepository.Remover(rateioAutomatico);
            }

            bool bolOK = true;

            foreach (var item in listaDto)
            {
                rateioAutomatico               = new RateioAutomatico();
                rateioAutomatico.Id            = null;
                rateioAutomatico.TipoRateioId  = TipoRateioId;
                rateioAutomatico.CentroCustoId = item.CentroCusto.Codigo;
                rateioAutomatico.ClasseId      = item.Classe.Codigo;
                rateioAutomatico.Percentual    = item.Percentual;

                if (Validator.IsValid(rateioAutomatico, out validationErrors))
                {
                    rateioAutomaticoRepository.Inserir(rateioAutomatico);
                    bolOK = true;
                }
                else
                {
                    bolOK = false;
                    break;
                }
            }

            if (bolOK == true)
            {
                rateioAutomaticoRepository.UnitOfWork.Commit();
                messageQueue.Add(Resource.Sigim.SuccessMessages.SalvoComSucesso, TypeMessage.Success);
            }
            else
            {
                rateioAutomaticoRepository.UnitOfWork.RollbackChanges();
                messageQueue.Add(Resource.Sigim.ErrorMessages.GravacaoErro, TypeMessage.Error);
            }

            return(bolOK);
        }