// crea un nuevo usuario como pendiente public void insertaNuevo(int idInterno) { string sql = "INSERT INTO empleados(id_interno, id_depto, nombre, activado, variado) VALUES (@idInterno, 1, '<PENDIENTE>', 1, 1)"; int rows = 0; using (var conn = this._conexion.getConexion()) { conn.Open(); string error = string.Empty; using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@idInterno", idInterno); ManejoSql res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (!res.ok) { throw new Exception(res.numErr + ": " + res.descErr); } } } }
// inserta el registro public void insertaRegistro(AttLogs log) { string sql = "insert into checadas (id_interno, fecha_hora, no_checador) values (@idIn, @fecha, @noCh)"; int rows = 0; using (var conn = this._conexion.getConexion()) { conn.Open(); string error = string.Empty; using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@idIn", log.enrolIdNumber); cmd.Parameters.AddWithValue("@noCh", log.noChecador); string fechaFormato = "yyyy-MM-dd HH:mm"; cmd.Parameters.AddWithValue("@fecha", log.fecha.ToString(fechaFormato)); string s = log.fecha.ToString(fechaFormato); ManejoSql res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (!res.ok) { throw new Exception(res.numErr + ": " + res.descErr); } } } }
// realiza prueba de conexion public void pruebaConn() { string sql = "select * from checadas limit 1"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (!res.ok) { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } }
public bool guardaUrl(string url, bool nuevaUrl) { MySqlTransaction trans; bool result = true; string sql = string.Empty; int rows = 0; string error = string.Empty; using (var conn = this._conexion.getConexion()) { conn.Open(); using (var cmd = new MySqlCommand()) { trans = conn.BeginTransaction(); cmd.Connection = conn; cmd.Transaction = trans; if (nuevaUrl) { sql = "insert into activos_configuracion (descripcion, clave, valor) " + "values('URL DE IMAGENES EN EL SERVIDOR', 'url', @valor)"; // define parametros cmd.Parameters.AddWithValue("@valor", url); ManejoSql res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (!res.ok) { trans.Rollback(); throw new Exception(res.numErr + ": " + res.descErr); } } else { sql = "update activos_configuracion set valor = @valor where clave = 'url' "; // define parametros cmd.Parameters.AddWithValue("@valor", url); ManejoSql res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (!res.ok) { trans.Rollback(); throw new Exception(res.numErr + ": " + res.descErr); } } trans.Commit(); } } return(result); }
// regresa los permisos segun un padreId List <Permisos> IPermisosDatos.getPermisos(int padreId) { List <Permisos> result = new List <Permisos>(); Permisos ent; string sql = "select p.idpermiso, p.descripcion, p.padreid " + "from activos_permisos p where p.padreid = @padreId"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@padreId", padreId); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { ent = new Permisos(); ent.idPermiso = Convert.ToInt16(res.reader["idpermiso"]); ent.padreId = Convert.ToInt16(res.reader["padreid"]); ent.descripcion = Convert.ToString(res.reader["descripcion"]); result.Add(ent); } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene todos los almacenes public List <Modelos.Almacen> getAlmacenes() { List <Modelos.Almacen> result = new List <Modelos.Almacen>(); Modelos.Almacen ent; string sql = "select idalmacen, nombre " + "from almacen "; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new SqlCommand()) { cmd.Connection = conn; ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { ent = new Modelos.Almacen(); ent.idAlmacen = Convert.ToString(res.reader["idalmacen"]); ent.almacen = Convert.ToString(res.reader["nombre"]); result.Add(ent); } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene todos los insumos registrados public List <Notificacion> getInsumos() { List <Notificacion> result = new List <Notificacion>(); Notificacion ent; string sql = "select idinsumo, descripcion " + "from insumos " + "order by idgruposi"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new SqlCommand()) { cmd.Connection = conn; ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { ent = new Notificacion(); ent.idInsumo = Convert.ToString(res.reader["idinsumo"]); ent.insumo = Convert.ToString(res.reader["descripcion"]); result.Add(ent); } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene la ultima fecha public DateTime obtUltimaFecha(int numChec) { DateTime result = new DateTime(); string sql = "SELECT MAX(fecha_hora) AS fecha_hora FROM checadas where no_checador = @numC"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; cmd.Parameters.AddWithValue("@numC", numChec); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { if (res.reader["fecha_hora"] == DBNull.Value) { result = new DateTime(1900, 1, 1, 0, 0, 0); } else { result = Convert.ToDateTime(res.reader["fecha_hora"]); } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// busca si ya esta dado de alta el registro public bool buscaIdInterno(int idInterno) { bool result = false; string sql = "SELECT id_interno FROM empleados WHERE id_interno = @idInterno"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; cmd.Parameters.AddWithValue("@idInterno", idInterno); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { if (res.reader.HasRows) { result = true; } else { result = false; } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene los permisos de un usuario public List <int> getPermisosUsuario(int idUsuario) { List <int> result = new List <int>(); string sql = "select idpermiso, idpermisousuario, idusuario from activos_permisosusuarios where idusuario = @idUsuario"; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@idUsuario", idUsuario); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { result.Add(Convert.ToInt16(res.reader["idpermiso"])); } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// regresa una leyenda con la existencia del insumo // en caso de tener mas de las existencias proporcionadas regresara vacio public string getExistencias(string idInsumo, bool mostrarXAlmacen, List <Almacen> almacen, decimal falta) { string result = string.Empty; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new SqlCommand()) { cmd.Connection = conn; if (mostrarXAlmacen) { string sqlA = "select SUM(cantidad) as cantidad from movsinv where idinsumo = @idInsumo and idalmacen = @idalmacen"; foreach (Almacen al in almacen) { cmd.Parameters.AddWithValue("idInsumo", idInsumo); cmd.Parameters.AddWithValue("idalmacen", al.idAlmacen); ManejoSql res = Utilerias.EjecutaSQL(sqlA, cmd); if (res.ok) { while (res.reader.Read()) { decimal cantidad = res.reader["cantidad"] == DBNull.Value ? 0 : Convert.ToDecimal(res.reader["cantidad"]); if (cantidad < falta) { result += al.almacen + ": " + cantidad + Environment.NewLine; } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); cmd.Parameters.Clear(); } if (result.Length > 0) { result = result.Substring(0, result.Length - 1); } } else { // string sql = "select SUM(cantidad) as cantidad from movsinv where idinsumo = @idInsumo"; string sql = "select sum(s.cantidad) as existencia " + "from " + "( " + "select SUM(cantidad) as cantidad from movsinv where idinsumo = @idInsumo " + "union all " + "select (tcd.cantidad * c.cantidad) * -1 as cantidad " + "from productos p " + "inner join tempcheqdet tcd on (p.idproducto = tcd.idproducto) " + "left join costos c on (p.idproducto = c.idproducto) " + "left join insumos i on (c.idinsumo = i.idinsumo) " + "where i.idinsumo = @idInsumo " + ") as s"; cmd.Parameters.AddWithValue("idInsumo", idInsumo); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { while (res.reader.Read()) { decimal cantidad = res.reader["existencia"] == DBNull.Value ? 0 : Convert.ToDecimal(res.reader["existencia"]); if (cantidad < falta) { result = cantidad.ToString(); } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); cmd.Parameters.Clear(); } } } return(result); }
// obtiene las reparaciones de los activos enviados public List <Reparaciones> getActivosEnRepar(List <int> activosIds) { List <Modelos.Reparaciones> result = new List <Modelos.Reparaciones>(); Modelos.Reparaciones ent; string sql = "select r.idreparacion, r.idactivo, r.idusuarioresponsable, r.fechainicio, r.observacionesactivacion, " + "r.fechafin, r.causa, r.status, a.nombrecorto as activo, a.idtipo, p.nombrecompleto as usuario " + "from activos_reparacion r " + "left join activos_activos a on (r.idactivo = a.idactivo) " + "left join activos_usuarios u on (r.idusuarioresponsable = u.idusuario) " + "left join activos_personas p on (u.idpersona = p.idpersona) " + "where FIND_IN_SET(r.idactivo, @parameter) != 0 and r.status = 'A' order by a.nombrecorto"; string wherIn = string.Join(",", activosIds); // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@parameter", wherIn); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { if (res.reader.HasRows) { while (res.reader.Read()) { ent = new Modelos.Reparaciones(); ent.idReparacion = Convert.ToInt16(res.reader["idreparacion"]); ent.idActivo = Convert.ToInt16(res.reader["idactivo"]); ent.idUsuarioResp = Convert.ToInt16(res.reader["idusuarioresponsable"]); ent.usuario = Convert.ToString(res.reader["usuario"]); ent.usuario = ent.usuario.Replace("&", " "); ent.activo = Convert.ToString(res.reader["activo"]); if (res.reader["fechainicio"] is DBNull) { ent.fechaInicio = null; } else { DateTime dt = DateTime.Parse(Convert.ToString(res.reader["fechainicio"])); ent.fechaInicio = dt.ToString("dd/MM/yyyy"); } if (res.reader["fechafin"] is DBNull) { ent.fechaFin = null; } else { ent.fechaFin = Convert.ToString(res.reader["fechafin"]); } ent.causa = Convert.ToString(res.reader["causa"]); ent.observActivacion = Convert.ToString(res.reader["observacionesactivacion"]); ent.status = Convert.ToString(res.reader["status"]); result.Add(ent); } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene los activos que se encuentran en reparacion por sucursal public List <Reparaciones> getReparaciones(int idSuc) { List <Modelos.Reparaciones> result = new List <Modelos.Reparaciones>(); Modelos.Reparaciones ent; string sql = "select are.idreparacion, a.idactivo, a.nombrecorto, are.idusuarioresponsable, pu.nombrecompleto, " + "are.fechainicio, are.fechafin, are.causa, are.observacionesactivacion, are.status, s.idsucursal " + "from activos_reparacion are " + "left join activos_activos a on (are.idactivo = a.idactivo) " + "left join activos_areas ar on (a.idarea = ar.idarea) " + "left join activos_sucursales s on (ar.idsucursal = s.idsucursal) " + "left join activos_usuarios u on (are.idusuarioresponsable = u.idusuario) " + "left join activos_personas pu on (u.idpersona = pu.idpersona) " + "where s.idsucursal = @idsuc "; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@idsuc", idSuc); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { if (res.reader.HasRows) { while (res.reader.Read()) { ent = new Modelos.Reparaciones(); ent.idReparacion = Convert.ToInt16(res.reader["idreparacion"]); ent.idActivo = Convert.ToInt16(res.reader["idactivo"]); ent.activo = Convert.ToString(res.reader["nombrecorto"]); ent.idUsuarioResp = Convert.ToInt16(res.reader["idusuarioresponsable"]); ent.usuario = Convert.ToString(res.reader["nombrecompleto"]); if (res.reader["fechainicio"] is DBNull) { ent.fechaInicio = null; } else { DateTime dt = DateTime.Parse(Convert.ToString(res.reader["fechainicio"])); ent.fechaInicio = dt.ToString("dd/MM/yyyy"); } if (res.reader["fechafin"] is DBNull) { ent.fechaFin = null; } else { DateTime dt = DateTime.Parse(Convert.ToString(res.reader["fechafin"])); ent.fechaFin = dt.ToString("dd/MM/yyyy"); } ent.observActivacion = Convert.ToString(res.reader["observacionesactivacion"]); ent.causa = Convert.ToString(res.reader["causa"]); ent.status = Convert.ToString(res.reader["status"]); result.Add(ent); } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// obtiene los activos que han sido dados de baja por sucursal public List <Bajas> getBajasSuc(int idSuc) { List <Modelos.Bajas> result = new List <Modelos.Bajas>(); Modelos.Bajas ent; string sql = "select ab.idbaja, a.idactivo, a.nombrecorto, ab.fecha, ab.idusuariobaja, pu.nombrecompleto as usuario, " + "ab.observaciones, ab.idmotivobaja, s.idsucursal " + "from activos_baja ab " + "left join activos_activos a on (ab.idactivo = a.idactivo) " + "left join activos_areas ar on (a.idarea = ar.idarea) " + "left join activos_sucursales s on (ar.idsucursal = s.idsucursal) " + "left join activos_usuarios u on (ab.idusuariobaja = u.idusuario) " + "left join activos_personas pu on (u.idpersona = pu.idpersona) " + "where s.idsucursal = @idsuc "; // define conexion con la cadena de conexion using (var conn = this._conexion.getConexion()) { // abre la conexion conn.Open(); using (var cmd = new MySqlCommand()) { cmd.Connection = conn; // define parametros cmd.Parameters.AddWithValue("@idsuc", idSuc); ManejoSql res = Utilerias.EjecutaSQL(sql, cmd); if (res.ok) { if (res.reader.HasRows) { while (res.reader.Read()) { ent = new Modelos.Bajas(); ent.idBaja = Convert.ToInt16(res.reader["idbaja"]); ent.idActivo = Convert.ToInt16(res.reader["idactivo"]); ent.activo = Convert.ToString(res.reader["nombrecorto"]); if (res.reader["fecha"] is DBNull) { ent.fecha = null; } else { DateTime dt = DateTime.Parse(Convert.ToString(res.reader["fecha"])); ent.fecha = dt.ToString("dd/MM/yyyy"); } ent.idUsuaroBaja = Convert.ToInt16(res.reader["idusuariobaja"]); ent.usuario = Convert.ToString(res.reader["usuario"]); ent.observaciones = Convert.ToString(res.reader["observaciones"]); ent.idMotivoBaja = Convert.ToInt16(res.reader["idmotivobaja"]); result.Add(ent); } } } else { throw new Exception(res.numErr + ": " + res.descErr); } // cerrar el reader res.reader.Close(); } } return(result); }
// actualiza permisos de un usuario public bool actualizaPermisos(int?idUsuario, List <int> permisos) { MySqlTransaction trans; bool result = true; string sql = string.Empty; int rows = 0; string error = string.Empty; using (var conn = this._conexion.getConexion()) { conn.Open(); using (var cmd = new MySqlCommand()) { trans = conn.BeginTransaction(); cmd.Connection = conn; cmd.Transaction = trans; sql = "delete from activos_permisosusuarios where idusuario = @idUsuario"; // define parametros cmd.Parameters.AddWithValue("@idUsuario", idUsuario); ManejoSql res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (!res.ok) { trans.Rollback(); throw new Exception(res.numErr + ": " + res.descErr); } cmd.Parameters.Clear(); foreach (int perm in permisos) { sql = "INSERT INTO activos_permisosusuarios(idusuario, idpermiso) " + "VALUES (@idUsuario, @idPermiso)"; // define parametros cmd.Parameters.AddWithValue("@idPermiso", perm); cmd.Parameters.AddWithValue("@idUsuario", idUsuario); res = Utilerias.EjecutaSQL(sql, ref rows, cmd); if (res.ok) { if (rows == 0) { result = false; } } else { error = res.numErr + ": " + res.descErr; trans.Rollback(); break; } cmd.Parameters.Clear(); } trans.Commit(); } } return(result); }