public ClasificacionCorte ClasificacionCorteModificar(ClasificacionCorte AClasificacionCorte)
 {
     if (!_ClasificacionCortesPersistencia.ExisteClasificacionCorte(AClasificacionCorte))
         return _ClasificacionCortesPersistencia.ClasificacionCorteModificar(AClasificacionCorte);
     else
         return null;
 }
        public bool ExisteClasificacionCorte(ClasificacionCorte AClasificacionCorte)
        {
            string pSentencia = "SELECT ID FROM CLASIFICACIONCORTES WHERE UPPER(TRIM(DESCRIPCION)) = @DESCRIPCION";
            FbConnection con = _Conexion.ObtenerConexion();

            FbCommand com = new FbCommand(pSentencia, con);
            com.Parameters.Add("@DESCRIPCION", FbDbType.VarChar).Value = AClasificacionCorte.Descripcion.ToUpper().Trim();

            try
            {
                con.Open();

                FbDataReader reader = com.ExecuteReader();

                if (reader.Read())
                {
                    if ((int)reader["ID"] == AClasificacionCorte.Id)
                        return false;
                    else return true;
                }
            }
            finally
            {
                if (con.State == System.Data.ConnectionState.Open)
                {
                    con.Close();
                }
            }

            return false;
        }
 private ClasificacionCorte ReaderToEntidad(FbDataReader AReader)
 {
     ClasificacionCorte pResult = new ClasificacionCorte();
     pResult.Id          = (int)AReader["ID"];
     pResult.Descripcion = AReader["DESCRIPCION"] != DBNull.Value ? (string)AReader["DESCRIPCION"] : "";
     pResult.Lotes       = AReader["LOTES"] != DBNull.Value? (string)AReader["LOTES"] : "";
     return pResult;
 }
        public ClasificacionCorte ClasificacionCorteModificar(ClasificacionCorte AClasificacionCorte)
        {

            string pSentencia = "UPDATE CLASIFICACIONCORTES SET DESCRIPCION=@DESCRIPCION, LOTES=@LOTES WHERE ID=@IDD RETURNING ID";
            FbConnection con = _Conexion.ObtenerConexion();

            FbCommand com = new FbCommand(pSentencia, con);
            com.Parameters.Add("@IDD", FbDbType.Integer).Value         = AClasificacionCorte.Id;
            com.Parameters.Add("@DESCRIPCION", FbDbType.VarChar).Value = AClasificacionCorte.Descripcion;
            com.Parameters.Add("@LOTES", FbDbType.VarChar).Value       = AClasificacionCorte.Lotes;

            FbParameter pOutParameter = new FbParameter("@ID", FbDbType.Integer);
            pOutParameter.Direction = ParameterDirection.Output;
            com.Parameters.Add(pOutParameter);

            try
            {
                con.Open();
                com.ExecuteNonQuery();
            }
            finally
            {
                if (con.State == System.Data.ConnectionState.Open)
                {
                    con.Close();
                }
            }

            return ClasificacionCorteObtener((int)pOutParameter.Value);
        }
        public List<ClasificacionCorte> ObtenerListaClasificaciones()
        {
            string pSentencia = "SELECT ID, DESCRIPCION, LOTES FROM CLASIFICACIONCORTES";
            FbConnection con = _Conexiones.ObtenerConexion();
            FbCommand com = new FbCommand(pSentencia, con);
            List<ClasificacionCorte> pResult = new List<ClasificacionCorte>();
            try
            {

                con.Open();
                FbDataReader reader = com.ExecuteReader();
                while (reader.Read())
                {
                    ClasificacionCorte pClasificacionCorte = new ClasificacionCorte();
                    pClasificacionCorte.Id                 = (reader["ID"] != DBNull.Value) ? (int)reader["ID"] : -1;
                    pClasificacionCorte.Descripcion        = (reader["DESCRIPCION"] != DBNull.Value) ? (string)reader["DESCRIPCION"] : "";
                    pClasificacionCorte.Lotes              = (reader["LOTES"] != DBNull.Value) ? (string)reader["LOTES"] : "";
                    pResult.Add(pClasificacionCorte);
                }
            }
            finally
            {
                if (con.State == System.Data.ConnectionState.Open)
                {
                    con.Close();
                }
            }
            return pResult;
        }
		public JsonResult Modificar(ClasificacionCorte ClasificacionCorte){
			return Json(this._ClasificacionCortesLogica.ClasificacionCorteModificar(ClasificacionCorte));			
		}
		public JsonResult Insertar(ClasificacionCorte ClasificacionCorte){
			return Json(this._ClasificacionCortesLogica.ClasificacionCorteInsertar(ClasificacionCorte));			
		}