コード例 #1
0
        private DataTable RelFormaRecebimentoToDataTable(List <FormaRecebimento> listaFormaRecebimento)
        {
            DataTable  dta             = new DataTable();
            DataColumn codigo          = new DataColumn("codigo");
            DataColumn descricao       = new DataColumn("descricao");
            DataColumn tipoRecebimento = new DataColumn("tipoRecebimento");
            DataColumn numeroDias      = new DataColumn("numeroDias");
            DataColumn girErro         = new DataColumn("girErro");

            dta.Columns.Add(codigo);
            dta.Columns.Add(descricao);
            dta.Columns.Add(tipoRecebimento);
            dta.Columns.Add(numeroDias);
            dta.Columns.Add(girErro);

            foreach (var registro in listaFormaRecebimento)
            {
                FormaRecebimentoDTO formaRecebimento = registro.To <FormaRecebimentoDTO>();
                DataRow             row = dta.NewRow();

                row[codigo]          = formaRecebimento.Id;
                row[descricao]       = formaRecebimento.Descricao;
                row[tipoRecebimento] = formaRecebimento.TipoRecebimentoDescricao;
                row[numeroDias]      = DBNull.Value;
                if (formaRecebimento.NumeroDias.HasValue)
                {
                    row[numeroDias] = formaRecebimento.NumeroDias.Value;
                }
                row[girErro] = "";
                dta.Rows.Add(row);
            }

            return(dta);
        }
コード例 #2
0
        public bool Salvar(FormaRecebimentoDTO dto)
        {
            if (!UsuarioLogado.IsInRole(Funcionalidade.FormaRecebimentoGravar))
            {
                messageQueue.Add(Resource.Sigim.ErrorMessages.PrivilegiosInsuficientes, TypeMessage.Error);
                return(false);
            }

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

            if (dto.NumeroDias.HasValue)
            {
                if (dto.NumeroDias.Value < 0)
                {
                    messageQueue.Add("O número de dias não pode ser menor que zero !", TypeMessage.Error);
                    return(false);
                }
            }

            bool novoItem = false;

            var formaRecebimento = formaRecebimentoRepository.ObterPeloId(dto.Id);

            if (formaRecebimento == null)
            {
                formaRecebimento = new FormaRecebimento();
                novoItem         = true;
            }
            if (formaRecebimento.Automatico == true)
            {
                return(false);
            }

            formaRecebimento.Descricao       = dto.Descricao;
            formaRecebimento.Automatico      = dto.Automatico;
            formaRecebimento.TipoRecebimento = dto.TipoRecebimento;
            formaRecebimento.NumeroDias      = dto.NumeroDias;
            if (!dto.NumeroDias.HasValue)
            {
                formaRecebimento.NumeroDias = 0;
            }

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

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