private void dg_mostra_disponivel_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
 {
     //pega id
     try {
         int id = 0;
         id_estoque_para_aluguel = 0;
         estoque_qtd_aluguel     = 0;
         roteador_aluguel        = new Aluguel_Roteador();
         id = Convert.ToInt32(dg_mostra_disponivel.SelectedCells[0].Value.ToString());
         if (id > 0)
         {
             gp_dados_aluguel.Enabled = true;
             lbl_mac.Text             = dg_mostra_disponivel.SelectedCells[4].Value.ToString();
             lbl_modelo.Text          = dg_mostra_disponivel.SelectedCells[3].Value.ToString();
             lbl_num_serie.Text       = dg_mostra_disponivel.SelectedCells[5].Value.ToString();
             lbl_patrimonio.Text      = dg_mostra_disponivel.SelectedCells[6].Value.ToString();
             lbl_preset.Text          = dg_mostra_disponivel.SelectedCells[9].Value.ToString();
             roteador_aluguel.alu_ID  = id;
             id_estoque_para_aluguel  = Convert.ToInt32(dg_mostra_disponivel.SelectedCells[11].Value.ToString());
             estoque_qtd_aluguel      = Convert.ToDouble(dg_mostra_disponivel.SelectedCells[12].Value.ToString());
             cx_cod_cliente.Focus();
         }
     }
     catch {
         gp_dados_aluguel.Enabled = false;
         lbl_mac.Text             = "???";
         lbl_modelo.Text          = "???";
         lbl_num_serie.Text       = "???";
         lbl_patrimonio.Text      = "??";
         lbl_preset.Text          = "???";
     }
 }
        private void dg_mostra_geral_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            try {
                int id = Convert.ToInt32(dg_mostra_geral.SelectedCells[0].Value.ToString());
                if (id > 0)
                {
                    bt_novo.Enabled              = false;
                    bt_gravar_devolução.Enabled  = false;
                    bt_atualizar.Enabled         = true;
                    cb_modelo.Visible            = false;
                    lbl_modeloDescricao.Visible  = true;
                    lbl_modeloDescricao.Location = cb_modelo.Location;
                    grp_equipamento.Enabled      = true;

                    roteador                = new Aluguel_Roteador();
                    roteador.alu_ID         = id;
                    roteador.modelo         = dg_mostra_geral.SelectedCells[3].Value.ToString();
                    roteador.mac_adress     = dg_mostra_geral.SelectedCells[4].Value.ToString();
                    roteador.num_serie      = dg_mostra_geral.SelectedCells[5].Value.ToString();
                    roteador.num_patrimonio = dg_mostra_geral.SelectedCells[6].Value.ToString();
                    roteador.preset         = dg_mostra_geral.SelectedCells[9].Value.ToString();
                    roteador.status         = Convert.ToInt32(dg_mostra_geral.SelectedCells[10].Value.ToString());
                    roteador.Est_ID         = Convert.ToInt32(dg_mostra_geral.SelectedCells[11].Value.ToString());

                    lbl_modeloDescricao.Text = roteador.modelo;
                    cx_mac.Text        = roteador.mac_adress;
                    cx_num_serie.Text  = roteador.num_serie;
                    cx_patrimonio.Text = roteador.num_patrimonio;
                    cx_preset.Text     = roteador.preset;
                }
            }
            catch { }
        }
        private void bt_gravar_devolução_Click(object sender, EventArgs e)
        {
            string motivo = "";

            //Verifica motivo da devolução.
            if (rb_cliente_cancelou.Checked == true)
            {
                motivo = "Devolução de equipamento: " + lbl_modelo_alugado.Text + " por cancelamento em:" + DateTime.Now;
            }
            else if (rb_cliente_devolveu.Checked == true)
            {
                motivo = "Devolução de equipamento: " + lbl_modelo_alugado.Text + " em:" + DateTime.Now;
            }
            //Realiza a devolução
            if (roteador_alugado.alu_ID > 0)
            {
                roteador_alugado.mac_adress     = lbl_mac_alugado.Text;
                roteador_alugado.modelo         = lbl_modelo_alugado.Text;
                roteador_alugado.num_serie      = lbl_num_serie_alugado.Text;
                roteador_alugado.num_patrimonio = lbl_patrimonio_alugado.Text;
                roteador_alugado.preset         = lbl_preset_alugado.Text;
                roteador_alugado.cliente        = null;
                roteador_alugado.usuario        = null;
                roteador_alugado.data_entrada   = DateTime.Now.ToString("yyyy-MM-dd");
                roteador_alugado.Est_ID         = id_estoque_alugado;
                roteador_alugado.Qtd_atual      = estoque_qtd_alugado;

                roteador_alugado.status = 1;

                regra_estoque.roteador_alugar_devolver(roteador_alugado, null);

                mostrar_roteador_geral(filial, "", "");
                mostrar_roteador_soDisponivel(filial, "", "");
                mostrar_roteador_soAlugado(filial, "", "");
                //mostrar_roteador_soTecnico(filial, "", "");

                gp_alugado.Enabled          = false;
                lbl_mac_alugado.Text        = "???";
                lbl_modelo_alugado.Text     = "???";
                lbl_num_serie_alugado.Text  = "???";
                lbl_patrimonio_alugado.Text = "???";
                lbl_preset_alugado.Text     = "???";
                lbl_codigo_cliente.Text     = "???";
                lbl_nome_cliente.Text       = "???";
                lbl_tecnico_alugado.Text    = "???";
                roteador_alugado.alu_ID     = 0;
                id_estoque_alugado          = 0;
                estoque_qtd_alugado         = 0;
                id_user_tecnico_alugado     = 0;
                lbl_os_alugado.Text         = "";
                roteador_alugado            = null;
            }
            else
            {
                MessageBox.Show("Opção não informada", "Erro!!!");
            }
        }
        private void dg_mostra_roteador_tecnico_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            //pega id
            try
            {
                roteador_tenico = new Aluguel_Roteador();
                int id = 0;
                id = Convert.ToInt32(dg_mostra_roteador_tecnico.SelectedCells[0].Value.ToString());
                if (id > 0)
                {
                    //Define as label's
                    grp_roteador_tecnico.Enabled  = true;
                    lbl_mac_tecnico.Text          = dg_mostra_roteador_tecnico.SelectedCells[4].Value.ToString();
                    lbl_modelo_tecnico.Text       = dg_mostra_roteador_tecnico.SelectedCells[3].Value.ToString();
                    lbl_numeroserie_tecnico.Text  = dg_mostra_roteador_tecnico.SelectedCells[5].Value.ToString();
                    lbl_patrimonio_tecnico.Text   = dg_mostra_roteador_tecnico.SelectedCells[6].Value.ToString();
                    lbl_preset_tecnico.Text       = dg_mostra_roteador_tecnico.SelectedCells[9].Value.ToString();
                    lbl_codigo_tecnico.Text       = dg_mostra_roteador_tecnico.SelectedCells[1].Value.ToString();
                    lbl_nome_tecnico.Text         = dg_mostra_roteador_tecnico.SelectedCells[2].Value.ToString();
                    lbl_nome_user_tecnico.Text    = dg_mostra_roteador_tecnico.SelectedCells[13].Value.ToString();
                    lbl_ordemservico_tecnico.Text = dg_mostra_roteador_tecnico.SelectedCells[16].Value.ToString();

                    //seta objeto roteador_tenico
                    roteador_tenico.alu_ID    = id;
                    roteador_tenico.Est_ID    = Convert.ToInt32(dg_mostra_roteador_tecnico.SelectedCells[11].Value.ToString());
                    roteador_tenico.Qtd_atual = Convert.ToDouble(dg_mostra_roteador_tecnico.SelectedCells[12].Value.ToString());
                    Usuario user = new Usuario();
                    try { user.Usu_ID = Convert.ToInt32(dg_mostra_roteador_tecnico.SelectedCells[14].Value.ToString()); }
                    catch { user.Usu_ID = 0; }
                    roteador_tenico.usuario        = user;
                    roteador_tenico.mac_adress     = lbl_mac_tecnico.Text;
                    roteador_tenico.modelo         = lbl_modelo_tecnico.Text;
                    roteador_tenico.num_serie      = lbl_numeroserie_tecnico.Text;
                    roteador_tenico.num_patrimonio = lbl_patrimonio_tecnico.Text;
                    roteador_tenico.preset         = lbl_preset_tecnico.Text;
                    roteador_tenico.data_entrada   = dg_mostra_roteador_tecnico.SelectedCells[7].Value.ToString();
                    roteador_tenico.data_saida     = dg_mostra_roteador_tecnico.SelectedCells[8].Value.ToString();
                    Cliente clie = new Cliente();
                    clie.Clie_ID            = Convert.ToInt32(dg_mostra_roteador_tecnico.SelectedCells[15].Value.ToString());
                    roteador_tenico.cliente = clie;
                }
            }
            catch
            {
                grp_roteador_tecnico.Enabled  = false;
                lbl_mac_tecnico.Text          = "???";
                lbl_modelo_tecnico.Text       = "???";
                lbl_numeroserie_tecnico.Text  = "???";
                lbl_patrimonio_tecnico.Text   = "???";
                lbl_preset_tecnico.Text       = "???";
                lbl_codigo_tecnico.Text       = "???";
                lbl_nome_tecnico.Text         = "???";
                lbl_nome_user_tecnico.Text    = "???";
                lbl_ordemservico_tecnico.Text = "???";
            }
        }
 private void dg_mostra_alugado_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
 {
     //pega id
     try
     {
         roteador_alugado = new Aluguel_Roteador();
         int id = 0;
         id = Convert.ToInt32(dg_mostra_alugado.SelectedCells[0].Value.ToString());
         if (id > 0)
         {
             gp_alugado.Enabled          = true;
             lbl_mac_alugado.Text        = dg_mostra_alugado.SelectedCells[4].Value.ToString();
             lbl_modelo_alugado.Text     = dg_mostra_alugado.SelectedCells[3].Value.ToString();
             lbl_num_serie_alugado.Text  = dg_mostra_alugado.SelectedCells[5].Value.ToString();
             lbl_patrimonio_alugado.Text = dg_mostra_alugado.SelectedCells[6].Value.ToString();
             lbl_preset_alugado.Text     = dg_mostra_alugado.SelectedCells[9].Value.ToString();
             lbl_codigo_cliente.Text     = dg_mostra_alugado.SelectedCells[1].Value.ToString();
             lbl_nome_cliente.Text       = dg_mostra_alugado.SelectedCells[2].Value.ToString();
             lbl_tecnico_alugado.Text    = dg_mostra_alugado.SelectedCells[13].Value.ToString();
             lbl_os_alugado.Text         = dg_mostra_alugado.SelectedCells[16].Value.ToString();
             roteador_alugado.alu_ID     = id;
             id_estoque_alugado          = Convert.ToInt32(dg_mostra_alugado.SelectedCells[11].Value.ToString());
             estoque_qtd_alugado         = Convert.ToDouble(dg_mostra_alugado.SelectedCells[12].Value.ToString());
             try { id_user_tecnico_alugado = Convert.ToInt32(dg_mostra_alugado.SelectedCells[14].Value.ToString()); }
             catch { id_user_tecnico_alugado = 0; }
         }
     }
     catch
     {
         gp_alugado.Enabled          = false;
         lbl_mac_alugado.Text        = "???";
         lbl_modelo_alugado.Text     = "???";
         lbl_num_serie_alugado.Text  = "???";
         lbl_patrimonio_alugado.Text = "???";
         lbl_preset_alugado.Text     = "???";
         lbl_codigo_cliente.Text     = "???";
         lbl_nome_cliente.Text       = "???";
         lbl_tecnico_alugado.Text    = "???";
         roteador_alugado.alu_ID     = 0;
         id_estoque_alugado          = 0;
         estoque_qtd_alugado         = 0;
         id_user_tecnico_alugado     = 0;
         lbl_os_alugado.Text         = "";
     }
 }
 private void bt_cancelar_Click(object sender, EventArgs e)
 {
     roteador                = null;
     cx_mac.Text             = "";
     cx_num_serie.Text       = "";
     cx_patrimonio.Text      = "";
     cx_preset.Text          = "";
     estoque                 = null;
     cb_modelo.Text          = "";
     grp_equipamento.Enabled = false;
     bt_novo.Enabled         = true;
     if (cb_modelo.Visible == false)
     {
         cb_modelo.Visible           = true;
         lbl_modeloDescricao.Visible = false;
     }
     mostrar_roteador_soDisponivel(filial_static, "", "");
 }
        private void bt_confirmar_Click(object sender, EventArgs e)
        {
            Usuario user = new Usuario();
            int     acao = 0;

            if (rb_instalado.Checked == true)
            {
                roteador_tenico.status       = 2;
                roteador_tenico.data_saida   = DateTime.Now.ToString("yyyy-MM-dd");
                roteador_tenico.data_entrada = null;
                user = roteador_tenico.usuario;
                acao = regra_estoque.roteador_alugar_devolver(roteador_tenico, user);
            }
            if (rb_nao_instalado.Checked == true)
            {
                roteador_tenico.status       = 1;
                roteador_tenico.data_entrada = DateTime.Now.ToString("yyyy-MM-dd");
                roteador_tenico.data_saida   = null;
                acao = regra_estoque.roteador_alugar_devolver(roteador_tenico, null);
            }
            if (acao == 68)
            {
                grp_roteador_tecnico.Enabled  = false;
                lbl_mac_tecnico.Text          = "???";
                lbl_modelo_tecnico.Text       = "???";
                lbl_numeroserie_tecnico.Text  = "???";
                lbl_patrimonio_tecnico.Text   = "???";
                lbl_preset_tecnico.Text       = "???";
                lbl_codigo_tecnico.Text       = "???";
                lbl_nome_tecnico.Text         = "???";
                lbl_nome_user_tecnico.Text    = "???";
                lbl_ordemservico_tecnico.Text = "???";

                mostrar_roteador_geral(filial, "", "");
                mostrar_roteador_soDisponivel(filial, "", "");
                mostrar_roteador_soAlugado(filial, "", "");
                mostrar_roteador_soTecnico(filial, "", "");
                roteador_tenico = null;
            }
            else
            {
                MessageBox.Show("[Desconhecido] - Erro, entre em contato com o desenvolvedor!", "Erro!!!");
            }
        }
        private void bt_gravar_aluguel_Click(object sender, EventArgs e)
        {
            tecnico_staico = new TecnicoRua();
            Usuario user = new Usuario();

            //Verifica se roteador está  foi levado pelo cliente ou por técnico.
            //Nota: 99% dos caso será pelo cliente.
            if (chk_tecnico.Checked == true)
            {
                frm_buscar_tecnico tec_rua = new frm_buscar_tecnico();
                frm_buscar_tecnico.filial_statico      = filial;
                frm_buscar_tecnico.is_atendimento_help = false;
                tec_rua.ShowDialog();
                //Confirma se há técnico escolhido
                if (tecnico_staico.Tec_ID == 0 || tecnico_staico == null)
                {
                    tecnico_staico.Usu_ID   = 0;
                    roteador_aluguel.status = 2;
                    user.Usu_ID             = 32;//SYSTEM_INTERNO ID INTERNO
                }
                else
                {
                    user.Usu_ID             = tecnico_staico.Usu_ID;
                    roteador_aluguel.status = 3;
                }
            }
            else if (chk_tecnico.Checked == false)
            {
                user.Usu_ID             = 32;//SYSTEM_INTERNO ID INTERNO
                roteador_aluguel.status = 2;
            }

            //Ordem de serviço

            //-> Dá seguimento ao salvamento.
            roteador_aluguel.cliente = cliente_aluguel;



            roteador_aluguel.Est_ID    = id_estoque_para_aluguel;
            roteador_aluguel.Qtd_atual = estoque_qtd_aluguel;

            //Dados do roteador.
            roteador_aluguel.usuario        = user;
            roteador_aluguel.modelo         = lbl_modelo.Text;
            roteador_aluguel.mac_adress     = lbl_mac.Text;
            roteador_aluguel.num_serie      = lbl_num_serie.Text;
            roteador_aluguel.num_patrimonio = lbl_patrimonio.Text;
            roteador_aluguel.data_saida     = DateTime.Now.ToString("yyyy-MM-dd");
            roteador_aluguel.preset         = lbl_preset.Text;



            string s_os = cx_os.Text;
            int    os   = 0;

            if (!String.IsNullOrEmpty(s_os) && !String.IsNullOrWhiteSpace(s_os))
            {
                os = Convert.ToInt32(s_os);
            }
            else
            {
                os = 0;
            }
            if (cliente_aluguel.Clie_ID > 0 || cliente_aluguel != null)
            {
                if (os > 0)
                {
                    roteador_aluguel.codigoOS = os;

                    int acao = 0;
                    if (estoque_qtd_aluguel > 0)
                    {
                        acao = regra_estoque.roteador_alugar_devolver(roteador_aluguel, user);
                    }
                    else
                    {
                        MessageBox.Show("[Estoque baixo]-> Equipamento não disponível para locação, comunique o estoquista.");
                    }

                    if (acao == 68)
                    {
                        mostrar_roteador_geral(filial, "", "");
                        mostrar_roteador_soDisponivel(filial, "", "");
                        //mostrar_roteador_soAlugado(filial, "", "");
                        //mostrar_roteador_soTecnico(filial, "", "");
                        //Limpa informações
                        lbl_mac.Text              = "???";
                        lbl_modelo.Text           = "???";
                        lbl_num_serie.Text        = "???";
                        lbl_patrimonio.Text       = "??";
                        lbl_preset.Text           = "???";
                        cx_cod_cliente.Text       = "";
                        cx_nome_cliente.Text      = "";
                        cliente_aluguel           = null;
                        tecnico_staico            = null;
                        roteador_aluguel          = null;
                        cx_os.Text                = "";
                        chk_tecnico.Checked       = false;
                        bt_gravar_aluguel.Enabled = false;
                        estoque_qtd_aluguel       = 0;
                        id_estoque_para_aluguel   = 0;
                    }
                    else
                    {
                        MessageBox.Show("[Desconhecido] : Ocorreu um erro durante o processo, \r\ncontato do desenvolvedor comunicando o código: [desconhecido]-Roteador");
                    }
                }
                else
                {
                    MessageBox.Show("Informe o código da ordem de serviço para continuar", "Código da O.S Inválido");
                    cx_os.Focus();
                }
            }
            else
            {
                MessageBox.Show("[Cliente]: Erro, cliente não informado!", "Cliente inválido");
            }
        }
        private void bt_atualizar_Click(object sender, EventArgs e)
        {
            //Verifica se há campo vazio.
            string[] campos = new string[4];
            //Seta compos.
            campos[0] = cx_mac.Text.Replace(":", "");
            campos[1] = cx_num_serie.Text;
            campos[2] = cx_patrimonio.Text;
            campos[3] = cx_preset.Text;

            bool continuar = false;



            if (String.IsNullOrEmpty(campos[0]) || String.IsNullOrWhiteSpace(campos[0]))
            {
                cx_mac.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[1]) || String.IsNullOrWhiteSpace(campos[1]))
            {
                cx_num_serie.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[2]) || String.IsNullOrWhiteSpace(campos[2]))
            {
                cx_patrimonio.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[3]) || String.IsNullOrWhiteSpace(campos[3]))
            {
                cx_preset.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else
            {
                continuar = true;
            }

            DialogResult per = MessageBox.Show("Alterar informações desse equipamento?", "Atenção", MessageBoxButtons.YesNo);

            if (per == DialogResult.Yes)
            {
                if (continuar == true && (roteador.alu_ID > 0 || roteador != null))
                {
                    //roteador.modelo = cb_modelo.Text;
                    roteador.num_patrimonio = cx_patrimonio.Text;
                    roteador.num_serie      = cx_num_serie.Text;
                    roteador.preset         = cx_preset.Text;
                    roteador.Fili_ID        = filial_static.Fili_ID;
                    roteador.mac_adress     = cx_mac.Text;
                    roteador.data_entrada   = DateTime.Now.ToString("yyyy-MM-dd");

                    int acao = regra_estoque.upt_a_roteador(roteador);

                    if (acao == 68)
                    {
                        roteador           = null;
                        cx_mac.Text        = "";
                        cx_num_serie.Text  = "";
                        cx_patrimonio.Text = "";
                        cx_preset.Text     = "";
                        mostrar_roteador_soDisponivel(filial_static, "", "");

                        per = MessageBox.Show("Deseja realizar outra modificação?", "Continuar", MessageBoxButtons.YesNo);
                        if (per == DialogResult.No)
                        {
                            bt_novo.Enabled             = true;
                            bt_gravar_devolução.Enabled = true;
                            bt_atualizar.Enabled        = false;
                            cb_modelo.Visible           = true;
                            lbl_modeloDescricao.Visible = false;
                            //lbl_modeloDescricao.Location = cb_modelo.Location;
                            grp_equipamento.Enabled = false;
                        }
                        else
                        {
                            MessageBox.Show("Selecione o próximo produto/equipamento!");
                        }
                    }
                }
            }
        }
        private void bt_gravar_devolução_Click(object sender, EventArgs e)
        {
            //Verifica se há campo vazio.
            string[] campos = new string[4];
            //Seta compos.
            campos[0] = cx_mac.Text.Replace(":", "");
            campos[1] = cx_num_serie.Text;
            campos[2] = cx_patrimonio.Text;
            campos[3] = cx_preset.Text;

            bool continuar = false;



            if (String.IsNullOrEmpty(campos[0]) || String.IsNullOrWhiteSpace(campos[0]))
            {
                cx_mac.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[1]) || String.IsNullOrWhiteSpace(campos[1]))
            {
                cx_num_serie.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[2]) || String.IsNullOrWhiteSpace(campos[2]))
            {
                cx_patrimonio.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else if (String.IsNullOrEmpty(campos[3]) || String.IsNullOrWhiteSpace(campos[3]))
            {
                cx_preset.Focus();
                continuar = false;
                MessageBox.Show("Campo obrigatório!");
            }
            else
            {
                continuar = true;
            }


            if (continuar == true && estoque != null)
            {
                roteador = new Aluguel_Roteador();

                roteador.Est_ID         = estoque.Est_ID;
                roteador.modelo         = cb_modelo.Text;
                roteador.num_patrimonio = cx_patrimonio.Text;
                roteador.num_serie      = cx_num_serie.Text;
                roteador.preset         = cx_preset.Text;
                roteador.Fili_ID        = filial_static.Fili_ID;
                roteador.mac_adress     = cx_mac.Text;
                roteador.data_entrada   = DateTime.Now.ToString("yyyy-MM-dd");
                roteador.status         = 1;

                var acao = regra_estoque.add_a_roteador(roteador);

                if (acao == 53)
                {
                    roteador           = null;
                    cx_mac.Text        = "";
                    cx_num_serie.Text  = "";
                    cx_patrimonio.Text = "";
                    cx_preset.Text     = "";
                    mostrar_roteador_soDisponivel(filial_static, "", "");
                }
                else if (acao == 66)
                {
                    MessageBox.Show("Error [66]-> Equipamento já encontra-se cadastrado no banco de dados.");
                }
                else if (acao == 67)
                {
                    MessageBox.Show("Error [67]-> Entre em contato com o desenvolvedor.");
                }
            }
        }