public static List<licenciasTrabajadores> obtenerTodas(string rut) { List<licenciasTrabajadores> retorno = new List<licenciasTrabajadores>(); SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "SELECT * FROM licencias_trabajadores WHERE rut='" + rut + "'"; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { licenciasTrabajadores temp = new licenciasTrabajadores(); temp.rut = (string)dr["rut"]; temp.fecha = (DateTime)dr["fecha"]; temp.descripcion = (string)dr["descripcion"]; retorno.Add(temp); } cnx.Close(); return retorno; }
public static int cantidadDiasLicencia(string rut, DateTime fechaInicio, DateTime fechaFinal) { SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "SELECT * FROM licencias_trabajadores WHERE fecha >= @fechaInicial AND fecha <=@fechaFinal AND rut=@rut"; cmd.Parameters.Add("@fechaInicial", SqlDbType.DateTime).Value = fechaInicio; cmd.Parameters.Add("@fechaFinal", SqlDbType.DateTime).Value = fechaFinal; cmd.Parameters.Add("@rut", SqlDbType.VarChar).Value = rut; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); int cantidadDias=0; while (dr.Read()) { licenciasTrabajadores temp = new licenciasTrabajadores(); temp.rut = (string)dr["rut"]; temp.fecha = (DateTime)dr["fecha"]; temp.descripcion = (string)dr["descripcion"]; cantidadDias++; } cnx.Close(); return cantidadDias; }
public void guardarDatos(licenciasTrabajadores licencia) { SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "INSERT INTO licencias_trabajadores VALUES(@fecha,'" + licencia.rut + "','" + licencia.descripcion + "')"; cmd.CommandType = CommandType.Text; cmd.Parameters.Add("@fecha", SqlDbType.DateTime).Value = licencia.fecha; cmd.ExecuteNonQuery(); cnx.Close(); }
internal static bool existe(licenciasTrabajadores licencia) { DateTime FECHA = licencia.fecha; string rutFormateado = licencia.rut.Replace(".", "").Replace("-", ""); bool retorno = false; SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "SELECT * FROM licencias_trabajadores WHERE rut='" + rutFormateado + "' AND fecha=@fecha"; cmd.CommandType = CommandType.Text; cmd.Parameters.Add("@fecha", SqlDbType.DateTime).Value = FECHA; SqlDataReader dr = cmd.ExecuteReader(); retorno = dr.HasRows; cnx.Close(); return retorno; }
public ActionResult guardarLicencias(FormCollection post) { if (Session["rol"] != null && (Session["rol"].Equals("admin") || Session["rol"].Equals("contabilidad"))) { licenciasTrabajadores nueva = new licenciasTrabajadores(); nueva.rut = (string)post["rut"].Replace("-", "").Replace(".", ""); DateTime fechaInicio; DateTime fechaTermino; string fechaInicioString = post["fechaInicio"].ToString(); int año = int.Parse(fechaInicioString.Split('/')[2]); int mes = int.Parse(fechaInicioString.Split('/')[1]); int dia = int.Parse(fechaInicioString.Split('/')[0]); fechaInicio = new DateTime(año, mes, dia, 0, 0, 0); string fechaTerminoString = post["fechaTermino"].ToString(); int añoT = int.Parse(fechaTerminoString.Split('/')[2]); int mesT = int.Parse(fechaTerminoString.Split('/')[1]); int diaT = int.Parse(fechaTerminoString.Split('/')[0]); fechaTermino = new DateTime(añoT, mesT, diaT, 0, 0, 0); DateTime fecha=fechaInicio; while (fecha.CompareTo(fechaTermino) <= 0) { nueva.fecha = fecha; nueva.descripcion = (string)post["descripcion"]; if (!licenciasTrabajadores.existe(nueva)) { nueva.guardarDatos(nueva); } fecha = fecha.AddDays(1); } return RedirectToAction("licencias", "Trabajador", new { rut = nueva.rut }); } else { return RedirectToAction("Index", "Home"); } }
public ActionResult guardarLicencia(FormCollection post) { if (Session["rol"] != null && (Session["rol"].Equals("admin") || Session["rol"].Equals("contabilidad"))) { licenciasTrabajadores nueva = new licenciasTrabajadores(); nueva.rut = (string)post["rut"].Replace("-", "").Replace(".", ""); DateTime fechaLicencia; string fecha = post["fecha"].ToString(); int año = int.Parse(fecha.Split('/')[2]); int mes = int.Parse(fecha.Split('/')[1]); int dia = int.Parse(fecha.Split('/')[0]); fechaLicencia = new DateTime(año, mes, dia, 0, 0, 0); nueva.fecha = fechaLicencia; nueva.descripcion = (string)post["descripcion"]; nueva.guardarDatos(nueva); return RedirectToAction("licencias", "Trabajador", new { rut = nueva.rut }); } else { return RedirectToAction("Index", "Home"); } }