Пример #1
0
        public void showMessage(string message, string title)
        {
            messageBox msgBox = new messageBox(message, title);

            msgBox.Owner = this;
            msgBox.ShowDialog();
        }
Пример #2
0
        private bool login()
        {
            if (DataBase.SqlFunctionsUsers.ExistTableDBCA(txtUser.Text))
            {
                if (DataBase.SqlFunctionsUsers.CheckPasswordDBCA(txtUser.Text, txtSenha.Password))
                {
                    DataBase.SqlFunctionsUsers.IntoDateDBCA(txtUser.Text, DataBase.SqlFunctionsUsers.MD5Cryptography(txtSenha.Password), DataBase.SqlFunctionsUsers.GetLastValueTableDBCA(txtUser.Text, "GroupUser"), DataBase.SqlFunctionsUsers.GetLastValueTableDBCA(txtUser.Text, "Email"), "Entrou");

                    VariaveisGlobais.UserLogged_GS      = txtUser.Text;
                    VariaveisGlobais.GroupUserLogged_GS = DataBase.SqlFunctionsUsers.GetLastValueTableDBCA(txtUser.Text, "GroupUser");
                    VariaveisGlobais.PasswordLogged_GS  = txtSenha.Password;



                    if (VariaveisGlobais.GroupUserLogged_GS.Equals("Operador"))
                    {
                        VariaveisGlobais.NumberOfGroup_GS = 1;
                    }
                    else if (VariaveisGlobais.GroupUserLogged_GS.Equals("Manutenção"))
                    {
                        VariaveisGlobais.NumberOfGroup_GS = 2;
                    }
                    else if (VariaveisGlobais.GroupUserLogged_GS.Equals("Administrador"))
                    {
                        VariaveisGlobais.NumberOfGroup_GS = 3;
                    }


                    txtUser.IsEnabled  = false;
                    txtSenha.Password  = "";
                    txtSenha.IsEnabled = false;


                    iconLogin.Kind       = MaterialDesignThemes.Wpf.PackIconKind.Logout;
                    iconLogin.Foreground = new SolidColorBrush(Colors.Red);

                    return(true);
                }
                else
                {
                    Utilidades.messageBox inputDialog = new messageBox("Senha Incorreta", "Senha incorreta, por favor verifique e tente novamente", MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                    inputDialog.ShowDialog();

                    return(false);
                }
            }
            else
            {
                Utilidades.messageBox inputDialog = new messageBox("Usuário não Cadastrado", "Usuário não cadastrado, por favor verifique e tente novamente", MaterialDesignThemes.Wpf.PackIconKind.Information, "OK", "Fechar");

                inputDialog.ShowDialog();

                return(false);
            }
        }
Пример #3
0
        private void motor_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
        {
            if (Utilidades.VariaveisGlobais.NumberOfGroup_GS == 0)
            {
                Utilidades.messageBox inputDialog = new messageBox(Utilidades.VariaveisGlobais.faltaUsuarioTitle, Utilidades.VariaveisGlobais.faltaUsuarioMessage, MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();

                return;
            }

            equip.OpenWindow();
        }
        private bool calculaApartirPesoTotalDesejado(Utilidades.Producao producao)
        {
            bool   ret          = false;
            Double pesoDesejado = 0;

            //atualiza o peso total da produção
            Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].pesoTotalProducao = Convert.ToSingle(txtPesoDesejado.Text);

            if (!String.IsNullOrEmpty(txtPesoDesejado.Text))
            {
                if (Double.TryParse(txtPesoDesejado.Text, out pesoDesejado))
                {
                    //Calcula peso total da receita
                    float pesoTotalReceita = 0.0f;
                    foreach (var produtos in Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].receita.listProdutos)
                    {
                        pesoTotalReceita = pesoTotalReceita += produtos.pesoProdutoReceita;
                    }

                    float fatorPeso = Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].pesoTotalProducao / pesoTotalReceita;

                    //Calcula Peso de cada produto
                    foreach (var produtos in Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].receita.listProdutos)
                    {
                        produtos.pesoProdutoDesejado = Convert.ToSingle(Math.Round(fatorPeso * produtos.pesoProdutoReceita, 2));
                    }

                    ret = true;
                }
                else
                {
                    inputDialog = new Utilidades.messageBox("Valor não é inteiro", "Por favor verifique se o valor pertecem aos números inteiros", MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                    inputDialog.ShowDialog();
                }
            }
            else
            {
                inputDialog = new Utilidades.messageBox("Campo Necessário", "Por favor verifique se o campo Peso Total Desejado esta vazio!", MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();
            }

            atualizaGridProdutos();

            return(ret);
        }
