//Metodo Actualizar(CPersona oldPersona, CPersona newPersona) //Como CPersona es hija de CPersona es posible utilizar CPersona como tipo para los parametros public static void Actualizar(CEstudiante oldPersona, CEstudiante newPersona) { dataManagement = new SqlDataManagement(); CPersona.Actualizar(oldPersona, newPersona);//Ejecuta la version de Actualizar de CPersona //Realiza un Update a la tabla empleado insertando los datos de newPersona donde el campo IDENTIFICADOR //sea igual a oldPersona.id.Value dataManagement.ExecuteCommand($"UPDATE ESTUDIANTE SET CARRERA='{newPersona.carrera}', ESTADO='{newPersona.estado}' WHERE IDENTIFICADOR={oldPersona.id}"); }
//Metodo Actualizar(CPersona oldPersona, CPersona newPersona) //Como CEmpleado es hija de CPersona es posible utilizar CEmpleado como tipo para los parametros public static void Actualizar(CEmpleado oldPersona, CEmpleado newPersona) { dataManagement = new SqlDataManagement(); CPersona.Actualizar(oldPersona, newPersona);//Ejecuta la version de Actualizar de CPersona //Realiza un Update a la tabla empleado insertando los datos de newPersona donde el campo IDENTIFICADOR //sea igual a oldPersona.id.Value dataManagement.ExecuteCommand(@"UPDATE EMPLEADO SET TANDA_LABOR='" + newPersona.tandaLabor + "',PORCIENTO_COMISION=" + (newPersona.porcientoComision / 100) + ",SUELDO=" + newPersona.sueldo + ",ESTADO='" + newPersona.estado + "' WHERE IDENTIFICADOR=" + oldPersona.id.Value + " UPDATE USUARIO SET TIPO_USUARIO ='" + newPersona.tipoUsuario + "' WHERE ID_EMPLEADO=" + oldPersona.id); }
/*Metodo estatico Actualizar el cual utiliza dos parametros de tipo CPersona oldPersona y newPersona * oldPersona debera tomar los datos actuales de registro que se desea actualizar, mientras que new persona los nuevos*/ public static void Actualizar(CPersona oldPersona, CPersona newPersona) { dataManagement = new SqlDataManagement(); if (newPersona is CEmpleado) { dataManagement.ExecuteCommand($"UPDATE PERSONA SET NOMBRE='{newPersona.nombre}',GENERO='{newPersona.genero}' FROM PERSONA P INNER JOIN EMPLEADO E ON E.ID_PERSONA=P.ID_PERSONA WHERE IDENTIFICADOR={oldPersona.id}"); } else if (newPersona is CEstudiante) { dataManagement.ExecuteCommand($"UPDATE PERSONA SET NOMBRE='{newPersona.nombre}' ,GENERO='{newPersona.genero}' FROM PERSONA P INNER JOIN ESTUDIANTE E ON E.ID_PERSONA=P.ID_PERSONA WHERE IDENTIFICADOR={oldPersona.id}"); } }