public bool ModficarRequisitosLegalesOtros(RequisitosLegalesOtros objreq)
        {
            try
            {
                dbReqLeg.Entry(objreq).State = EntityState.Modified;
                dbReqLeg.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                strError = ex.Message;
                return(false);
            }
        }
        public bool GrabarRequisitosLegalesOtros(RequisitosLegalesOtros objreq)
        {
            try
            {
                dbReqLeg.Tbl_Requisitos_legales_Otros.Add(objreq);
                dbReqLeg.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                strError = ex.Message;
                return(false);
            }
        }
        /// <summary>
        /// metodo para guardar requisito creado por el formulario -  para agregar a la matriz
        /// </summary>
        /// <param name="objreq"></param>
        /// <returns></returns>
        public bool GrabarRequisitosLegalesOtros_Formulario(RequisitosLegalesOtros objreqformulario, int pk_matriz)
        {
            try
            {
                RequisitosLegalesOtros objreqleg = new RequisitosLegalesOtros();

                //objreq.FK_Empresa = usuarioActual.IdEmpresa;
                objreqformulario.Evidencia_Cumplimiento     = "";
                objreqformulario.FK_Cumplimiento_Evaluacion = 4;
                objreqformulario.Hallazgo = "";
                objreqformulario.FK_Estado_RequisitoslegalesOtros = 4;
                objreqformulario.Responsable = "";
                objreqformulario.Fecha_Seguimiento_Control = DateTime.Now;
                objreqformulario.Fecha_Actualizacion       = DateTime.Now;
                //objreq.FK_Empresa = usuarioActual.IdEmpresa;
                //objreqformulario.FK_Actividad_Economica = pk_ActividadEconomica;

                objreqleg = dbReqLeg.Tbl_Requisitos_legales_Otros.Add(objreqformulario);   // se guarda el requisito legal en Tbl_Requisitos_legales_Otros
                dbReqLeg.SaveChanges();


                Requisitos_Matriz objreqmat = new Requisitos_Matriz();

                objreqmat.FK_RequisitosLegalesOtros  = objreqleg.PK_RequisitosLegalesOtros;
                objreqmat.FK_MatrizRequisitosLegales = pk_matriz;

                //dbReqLeg.Tbl_Requisitos_Matriz.Add(objreqmat);// se guarda el registro en la tabla Tbl_Requisitos_Matriz (contiene el requisito creado desde el formulario)
                //dbReqLeg.SaveChanges();

                GrabarMatriz_ReuisitoNuevo_Formulaio(objreqmat);

                pk_ActividadEconomica = 0;   /*****variable estatica para agregar la pkactividadeconomica*****/

                return(true);
            }
            catch (Exception ex)
            {
                strError = ex.Message;
                return(false);
            }
        }
        /// <summary>
        /// metodo para eliminar los requisitos legales de la matriz
        /// </summary>
        /// <param name=""></param>
        /// <returns></returns>
        public bool Eliminar_ReqLegalesOtros(int PK_RequisitosLegales)
        {
            try
            {
                RequisitosLegalesOtros ObregLeg = dbReqLeg.Tbl_Requisitos_legales_Otros.Where(g => g.PK_RequisitosLegalesOtros == PK_RequisitosLegales).FirstOrDefault();

                Requisitos_Matriz objreqmat = dbReqLeg.Tbl_Requisitos_Matriz.Where(g => g.FK_RequisitosLegalesOtros == PK_RequisitosLegales).FirstOrDefault();

                dbReqLeg.Tbl_Requisitos_legales_Otros.Remove(ObregLeg);

                dbReqLeg.Tbl_Requisitos_Matriz.Remove(objreqmat);

                dbReqLeg.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                strError = ex.Message;
                return(false);
            }
        }
        /// <summary>
        /// SE GUARDAN LOS NUEVOS REQUISITOS SELECCIONADOS EN LA MATRIZ SELECCIONADA
        /// </summary>
        /// <param name="OtrasInteracciones"></param>
        /// <returns></returns>
        public bool GuardarNuevoRequisitos_SeleccionadosMatriz(RequisitosLegalesOtros objreq, int PKMatriz)
        {
            try
            {
                dbReqLeg.Tbl_Requisitos_legales_Otros.Add(objreq);   //SE GUARDA EL REQUISITO EN LA TABLA Tbl_Requisitos_legales_Otros
                dbReqLeg.SaveChanges();

                //consulta para saber cual es la FK con la que quedo almacenado el requisito en base de datos

                RequisitosLegalesOtros objmat = new RequisitosLegalesOtros();

                RequisitosLegalesOtros objmatreqle = dbReqLeg.Tbl_Requisitos_legales_Otros.Where(g => g.Numero_Norma == objreq.Numero_Norma).FirstOrDefault();
                //MatrizRequisitosLegales objmatreq = dbReqLeg.Tbl_Matriz_RequisitosLegales.Where(g => g.NombreMatriz == varnombrematyriz).FirstOrDefault();



                Requisitos_Matriz objm = new Requisitos_Matriz();


                MatrizRequisitosLegales objmatr = new MatrizRequisitosLegales();

                //se consulta el PK y se almacena en la tabla resquisitosmatriz con su correspondiente matriz

                int requisito;

                objm.FK_RequisitosLegalesOtros  = objreq.PK_RequisitosLegalesOtros; // SE TIENE LA PK ALMACENADA DEL REGISTRO
                objm.FK_MatrizRequisitosLegales = PKMatriz;                         // SE ALMACENA EL NOMBRE DE LA MATRIZ

                RelacionarRequisitosMatriz(objm);


                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
 public bool GuardarRequisitos_Seleccionados(RequisitosLegalesOtros objre, int varnombrematyriz)
 {
     return(gb.GuardarRequisitos_Seleccionados(objre, varnombrematyriz));
 }
 /*
  * public bool EliminarRequisitosLegalesOtros(int PK_RequisitosLegales)
  * {
  *  return gb.EliminaRequisitosLegalesOtros(PK_RequisitosLegales);
  * }
  */
 public bool ModficarRequisitosLegalesOtros(RequisitosLegalesOtros objreq)
 {
     return(gb.ModficarRequisitosLegalesOtros(objreq));
 }
        /*
         * public bool GrabarRequisitosLegalesOtros_formulario(RequisitosLegalesOtros objreq)
         * {
         *
         *
         *
         *   int PK_RequisitosLegales;
         *
         *   PK_RequisitosLegales = objreq.PK_RequisitosLegalesOtros;
         *
         *
         *
         *
         *   RequisitosLegalesOtros objreqBusqueda = gb.BuscarRequisitosLegalesOtros(PK_RequisitosLegales);
         *
         *   objreqBusqueda.Evidencia_Cumplimiento = objreq.Evidencia_Cumplimiento;
         *   objreqBusqueda.FK_Cumplimiento_Evaluacion = objreq.FK_Cumplimiento_Evaluacion;
         *   objreqBusqueda.Hallazgo = objreq.Hallazgo;
         *   objreqBusqueda.FK_Estado_RequisitoslegalesOtros = objreq.FK_Estado_RequisitoslegalesOtros;
         *   objreqBusqueda.Responsable = objreq.Responsable;
         *   objreqBusqueda.Fecha_Seguimiento_Control = objreq.Fecha_Seguimiento_Control;
         *   objreqBusqueda.Fecha_Actualizacion = objreq.Fecha_Actualizacion;
         *
         *
         *
         *   return gb.ModificarRequisitosLegalesOtros_Matriz(objreqBusqueda);
         *
         *
         *   //return gb.GrabarRequisitosLegalesOtros(objreq);
         *
         *
         * }
         *
         */


        public bool GrabarRequisitosLegalesOtros_Formulario(RequisitosLegalesOtros objreqformulario, int pk_matriz)
        {
            return(gb.GrabarRequisitosLegalesOtros_Formulario(objreqformulario, pk_matriz));
        }
 public bool GuardarNuevoRequisitos_SeleccionadosMatriz(RequisitosLegalesOtros objre, int PKMatriz)
 {
     return(gb.GuardarNuevoRequisitos_SeleccionadosMatriz(objre, PKMatriz));
 }
        public RequisitosLegalesOtros BuscarRequisitosLegalesOtros(int PK_RequisitosLegales)
        {
            RequisitosLegalesOtros ObregLeg = dbReqLeg.Tbl_Requisitos_legales_Otros.Where(g => g.PK_RequisitosLegalesOtros == PK_RequisitosLegales).FirstOrDefault();

            return(ObregLeg);
        }
        /// <summary>
        /// SE GUARDAN LOS REQUISITOS SELECCIONADOS PARA CREAR LA MATRIZ
        /// </summary>
        /// <param name="OtrasInteracciones"></param>
        /// <returns></returns>
        public bool GuardarRequisitos_Seleccionados(RequisitosLegalesOtros objreq, int fkmatriz)
        {
            try
            {
                if (PKMatrizreqlegalea != 0)
                {
                    if (objreq.Numero_Norma == null)
                    {
                        objreq.Numero_Norma = Convert.ToString('-');
                    }

                    dbReqLeg.Tbl_Requisitos_legales_Otros.Add(objreq);
                    dbReqLeg.SaveChanges();

                    //consulta para saber cual es la FK con la que quedo almacenado el requisito en base de datos

                    RequisitosLegalesOtros objmat = new RequisitosLegalesOtros();


                    Requisitos_Matriz objm = new Requisitos_Matriz();


                    MatrizRequisitosLegales objmatr = new MatrizRequisitosLegales();

                    //se consulta el PK y se almacena en la tabla resquisitosmatriz con su correspondiente matriz

                    //int requisito;

                    objm.FK_RequisitosLegalesOtros  = objreq.PK_RequisitosLegalesOtros; // SE TIENE LA PK ALMACENADA DEL REGISTRO
                    objm.FK_MatrizRequisitosLegales = PKMatrizreqlegalea;               // SE ALMACENA EL NOMBRE DE LA MATRIZ

                    RelacionarRequisitosMatriz(objm);
                    objm = null;
                    //PKMatrizreqlegalea = 0;
                    return(true);
                }
                else
                {
                    dbReqLeg.Tbl_Requisitos_legales_Otros.Add(objreq);
                    dbReqLeg.SaveChanges();

                    //consulta para saber cual es la FK con la que quedo almacenado el requisito en base de datos

                    RequisitosLegalesOtros objmat = new RequisitosLegalesOtros();


                    Requisitos_Matriz objm = new Requisitos_Matriz();


                    MatrizRequisitosLegales objmatr = new MatrizRequisitosLegales();

                    //se consulta el PK y se almacena en la tabla resquisitosmatriz con su correspondiente matriz

                    //int requisito;

                    objm.FK_RequisitosLegalesOtros  = objreq.PK_RequisitosLegalesOtros; // SE TIENE LA PK ALMACENADA DEL REGISTRO
                    objm.FK_MatrizRequisitosLegales = fkmatriz;                         // SE ALMACENA EL NOMBRE DE LA MATRIZ

                    RelacionarRequisitosMatriz(objm);
                    objm = null;
                    //PKMatrizreqlegalea = 0;
                    return(true);
                }
            }
            catch (Exception)
            {
                return(false);
            }
        }