Пример #5
0
        private void btInformacoesEspecificacoes_Click(object sender, RoutedEventArgs e)
        {
            if (Utilidades.VariaveisGlobais.NumberOfGroup_GS < 2)
            {
                Utilidades.messageBox inputDialog = new messageBox(Utilidades.VariaveisGlobais.faltaPermissaoTitle, Utilidades.VariaveisGlobais.faltaPermissaoMessage, MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();

                return;
            }

            if (spConfiguracao != null)
            {
                spConfiguracao.Children.Clear();
            }

            spConfiguracao.Children.Add(especificaoes);
        }
Пример #6
0
        private void EscritaInformacoes(int bufferPlc_Auxiliares)
        {
            VariaveisGlobais.Buffer_PLC[bufferPlc_Auxiliares].Enable_Read = false;

            VariaveisGlobais.controleProducao.TempoLimpezaDosagem = Convert.ToInt32(txtTempoLimpezaDosagem.Text);

            VariaveisGlobais.controleProducao.TempoLimpezaMisturador = Convert.ToInt32(txtTempoLimpezaMistura.Text);

            VariaveisGlobais.controleProducao.TempoEstabilizacao = Convert.ToInt32(txtTempoEstabilizacao.Text);

            VariaveisGlobais.controleProducao.TempoPulmaoVazio = Convert.ToInt32(txtTempoPulmaoVazio.Text);


            writeVariables_AuxiliaresProcesso(1);

            inputDialog = new Utilidades.messageBox("Salvar", "Informações salvas com Sucesso!", MaterialDesignThemes.Wpf.PackIconKind.Plus, "OK", "Fechar");

            inputDialog.ShowDialog();
        }
        private void btDiminui_Click(object sender, RoutedEventArgs e)
        {
            if (pesoTodosProdutos > 0)
            {
                pesoProdutosReceita = pesoProdutosReceita - (pesoTodosProdutos / 2);

                txtPesoDesejado.Text = Convert.ToString(pesoProdutosReceita);

                txtQtdReceita.Text = Convert.ToString(pesoProdutosReceita / pesoTodosProdutos);

                calculaApartirPesoTotalDesejado(Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1]);
            }
            else
            {
                inputDialog = new Utilidades.messageBox("Sem peso receita", "Por favor verifique se a receita possui produtos com peso válidos!", MaterialDesignThemes.Wpf.PackIconKind.Information, "OK", "Fechar");

                inputDialog.ShowDialog();
            }
        }
