示例#1
0
        public bool Salvar(TipoDocumentoDTO dto)
        {
            if (!EhPermitidoSalvar())
            {
                messageQueue.Add(Resource.Sigim.ErrorMessages.PrivilegiosInsuficientes, TypeMessage.Error);
                return(false);
            }

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

            bool novoItem = false;

            var tipoDocumento = tipoDocumentoRepository.ObterPeloId(dto.Id);

            if (tipoDocumento == null)
            {
                tipoDocumento = new TipoDocumento();
                novoItem      = true;
            }

            tipoDocumento.Sigla     = dto.Sigla;
            tipoDocumento.Descricao = dto.Descricao;

            if (Validator.IsValid(tipoDocumento, out validationErrors))
            {
                if (novoItem)
                {
                    tipoDocumentoRepository.Inserir(tipoDocumento);
                }
                else
                {
                    tipoDocumentoRepository.Alterar(tipoDocumento);
                }

                tipoDocumentoRepository.UnitOfWork.Commit();
                messageQueue.Add(Resource.Sigim.SuccessMessages.SalvoComSucesso, TypeMessage.Success);
                return(true);
            }
            else
            {
                messageQueue.AddRange(validationErrors, TypeMessage.Error);
            }

            return(false);
        }