示例#1
0
        private void frmEstoque_Load(object sender, EventArgs e)
        {
            //Módulo - Estoque
            //ucSessaoSistema1.DefinaModulo("Estoque", Properties.Resources.WhiteBox);
            this.EscondaHeadersTabControl(tabControl1);

            //Catálogo de Produtos
            using (var servicoDeProduto = new ServicoDeProduto())
            {
                _listaDeProdutos = servicoDeProduto.ConsulteTodosOsProdutos();
            }

            CarregueDataGridProdutos(_listaDeProdutos);
            cbFiltro.SelectedText = "Nome";

            //Histórico de Produtos
            using (var servicoDeInteracao = new ServicoDeInteracao())
            {
                _listaDeInteracoes = servicoDeInteracao.ConsulteTodasAsInteracoes();
            }

            CarregueDataGridInteracoes(_listaDeInteracoes);
            cbPesquisaHistorico.Text = "Observação";

            //Selecionar pesquisa por produto
            cbPesquisaHistorico.SelectedIndex = 5;
        }
示例#2
0
        private void AtualizeValorComODoProduto()
        {
            var listaDeProdutos = new List <Produto>();

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                listaDeProdutos = servicoDeProduto.ConsulteTodosOsProdutos();
            }

            var produto = listaDeProdutos.Find(x => x.Nome.Trim() == cbProduto.Text);

            if (produto == null)
            {
                return;
            }

            decimal valorASerAtribuido = 0;

            switch ((EnumTipoDeInteracao)cbTipo.SelectedIndex + 1)
            {
            case EnumTipoDeInteracao.ENTRADA:
                valorASerAtribuido = produto.PrecoDeCompra;
                break;

            case EnumTipoDeInteracao.SAIDA:
                valorASerAtribuido = produto.PrecoDeVenda;
                break;
            }

            GStxtValor.Valor = valorASerAtribuido;
        }
示例#3
0
        private void frmInteracao_Load(object sender, EventArgs e)
        {
            var listaDeProdutos = new List <Produto>();

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                listaDeProdutos = servicoDeProduto.ConsulteTodosOsProdutos();
            }

            PreenchaComboBoxPesquisaComProdutos(listaDeProdutos);

            switch (_tipoDoForm)
            {
            case EnumTipoDeForm.Cadastro:
                cbTipo.SelectedIndex = 0;
                break;

            case EnumTipoDeForm.Detalhamento:
                if (cbTipo.SelectedIndex == ((int)EnumTipoDeInteracao.BASE_DE_TROCA - 1))
                {
                    txtLineQuantidadeAux.Visible = true;
                    txtQuantidadeAux.Visible     = true;
                    lblQuantidadeAux.Visible     = true;
                }
                break;
            }

            InicializeInconsistencias();
        }
示例#4
0
        private void btnCancelarExcluir_Click_1(object sender, EventArgs e)
        {
            switch (_switchBotaoCancelarExcluir)
            {
            case EnumBotoesForm.Cancelar:
                InicializeBotoes(EnumTipoDeForm.Detalhamento);
                _tipoDoForm = EnumTipoDeForm.Detalhamento;

                Produto produto;
                using (var servicoDeProduto = new ServicoDeProduto())
                {
                    produto = servicoDeProduto.Consulte(int.Parse(txtCodigo.Text.Trim()));
                }

                CarregueControlesComObjeto(produto);
                DesabiliteControles();
                cbVigencia.Enabled      = true;
                txtLineVigencia.Enabled = true;
                CarregueComboDeVigencias(produto.Codigo);
                SelecioneUltimaVigencia();
                break;

            case EnumBotoesForm.Excluir:
                var resultado = MessageBox.Show(Mensagens.TEM_CERTEZA_QUE_DESEJA_EXCLUIR_ESSE_X("produto"), "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (resultado == DialogResult.Yes)
                {
                    var codigoDoProduto = int.Parse(txtCodigo.Text);

                    var listaDeInconsistenciasExclusao = new List <Inconsistencia>();
                    using (var servicoDeProduto = new ServicoDeProduto())
                    {
                        listaDeInconsistenciasExclusao = servicoDeProduto.Exclua(codigoDoProduto);
                    }

                    if (listaDeInconsistenciasExclusao.Count == 0)
                    {
                        MessageBox.Show(Mensagens.O_X_FOI_EXCLUIDO_COM_SUCESSO("produto"));
                        this.Close();
                    }
                    else
                    {
                        foreach (var inconsistencia in listaDeInconsistenciasExclusao)
                        {
                            MessageBox.Show(inconsistencia.Mensagem);
                        }
                    }
                }
                else if (resultado == DialogResult.No)
                {
                    // Não faz nada
                }
                break;
            }
        }
示例#5
0
        private void btnRefresh_Click(object sender, EventArgs e)
        {
            txtPesquisa.ForeColor = Color.Silver;
            txtPesquisa.Text      = "Pesquisar...";

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                _listaDeProdutos = servicoDeProduto.ConsulteTodosOsProdutos();
            }

            CarregueDataGridProdutos(_listaDeProdutos);
        }
