Beispiel #1
0
        public IActionResult FormUpdateProduto(ProdutoViewModel entrada)
        {
            Produto modelo = new Produto();

            entrada.contexto = this.contexto;


            try
            {
                if (ProdutoRules.MontaProdutoUpdate(entrada, out modelo))
                {
                    produtoData.Update(modelo);
                    StatusMessage = "Registro Atualizado com Sucesso!";

                    return(RedirectToAction("FormUpdateProduto", new { id = modelo.id.ToString(), idOrg = contexto.idOrganizacao }));
                }
            }
            catch (Exception ex)
            {
                LogOsca log = new LogOsca();
                log.GravaLog(1, 7, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormUpdateProduto-post", ex.Message);
            }

            return(RedirectToAction("FormUpdateProduto", new { id = modelo.id.ToString() }));
        }
Beispiel #2
0
        public ViewResult FormUpdateProduto(string id)
        {
            ProdutoViewModel modelo = new ProdutoViewModel();

            modelo.produto    = new Produto();
            modelo.produto.id = new Guid(id);

            Produto retorno = new Produto();

            if (!String.IsNullOrEmpty(id))
            {
                retorno = produtoData.Get(modelo.produto.id);
                modelo.itensListaPreco   = new List <ItemProdutoLista>();
                modelo.itensListaPreco   = ProdutoRules.RetornaItemListaProduto(itemListaPrecoData.GetAllByProduto(modelo.produto.id));
                modelo.produtoFornecedor = produtoFornecedorData.GetAllByProduto(retorno.id);
                retorno.urlProduto       = "http://" + retorno.urlProduto;

                //apresenta mensagem de registro atualizado com sucesso
                modelo.StatusMessage = StatusMessage;


                if (retorno != null)
                {
                    modelo.produto = retorno;
                }
            }

            return(View(modelo));
        }
        public IActionResult FormStatusBalcaoVendas(BalcaoVendasViewModel entrada)
        {
            try
            {
                if (entrada != null)
                {
                    entrada.balcaoVendas.modificadoEm      = DateTime.Now;
                    entrada.balcaoVendas.modificadoPor     = contexto.idUsuario;
                    entrada.balcaoVendas.modificadoPorName = contexto.nomeUsuario;

                    balcaoVendasData.UpdateStatus(entrada.balcaoVendas);

                    SqlGenericRules sqlGenericRules = new SqlGenericRules();

                    if (entrada.balcaoVendas.statusBalcaoVendas == CustomEnumStatus.StatusBalcaoVendas.Cancelado)
                    {
                        sqlGenericRules.CancelaFaturamentoBalcao(entrada.balcaoVendas.id.ToString());
                    }

                    List <ProdutoBalcao> produtosBalcao = sqlGeneric.RetornaProdutoBalcaoByBalcao(entrada.balcaoVendas.id);

                    ProdutoRules.RollbackProdutoBalcao(produtosBalcao.ToArray(), contexto, produtoData);

                    return(RedirectToAction("BalcaoVendasView", new { id = entrada.balcaoVendas.id.ToString() }));
                }
            }
            catch (Exception ex)
            {
                LogOsca log = new LogOsca();
                log.GravaLog(1, 4, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormStatusPedido-post", ex.Message);
            }
            return(View());
        }
        public JsonResult SetStatus(string idRegistro, int valor)
        {
            ResultService retorno = new ResultService();

            try
            {
                if (ProdutoRules.SetStatus(valor, idRegistro, produtoData, this.contexto))
                {
                    retorno.statusOperation = true;
                }
                return(Json(retorno));
            }
            catch (Exception ex)
            {
                retorno.statusMensagem = ex.Message;
            }

            return(Json(retorno));
        }
Beispiel #5
0
        public IActionResult FormCreateProduto(ProdutoViewModel entrada)
        {
            Produto        prod       = new Produto();
            Relacao        lista      = new Relacao();
            ItemListaPreco itemLista  = new ItemListaPreco();
            SqlGenericData sqlService = new SqlGenericData();



            try
            {
                if (entrada.produto != null)
                {
                    if (ProdutoRules.MontaProdutoCreate(entrada, out prod, contexto))
                    {
                        produtoData.Add(prod);

                        //Create de item da lista se houver lista padrão
                        lista = sqlService.RetornaRelacaoListaPrecoPadrao(contexto.idOrganizacao);

                        if (lista.idName != null)
                        {
                            itemLista.idProduto    = prod.id;
                            itemLista.idListaPreco = lista.id;
                            itemLista.valor        = (prod.valorCompra / 100) * prod.margemLucroBase + prod.valorCompra;
                            itemLista.valorMinimo  = itemLista.valor;
                            ItemListaPrecoRules.ItemListaPrecoCreateRelacionado(itemLista, contexto);
                            itemListaPrecoData.Add(itemLista);
                        }
                        return(RedirectToAction("FormUpdateProduto", new { id = prod.id.ToString() }));
                    }
                }
            }
            catch (Exception ex)
            {
                LogOsca log = new LogOsca();
                log.GravaLog(1, 7, this.contexto.idUsuario, this.contexto.idOrganizacao, "FormCreateProduto-post", ex.Message);
            }
            return(View());
        }
Beispiel #6
0
        public async Task <IActionResult> AddImage(IFormFile file)
        {
            string path     = "";
            string URLPAT   = "";
            string NomeFile = Path.GetFileName(file.FileName);

            //Regra 1
            if (file == null || file.Length == 0)
            {
                return(Content("file not selected"));
            }

            //Regra 2 - Remove espaço
            if (NomeFile.Contains(' '))
            {
                return(Content("Não pode haver espaço em branco no nome do arquivo"));
            }

            //Regra 3 - Limite de tamanho
            if (file.Length >= 2001000)
            {
                return(Content("Não pode ter mais de 2 MB"));
            }

            //Regra 4 - Apenas PNG e JPG
            string[] contentTypes = new string[] { "image/jpg", "image/png", "image/jpeg" };
            if (!contentTypes.Contains(file.ContentType))
            {
                return(Content("Suporte apenas para arquivos PNG,JPG e JPEG"));
            }


            if (this.oscaConfig.ambiente == "prod")
            {
                path   = "h:\\root\\home\\ronaldowl-001\\www\\bancoimagem\\prod\\OrgFiles\\" + this.contexto.organizacao + "\\produto\\imagens\\";
                URLPAT = "imagens.oscas.com.br/prod/orgfiles/" + this.contexto.organizacao + "/produto/imagens/" + NomeFile;
            }
            else
            {
                path   = "h:\\root\\home\\ronaldowl-001\\www\\bancoimagem\\desenv\\OrgFiles\\" + this.contexto.organizacao + "\\produto\\imagens\\";
                URLPAT = "imagens.oscas.com.br/desenv/orgfiles/" + this.contexto.organizacao + "/produto/imagens/" + NomeFile;
            }

            path = path + NomeFile;

            using (var stream = new FileStream(path, FileMode.Create))
            {
                await file.CopyToAsync(stream);
            }

            Produto          modelo  = new Produto();
            ProdutoViewModel entrada = new ProdutoViewModel();

            entrada.contexto           = this.contexto;
            entrada.produto.id         = new Guid(idProdutoTemp);
            entrada.produto.urlProduto = URLPAT;

            if (ProdutoRules.MontaProdutoUpdate(entrada, out modelo))
            {
                produtoData.UpdateImage(modelo);
            }

            return(RedirectToAction("FormUpdateProduto", new { id = entrada.produto.id }));
        }
Beispiel #7
0
        public JsonResult GravarVenda(BalcaoVendas modelo, ProdutoBalcao[] produtosBalcao, Cliente cliente)
        {
            ResultServiceList     retorno = new ResultServiceList();
            BalcaoVendasViewModel entrada = new BalcaoVendasViewModel();

            entrada.balcaoVendas = modelo;
            entrada.contexto     = this.contexto;
            Guid idBalcaoVendas = new Guid();


            try
            {
                if (cliente.id != Guid.Empty)
                {
                    entrada.cliente    = new Relacao();
                    entrada.cliente.id = cliente.id;
                }
                else
                {
                    if (cliente.nomeCliente != null)
                    {
                        entrada.cliente    = new Relacao();
                        entrada.cliente.id = ClienteRules.CreateClienteResumo(cliente, this.contexto, clienteData);
                    }
                }

                idBalcaoVendas = BalcaoVendasRules.BalcaoVendasCreate(entrada, this.contexto, balcaoVendasData);

                if (BalcaoVendasRules.GravaProdutoBalcao(produtosBalcao, this.contexto, this.sqlGeneric, idBalcaoVendas))
                {
                    //Grava lançamento na tabela de faturamento
                    entrada.balcaoVendas.id = idBalcaoVendas;

                    //Grava Parcelas
                    if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Prazo)
                    {
                        ContasReceberRules.GravaParcela(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig);
                    }

                    if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Avista)
                    {
                        //Grava Debito
                        if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.CartaoDebito)
                        {
                            ContasReceberRules.GravaDebito(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig);
                        }

                        if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Dinheiro || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Online)
                        {
                            FaturamentoRules.InsereFaturamento(entrada.balcaoVendas, this.contexto.idOrganizacao);
                        }

                        if (entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Tranferencia || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Deposito || entrada.balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Cheque)
                        {
                            FaturamentoRules.InsereFaturamento(entrada.balcaoVendas, this.contexto.idOrganizacao);
                        }
                    }

                    if (entrada.balcaoVendas.condicaoPagamento == CustomEnum.codicaoPagamento.Consignado)
                    {
                        ContasReceberRules.GravaConsignado(entrada.balcaoVendas, this.contaReceberData, this.contexto, this.orgConfig);
                    }

                    //Baixa Estoque
                    ProdutoRules.BaixaProdutoBalcao(produtosBalcao, contexto, produtoData);

                    retorno.id = idBalcaoVendas.ToString();
                    retorno.statusOperation = true;

                    return(Json(retorno));
                }
            }
            catch (Exception ex)
            {
                retorno.statusMensagem = ex.Message;
            }

            return(Json(retorno));
        }