/// <summary> /// Agrega un material a la lista de MateriaPrima /// </summary> /// <param name="listaMateriaPrima"></param> /// <param name="nuevaFabricacion"></param> public static void AgregarMaterial(List <MateriaPrima> listaMateriaPrima, MateriaPrima nuevaFabricacion) { nuevaFabricacion.Id = (int)lector["Id"]; nuevaFabricacion.Material = lector["Material"].ToString(); nuevaFabricacion.Proceso = lector["Proceso"].ToString(); nuevaFabricacion.Origen = lector["Origen"].ToString(); nuevaFabricacion.Cantidad = (int)lector["Cantidad"]; nuevaFabricacion.Calidad = lector["Calidad"].ToString(); nuevaFabricacion.Color = lector["Color"].ToString(); listaMateriaPrima.Add(nuevaFabricacion); }
/// <summary> /// Calcula las ganancias de los materiales diferenciando su tipo y calidad /// </summary> /// <param name="material"></param> /// <returns></returns> public float CalcularGanancia(MateriaPrima material) { float ganancia = 0; if (material is Arrabio) { switch (material.Calidad) { case "Malo": { ganancia = Cantidad * (float)0.7; break; } case "Bueno": { ganancia = Cantidad * (float)0.8; break; } case "Excelente": { ganancia = Cantidad * (float)0.9; break; } } } else { switch (material.Calidad) { case "Malo": { ganancia = Cantidad * (float)0.6; break; } case "Bueno": { ganancia = Cantidad * (float)0.7; break; } case "Excelente": { ganancia = Cantidad * (float)0.8; break; } } } return(ganancia); }
/// <summary> /// Modifica la fabricacion recibida por parametro en la tabla de la base de datos /// </summary> /// <param name="fabricacion"></param> /// <returns></returns> public static bool UpdateMateriaPrima(MateriaPrima fabricacion) { bool seModifico = false; string consulta = "UPDATE Materiales SET Material=@material, Proceso=@proceso, Origen=@origen, Cantidad=@cantidad, Calidad=@calidad, Color=@color WHERE Id=@id"; MateriaPrimaDAO.comando.CommandText = consulta; MateriaPrimaDAO.comando.Parameters.AddWithValue("@material", fabricacion.Material); MateriaPrimaDAO.comando.Parameters.AddWithValue("@proceso", fabricacion.Proceso); MateriaPrimaDAO.comando.Parameters.AddWithValue("@origen", fabricacion.Origen); MateriaPrimaDAO.comando.Parameters.AddWithValue("@cantidad", fabricacion.Cantidad); MateriaPrimaDAO.comando.Parameters.AddWithValue("@calidad", fabricacion.Calidad); MateriaPrimaDAO.comando.Parameters.AddWithValue("@color", fabricacion.Color); MateriaPrimaDAO.comando.Parameters.AddWithValue("@id", fabricacion.Id); try { if (MateriaPrimaDAO.conexion.State != ConnectionState.Open && MateriaPrimaDAO.conexion.State != ConnectionState.Connecting) { MateriaPrimaDAO.conexion.Open(); } int filasAfectadas = MateriaPrimaDAO.comando.ExecuteNonQuery(); if (filasAfectadas > 0) { seModifico = true; } } catch (Exception ex) { throw ex; } finally { if (MateriaPrimaDAO.conexion.State != ConnectionState.Closed) { MateriaPrimaDAO.conexion.Close(); } MateriaPrimaDAO.comando.Parameters.Clear(); } return(seModifico); }
/// <summary> /// Inserta la materiaPrima recibida por parametro en la tabla de la base de datos. /// </summary> /// <param name="fabricacion"></param> /// <returns></returns> public static bool InsertMateriaPrima(MateriaPrima fabricacion) { bool seInserto = false; string consulta = "INSERT INTO Materiales (Material, Proceso, Origen, Cantidad, Calidad, Color) VALUES(@material, @proceso, @origen, @cantidad, @calidad, @color)"; MateriaPrimaDAO.comando.CommandText = consulta; MateriaPrimaDAO.comando.Parameters.AddWithValue("@material", fabricacion.Material); MateriaPrimaDAO.comando.Parameters.AddWithValue("@proceso", fabricacion.Proceso); MateriaPrimaDAO.comando.Parameters.AddWithValue("@origen", fabricacion.Origen); MateriaPrimaDAO.comando.Parameters.AddWithValue("@cantidad", fabricacion.Cantidad); MateriaPrimaDAO.comando.Parameters.AddWithValue("@calidad", fabricacion.Calidad); MateriaPrimaDAO.comando.Parameters.AddWithValue("@color", fabricacion.Color); try { if (MateriaPrimaDAO.conexion.State != ConnectionState.Open && MateriaPrimaDAO.conexion.State != ConnectionState.Connecting) { MateriaPrimaDAO.conexion.Open(); } int filasAfectadas = MateriaPrimaDAO.comando.ExecuteNonQuery(); if (filasAfectadas > 0) { seInserto = true; } } catch (Exception ex) { throw ex; } finally { if (MateriaPrimaDAO.conexion.State != ConnectionState.Closed) { MateriaPrimaDAO.conexion.Close(); } MateriaPrimaDAO.comando.Parameters.Clear(); } return(seInserto); }
/// <summary> /// Agrega un material a la lista /// </summary> /// <param name="materia"></param> private void AgregarMaterial(MateriaPrima materia) { this.listaDeMateriales.Add(materia); }