Example #1
0
        /// <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(".", ",");
     }
 }
Example #3
0
 public IActionResult Cadastrar(ConfiguracaoLoja configuracaoLoja)
 {
     if (ModelState.IsValid)
     {
         _configuracaoLojaRepository.Cadastrar(configuracaoLoja);
         _produtoRepository.AtualizarPrecoVenda(configuracaoLoja);
         return(RedirectToAction("Index", "Home"));
     }
     return(View(configuracaoLoja));
 }
Example #4
0
 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));
 }
Example #5
0
 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);
            }
        }
Example #7
0
        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();
        }
Example #8
0
        /// <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);
            }
        }
Example #9
0
        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();
        }
Example #10
0
        /// <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);
        }