private void ExibirDados()
 {
     try
     {
         DataTable dt = new DataTable();
         dt = DaoProduto.GetProdutos();
         dgvDados.DataSource = dt;
     }
     catch (Exception ex)
     {
         MessageBox.Show("Erro:" + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
 private void FrmProdutos_Load(object sender, EventArgs e)
 {
     try
     {
         DaoProduto.CriarBancoSQLite();
         DaoProduto.CriarTabelaSQlite();
         ExibirDados();
     }
     catch (Exception ex)
     {
         MessageBox.Show("Erro:" + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
示例#3
0
        public HttpResponseMessage ListaProdutosParaUsuarios(int usuario_id, int QtdProdutos)
        {
            List <Erp.Configuracoes> confis = new Erp.Configuracoes().Lista();

            Erp.Configuracoes configura = confis.Find(x => x.chave == "QtdProdutosListar");
            if (configura != null)
            {
                int.TryParse(configura.valor, out QtdProdutos);
            }

            ResponseMessage <List <ProdutoModel> > response = new ResponseMessage <List <ProdutoModel> >()
            {
                Status  = (int)HttpStatusCode.OK,
                Message = "Informe os dados para listar Login"
            };

            try
            {
                UsuarioModel user = new UsuarioModel()
                {
                    Usuario_id = usuario_id
                };
                List <ProdutoModel> prod = new DaoProduto().ListaProdutosParaUsuarios(user, QtdProdutos);
                if (prod.Count > 0)
                {
                    response.Message = "Lista de Produtos preferidos";
                    response.Data    = prod;
                    return(Request.CreateResponse(HttpStatusCode.OK, response));
                }
                else
                {
                    response.Status  = (int)HttpStatusCode.NotFound;
                    response.Message = "Dados Inválidos";
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, response));
                }
            }
            catch (Exception ex)
            {
                if (!(ex is HttpResponseException))
                {
                    response.Message = "Houve um erro interno no servidor.\nMais detalhes: " + ex.Message;
                    response.Status  = (int)HttpStatusCode.InternalServerError;
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, response));
                }
                else
                {
                    throw ex;
                }
            }
        }
 void mnuOpcoes_Terminar_Click(object sender, System.EventArgs e)
 {
     try
     {
         this.newLogin(new FrmAcao());
     }
     catch (Exception ex)
     {
         MainConfig.errorMessage(ex.Message, "Logout");
     }
     finally
     {
         daoItemProposta = null;
         daoProduto      = null;
     }
 }
示例#5
0
        public void Alterar(ModeloProduto obj)
        {
            if (obj.ProNome.Trim().Length == 0)
            {
                throw new Exception("O nome do produto é obrigatório");
            }

            if (obj.ProDescricao.Trim().Length == 0)
            {
                throw new Exception("A descrição do produto é obrigatória");
            }

            if (obj.ProValorVenda <= 0)
            {
                throw new Exception("O valor de venda do produto é obrigatório");
            }

            if (obj.ProQtde < 0)
            {
                throw new Exception("A quantidade do produto deve ser maior ou igual a zero");
            }

            if (obj.ScatCod <= 0)
            {
                throw new Exception("O código da subcategoria é obrigatório");
            }

            if (obj.CatCod <= 0)
            {
                throw new Exception("O código da categoria é obrigatório");
            }

            if (obj.UmedCod <= 0)
            {
                throw new Exception("O código da unidade de medida é obrigatório");
            }

            if (obj.ProCod <= 0)
            {
                throw new Exception("O código do produto é obrigatório");
            }

            DaoProduto DALobj = new DaoProduto(conexao);

            DALobj.Alterar(obj);
        }
 private void btnExcluir_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show("Deseja excluir o produto selecionado?", "Atenção",
                         MessageBoxButtons.YesNo, MessageBoxIcon.Question,
                         MessageBoxDefaultButton.Button2) == DialogResult.Yes)
     {
         try
         {
             int codigo = Convert.ToInt32(dgvDados.Rows[dgvDados.SelectedRows[0].Index].Cells[0].Value.ToString());
             DaoProduto.Deletar(codigo);
             ExibirDados();
         }
         catch (Exception ex)
         {
             MessageBox.Show("Erro:" + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
 /// <summary>
 /// Menu evento ao clicar em Opções/Logout
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void mnuOpcoes_Logout_Click(object sender, EventArgs e)
 {
     try
     {
         if (this.newLogin(new frmLogin(), true) != DialogResult.Cancel)
         {
             MainConfig.UserOn.registrarAcesso(Usuario.statusLogin.NAOLOGADO);
         }
     }
     catch (Exception ex)
     {
         MainConfig.errorMessage(ex.Message, "Logout");
     }
     finally
     {
         daoItemProposta = null;
         daoProduto      = null;
     }
 }
        private void btnGravar_Click(object sender, EventArgs e)
        {
            if (operacao == operacao.incluir)
            {
                Produto pro = new Produto();
                pro.Nome      = txtNome.Text;
                pro.Descricao = txtDescricao.Text;

                DaoProduto.Inserir(pro);
                ExibirDados();
                DesabilitarCampos();
                //MessageBox.Show("Parabens, nao fez mais que sua orbrigacao", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else if (operacao == operacao.alterar)
            {
                Produto pro = new Produto();
                pro.Id        = Convert.ToInt32(dgvDados.Rows[dgvDados.SelectedRows[0].Index].Cells[0].Value.ToString());
                pro.Nome      = txtNome.Text;
                pro.Descricao = txtDescricao.Text;

                DaoProduto.Alterar(pro);
                ExibirDados();
                DesabilitarCampos();
            }
            else if (operacao == operacao.pesquisar)
            {
                try
                {
                    //int codigo = Convert.ToInt32(txtCod.Text);
                    DataTable dt = new DataTable();
                    dt = DaoProduto.GetProdutoByNome("%" + txtNome.Text + "%");
                    dgvDados.DataSource = dt;
                    DesabilitarCampos();
                    btnCancelar.Enabled = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erro:" + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
示例#9
0
        public HttpResponseMessage GetProduto(int usuario_id, int Produto_id)
        {
            ResponseMessage <ProdutoModel> response = new ResponseMessage <ProdutoModel>()
            {
                Status  = (int)HttpStatusCode.OK,
                Message = "Informe os dados para listar Login"
            };

            try
            {
                ProdutoModel prod = new DaoProduto().GetProduto(usuario_id, Produto_id);
                if (prod.Produto_id > 0)
                {
                    response.Message = "Sucesso ao retornar produto";
                    response.Data    = prod;
                    return(Request.CreateResponse(HttpStatusCode.OK, response));
                }
                else
                {
                    response.Status  = (int)HttpStatusCode.NotFound;
                    response.Message = "Dados Inválidos";
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, response));
                }
            }
            catch (Exception ex)
            {
                if (!(ex is HttpResponseException))
                {
                    response.Message = "Houve um erro interno no servidor.\nMais detalhes: " + ex.Message;
                    response.Status  = (int)HttpStatusCode.InternalServerError;
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, response));
                }
                else
                {
                    throw ex;
                }
            }
        }
示例#10
0
 public RelatorioService(GestaoVendasContext context, DaoProduto daoProduto)
 {
     _context    = context;
     _daoProduto = daoProduto;
 }
示例#11
0
 public ProdutosController(GestaoVendasContext context, DaoProduto daoProduto, DaoProdutoEstoque daoProdutoEstoque)
 {
     _context           = context;
     _daoProduto        = daoProduto;
     _daoProdutoEstoque = daoProdutoEstoque;
 }
示例#12
0
        public EtiquetaVenda(Array arrayEtiqueta, TipoCode tipoEtiqueta)
        {
            try
            {
                switch (tipoEtiqueta)
                {
                case TipoCode.QRCODE:

                    foreach (string item in arrayEtiqueta)
                    {
                        string strItem = item.Substring(0, item.IndexOf(":", 0));

                        if (strItem == "PNUMBER")
                        {
                            base.PartnumberEtiqueta = item.Substring(item.IndexOf(":", 0) + 1);
                        }
                        else if (strItem == "DESCRICAO")
                        {
                            DescricaoProdutoEtiqueta = item.Substring(item.IndexOf(":", 0) + 1);
                        }
                        else if (strItem == "EAN13")
                        {
                            Ean13Etiqueta = Convert.ToInt64(item.Substring(item.IndexOf(":", 0) + 1));
                        }
                        else if (strItem == "ITEMPED")
                        {
                            Diferencial = Convert.ToInt32(item.Substring(item.IndexOf(":", 0) + 1));
                        }
                        else if (strItem == "LOTE")
                        {
                            LoteEtiqueta = item.Substring(item.IndexOf(":", 0) + 1);
                        }
                        else if (strItem == "SEQ")
                        {
                            SequenciaEtiqueta = Convert.ToInt32(item.Substring(item.IndexOf(":", 0) + 1));
                        }
                        else if (strItem == "QTD")
                        {
                            QuantidadeEtiqueta = Convert.ToDouble(item.Substring(item.IndexOf(":", 0) + 1));
                        }
                    }

                    break;

                case TipoCode.BARRAS:

                    foreach (string item in arrayEtiqueta)
                    {
                        daoProduto = new DaoProduto();

                        this.TipoEtiqueta = TipoCode.BARRAS;
                        Ean13Etiqueta     = Convert.ToInt64(item);
                        EtiquetaVenda aux = (EtiquetaVenda)daoProduto.recuperarInformacoesPorEan13Etiqueta(this);

                        if (aux != null)
                        {
                            DescricaoProdutoEtiqueta = aux.DescricaoProdutoEtiqueta;
                            PartnumberEtiqueta       = aux.PartnumberEtiqueta;
                            Ean13Etiqueta            = aux.Ean13Etiqueta;
                            LoteEtiqueta             = aux.LoteEtiqueta;
                            SequenciaEtiqueta        = aux.SequenciaEtiqueta;
                            QuantidadeEtiqueta       = aux.QuantidadeEtiqueta;
                        }
                    }

                    break;

                default:
                    MainConfig.errorMessage("Tipo de Etiqueta indefinido!!", "Leitura Etiquetas");
                    break;
                }

                DataHoraValidacao = DateTime.Now;
                this.TipoEtiqueta = tipoEtiqueta;
            }
            catch (Exception ex)
            {
                throw new Exception("Problemas durante a validação da etiqueta!\n" + ex);
            }
        }
示例#13
0
        /// <summary>
        /// Reliza todos os processos nescessários para efetuar a carga de dados na base Mobile.
        /// </summary>
        public static void carregaBaseMobile(FrmProposta frm)
        {
            var objTransacoes   = new BaseMobile();
            var objProposta     = new Proposta();
            var daoItemProposta = new DaoProdutoProposta();
            var daoProposta     = new DaoProposta();
            var daoProduto      = new DaoProduto();
            var daoEmbalagem    = new DaoEmbalagem();

            //LIMPA INFORMAÇÕES RESULTANTE DE OUTROS PRODUTOS JÁ CONFERIDOS
            ProcedimentosLiberacao.limpar();

            try
            {
                //Limpa a Base.
                objTransacoes.clearBaseMobile();

                //Carrega um objeto Proposta e inicia todo o procedimento.
                //Caso não exista propostas a serem liberadas gera um exception
                //onde será feito os tratamentos para evitar o travamento do sistema.
                if ((objProposta = daoProposta.fillTop1PropostaServidor()) != null)
                {
                    daoProposta.InsertOrUpdatePickingMobile(objProposta, MainConfig.UserOn.Codigo, Proposta.StatusLiberacao.TRABALHANDO, DateTime.Now);

                    //recupera o codigoPickingMobile da proposta trabalhada.
                    objProposta.CodigoPikingMobile = daoProposta.selectMaxCodigoPickingMobile(objProposta.Codigo);

                    //Realiza o Insert na Base Mobile
                    daoProposta.insertProposta(objProposta, MainConfig.UserOn.Codigo);

                    //Recupera List com itens da proposta
                    //Insert na Base Mobile tabela tb0002_ItensProposta
                    daoItemProposta.carregarBaseMobileItens(daoItemProposta.fillListItensProposta((int)objProposta.Codigo).ToList <ProdutoProposta>());

                    //Insert na base Mobile tabela tb0003_Produtos
                    //Recupera informações sobre os produtos existentes na proposta
                    daoProduto.insertProdutoBaseMobile(daoProduto.fillListProduto((int)objProposta.Codigo).ToList <Produto>());

                    //Armazena informações de embalagens do produto na base mobile.
                    daoEmbalagem.insertEmbalagemBaseMobile(daoEmbalagem.cargaEmbalagensProduto((int)objProposta.Codigo));

                    //Carrega Informações das Embalagens de Separação.
                    //Carrega Quantidade das Embalagens utilizadas nos volumes da separação
                    ProcedimentosLiberacao.ListEmbalagensSeparacao = daoEmbalagem.carregarInformacoesEmbalagensUtilizadas((Int32)objProposta.CodigoPikingMobile, daoEmbalagem.carregarEmbalagensSeparacao());
                }
                else
                {
                    throw new NoNewPropostaException("Não existem novas propostas a serem liberadas!!");
                }
            }
            catch (SqlQueryExceptions ex)
            {
                frm.exitOnError(ex.Message, "Próxima Proposta", false);
            }
            catch (NoNewPropostaException ex)
            {
                frm.exitOnError(ex.Message, "Próxima Proposta", false);
            }
            catch (SqlCeException sqlEx)
            {
                ProcedimentosLiberacao.interromperLiberacao(objProposta);
                daoProposta.updatePropostaTbPickingMobile(objProposta, Proposta.StatusLiberacao.NAOFINALIZADO, true, false);
                StringBuilder strBuilder = new StringBuilder();
                strBuilder.Append("O procedimento não pode ser concluído.\n");
                strBuilder.AppendFormat("Erro : {0}", sqlEx.Errors);
                strBuilder.AppendFormat("Description : {0}", sqlEx.Message);
                frm.exitOnError(strBuilder.ToString(), "SqlException!!", false);
            }
            catch (Exception ex)
            {
                ProcedimentosLiberacao.interromperLiberacao(objProposta);
                daoProposta.updatePropostaTbPickingMobile(objProposta, Proposta.StatusLiberacao.NAOFINALIZADO, true, false);
                StringBuilder strBuilder = new StringBuilder();
                strBuilder.Append("O procedimento não pode ser concluído.\n");
                strBuilder.AppendFormat(" Descrição: {0}", ex.Message);
                strBuilder.Append("\nContate o Administrador do sistema.");
                frm.exitOnError(strBuilder.ToString(), "SqlException!!", false);
            }
            finally
            {
                objTransacoes   = null;
                objProposta     = null;
                daoProposta     = null;
                daoProduto      = null;
                daoItemProposta = null;
                daoEmbalagem    = null;
            }
        }
        /// <summary>
        /// Reliza todos os processos nescessários para efetuar a carga de dados na base Mobile.
        /// </summary>
        private void carregaBaseMobile()
        {
            objTransacoes   = new BaseMobile();
            objProposta     = new Proposta();
            daoItemProposta = new DaoProdutoProposta();
            daoProposta     = new DaoProposta();
            daoProduto      = new DaoProduto();
            daoEmbalagem    = new DaoEmbalagem();

            try
            {
                //Limpa a Base.
                objTransacoes.clearBaseMobile();

                //Carrega um objeto Proposta e inicia todo o procedimento.
                //Caso não exista propostas a serem liberadas gera um exception
                //onde será feito os tratamentos para evitar o travamento do sistema.
                if ((objProposta = daoProposta.fillTop1PropostaServidor()) != null)
                {
                    daoProposta.InsertOrUpdatePickingMobile(objProposta, MainConfig.CodigoUsuarioLogado, Proposta.StatusLiberacao.TRABALHANDO, DateTime.Now);

                    //recupera o codigoPickingMobile da proposta trabalhada.
                    objProposta.CodigoPikingMobile = daoProposta.selectMaxCodigoPickingMobile(objProposta.Codigo);

                    //Realiza o Insert na Base Mobile
                    daoProposta.insertProposta(objProposta, MainConfig.CodigoUsuarioLogado);

                    ////Recupera List com itens da proposta
                    //this.listaProdutoProposta = daoItemProposta.fillListItensProposta((int)objProposta.Codigo).ToList<ProdutoProposta>();
                    ////Insert na Base Mobile tabela tb0002_ItensProsposta
                    //daoItemProposta.insertItemProposta(listaProdutoProposta.ToList<ProdutoProposta>());

                    //Recupera List com itens da proposta
                    //Insert na Base Mobile tabela tb0002_ItensProposta
                    daoItemProposta.insertItemProposta(daoItemProposta.fillListItensProposta((int)objProposta.Codigo).ToList <ProdutoProposta>());

                    //Recupera informações sobre os produtos existentes na proposta
                    //this.listaProduto = daoProduto.fillListProduto((int)objProposta.Codigo).ToList<Produto>();
                    //daoProduto.insertProdutoBaseMobile(listaProduto.ToList<Produto>());

                    //Insert na base Mobile tabela tb0003_Produtos
                    //Recupera informações sobre os produtos existentes na proposta
                    daoProduto.insertProdutoBaseMobile(daoProduto.fillListProduto((int)objProposta.Codigo).ToList <Produto>());

                    //Armazena informações de embalagens do produto na base mobile.
                    daoEmbalagem.insertEmbalagemBaseMobile(daoEmbalagem.cargaEmbalagensProduto((int)objProposta.Codigo));

                    //Carrega Informações das Embalagens de Separação.
                    ProcedimentosLiberacao.ListEmbalagensSeparacao = daoEmbalagem.carregarEmbalagensSeparacao();
                }
                else
                {
                    throw new NoNewPropostaException("Não existem novas propostas a serem liberadas!!");
                }
            }
            catch (SqlQueryExceptions ex)
            {
                this.exitOnError(ex.Message, "Próxima Proposta");
            }
            catch (NoNewPropostaException ex)
            {
                this.exitOnError(ex.Message, "Próxima Proposta");
            }
            catch (SqlCeException sqlEx)
            {
                StringBuilder strBuilder = new StringBuilder();
                strBuilder.Append("Ocorreram problemas durante a carga de dados na tabela tb0002_ItensProposta. \n");
                strBuilder.Append("O procedimento não pode ser concluído");
                strBuilder.AppendFormat("Erro : {0}", sqlEx.Errors);
                strBuilder.AppendFormat("Description : {0}", sqlEx.Message);
                MainConfig.errorMessage(strBuilder.ToString(), "SqlException!!");
            }
            catch (Exception ex)
            {
                StringBuilder sbMsg = new StringBuilder();
                sbMsg.Append("Ocorreram problemas durante a carga de dados para a Base Mobile \n");
                sbMsg.AppendFormat("Error : {0}", ex.Message);
                sbMsg.Append("\nContate o Administrador do sistema.");
                MainConfig.errorMessage(sbMsg.ToString(), "Sistem Error!");
            }
            finally
            {
                objTransacoes   = null;
                objProposta     = null;
                daoProposta     = null;
                daoProduto      = null;
                daoItemProposta = null;
                daoEmbalagem    = null;
            }
        }
示例#15
0
        public DataTable Localizar(String valor)
        {
            DaoProduto DALobj = new DaoProduto(conexao);

            return(DALobj.Localizar(valor));
        }
示例#16
0
        public void Excluir(int codigo)
        {
            DaoProduto DALobj = new DaoProduto(conexao);

            DALobj.Excluir(codigo);
        }
示例#17
0
        public int VerificaSeJaExiste(string valor)
        {
            DaoProduto dal = new DaoProduto(conexao);

            return(dal.VerificaSeJaExiste(valor));
        }
示例#18
0
        public ModeloProduto CarregaModeloProduto(int codigo)
        {
            DaoProduto DALobj = new DaoProduto(conexao);

            return(DALobj.CarregaModeloProduto(codigo));
        }