/// <summary> /// Recupera o valor da configuração. /// </summary> /// <param name="configuracao"></param> /// <param name="configuracaoLoja"></param> /// <returns></returns> private static object ObterValor(Data.Model.Configuracao configuracao, ConfiguracaoLoja configuracaoLoja) { switch ((Helper.Config.TipoConfigEnum)configuracao.Tipo) { case Helper.Config.TipoConfigEnum.Decimal: return(configuracaoLoja.ValorDecimal); case Helper.Config.TipoConfigEnum.Inteiro: case Helper.Config.TipoConfigEnum.ListaMetodo: return(configuracaoLoja.ValorInteiro); case Helper.Config.TipoConfigEnum.Logico: return(configuracaoLoja.ValorBooleano); case Helper.Config.TipoConfigEnum.Texto: case Helper.Config.TipoConfigEnum.TextoCurto: case Helper.Config.TipoConfigEnum.GrupoEnumMetodo: return(configuracaoLoja.ValorTexto); case Helper.Config.TipoConfigEnum.Data: return(Conversoes.ConverteData(configuracaoLoja.ValorTexto)); case Helper.Config.TipoConfigEnum.Enum: return(configuracaoLoja.ValorInteiro); default: return(null); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ConfiguracaoLoja configLoja = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.AliquotaICMSSimplesNacional, (UserInfo.GetUserInfo?.IdLoja).GetValueOrDefault()); txtAliquotaIcmsSn.Text = configLoja.ValorDecimal.ToString().Replace(".", ","); } }
public IActionResult Cadastrar(ConfiguracaoLoja configuracaoLoja) { if (ModelState.IsValid) { _configuracaoLojaRepository.Cadastrar(configuracaoLoja); _produtoRepository.AtualizarPrecoVenda(configuracaoLoja); return(RedirectToAction("Index", "Home")); } return(View(configuracaoLoja)); }
public IActionResult Cadastrar(Produto produto) { if (ModelState.IsValid) { _produtoRepository.Cadastrar(produto); ConfiguracaoLoja configuracaoLoja = _configuracaoLojaRepository.ObterConfiguracao(); _produtoRepository.AtualizarPrecoVenda(configuracaoLoja); return(RedirectToAction(nameof(Index))); } return(View(produto)); }
public void Cadastrar(ConfiguracaoLoja configuracaoLoja) { if (configuracaoLoja.Id == 0) { _banco.Add(configuracaoLoja); } else { _banco.Update(configuracaoLoja); } _banco.SaveChanges(); }
protected void btnSalvar_Click(object sender, EventArgs e) { try { ConfiguracaoLoja configLoja = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.AliquotaICMSSimplesNacional, (UserInfo.GetUserInfo?.IdLoja).GetValueOrDefault()); configLoja.ValorDecimal = Glass.Conversoes.StrParaDecimalNullable(txtAliquotaIcmsSn.Text); ConfiguracaoLojaDAO.Instance.Update(configLoja); ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "alert('Alíquota salva com sucesso.'); closeWindow();", true); } catch (Exception ex) { throw new Exception("Falha ao salvar Alíquota de ICMS (Simples Nacional). " + ex.Message); } }
protected void ddlLoja_DataBound(object sender, EventArgs e) { uint idLoja = Glass.Conversoes.StrParaUint(ddlLoja.SelectedValue); if (idLoja.ToString() != hdfIdLoja.Value || String.IsNullOrEmpty(hdfIdLoja.Value)) { cblRegistros.Items.Clear(); // Monta a CheckBoxList com os registros a serem gerados do Sintegra cblRegistros.Items.Add(new ListItem("Registro 50 (Notas Fiscais quanto ao ICMS)", "50")); cblRegistros.Items.Add(new ListItem("Registro 51 (Notas Fiscais quanto ao IPI)", "51")); cblRegistros.Items.Add(new ListItem("Registro 53 (Substituição tributária)", "53")); cblRegistros.Items.Add(new ListItem("Registro 54 (Itens das Notas Fiscais)", "54")); cblRegistros.Items.Add(new ListItem("Registro 61 (NFC-e)", "61")); cblRegistros.Items.Add(new ListItem("Registro 70 (Nota fiscal de serviço de transporte)", "70")); cblRegistros.Items.Add(new ListItem("Registro 74 (Registro de Inventário)", "74")); cblRegistros.Items.Add(new ListItem("Registro 75 (Código dos produtos)", "75")); ConfiguracaoLoja sintegra50 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro50, idLoja); ConfiguracaoLoja sintegra51 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro51, idLoja); ConfiguracaoLoja sintegra53 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro53, idLoja); ConfiguracaoLoja sintegra54 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro54, idLoja); ConfiguracaoLoja sintegra61 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro61, idLoja); ConfiguracaoLoja sintegra70 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro70, idLoja); ConfiguracaoLoja sintegra74 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro74, idLoja); ConfiguracaoLoja sintegra75 = ConfiguracaoLojaDAO.Instance.GetItem(Config.ConfigEnum.SIntegraRegistro75, idLoja); // Monta a CheckBoxList com os registros a serem gerados do Sintegra cblRegistros.Items.FindByValue("50").Selected = sintegra50 != null ? sintegra50.ValorBooleano : true; cblRegistros.Items.FindByValue("51").Selected = sintegra51 != null ? sintegra51.ValorBooleano : true; cblRegistros.Items.FindByValue("53").Selected = sintegra53 != null ? sintegra53.ValorBooleano : true; cblRegistros.Items.FindByValue("54").Selected = sintegra54 != null ? sintegra54.ValorBooleano : true; cblRegistros.Items.FindByValue("61").Selected = sintegra61 != null ? sintegra61.ValorBooleano : true; cblRegistros.Items.FindByValue("70").Selected = sintegra70 != null ? sintegra70.ValorBooleano : true; cblRegistros.Items.FindByValue("74").Selected = sintegra74 != null ? sintegra74.ValorBooleano : true; cblRegistros.Items.FindByValue("75").Selected = sintegra75 != null ? sintegra75.ValorBooleano : true; } hdfIdLoja.Value = idLoja.ToString(); }
/// <summary> /// Retorna o valor de um item do banco de dados. /// </summary> /// <param name="tipo"></param> /// <returns></returns> public object GetValue(Config.ConfigEnum item, uint idLoja) { Configuracao config = ConfiguracaoDAO.Instance.GetItem(item); ConfiguracaoLoja configLoja = ConfiguracaoLojaDAO.Instance.GetItem(item, idLoja); if (config == null || configLoja == null) { return(null); } switch ((Config.TipoConfigEnum)config.Tipo) { case Config.TipoConfigEnum.Decimal: return(configLoja.ValorDecimal); case Config.TipoConfigEnum.Inteiro: case Config.TipoConfigEnum.ListaMetodo: return(configLoja.ValorInteiro); case Config.TipoConfigEnum.Logico: return(configLoja.ValorBooleano); case Config.TipoConfigEnum.Texto: case Config.TipoConfigEnum.TextoCurto: case Config.TipoConfigEnum.GrupoEnumMetodo: return(configLoja.ValorTexto); case Config.TipoConfigEnum.Data: return(Conversoes.ConverteData(configLoja.ValorTexto)); case Config.TipoConfigEnum.Enum: var tipo = Type.GetType(config.NomeTipoEnum, false); return(tipo == null ? configLoja.ValorInteiro : (configLoja.ValorInteiro != null ? Enum.Parse(tipo, configLoja.ValorInteiro.ToString()) : null)); default: return(null); } }
public void AtualizarPrecoVenda(ConfiguracaoLoja configuracaoLoja) { var produtos = _banco.Produtos.Where(p => p.Custo > 0); var totalProdutos = produtos.Count(); if (totalProdutos == 0) { return; } var despesaTotalRateada = configuracaoLoja.CustoDespesa / totalProdutos; foreach (var produto in produtos) { produto.PrecoVenda = produto.Custo + despesaTotalRateada; if (configuracaoLoja.PercentualLucro > 0) { produto.PrecoVenda *= (1 + configuracaoLoja.PercentualLucro / 100); } } _banco.SaveChanges(); }
/// <summary> /// Altera o valor de uma propriedade no banco de dados. /// </summary> /// <param name="item"></param> /// <param name="value"></param> /// <returns>True se o valor tiver sido alterado</returns> public bool SetValue(Config.ConfigEnum item, uint idLoja, object value) { /* Chamado 51923. */ if (!ControleSistema.AmbienteTeste && !UserInfo.GetUserInfo.PodeAlterarConfiguracao) { throw new Exception("O acesso à esse sistema não foi gerado pelo SAC ou o seu tipo de usuário não possui permissão para alterar configurações " + "do WebGlass, somente visualizá-las. Verifique seu usuário no SAC e logue novamente no WebGlass através do SAC, para que o token seja gerado e " + "a alteração das configurações seja desbloqueada."); } Configuracao config = ConfiguracaoDAO.Instance.GetItem(item); if (config == null) { return(false); } bool valorAlterado = false; ConfiguracaoLoja configLoja = ConfiguracaoLojaDAO.Instance.GetItem(item, idLoja); if (configLoja == null) { configLoja = new ConfiguracaoLoja(); configLoja.IdConfig = config.IdConfig; } if (config.UsarLoja && configLoja.IdLoja == null) { configLoja.IdLoja = idLoja; } switch ((Config.TipoConfigEnum)config.Tipo) { case Config.TipoConfigEnum.Decimal: var valorDecimal = Glass.Conversoes.StrParaDecimal(value != null ? value.ToString() : "0"); valorDecimal = config.PermitirNegativo ? valorDecimal : Math.Abs(valorDecimal); // Antes estava apenas fazendo um cast para "decimal?" não pode ser desta forma porque dá erro valorAlterado = (configLoja.ValorDecimal == null ? 0 : configLoja.ValorDecimal.Value) != valorDecimal; configLoja.ValorDecimal = value != null ? (decimal?)valorDecimal : null; break; case Config.TipoConfigEnum.Inteiro: case Config.TipoConfigEnum.Enum: case Config.TipoConfigEnum.ListaMetodo: var valorInteiro = (int?)value; valorInteiro = config.PermitirNegativo || valorInteiro == null ? valorInteiro : Math.Abs(valorInteiro.Value); valorAlterado = configLoja.ValorInteiro != (int?)value; configLoja.ValorInteiro = value != null ? valorInteiro : null; break; case Config.TipoConfigEnum.Logico: valorAlterado = configLoja.ValorBooleano != (bool)value; configLoja.ValorBooleano = (bool)value; break; case Config.TipoConfigEnum.Texto: case Config.TipoConfigEnum.TextoCurto: case Config.TipoConfigEnum.GrupoEnumMetodo: case Config.TipoConfigEnum.Data: valorAlterado = configLoja.ValorTexto != value.ToString(); configLoja.ValorTexto = value.ToString(); break; } if (!valorAlterado) { return(false); } if (ConfiguracaoLojaDAO.Instance.ExisteConfig(configLoja)) { ConfiguracaoLojaDAO.Instance.Update(configLoja); } else { ConfiguracaoLojaDAO.Instance.Insert(configLoja); } Config.RemoveConfigItem(item); ValorAlteradoConfig(item); return(true); }