//insert public int InsertEvaluaciones(string ideva, int idemp, int idjefe, string idcategoriaemp, string idbandaemp, string estatuseva) { DatoEvaluacion DatEvaluacion = new DatoEvaluacion(); return DatEvaluacion.InsertEvaluaciones(ideva , idemp, idjefe, idcategoriaemp, idbandaemp, estatuseva); }
// update public int ActualizarEvaluaciones(string ideva,int idemp, string idevaold) { DatoEvaluacion DatEvaluacion = new DatoEvaluacion(); return DatEvaluacion.ActualizarEvaluaciones(ideva, idemp, idevaold); }
public void InsertaNuevo(string noEmpleado) { IDEmpleado.Text = noEmpleado; this.capitalHumano = new NegocioCapitalHumano(); TablaEmpleados empleadosEbs = new TablaEmpleados(); try { List<Employee> listaEmpleados_insert = capitalHumano.ListaEmpleados(noEmpleado, "%", "%", "%", "%", "%", "%", "%", "%", "%", "%", Convert.ToDateTime("01/Jan/1950"), Convert.ToDateTime("01/Jan/9999")); TxtPuesto.Text = listaEmpleados_insert[0].Puesto.ToString(); TxtDepto.Text = listaEmpleados_insert[0].Organizacion.ToString(); Banda.Text = listaEmpleados_insert[0].Grado.ToString(); TxtEmpleado.Text = listaEmpleados_insert[0].NombreCompleto.ToString(); antiguedadmes.Text = listaEmpleados_insert[0].mesContratacion.ToString(); } catch (Exception e3) { throw e3; } string separarpto = TxtPuesto.Text; if (separarpto == null || separarpto == "") { MensajeError("No se encuentra asignado su Puesto o Depto en BD, consulte con Capital Humano"); return; } else { // Split separator string[] parts = separarpto.Split('.'); Depto.Text = parts[0]; Pto.Text = parts[1]; } TablaEmpleados empleadosEbs2 = new TablaEmpleados(); List<Employee> listaEmpleados2 = capitalHumano.ListaPersona(IDEmpleado.Text); //----para validar que no venga vacio los datos y marque error if (listaEmpleados2 == null) { TextBox1.Text = ""; MensajeError(capitalHumano.Log + " / o No se encuentra asignado su Jefe en BD, consulte con Capital Humano"); return; } else { TextBox1.Text = listaEmpleados2[0].Supervisor.ToString(); // antiguedadmes.Text = listaEmpleados2[0].mesContratacion.ToString(); } decimal antiguedadm; antiguedadm = Convert.ToDecimal(antiguedadmes.Text); if (antiguedadm <= 3) { MensajeError("No puedes realizar la AutoEvaluacion hasta que cumpla 3 Meses Laborando, consulte a Capital Humano"); return; } string connectionString = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString; using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = "SELECT id_plantilla FROM EVA_PLANTILLAS WHERE (vigencia_plant = '1')"; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { lbPlantilla.Text = dr["id_plantilla"].ToString(); } } else { //lbPlantilla.Text = "No se encontro plantilla autorizada"; lbPlantilla.Text = "1"; } } // cierre de la conn //--------------------------------PARA SACAR LA CATEGORIA POR LA BANDA lbidcategoria.Text = Banda.Text; using (SqlConnection cnx = new SqlConnection(connectionString)) { cnx.Open(); string query = "SELECT id_cat, banda, d_categoria FROM EVA_CATEGORIA " + "WHERE d_categoria= '" + Banda.Text + "' "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { ban.Text = dr["banda"].ToString(); } } else { ban.Text = "No se encontro categoria"; } } //PARA SACAR LA BANDA using (SqlConnection cnxban = new SqlConnection(connectionString)) { cnxban.Open(); string queryb = "SELECT id_banda, banda FROM EVA_BANDA WHERE (id_banda = '" + ban.Text + "')"; SqlCommand cmdb = new SqlCommand(queryb, cnxban); SqlDataReader drb = cmdb.ExecuteReader(); if (drb.HasRows) { while (drb.Read()) { Banda.Text = drb["banda"].ToString(); } } } // cierre de la conn List<Employee> listaEmpleados3 = capitalHumano.ListaPersonaName(TextBox1.Text); if (listaEmpleados3 != null) { TxtJefeDir.Text = listaEmpleados3[0].SupervisorName.ToString(); lbl_id_empAutoriza.Text = listaEmpleados3[0].SupervisorNoemp.ToString(); } else { MensajeError(capitalHumano.Log + " NO se encuentra actualizado su Jefe en BD, consulte con Capital Humano"); return; } // ULTIMO FOLIO USADO using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx.Open(); string query = "SELECT MAX(id_eva) AS ultimofolio FROM EVA_FOLIOS"; SqlCommand cmd = new SqlCommand(query, cnx); //cmd.Parameters.AddWithValue("@banda", Banda.Text); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { lbFolioeva.Text = dr["ultimofolio"].ToString(); } } else { lbFolioeva.Text = "No rows found"; } } // cierre de la conn SumaFolio(lbFolioeva.Text, 1); //INCREMENTO FOLIO lbFolioevanew.Text = SumaFolio(lbFolioeva.Text, 1); // para saber cual fue su ultima evaluacion o si es la primera vez que entra using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx.Open(); string query = " SELECT distinct(c.id_eva) as eva, c.id_emp, c.id_jefe, c.id_categoria_emp, c.id_banda_emp, c.estatus, c.fecha_captura, " + " DATEDIFF(day, c.fecha_captura, GETDATE()) AS diastranscurridos , d.id_plantilla " + " FROM EVA_C_EVALUACION as c, EVA_D_EVALUACION as d " + " WHERE (c.id_emp = @noempleado) and c.id_eva=d.id_eva and d.id_plantilla= @idplantilla and c.estatus<>'3'" + " ORDER BY c.fecha_captura"; SqlCommand cmd = new SqlCommand(query, cnx); cmd.Parameters.AddWithValue("@noempleado", IDEmpleado.Text); cmd.Parameters.AddWithValue("@idplantilla", lbPlantilla.Text); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { diastranscurridos.Text = dr["diastranscurridos"].ToString(); idestatus.Text = dr["estatus"].ToString(); opcion.Text = "-"; int diastras = Convert.ToInt32(diastranscurridos.Text); } } else { opcion.Text = "nuevo"; int diastras = 0; } } // cierre de la conn if (opcion.Text == "nuevo") { // inserto // si es mayor crear una nueva evaluacion e insertar valores e indicadores en tabla detalles DatoEvaluacion DatEvaluacion = new DatoEvaluacion(); if (DatEvaluacion.InsertEvaluaciones(lbFolioevanew.Text, Convert.ToInt32(IDEmpleado.Text), Convert.ToInt32(lbl_id_empAutoriza.Text), lbidcategoria.Text, ban.Text, "1") > 0) { //inserto en tabla detalle los valores nuvoil primero saco los datos a consultar using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx.Open(); string query = "SELECT a.c_seccion as seccion, a.c_valor as valor, a.c_comportamiento as comp " + "FROM EVA_D_VALORES AS a INNER JOIN EVA_C_VALORES AS b ON a.c_comportamiento = b.c_valor " + "WHERE a.c_banda = '" + ban.Text + "' and a.id_plantilla = '" + lbPlantilla.Text + "' "; SqlCommand cmd = new SqlCommand(query, cnx); cmd.Parameters.AddWithValue("@banda", Banda.Text); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { seccion.Text = dr["seccion"].ToString(); valor.Text = dr["valor"].ToString(); comportamiento.Text = dr["comp"].ToString(); DatoDeteva DatDeteva = new DatoDeteva(); if (DatDeteva.InsertDetEvaluacion(lbFolioevanew.Text, Convert.ToInt32(lbPlantilla.Text), seccion.Text, valor.Text, comportamiento.Text, 0) > 0) { //se ha insertado exitosamente } } } else { seccion.Text = "No hay seccion"; } } // cierre de la using } // del if de guardado de cabecera de evaluacion //ACTUALIZO EL FOLIO using (SqlConnection cnx2 = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx2.Open(); string query = "UPDATE EVA_FOLIOS set fecha=GETDATE(), idempleado='" + Convert.ToInt32(IDEmpleado.Text) + "', id_eva= '" + lbFolioevanew.Text + "'"; SqlCommand cmd = new SqlCommand(query, cnx2); SqlDataReader dr = cmd.ExecuteReader(); } } // del if del if (opcion.Text == "nuevo") //if (idestatus.Text == "0") //{ // using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) // { // cnx.Open(); // string query2 = " SELECT id_eva as ideva, id_emp, id_jefe, id_categoria_emp, id_banda_emp, estatus, fecha_captura, " + // " DATEDIFF(day, fecha_captura, GETDATE()) AS diastranscurridos, ptos_ftes as ptos, necesidades, comentarios " + // " FROM EVA_C_EVALUACION " + // " WHERE (id_emp = @noempleado) " + // " ORDER BY fecha_captura"; // SqlCommand cmd2 = new SqlCommand(query2, cnx); // cmd2.Parameters.AddWithValue("@noempleado", IDEmpleado.Text); // SqlDataReader dr2 = cmd2.ExecuteReader(); // if (dr2.HasRows) // { // while (dr2.Read()) // { // foliopendiente.Text = dr2["ideva"].ToString(); // lbFolioevanew.Text = foliopendiente.Text; // } // } // } //} // del if (idestatus.Text=="0") { //----------- para insertar indicadores //inserto si es la primera vez que va capturar sino solo consulto los resultados using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx.Open(); string query = " SELECT d.id_eva as ideva, d.id_plantilla as idplantilla, d.depto as depto, d.puesto as puesto, d.id_linea as idlinea, d.resultado_logrado as reslogrado, " + " d.ptos, d.ponderacion_ind as ponderacionind, c.descripcion_kpi as descripcion_kpi, c.unidad_medida as umedida, c.porcentaje_pondera as porcentaje_pondera, " + " c.meta_minima as meta_minima, c.meta_satisfactoria as meta_satisfactoria, c.meta_excelente as meta_excelente, d.calificacion_ind as calind " + " FROM EVA_D_INDICADORES as d, EVA_C_INDICADORES as c " + " WHERE left(d.depto,3)=left(c.depto,3) and left(d.puesto,3)=left(c.puesto,3) and d.id_plantilla=c.id_plantilla and " + " d.id_linea=c.id_linea and (d.id_eva = '" + lbFolioevanew.Text + "') and d.id_plantilla='" + lbPlantilla.Text + "' and " + " left(d.depto,3)='" + Depto.Text + "' and left(d.puesto,3)='" + Pto.Text + "' "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) { ban_existe_eva.Text = "1"; } } else { ban_existe_eva.Text = "0"; } } if (ban_existe_eva.Text == "0") { // busco los indicadores que le corresponde por su puesto y depto y plantilla cuando es la 1 vez using (SqlConnection cnx = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx.Open(); string query = " SELECT id_plantilla, depto, puesto, id_linea, descripcion_kpi, unidad_medida, porcentaje_pondera, meta_minima, meta_satisfactoria, meta_excelente " + " FROM EVA_C_INDICADORES " + " WHERE id_plantilla='" + lbPlantilla.Text + "' and " + " left(puesto,3)='" + Pto.Text + "' and left(depto,3)='" + Depto.Text + "' "; SqlCommand cmd = new SqlCommand(query, cnx); SqlDataReader dr2 = cmd.ExecuteReader(); if (dr2.HasRows) { while (dr2.Read()) { idlinea.Text = dr2["id_linea"].ToString(); desckpi.Text = dr2["descripcion_kpi"].ToString(); umedida.Text = dr2["unidad_medida"].ToString(); ppondera.Text = dr2["porcentaje_pondera"].ToString(); metaminima.Text = dr2["meta_minima"].ToString(); metasat.Text = dr2["meta_satisfactoria"].ToString(); metaexc.Text = dr2["meta_excelente"].ToString(); using (SqlConnection cnx2 = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString())) { cnx2.Open(); string query2 = " INSERT EVA_D_INDICADORES (id_eva, id_plantilla, depto, puesto, id_linea, fecha_captura_ind, resultado_logrado, ptos, ponderacion_ind, resultado_logrado_jefe, ptos_jefe, ponderacion_ind_jefe) " + " values ('" + lbFolioevanew.Text + "', '" + lbPlantilla.Text + "', '" + Depto.Text + "','" + Pto.Text + "', '" + idlinea.Text + "', GETDATE(), 0, 0, 0, 0, 0, 0 )"; SqlCommand cmd2 = new SqlCommand(query2, cnx2); SqlDataReader dr3 = cmd2.ExecuteReader(); //MensajeExito("Se ha guardado con Exito tu Evaluacion"); } } } else { MensajeError("No se puede insertar el detalle de indicador, revise con Capital Humano si tiene indicadores en su puesto"); return; } } } }