Beispiel #1
0
        /// <summary>
        /// Reinicia todos os controles de atributo adicional para o seu estado inicial
        /// </summary>
        private void ReiniciaControles()
        {
            List <AtributoAdicional> atributos = (List <AtributoAdicional>)GerenciamentoAtributoAdicional.ObtemAtributosAdicionais();

            GerenciamentoAtributoAdicional.AtualizaJsonValoresAtributosAdicionais();

            this.TxtNome.Text              = string.Empty;
            this.TxtValores.Text           = string.Empty;
            this.BtnSalvar.CommandArgument = string.Empty;

            this.RptAtributoAdicional.DataSource = atributos.OrderBy(u => u.Nome);
            this.RptAtributoAdicional.DataBind();
        }
Beispiel #2
0
        /// <summary>
        /// Define os controles de edição com os valores do atributo adicional
        /// </summary>
        /// <param name="idAtributoAdicional">Identificador do atributo adicional</param>
        private void EditaAtributoAdicional(int idAtributoAdicional)
        {
            AtributoAdicional atributo = GerenciamentoAtributoAdicional.ObtemAtributoAdicional(idAtributoAdicional);
            string            valores  = string.Empty;

            foreach (Parametro valor in atributo.Valores)
            {
                valores += string.IsNullOrEmpty(valores) ? valor.Valor : ConstantesGlobais.SEPARADOR_TAG + valor.Valor;
            }

            this.TxtNome.Text              = atributo.Nome;
            this.TxtValores.Text           = valores;
            this.BtnSalvar.CommandArgument = idAtributoAdicional.ToString();
        }
Beispiel #3
0
        /// <summary>
        /// Altera o atributo adiconal e os seus valores, quando necessário
        /// </summary>
        /// <param name="idAtributoAdicional">Identificador do atributo adicional</param>
        private void AtualizaAtributoAdicional(int?idAtributoAdicional)
        {
            AtributoAdicional atributoAdicional = idAtributoAdicional.HasValue ?
                                                  GerenciamentoAtributoAdicional.ObtemAtributoAdicional(idAtributoAdicional.Value) : new AtributoAdicional();
            List <string> valoresCarregados = atributoAdicional.Valores != null?atributoAdicional.Valores.Select(v => v.Valor).ToList() : new List <string>();

            List <string> valoresDigitados = !string.IsNullOrEmpty(this.TxtValores.Text) ? this.TxtValores.Text.Split(ConstantesGlobais.SEPARADOR_TAG).ToList() : new List <string>();
            List <int>    valoresExcluidos = atributoAdicional.Valores != null?atributoAdicional.Valores.Select(v => v.Id.Value).ToList() : new List <int>();

            List <string> valoresAdicionados = new List <string>();
            int           idValor;

            foreach (string valor in valoresDigitados)
            {
                if (valoresCarregados.Contains(valor))
                {
                    idValor = atributoAdicional.Valores.First(v => v.Valor == valor).Id.Value;
                    valoresExcluidos.Remove(idValor);
                }
                else
                {
                    valoresAdicionados.Add(valor);
                }
            }

            atributoAdicional.Nome = this.TxtNome.Text;

            this.DivMensagem.Visible             = true;
            this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_ERRO;

            if (string.IsNullOrEmpty(atributoAdicional.Nome))
            {
                this.LblMensagem.Text = MENSAGEM_ERRO_NOME_VAZIO;
                return;
            }

            if (!GerenciamentoAtributoAdicional.AtualizaAtributoAdicional(atributoAdicional, valoresAdicionados, valoresExcluidos))
            {
                this.LblMensagem.Text = MENSAGEM_ERRO_ALTERACAO;
                return;
            }

            this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_SUCESSO;
            this.LblMensagem.Text = idAtributoAdicional.HasValue ? MENSAGEM_SUCESSO_ALTERACAO : MENSAGEM_SUCESSO_INCLUSAO;

            this.ReiniciaControles();
        }
Beispiel #4
0
        /// <summary>
        /// Exclui o atributo adiconal e todos os seus valores
        /// </summary>
        /// <param name="idAtributoAdicional">Identificador do atributo adicional</param>
        private void ExcluiAtributoAdicional(int idAtributoAdicional)
        {
            AtributoAdicional atributoAdicional = GerenciamentoAtributoAdicional.ObtemAtributoAdicional(idAtributoAdicional);
            List <int>        valoresAExcluir   = atributoAdicional.Valores != null?atributoAdicional.Valores.Select(v => v.Id.Value).ToList() : new List <int>();

            this.DivMensagem.Visible             = true;
            this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_ERRO;

            if (!GerenciamentoAtributoAdicional.ExcluiAtributoAdicional(idAtributoAdicional, valoresAExcluir))
            {
                this.LblMensagem.Text = MENSAGEM_ERRO_EXCLUSAO;
                return;
            }

            this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_SUCESSO;
            this.LblMensagem.Text = MENSAGEM_SUCESSO_EXCLUSAO;

            this.ReiniciaControles();
        }