public Task <IEnumerable <dynamic> > GetDataTable() { var model = new ItemEstoqueMovimentacao().Query(); if (!noFilterData.Checked) { model.Where("ITEM_MOV_ESTOQUE.criado", ">=", Validation.ConvertDateToSql(dataInicial.Value, true)) .Where("ITEM_MOV_ESTOQUE.criado", "<=", Validation.ConvertDateToSql(dataFinal.Value, true)); } if (Validation.ConvertToInt32(Locais.SelectedValue) >= 1) { var local = ""; if (Validation.ConvertToInt32(Locais.SelectedValue) == 1) { local = "Cadastro de Produto"; } if (Validation.ConvertToInt32(Locais.SelectedValue) == 2) { local = "Vendas"; } if (Validation.ConvertToInt32(Locais.SelectedValue) == 3) { local = "Orçamentos"; } if (Validation.ConvertToInt32(Locais.SelectedValue) == 4) { local = "Consignações"; } if (Validation.ConvertToInt32(Locais.SelectedValue) == 5) { local = "Devoluções"; } model.Where("ITEM_MOV_ESTOQUE.local", local); } if (Validation.ConvertToInt32(Usuarios.SelectedValue) >= 1) { model.Where("ITEM_MOV_ESTOQUE.id_usuario", Validation.ConvertToInt32(Usuarios.SelectedValue)); } if (!filterAll.Checked) { if (filterAdicionado.Checked) { model.Where("ITEM_MOV_ESTOQUE.TIPO", "A"); } if (filterRemovido.Checked) { model.Where("ITEM_MOV_ESTOQUE.TIPO", "R"); } } if (collection.Lookup(BuscarProduto.Text) > 0) { model.Where("ITEM_MOV_ESTOQUE.id_item", collection.Lookup(BuscarProduto.Text)); } model.LeftJoin("ITEM", "ITEM.id", "ITEM_MOV_ESTOQUE.id_item"); model.LeftJoin("USUARIOS", "USUARIOS.id_user", "ITEM_MOV_ESTOQUE.id_usuario"); model.Select("ITEM_MOV_ESTOQUE.*", "ITEM.*", "USUARIOS.id_user", "USUARIOS.nome as nome_user"); model.Limit(200); model.OrderByDesc("ITEM_MOV_ESTOQUE.ID"); return(model.GetAsync <dynamic>()); }
private void Eventos() { KeyDown += KeyDowns; KeyPreview = true; Masks.SetToUpper(this); Shown += (s, e) => { Refresh(); BeginInvoke((MethodInvoker) delegate { IdPdtSelecionado = Produtos.IdPdtSelecionado; backOn.RunWorkerAsync(); }); SetHeadersAdicionais(GridAdicionais); SetHeadersCombo(GridCombos); nome.Focus(); }; menuEstoque.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelEstoque, menuEstoque); label27.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelEstoque, menuEstoque); pictureBox12.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelEstoque, menuEstoque); menuImpostos.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelImpostos, menuImpostos); label35.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelImpostos, menuImpostos); pictureBox16.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelImpostos, menuImpostos); menuAdicionais.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelAdicionais, menuAdicionais); label30.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelAdicionais, menuAdicionais); pictureBox13.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelAdicionais, menuAdicionais); menuCombo.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelCombo, menuCombo); label33.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelCombo, menuCombo); pictureBox17.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelCombo, menuCombo); menuInfoAdicionais.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelInfoAdicionais, menuInfoAdicionais); label31.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelInfoAdicionais, menuInfoAdicionais); pictureBox15.Click += (s, e) => Support.DynamicPanel(flowLayoutPanel, panelInfoAdicionais, menuInfoAdicionais); btnExit.Click += (s, e) => { var dataProd = _modelItem.Query().Where("id", IdPdtSelecionado) .Where("atualizado", "01.01.0001, 00:00:00.000").WhereNull("codebarras").FirstOrDefault(); if (dataProd != null) { var result = AlertOptions.Message("Atenção!", "Esse produto não foi editado, deseja deletar?", AlertBig.AlertType.info, AlertBig.AlertBtn.YesNo); if (result) { var data = _modelItem.Remove(IdPdtSelecionado, false); if (data) { Close(); } } nome.Focus(); return; } Close(); }; btnSalvar.Click += (s, e) => Save(); btnRemover.Click += (s, e) => { var result = AlertOptions.Message("Atenção!", "Você está prestes a deletar um produto, continuar?", AlertBig.AlertType.warning, AlertBig.AlertBtn.YesNo); if (result) { var data = _modelItem.Remove(IdPdtSelecionado); if (data) { Close(); } } }; btnEstoque.Click += (s, e) => { _modelItem.Nome = nome.Text; if (new Model.Item().ValidarDados(_modelItem)) { return; } var f = new AddEstoque { TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { LoadEstoque(); estoqueminimo.Focus(); DataTableEstoque(); } }; valorcompra.TextChanged += (s, e) => { var txt = (TextBox)s; Masks.MaskPrice(ref txt); }; valorvenda.TextChanged += (s, e) => { var txt = (TextBox)s; Masks.MaskPrice(ref txt); }; txtLimiteDesconto.TextChanged += (s, e) => { var txt = (TextBox)s; Masks.MaskPrice(ref txt); }; btnAddCategoria.Click += (s, e) => { Home.CategoriaPage = "Produtos"; var f = new AddCategorias { FormBorderStyle = FormBorderStyle.FixedSingle, StartPosition = FormStartPosition.CenterScreen, TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { Categorias.DataSource = new Categoria().GetAll("Produtos"); Categorias.Refresh(); } }; btnAddFornecedor.Click += (s, e) => { Home.pessoaPage = "Fornecedores"; AddClientes.Id = 0; var f = new AddClientes { FormBorderStyle = FormBorderStyle.FixedSingle, StartPosition = FormStartPosition.CenterScreen, TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { LoadFornecedores(); } }; btnAddImpostoOne.Click += (s, e) => { View.Produtos.Impostos.idImpSelected = 0; var f = new AddImpostos { FormBorderStyle = FormBorderStyle.FixedSingle, StartPosition = FormStartPosition.CenterScreen, TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { LoadImpostoOne(); LoadImpostoTwo(); } }; btnAddImpostoTwo.Click += (s, e) => { View.Produtos.Impostos.idImpSelected = 0; var f = new AddImpostos { FormBorderStyle = FormBorderStyle.FixedSingle, StartPosition = FormStartPosition.CenterScreen, TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { LoadImpostoOne(); LoadImpostoTwo(); } }; valorvenda.TextChanged += (s, e) => { if (Validation.ConvertToDouble(valorcompra.Text) == 0) { return; } if (Validation.ConvertToDouble(valorvenda.Text) == 0) { return; } var media = (Validation.ConvertToDouble(valorvenda.Text) - Validation.ConvertToDouble(valorcompra.Text)) * 100 / Validation.ConvertToDouble(valorcompra.Text); precoMedio.Text = $"{Validation.ConvertToDouble(Validation.RoundTwo(media))}%"; }; valorcompra.TextChanged += (s, e) => { if (Validation.ConvertToDouble(valorcompra.Text) == 0) { return; } if (Validation.ConvertToDouble(valorvenda.Text) == 0) { return; } var media = (Validation.ConvertToDouble(valorvenda.Text) - Validation.ConvertToDouble(valorcompra.Text)) * 100 / Validation.ConvertToDouble(valorcompra.Text); precoMedio.Text = Validation.Price(media); }; estoqueminimo.KeyPress += (s, e) => Masks.MaskDouble(s, e); codebarras.KeyPress += (s, e) => Masks.MaskOnlyNumbers(s, e, 20); referencia.KeyPress += (s, e) => Masks.MaskOnlyNumberAndChar(s, e, 50); ncm.KeyPress += (s, e) => Masks.MaskOnlyNumbers(s, e, 8); cest.KeyPress += (s, e) => Masks.MaskOnlyNumbers(s, e, 7); nome.TextChanged += (s, e) => { btnEstoque.Visible = nome.Text.Length >= 2; }; nome.KeyPress += (s, e) => { Masks.MaskMaxLength(s, e, 100); }; btnHelp.Click += (s, e) => Support.OpenLinkBrowser(Configs.LinkAjuda); chkImpostoNFE.Click += (s, e) => { if (chkImpostoNFE.Checked) { ImpostoNFE.Enabled = true; } else { ImpostoNFE.Enabled = false; ImpostoNFE.SelectedValue = 0; } }; chkImpostoCFE.Click += (s, e) => { if (chkImpostoCFE.Checked) { ImpostoCFE.Enabled = true; } else { ImpostoCFE.Enabled = false; ImpostoCFE.SelectedValue = 0; } }; btnRemoverImage.Click += (s, e) => { _modelItem.Id = IdPdtSelecionado; if (File.Exists($@"{Program.PATH_IMAGE}\Imagens\{_modelItem.Image}")) { File.Delete($@"{Program.PATH_IMAGE}\Imagens\{_modelItem.Image}"); } _modelItem.Image = ""; _modelItem.Save(_modelItem, false); imageProduct.Image = Resources.sem_imagem; pathImage.Text = ""; btnRemoverImage.Visible = false; Alert.Message("Pronto!", "Imagem removida com sucesso.", Alert.AlertType.success); }; btnImage.Click += (s, e) => { ofd.RestoreDirectory = true; ofd.Filter = @"Image files (*.jpg, *.jpeg, *.png) | *.jpg; *.jpeg; *.png"; ofd.CheckFileExists = true; ofd.CheckPathExists = true; ofd.Multiselect = false; if (ofd.ShowDialog() == DialogResult.OK) { if (!ofd.CheckFileExists) { Alert.Message("Opps", "Não encontramos a imagem selecionada. Tente Novamente!", Alert.AlertType.error); return; } var path = ofd.InitialDirectory + ofd.FileName; var ext = Path.GetExtension(ofd.FileName); if (File.Exists(path)) { if (!Directory.Exists(Program.PATH_IMAGE + @"\Imagens")) { Directory.CreateDirectory(Program.PATH_IMAGE + @"\Imagens"); } var nameImage = $"{Validation.CleanString(nome.Text).Replace(" ", "-")}{ext}"; if (File.Exists($@"{Program.PATH_IMAGE}\Imagens\{nameImage}")) { File.Delete($@"{Program.PATH_IMAGE}\Imagens\{nameImage}"); } File.Copy(path, $@"{Program.PATH_IMAGE}\Imagens\{nameImage}"); _modelItem.Id = IdPdtSelecionado; _modelItem.Image = nameImage; _modelItem.Save(_modelItem, false); var imageAsByteArray = File.ReadAllBytes($@"{Program.PATH_IMAGE}\Imagens\{nameImage}"); imageProduct.Image = Support.ByteArrayToImage(imageAsByteArray); pathImage.Text = $@"{Program.PATH_IMAGE}\Imagens\{nameImage}"; btnRemoverImage.Visible = true; Alert.Message("Pronto!", "Imagem atualizada com sucesso.", Alert.AlertType.success); } else { Alert.Message("Opps", "Não foi possível copiar a imagem. Tente novamente.", Alert.AlertType.error); } } }; filterTodos.Click += (s, e) => DataTableEstoque(); filterMaisRecentes.Click += (s, e) => DataTableEstoque(); selecionarNCM.Click += (s, e) => { var f = new ModalNCM { TopMost = true }; if (f.ShowDialog() == DialogResult.OK) { ncm.Text = ModalNCM.NCM; } }; backOn.DoWork += (s, e) => { _modelItem = _modelItem.FindById(IdPdtSelecionado).FirstOrDefault <Model.Item>(); ListCategorias = new Categoria().GetAll("Produtos"); ListFornecedores = new Pessoa().GetAll("Fornecedores"); Impostos = new Model.Imposto().FindAll().WhereFalse("excluir").OrderByDesc("nome").Get(); Impostos2 = new Model.Imposto().FindAll().WhereFalse("excluir").OrderByDesc("nome").Get(); }; backOn.RunWorkerCompleted += (s, e) => { Start(); if (IdPdtSelecionado > 0) { LoadData(); } else { _modelItem = new Item { Tipo = "Produtos", Id = IdPdtSelecionado }; if (_modelItem.Save(_modelItem, false)) { IdPdtSelecionado = _modelItem.GetLastId(); LoadData(); } else { Alert.Message("Opss", "Erro ao criar.", Alert.AlertType.error); Close(); } } }; workerBackEstoque.DoWork += (s, e) => { var query = new ItemEstoqueMovimentacao().Query() .LeftJoin("USUARIOS", "USUARIOS.id_user", "ITEM_MOV_ESTOQUE.id_usuario") .Select("ITEM_MOV_ESTOQUE.*", "USUARIOS.id_user", "USUARIOS.nome as nome_user") .Where("id_item", IdPdtSelecionado) .OrderByDesc("criado"); if (LimitShowStock > 0) { query.Limit(LimitShowStock); } ListEstoque = query.Get(); }; workerBackEstoque.RunWorkerCompleted += (s, e) => { GetDataTableEstoque(listaEstoque); }; btnVariacao.Click += (s, e) => { ModalVariacao.idProduto = IdPdtSelecionado; var form = new ModalVariacao(); form.ShowDialog(); }; GridAdicionais.CellContentClick += (s, e) => { if (GridAdicionais.Columns[e.ColumnIndex].Name == "Selecione") { GridAdicionais.SelectedRows[0].Cells["Selecione"].Value = (bool)GridAdicionais.SelectedRows[0].Cells["Selecione"].Value == false; } }; GridAdicionais.CellMouseEnter += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (GridAdicionais.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Hand; } }; GridAdicionais.CellMouseLeave += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (GridAdicionais.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Default; } }; GridCombos.CellContentClick += (s, e) => { if (GridCombos.Columns[e.ColumnIndex].Name == "Selecione") { GridCombos.SelectedRows[0].Cells["Selecione"].Value = (bool)GridCombos.SelectedRows[0].Cells["Selecione"].Value == false; } }; GridCombos.CellMouseEnter += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (GridCombos.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Hand; } }; GridCombos.CellMouseLeave += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (GridCombos.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Default; } }; }
public async Task ReceberRemessa() { var response = new RequestApi() .URL(Program.URL_BASE + $"/api/pedido/remessas/{Program.TOKEN}/{idEmpresa}") .Content().Response(); if (response["error"]?.ToString() == "Nenhum registro encontrado") { Alert.Message("OPPS", "Não existem remessas.", Alert.AlertType.error); return; } foreach (dynamic item in response) { if (string.IsNullOrEmpty(item.Value.ToString())) { return; } string idEmpresa = item.Value.pedido.id_empresa; int idUsuario = item.Value.pedido.id_usuario; int idPedido = item.Value.pedido.id; int idSync = item.Value.pedido.id_sync; var lastId = 0; if (item.Value.pedido != null) { var createPedido = new Pedido { Id = 0, Tipo = "Remessas", Excluir = 0, Emissao = item.Value.pedido.emissao, Cliente = item.Value.pedido.cliente, Colaborador = item.Value.pedido.colaborador, Total = item.Value.pedido.total, Desconto = item.Value.pedido.desconto, Frete = item.Value.pedido.frete, Produtos = item.Value.pedido.produtos, id_usuario = item.Value.pedido.id_usuario, campoa = "RECEBIDO", campob = item.Value.pedido.campoc, Observacao = $"Remessa da empresa: {idEmpresa}" }; createPedido.Save(createPedido); lastId = createPedido.GetLastId(); } if (item.Value.itens != null) { foreach (var data in item.Value.itens) { var createPedidoItem = new PedidoItem(); createPedidoItem.Id = 0; createPedidoItem.Tipo = "Produtos"; createPedidoItem.Excluir = 0; createPedidoItem.Pedido = lastId; string codebarras = data.Value.cean; double quantidade = data.Value.quantidade; var dataItem = new Item().FindAll().WhereFalse("excluir").Where("codebarras", codebarras) .FirstOrDefault <Item>(); var idItem = 0; if (dataItem != null) { var movEstoque = new ItemEstoqueMovimentacao() .SetUsuario(idUsuario) .SetQuantidade(quantidade) .SetTipo("A") .SetLocal("Remessa de estoque") .SetObs($"Enviado da empresa: {idEmpresa}") .SetIdPedido(idPedido) .SetItem(dataItem); idItem = dataItem.Id; movEstoque.Save(movEstoque); } else { var createItem = new Item { Id = 0, Excluir = 0, Tipo = "Produtos", CodeBarras = codebarras, Referencia = data.Value.cprod, Nome = data.Value.xprod, ValorCompra = data.Value.valorcompra, ValorVenda = data.Value.valorvenda, Ncm = data.Value.ncm, ativo = 0 }; createItem.Save(createItem); idItem = createItem.GetLastId(); var movEstoque = new ItemEstoqueMovimentacao() .SetUsuario(idUsuario) .SetQuantidade(quantidade) .SetTipo("A") .SetLocal("Remessa de estoque") .SetObs($"Enviado da empresa: {idEmpresa}") .SetIdPedido(idPedido) .SetItem(createItem); movEstoque.Save(movEstoque); } createPedidoItem.Item = idItem; createPedidoItem.CProd = data.Value.cprod; createPedidoItem.CEan = data.Value.cean; createPedidoItem.xProd = data.Value.xprod; createPedidoItem.Ncm = data.Value.ncm; createPedidoItem.Cfop = data.Value.cfop; createPedidoItem.ValorCompra = data.Value.valorcompra; createPedidoItem.ValorVenda = data.Value.valorvenda; createPedidoItem.Quantidade = data.Value.quantidade; createPedidoItem.Medida = data.Value.medida; createPedidoItem.Total = data.Value.total; createPedidoItem.Desconto = data.Value.desconto; createPedidoItem.DescontoItem = data.Value.descontoitem; createPedidoItem.DescontoPedido = data.Value.descontopedido; createPedidoItem.Frete = data.Value.frete; createPedidoItem.Icms = data.Value.icms; createPedidoItem.Federal = data.Value.federal; createPedidoItem.Estadual = data.Value.estadual; createPedidoItem.Status = data.Value.status; createPedidoItem.Save(createPedidoItem, false); } } dynamic obj = new { token = Program.TOKEN, id_empresa = idEmpresa }; var responseP = new RequestApi().URL(Program.URL_BASE + $"/api/pedido/updateRemessa/{idSync}/RECEBIDO") .Content(obj, Method.POST).Response(); if (responseP["status"] != "OK") { new Log().Add("SYNC", $"{responseP["status"]} | Tabela: pedido - {responseP["message"]}", Log.LogType.fatal); } } }