예제 #1
0
        private void BorrarToolStripButton_Click(object sender, EventArgs e)
        {
            if (DatosDataGridView.SelectedRows.Count > 0)
            {
                DataGridViewRow r        = DatosDataGridView.SelectedRows[0];
                Colmenar        colmenar = (Colmenar)r.Tag;

                DialogResult dr = MessageBox.Show(this, $"¿Desea dar de baja a la Colmenar {colmenar.NombreColmenar}?",
                                                  "Confirmar Baja",
                                                  MessageBoxButtons.YesNo,
                                                  MessageBoxIcon.Question);
                if (dr == DialogResult.Yes)
                {
                    try
                    {
                        _servicio.Borrar(colmenar.ColmenarID);
                        DatosDataGridView.Rows.Remove(r);
                        MessageBox.Show("Registro borrado");
                    }
                    catch (Exception exception)
                    {
                        MessageBox.Show(exception.Message);
                    }
                }
            }
        }
예제 #2
0
        public void AgregarFila(Colmenar producto)
        {
            DataGridViewRow r = ConstruirFila();

            SetearFila(r, producto);
            AgregarFila(r);
        }
예제 #3
0
        public List <Colmenar> GetLista(decimal EstadoColmenaID)
        {
            List <Colmenar> listaCol = new List <Colmenar>();

            try
            {
                string cadenaComando =
                    "SELECT ColmenarId, NombreColmenar, CiudadId, CantidadColmena, EstadoColmenaID, InsumoID" +
                    " FROM Colmenares WHERE EstadoColmenaID=@id";
                SqlCommand comando = new SqlCommand(cadenaComando, _connection);
                comando.Parameters.AddWithValue("@id", EstadoColmenaID);
                SqlDataReader reader = comando.ExecuteReader();
                while (reader.Read())
                {
                    Colmenar colmenar = ConstruirColmenar(reader);
                    listaCol.Add(colmenar);
                }
                reader.Close();
                return(listaCol);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
예제 #4
0
        public List <Colmenar> GetLista(string colmenar)
        {
            List <Colmenar> lista = new List <Colmenar>();

            try
            {
                string cadenaComando =
                    "SELECT ColmenarId, NombreColmenar, CiudadId, CantidadColmena, InsumoID " +
                    " FROM Colmenares WHERE NombreColmenar LIKE @desc";
                SqlCommand comando = new SqlCommand(cadenaComando, _connection);
                comando.Parameters.AddWithValue("@desc", $"%{colmenar}%");
                SqlDataReader reader = comando.ExecuteReader();
                while (reader.Read())
                {
                    Colmenar colmenars = ConstruirColmenar(reader);
                    lista.Add(colmenars);
                }
                reader.Close();
                return(lista);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
예제 #5
0
 public bool Existe(Colmenar colmenar)
 {
     try
     {
         SqlCommand comando;
         if (colmenar.ColmenarID == 0)
         {
             string cadenaComando = "SELECT ColmenarID, NombreColmenar,CiudadID, CantidadColmena, InsumoID FROM Colmenares WHERE CiudadID=@ciudad AND NombreColmenar=@nombre AND CantidadColmena=@colm AND InsumoID=@insu AND EstadoColmenaID=@esta";
             comando = new SqlCommand(cadenaComando, _connection);
             comando.Parameters.AddWithValue("@nombre", colmenar.NombreColmenar);
             comando.Parameters.AddWithValue("@ciudad", colmenar.Ciudad.CiudadID);
             comando.Parameters.AddWithValue("@colm", colmenar.CantidadColmena);
             comando.Parameters.AddWithValue("@esta", colmenar.EstadoColmena.EstadoColmenaID);
             comando.Parameters.AddWithValue("@insu", colmenar.Insumo.InsumoID);
         }
         else
         {
             string cadenaComando = "SELECT ColmenarID, NombreColmenar,CiudadID, InsumoID FROM Colmenares WHERE CiudadID=@ciudad AND NombreColmenar=@nombre AND CantidadColmena=@colm AND EstadoColmenaID=@esta AND InsumoID=@insu AND ColmenarID<>@id";
             comando = new SqlCommand(cadenaComando, _connection);
             comando.Parameters.AddWithValue("@nombre", colmenar.NombreColmenar);
             comando.Parameters.AddWithValue("@id", colmenar.ColmenarID);
             comando.Parameters.AddWithValue("@ciudad", colmenar.Ciudad.CiudadID);
             comando.Parameters.AddWithValue("@colm", colmenar.CantidadColmena);
             comando.Parameters.AddWithValue("@esta", colmenar.EstadoColmena.EstadoColmenaID);
             comando.Parameters.AddWithValue("@insu", colmenar.Insumo.InsumoID);
         }
         SqlDataReader reader = comando.ExecuteReader();
         return(reader.HasRows);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
예제 #6
0
 private void SetearFila(DataGridViewRow r, Colmenar colmenar)
 {
     r.Cells[CmnColmenar.Index].Value        = colmenar.NombreColmenar;
     r.Cells[CmnCantidadColmena.Index].Value = colmenar.CantidadColmena;
     r.Cells[CmnCiudad.Index].Value          = colmenar.Ciudad.ciudad;
     r.Cells[CmnEstadoColmenar.Index].Value  = colmenar.EstadoColmena.estadoColmena;
     r.Cells[CmnInsumo.Index].Value          = colmenar.Insumo.insumo;
     r.Cells[CmnCantidadInsumo.Index].Value  = colmenar.CantidadInsumo;
     r.Tag = colmenar;
 }
예제 #7
0
        public void Guardar(Colmenar colmenar)
        {
            if (colmenar.ColmenarID == 0)
            {
                try
                {
                    string cadenaComando = "INSERT INTO Colmenares (NombreColmenar, CiudadId, CantidadColmena, EstadoColmenaID, InsumoID,CantidadInsumo) VALUES (@desc, @ciudad, @colm, @esta, @insu,@cant)";
                    var    comando       = new SqlCommand(cadenaComando, _connection, _tran);
                    comando.Parameters.AddWithValue("@desc", colmenar.NombreColmenar);
                    comando.Parameters.AddWithValue("@ciudad", colmenar.Ciudad.CiudadID);
                    comando.Parameters.AddWithValue("@colm", colmenar.CantidadColmena);
                    comando.Parameters.AddWithValue("@esta", colmenar.EstadoColmena.EstadoColmenaID);
                    comando.Parameters.AddWithValue("@insu", colmenar.Insumo.InsumoID);
                    comando.Parameters.AddWithValue("@cant", colmenar.CantidadInsumo);

                    comando.ExecuteNonQuery();
                    cadenaComando = "SELECT @@IDENTITY";
                    comando       = new SqlCommand(cadenaComando, _connection, _tran);
                    int id = (int)(decimal)comando.ExecuteScalar();
                    colmenar.ColmenarID = id;
                }
                catch (Exception e)
                {
                    throw new Exception(e.Message);
                }
            }
            else
            {
                try
                {
                    string     cadenaComando = "UPDATE Colmenares SET NombreColmenar=@nombre,CiudadId=@ciudadId, CantidadColmena=@colm, EstadoColmenaID=@esta, InsumoID=@insu ,CantidadInsumo=@cant WHERE ColmenarId=@id";
                    SqlCommand comando       = new SqlCommand(cadenaComando, _connection, _tran);
                    comando.Parameters.AddWithValue("@nombre", colmenar.NombreColmenar);
                    comando.Parameters.AddWithValue("@ciudadId", colmenar.Ciudad.CiudadID);
                    comando.Parameters.AddWithValue("@colm", colmenar.CantidadColmena);
                    comando.Parameters.AddWithValue("@esta", colmenar.EstadoColmena.EstadoColmenaID);
                    comando.Parameters.AddWithValue("@insu", colmenar.Insumo.InsumoID);
                    comando.Parameters.AddWithValue("@cant", colmenar.CantidadInsumo);

                    comando.Parameters.AddWithValue("@id", colmenar.ColmenarID);
                    comando.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    throw new Exception(e.Message);
                }
            }
        }
예제 #8
0
 public void EditarInsumo(Colmenar colmenar)
 {
     try
     {
         var cadenaDeComando = "UPDATE Insumos SET Cantidad-=@cant WHERE InsumoId=@id";
         var comando         = new SqlCommand(cadenaDeComando, _connection, _tran);
         comando.Parameters.AddWithValue("@id", colmenar.Insumo.InsumoID);
         comando.Parameters.AddWithValue("@cant", colmenar.CantidadInsumo);
         comando.ExecuteNonQuery();
         colmenar.Insumo.Cantidad -= Convert.ToDecimal(colmenar.CantidadInsumo);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
예제 #9
0
        private Colmenar ConstruirColmenar(SqlDataReader reader)
        {
            _repositorioEstadoColmena = new RepositorioEstadoColmena(_connection);
            Colmenar colmenar = new Colmenar();

            colmenar.ColmenarID      = reader.GetDecimal(0);
            colmenar.NombreColmenar  = reader.GetString(1);
            colmenar.Ciudad          = _repositorioCiudad.GetCiudadPorId(reader.GetDecimal(2));
            colmenar.CantidadColmena = reader.GetDecimal(3);
            colmenar.EstadoColmena   = _repositorioEstadoColmena.GetEstadoColmenaPorId(reader.GetDecimal(4));
            colmenar.Insumo          = _repositorioInsumo.GetInsumoPorId(reader.GetDecimal(5));
            colmenar.CantidadInsumo  = reader.GetDecimal(6);


            return(colmenar);
        }
예제 #10
0
 public bool Existe(Colmenar colmenar)
 {
     try
     {
         _conexion            = new ConexionBD();
         repositorioPais      = new RepositorioPais(_conexion.AbrirConexion());
         repositorioProvincia = new RepositorioProvincia(_conexion.AbrirConexion(), repositorioPais);
         _repositorioCiudad   = new RepositorioCiudad(_conexion.AbrirConexion(), repositorioProvincia);
         repositorioInsumo    = new RepositorioInsumo(_conexion.AbrirConexion(), repositorioProveedor);
         _repositorioColmenar = new RepositorioColmenar(_conexion.AbrirConexion(), _repositorioCiudad, repositorioEstadoColmena, repositorioInsumo);
         var existe = _repositorioColmenar.Existe(colmenar);
         _conexion.CerrarConexion();
         return(existe);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
 }
예제 #11
0
 public void Guardar(Colmenar colmenar)
 {
     try
     {
         _conexion = new ConexionBD();
         SqlConnection cn = _conexion.AbrirConexion();
         transaction          = cn.BeginTransaction();
         _repositorioColmenar = new RepositorioColmenar(cn, transaction);
         repositorioInsumo    = new RepositorioInsumo(cn, transaction);
         repositorioInsumo.EditarInsumo(colmenar);
         _repositorioColmenar.Guardar(colmenar);
         transaction.Commit();
         _conexion.CerrarConexion();
     }
     catch (Exception e)
     {
         transaction.Rollback();
         throw new Exception(e.Message);
     }
 }
예제 #12
0
        private void EditarToolStripButton_Click(object sender, EventArgs e)
        {
            if (DatosDataGridView.SelectedRows.Count == 0)
            {
                return;
            }

            DataGridViewRow r = DatosDataGridView.SelectedRows[0];
            Colmenar        p = (Colmenar)r.Tag;

            p = _servicio.GetColmenarPorId(p.ColmenarID);
            FrmColmenaresAE frm = new FrmColmenaresAE();

            frm.Text = "Editar Colmenar";
            frm.SetColmenar(p);
            DialogResult dr = frm.ShowDialog(this);

            if (dr == DialogResult.OK)
            {
                try
                {
                    p = frm.GetColmenar();
                    if (!_servicio.Existe(p))
                    {
                        _servicio.Guardar(p);
                        SetearFila(r, p);
                        MessageBox.Show("Registro modificado");
                    }
                    else
                    {
                        MessageBox.Show("Colmenar Repetido ");
                    }
                }
                catch (Exception exception)
                {
                    Console.WriteLine(exception);
                    throw;
                }
            }
        }
예제 #13
0
        public List <Colmenar> GetLista()
        {
            List <Colmenar> lista = new List <Colmenar>();

            try
            {
                string cadenaComando =
                    "SELECT ColmenarId, NombreColmenar, CiudadId, CantidadColmena, EstadoColmenaID, InsumoID, CantidadInsumo " +
                    " FROM Colmenares";
                SqlCommand    comando = new SqlCommand(cadenaComando, _connection);
                SqlDataReader reader  = comando.ExecuteReader();
                while (reader.Read())
                {
                    Colmenar colmenar = ConstruirColmenar(reader);
                    lista.Add(colmenar);
                }
                reader.Close();
                return(lista);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
예제 #14
0
        public Colmenar GetColmenarPorId(decimal id)
        {
            Colmenar p = null;

            try
            {
                string cadenaComando =
                    "SELECT ColmenarId, NombreColmenar, CiudadId, CantidadColmena, EstadoColmenaID, InsumoID,CantidadInsumo FROM Colmenares WHERE ColmenarId=@id";
                SqlCommand comando = new SqlCommand(cadenaComando, _connection);
                comando.Parameters.AddWithValue("@id", id);
                SqlDataReader reader = comando.ExecuteReader();
                if (reader.HasRows)
                {
                    reader.Read();
                    p = ConstruirColmenar(reader);
                }
                reader.Close();
                return(p);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
예제 #15
0
 public bool EstaRelacionado(Colmenar colmenar)
 {
     throw new System.NotImplementedException();
 }