示例#6
0
        public Interacao CarregueObjetoComControles()
        {
            var interacao = new Interacao();

            interacao.Observacao     = txtObservacoes.Text.Trim();
            interacao.ValorInteracao = GStxtValor.Valor;
            interacao.AtualizarValorDoProdutoNoCatalogo = chkAtualizar.Checked;
            interacao.TipoDeInteracao    = (EnumTipoDeInteracao)cbTipo.SelectedIndex + 1;
            interacao.QuantidadeInterada = !string.IsNullOrEmpty(txtQuantidade.Text.Trim())
                                         ? int.Parse(txtQuantidade.Text.Trim())
                                         : 0;
            interacao.QuantidadeAuxiliar = !string.IsNullOrEmpty(txtQuantidadeAux.Text.Trim())
                                         ? new int?(int.Parse(txtQuantidadeAux.Text.Trim()))
                                         : new int?();
            interacao.Origem            = txtOrigem.Text.Trim();
            interacao.Destino           = txtDestino.Text.Trim();
            interacao.NumeroDaNota      = txtNumeroDaNotaFiscal.Text.Trim();
            interacao.HorarioProgramado = GSUtilitarios.ObtenhaDateTimeCompletoDePickers(dateData, dateHorario);

            var listaDeProdutos = new List <Produto>();

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                listaDeProdutos = servicoDeProduto.ConsulteTodosOsProdutos();
            }

            interacao.Produto = listaDeProdutos.Find(x => x.Nome.Trim() == cbProduto.Text.Trim());

            if (chkInformarNumeroDeSerie.Checked)
            {
                interacao.InformaNumeroDeSerie = true;

                //Carregando números de série
                foreach (var multiTextBox in flpNumerosDeSerie.Controls)
                {
                    var valor = (multiTextBox as GSMultiTextBox).Texto;

                    if (!string.IsNullOrEmpty(valor))
                    {
                        interacao.NumerosDeSerie.Add(valor);
                    }
                }
            }
            else
            {
                interacao.InformaNumeroDeSerie = false;
            }

            return(interacao);
        }
示例#7
0
        private void btnEditarSalvar_Click_1(object sender, EventArgs e)
        {
            switch (_switchBotaoEditarSalvar)
            {
            case EnumBotoesForm.Editar:
                HabiliteControles();
                cbVigencia.SelectedIndex = -1;
                cbVigencia.Enabled       = false;
                txtLineVigencia.Enabled  = false;

                txtCodigo.Enabled     = false;
                txtLineCodigo.Enabled = false;
                InicializeBotoes(EnumTipoDeForm.Edicao);
                _tipoDoForm = EnumTipoDeForm.Edicao;
                break;

            case EnumBotoesForm.Salvar:
                if (string.IsNullOrEmpty(txtCodigo.Text) || txtCodigo.Text == "Novo")
                {
                    PreenchaCodigoComProximoDisponivel();
                }

                var produto = CarregueObjetoComControles();

                var listaDeInconsistencias = new List <Inconsistencia>();

                using (var servicoDeProduto = new ServicoDeProduto())
                    listaDeInconsistencias = servicoDeProduto.Salve(produto, _tipoDoForm);

                if (listaDeInconsistencias.Count == 0)
                {
                    MessageBox.Show(Mensagens.X_FOI_CADASTRADO_COM_SUCESSO("Produto"));
                    InicializeBotoes(EnumTipoDeForm.Detalhamento);
                    _tipoDoForm = EnumTipoDeForm.Edicao;
                    DesabiliteControles();
                    CarregueComboDeVigencias(produto.Codigo);
                    SelecioneUltimaVigencia();
                    cbVigencia.Enabled      = true;
                    txtLineVigencia.Enabled = true;
                    return;
                }

                foreach (var inconsistencia in listaDeInconsistencias)
                {
                    MessageBox.Show(inconsistencia.Mensagem);
                    //Invoke metodo para destacar o form, ou então fazer um destaque automático
                }
                break;
            }
        }
示例#8
0
        protected void PreenchaCodigoComProximoDisponivel()
        {
            int proximoCodigo;

            using (var servicoDeProduto = new ServicoDeProduto())
                proximoCodigo = servicoDeProduto.ObtenhaProximoCodigoDisponivel();

            if (proximoCodigo == 0)
            {
                MessageBox.Show(Mensagens.ERRO());
                return;
            }

            txtCodigo.Text = proximoCodigo.ToString();
        }
示例#9
0
        protected void CarregueComboDeVigencias(int codigo)
        {
            cbVigencia.Items.Clear();

            var listaDeVigencias = new List <DateTime>();

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                listaDeVigencias = servicoDeProduto.ConsulteTodasAsVigenciasDeUmProduto(codigo);
            }

            foreach (var vigencia in listaDeVigencias)
            {
                cbVigencia.Items.Add(vigencia.ToString(Cultura));
            }
        }
示例#10
0
        protected void cbVigencia_SelectedValueChanged(object sender, EventArgs e)
        {
            if (cbVigencia.SelectedIndex == -1)
            {
                return;
            }

            var produto = new Produto();

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                produto = servicoDeProduto.Consulte(int.Parse(txtCodigo.Text.Trim()),
                                                    DateTime.Parse(cbVigencia.SelectedItem.ToString(), Cultura));
            }

            this.CarregueControlesComObjeto(produto);
        }
示例#11
0
        private void dgvProdutos_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (e.RowIndex < 0)
            {
                return;
            }

            var     codigoProduto = (int)senderGrid["colunaCodigo", e.RowIndex].Value;
            Produto produto;

            using (var servicoDeProduto = new ServicoDeProduto())
            {
                produto = servicoDeProduto.Consulte(codigoProduto);
            }

            if (produto != null)
            {
                new frmProduto(produto).Show();
            }
        }
示例#12
0
        private void dgvProdutos_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0)
            {
                if (senderGrid.Columns[e.ColumnIndex] == colunaDetalhar)
                {
                    var     codigoProduto = (int)senderGrid["colunaCodigo", e.RowIndex].Value;
                    Produto produto;

                    using (var servicoDeProduto = new ServicoDeProduto())
                    {
                        produto = servicoDeProduto.Consulte(codigoProduto);
                    }

                    if (produto != null)
                    {
                        new frmProduto(produto).Show();
                    }
                }
            }
        }