Пример #8
0
        private void btManutencao_Click(object sender, RoutedEventArgs e)
        {
            if (Utilidades.VariaveisGlobais.NumberOfGroup_GS == 0)
            {
                Utilidades.messageBox inputDialog = new messageBox(Utilidades.VariaveisGlobais.faltaUsuarioTitle, Utilidades.VariaveisGlobais.faltaUsuarioMessage, MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();

                return;
            }

            if (spInical != null)
            {
                spInical.Children.Clear();

                spInical.Children.Add(Utilidades.VariaveisGlobais.manutencao);

                AtualizaButton(pckManutencao);
            }
        }
Пример #9
0
        private void btManualAuto_Click(object sender, RoutedEventArgs e)
        {
            if (Utilidades.VariaveisGlobais.NumberOfGroup_GS == 0)
            {
                Utilidades.messageBox inputDialog = new messageBox(Utilidades.VariaveisGlobais.faltaUsuarioTitle, Utilidades.VariaveisGlobais.faltaUsuarioMessage, MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();

                return;
            }


            Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Read = false;

            VariaveisGlobais.controleProducao.Manual_Automatico = !VariaveisGlobais.controleProducao.Manual_Automatico;

            Comunicacao.Sharp7.S7.SetWordAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 18, Utilidades.Move_Bits.ControleProducaoToWord(VariaveisGlobais.controleProducao));

            Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Write = true;
        }
Пример #10
0
        private void BT_confirma_Click(object sender, RoutedEventArgs e)
        {
            if (Utilidades.VariaveisGlobais.NumberOfGroup_GS == 0)
            {
                Utilidades.messageBox inputDialog = new messageBox(Utilidades.VariaveisGlobais.faltaUsuarioTitle, Utilidades.VariaveisGlobais.faltaUsuarioMessage, MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                inputDialog.ShowDialog();

                return;
            }


            if (VariaveisGlobais.controleProducao.primeiroProdutoDosar)
            {
                VariaveisGlobais.controleProducao.primeiroProdutoDosar = false;

                if (DataBase.SQLFunctionsProducao.Update_IniciouDosagemProduto(VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].id, VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].produto.id) > 0)
                {
                    Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Read = false;

                    VariaveisGlobais.controleProducao.Dosando = true;
                    VariaveisGlobais.controleProducao.IniciadoDosagemProduto_PLC = false;
                    VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].iniciouDosagem = true;

                    //Atualiza Valores dos pesos do produto
                    VariaveisGlobais.controleProducao.PesoDosar      = VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].pesoProdutoDesejado;
                    VariaveisGlobais.controleProducao.PesoTolerancia = VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].tolerancia;

                    Comunicacao.Sharp7.S7.SetWordAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 18, Utilidades.Move_Bits.ControleProducaoToWord(VariaveisGlobais.controleProducao));
                    Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 26, VariaveisGlobais.controleProducao.PesoDosar);
                    Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 30, VariaveisGlobais.controleProducao.PesoTolerancia);
                }
                else
                {
                    Utilidades.messageBox inputDialog = new messageBox("Erro Update DB", "Erro ao Atualizar Produto no db, Tente novamente", MaterialDesignThemes.Wpf.PackIconKind.Error, "OK", "Fechar");

                    inputDialog.ShowDialog();
                    return;
                }
            }
            else
            {
                if (DataBase.SQLFunctionsProducao.Update_FinalizouDosagemProduto(VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].id, VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].produto.id) > 0 &&
                    VariaveisGlobais.controleProducao.IniciadoDosagemProduto_PLC)
                {
                    if (DataBase.SQLFunctionsProducao.Update_PesoDosado_Produto(VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].id, VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].produto.id, VariaveisGlobais.controleProducao.Peso_Parcial_Produzindo) > 0)
                    {
                        VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].pesoProdutoDosado = VariaveisGlobais.controleProducao.Peso_Parcial_Produzindo;

                        VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto].finalizouDosagem = true;

                        //Verifica se não é o ultimo produto
                        if (!VariaveisGlobais.controleProducao.EncerrarDosagem)
                        {
                            if (DataBase.SQLFunctionsProducao.Update_IniciouDosagemProduto(VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].id, VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto + 1].produto.id) > 0)
                            {
                                Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Read = false;

                                VariaveisGlobais.controleProducao.Troca_Produto = true;
                                VariaveisGlobais.controleProducao.Estabilizado  = false;
                                VariaveisGlobais.controleProducao.IniciadoDosagemProduto_PLC = false;
                                VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto + 1].iniciouDosagem = true;

                                //Atualiza Valores dos pesos do produto
                                VariaveisGlobais.controleProducao.PesoDosar      = VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto + 1].pesoProdutoDesejado;
                                VariaveisGlobais.controleProducao.PesoTolerancia = VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].receita.listProdutos[VariaveisGlobais.controleProducao.indexProduto + 1].tolerancia;

                                Comunicacao.Sharp7.S7.SetWordAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 18, Utilidades.Move_Bits.ControleProducaoToWord(VariaveisGlobais.controleProducao));
                                Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 26, VariaveisGlobais.controleProducao.PesoDosar);
                                Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 30, VariaveisGlobais.controleProducao.PesoTolerancia);
                            }
                            else
                            {
                                return;
                            }
                        }
                        else
                        {
                            Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Read = false;
                            DataBase.SQLFunctionsProducao.Update_PesoDosadoTotal(Utilidades.VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].id, VariaveisGlobais.controleProducao.Peso_Total_Produzindo);
                            Utilidades.VariaveisGlobais.OrdensProducao[VariaveisGlobais.controleProducao.indexProducao].pesoTotalProduzido = VariaveisGlobais.controleProducao.Peso_Total_Produzindo;

                            //Atualiza Valores dos pesos do produto
                            VariaveisGlobais.controleProducao.PesoDosar                  = 0;
                            VariaveisGlobais.controleProducao.PesoTolerancia             = 0;
                            VariaveisGlobais.controleProducao.Troca_Produto              = false;
                            VariaveisGlobais.controleProducao.Dosando                    = false;
                            VariaveisGlobais.controleProducao.IniciadoDosagemProduto_PLC = false;
                            Comunicacao.Sharp7.S7.SetWordAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 18, Utilidades.Move_Bits.ControleProducaoToWord(VariaveisGlobais.controleProducao));
                            Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 26, 0);
                            Comunicacao.Sharp7.S7.SetRealAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 30, 0);

                            VariaveisGlobais.controleProducao.EncerrarDosagem = false;
                        }
                    }
                }
                else
                {
                    return;
                }
            }

            Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Write = true;

            VariaveisGlobais.controleProducao.HabilitadoDosarEmManual = false;
        }
        private void btContinuar_Click(object sender, RoutedEventArgs e)
        {
            if (Convert.ToDouble(txtPesoDesejado.Text) < 300 && Convert.ToDouble(txtPesoDesejado.Text) > 0)
            {
                if (VariaveisGlobais.controleProducao.Producao0 == -1)
                {
                    inputDialog = new Utilidades.messageBox("Confirmação", "Você tem certeza que deseja iniciar a produção? Após o inicio não poderá ser retirado a produção! ", MaterialDesignThemes.Wpf.PackIconKind.Error, "Sim", "Não");

                    inputDialog.ShowDialog();

                    if (inputDialog.DialogResult == true)
                    {
                        //Preenche data inicial e data final
                        Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].dateTimeInicioProducao = DateTime.Now;

                        Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].dateTimeFimProducao = DateTime.Now;

                        //Preenche que iniciou a produção
                        Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].IniciouProducao = true;

                        calculaApartirPesoTotalDesejado(Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1]);

                        DataBase.SQLFunctionsProducao.AddProducaoBD(Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1]);

                        Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Read = false;

                        VariaveisGlobais.controleProducao.Producao0 = Utilidades.VariaveisGlobais.OrdensProducao[Utilidades.VariaveisGlobais.OrdensProducao.Count - 1].id;

                        Comunicacao.Sharp7.S7.SetDIntAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 2, VariaveisGlobais.controleProducao.Producao0);

                        var index = Utilidades.VariaveisGlobais.OrdensProducao.FindIndex(x => x.id == VariaveisGlobais.controleProducao.Producao0);

                        if (index != -1)
                        {
                            Int32 codigoReceita = Utilidades.VariaveisGlobais.OrdensProducao[index].receita.Codigo;

                            Comunicacao.Sharp7.S7.SetDIntAt(Utilidades.VariaveisGlobais.Buffer_PLC[1].Buffer, 34, Convert.ToInt32(DataBase.SqlFunctionsReceitas.getTempoMistura(codigoReceita)));
                        }

                        Utilidades.VariaveisGlobais.Buffer_PLC[1].Enable_Write = true;

                        //Verifica qual Produção esta em execução e carrega a produção
                        DataBase.SQLFunctionsProducao.AtualizaOrdemProducaoEmExecucao();

                        Iniciou = true;

                        if (this.IniciouProducao != null)
                        {
                            this.IniciouProducao(this, e);
                        }
                    }
                }
                else
                {
                    inputDialog = new Utilidades.messageBox("Liberado", "Verifique se tem alguma produção na dosagem", MaterialDesignThemes.Wpf.PackIconKind.Information, "OK", "Fechar");

                    inputDialog.ShowDialog();
                }
            }
            else
            {
                inputDialog = new Utilidades.messageBox("Liberado", "O peso está acima de 300 kg ou abaixo de 0 kg! Diminua a produção.", MaterialDesignThemes.Wpf.PackIconKind.Information, "OK", "Fechar");

                inputDialog.ShowDialog();
            }
        }