private void MontarListagem() { List<Entity.Produto> produtos = new Admin.Produto().ListarProduto(objLoja.IDLoja); rptListagem.DataSource = produtos; rptListagem.DataBind(); }
/// <summary> /// Recupera os dados de cada campo de idioma adicional /// </summary> /// <param name="Campo"></param> private string PreencherIdioma(string Campo, int Id) { if (Request["id"] != null) { Entity.Produto produto = new Admin.Produto().ConsultarProduto(Request["id"]); switch (Campo) { case "Nome": Entity.Dicionario nome = produto.Dicionarios.Find(delegate(Entity.Dicionario p1) { return (p1.Idioma_ID == Id && p1.Descricao == "Nome"); }); return nome.Valor; } } return ""; }
/// <summary> /// Ação do botão "salvar" /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSalvar_ServerClick(object sender, EventArgs e) { // recupera dados digitado no formulário string Nome = txtNome.Text.Trim().Replace("'", "''"); string Marca = ddlMarca.SelectedValue; string Fornecedor = ddlFornecedor.SelectedValue; bool Destaque = chkDestaque.Checked; bool Lancamento = chkLancamento.Checked; bool Status = chkStatus.Checked; string Manual = uplManual.FileName; string Video = txtVideo.Text.Trim().Replace("'", "''"); bool Validar = true; // limpa mensagens de erro LimparLabel(); // verifica consistência do formulário if (Nome == String.Empty || !ValidaCampo("Nome")) { Validar = false; new Constante().input_error(pnlNome, lblNome, "campo obrigatório"); } if (ddlMarca.SelectedIndex == 0) { Validar = false; new Constante().input_error(pnlMarca, lblMarca, "selecione a marca"); } // formulário validado if (Validar) { // instância objeto Entity.Produto produto = new Entity.Produto(); produto.Loja_ID = objUsuario.Loja_ID; produto.Marca_ID = Convert.ToInt32(Marca); produto.Fornecedor_ID = Convert.ToInt32(Fornecedor); produto.Destaque = Destaque; produto.Lancamento = Lancamento; produto.Status = Status; produto.Manual = (Manual != String.Empty) ? "manual_" + rnd.Next(0, 999999).ToString("d6") + Manual.Remove(0, Manual.LastIndexOf(".")) : ""; produto.Video = Video; // altera registro if (Request["id"] != null) { produto.IDProduto = Convert.ToInt32(Request["id"]); Entity.Retorno ret = new Admin.Produto().AlterarProduto(produto); if (!ret.Status) { // exibe mensagem de erro icon = Icon.remove; new Constante().label_message(pnlMsg, Alert.error, labMsg, ret.Erro); return; } // altera dicionário de palavras new Admin.Dicionario().AlterarDicionario(new Entity.Dicionario(objLoja.Idiomas[0].IDIdioma, "Produto", produto.IDProduto, "Nome", Nome)); for (int i = 1; i < objLoja.Idiomas.Count; i++) { // nome new Admin.Dicionario().AlterarDicionario(new Entity.Dicionario(objLoja.Idiomas[i].IDIdioma, "Produto", produto.IDProduto, "Nome", Request.Form["txtNome" + objLoja.Idiomas[i].IDIdioma])); } // mensagem de sucesso icon = Icon.ok; new Constante().label_message(pnlMsg, Alert.success, labMsg, "Dados alterado com sucesso."); PreencherCampos(); } // adiciona novo registro else { Entity.Retorno ret = new Admin.Produto().InserirProduto(produto); if (!ret.Status) { // exibe mensagem de erro icon = Icon.remove; new Constante().label_message(pnlMsg, Alert.error, labMsg, ret.Erro); return; } // adiciona dicionário de palavras new Admin.Dicionario().InserirDicionario(new Entity.Dicionario(objLoja.Idiomas[0].IDIdioma, "Produto", ret.Identity, "Nome", Nome)); for (int i = 1; i < objLoja.Idiomas.Count; i++) { // nome new Admin.Dicionario().InserirDicionario(new Entity.Dicionario(objLoja.Idiomas[i].IDIdioma, "Produto", ret.Identity, "Nome", Request.Form["txtNome" + objLoja.Idiomas[i].IDIdioma])); } ArrayList arr = (ArrayList)Session[Constante.ADMProduto]; for (int i = 0; i < objLoja.Idiomas.Count; i++) { // detalhes do produto new Admin.Dicionario().InserirDicionario(new Entity.Dicionario(objLoja.Idiomas[i].IDIdioma, "Produto", ret.Identity, "Detalhe", arr[i].ToString())); } // mensagem de sucesso icon = Icon.ok; new Constante().label_message(pnlMsg, Alert.success, labMsg, "Cadastro realizado com sucesso."); LimparCampos(); } } }
/// <summary> /// Requisita dados do Produto ao banco de dados e preenche o formulário /// </summary> private void PreencherCampos() { Entity.Produto produto = new Admin.Produto().ConsultarProduto(Request["id"]); // dicionario List<Entity.Dicionario> nomes = produto.Dicionarios.FindAll(delegate(Entity.Dicionario p1) { return (p1.Descricao == "Nome"); }); // migalha migalha = nomes[0].Valor; // geral txtNome.Text = nomes[0].Valor; ddlMarca.Items.FindByValue(produto.Marca_ID.ToString()).Selected = true; chkStatus.Checked = produto.Status; // painéis vitrine, características, específicações do produto e comentários pnl.Visible = true; }