//Editar public void EditarTipoPersona(TiposPersona TipoPersona, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { TiposPersona TipoPersonaEditar = ctx.TiposPersona.Where(c => c.IdTipoPersona == TipoPersona.IdTipoPersona).FirstOrDefault(); TipoPersonaEditar.TipoPersona = TipoPersona.TipoPersona; TipoPersonaEditar.CodigoTipoPersona = TipoPersona.CodigoTipoPersona; TipoPersonaEditar.Activo = TipoPersona.Activo; TipoPersonaEditar.FechaModificacion = DateTime.Now; TipoPersonaEditar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } }
public void ActualizarEstadoConsecutivosUsuAplica(string idEstado, int idUsuarioActualiza, string observaciones) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { List <int> cons = new List <int>(); foreach (Formatos formato in ctx.Formatos.ToList()) { cons = ctx.ConsecutivosFormatos.Where(c => c.IdFormato == formato.IdFormato && c.IdInspector == idUsuarioActualiza && c.IdEstadoConsecutivoInspector.Equals(idEstado.Equals("A") || idEstado.Equals("R") ? "P" : "A")).Select(f => f.Consecutivo).ToList(); if (cons.Count > 0) { ActualizarEstadoConsecutivo(formato.IdFormato, cons, idEstado, idUsuarioActualiza, observaciones); } } ctx.SaveChanges(); } }
//6. Asignación de consecutivos a inspectores public void AsignarRangoConsecutivosFormatoInspector(int IdFormato, int IdInspector, int ConsecutivoInicial, int ConsecutivoFinal, int IdUsuarioAsigna) { string estadoConsecutivo = "P"; string tramite = "ASIGNACION"; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { //Acá validamos que todos los consecutivos estén disponibles, o sea, que no se los hayan asignado a ningún inspector for (int i = ConsecutivoInicial; i <= ConsecutivoFinal; i++) { if (ctx.ConsecutivosFormatos.Where(c => c.IdFormato == IdFormato && c.Consecutivo == i && (!c.IdEstadoConsecutivoInspector.Equals("B") && !c.IdEstadoConsecutivoInspector.Equals("R"))).FirstOrDefault() != null) { throw new Exception($"El consecutivo {i} del formato {IdFormato} ya ha sido asignado a un inspector"); } } for (int i = ConsecutivoInicial; i <= ConsecutivoFinal; i++) { ConsecutivosFormatos con = ctx.ConsecutivosFormatos.Where(c => c.IdFormato == IdFormato && c.Consecutivo == i).FirstOrDefault(); con.IdInspector = IdInspector; con.IdEstadoConsecutivoInspector = estadoConsecutivo; con.FechaModificacion = DateTime.Now; con.IdUsuarioModificacion = IdUsuarioAsigna; int sec = 0; try { sec = ctx.TramiteConsecutivoFormato.Where(t => t.IdFormato == IdFormato && t.Consecutivo == i).Count(); } catch { } sec += 1; ctx.TramiteConsecutivoFormato.Add(new TramiteConsecutivoFormato() { IdFormato = IdFormato, IdInspector = IdInspector, Consecutivo = i, Tramite = tramite, FechaCreacion = DateTime.Now, IdUsuarioCreacion = IdUsuarioAsigna, Secuencia = sec, Observaciones = "Asignación inicial de Consecutivo" }); ctx.SaveChanges(); } } }
public Usuarios ConsultarUsuario(int IdUsuario) { Usuarios res = null; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { res = ctx.Usuarios.Where(u => u.IdUsuario == IdUsuario).FirstOrDefault(); if (res != null) { ctx.Entry(res).Reference(u => u.Roles).Load(); res.Roles.Menus.ToList(); ctx.Entry(res).Reference(u => u.TiposIdentificacion).Load(); ctx.Entry(res).Reference(u => u.Ciudades).Load(); } } return(res); }
/** * 7) */ public void CrearCliente(Clientes ClienteCrear) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { int us = ctx.Clientes.Where(u => u.IdTipoIdentificacion == ClienteCrear.IdTipoIdentificacion && u.NumeroIdentificacion.Equals(ClienteCrear.NumeroIdentificacion)).ToList().Count; if (us == 0) { ClienteCrear.FechaCreacion = DateTime.Now; ctx.Clientes.Add(ClienteCrear); ctx.SaveChanges(); } else { throw new Exception($"Ya existe un cliente con TipoIdentificación {ClienteCrear.IdTipoIdentificacion} y Número de Identificación {ClienteCrear.NumeroIdentificacion}"); } } }
//2. public void EditarFormato(Formatos Formato, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Formatos FormatoModificar = ctx.Formatos.Where(c => c.IdFormato == Formato.IdFormato).FirstOrDefault(); FormatoModificar.Formato = Formato.Formato; FormatoModificar.Separador = Formato.Separador; FormatoModificar.Mascara = Formato.Mascara; FormatoModificar.Activo = Formato.Activo; FormatoModificar.FechaModificacion = DateTime.Now; FormatoModificar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } }
public void EjecutarVisita(int IdVisita, int IdInspector) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Visitas visita = ctx.Visitas.Where(v => v.IdVisita == IdVisita).FirstOrDefault(); if (visita != null) { if (visita.IdEstadoVisitas.Equals("P")) { visita.IdEstadoVisitas = "E"; visita.FechaModificacion = DateTime.Now; visita.IdUsuarioModificacion = IdInspector; ctx.SaveChanges(); } } } }
//Agregar EquiposVisita public void AgregarEquipoVisita(EquiposVisita Equipo, int IdVisita) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Visitas visita = ctx.Visitas.Where(v => v.IdVisita == IdVisita).FirstOrDefault(); if (visita != null) { Equipo.Secuencia = ctx.EquiposVisita.Where(fv => fv.IdVisita == Equipo.IdVisita).Count() + 1; visita.EquiposVisita.Add(Equipo); ctx.SaveChanges(); } else { throw new Exception("No se encontró la visita"); } } }
//Crear public void CrearTipoIdentificacion(TiposIdentificacion TipoIdentificacionCrear) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { if (ctx.TiposIdentificacion.Where(ti => ti.Abreviatura.Equals(TipoIdentificacionCrear.Abreviatura)).FirstOrDefault() == null) { TipoIdentificacionCrear.FechaCreacion = DateTime.Now; TipoIdentificacionCrear.Activo = true; ctx.TiposIdentificacion.Add(TipoIdentificacionCrear); ctx.SaveChanges(); } else { throw new Exception($"Ya existe un Tipo de Identificación con abreviatura {TipoIdentificacionCrear.Abreviatura}"); } } }
//2. Agregar Equipo public void AgregarEquipo(Equipos Equipo) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { int us = ctx.Equipos.Where(u => u.SerieIDInterno == Equipo.SerieIDInterno).ToList().Count; if (us == 0) { Equipo.FechaCreacion = DateTime.Now; ctx.Equipos.Add(Equipo); ctx.SaveChanges(); } else { throw new Exception($"Ya existe un equipo con Id interno {Equipo.SerieIDInterno}"); } } }
//Reporte zonas y presencia en visitas //TODO => PENDIENTE //**************************************************** VISITAS => Todo lo que tenga que ver con visitas //Programación Visita public void ProgramarVisita(Visitas Visita) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { if (ctx.Visitas.Where(v => v.IdCliente == Visita.IdCliente && v.IdPropiedad == Visita.IdPropiedad && v.FechaVisita == Visita.FechaVisita && v.IdFranja == Visita.IdFranja).FirstOrDefault() != null) { throw new Exception($"Ya se tiene programada una visita para esta propiedad en esa misma franja"); } if (ctx.Visitas.Where(v => v.IdInspector == Visita.IdInspector && v.FechaVisita == Visita.FechaVisita && v.IdFranja == Visita.IdFranja).Count() > 1) { throw new Exception("Inspector no disponible en la franja seleccionada"); } Visita.FechaCreacion = DateTime.Now; ctx.Visitas.Add(Visita); ctx.SaveChanges(); } }
public Propiedades ConsultaDetalladaPropiedad(int IdPropiedades) { Propiedades res = null; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { res = ctx.Propiedades.Where(c => c.IdPropiedades == IdPropiedades).FirstOrDefault(); if (res != null) { res.ToString(); } else { throw new Exception($"No existe una propiedad con ID {IdPropiedades}"); } } return(res); }
public void AgregarCertificadoCompetencias(CertificadosCompetencias CertificadoAgregar) { CertificadosCompetencias res = null; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { res = ctx.CertificadosCompetencias.Where(c => c.FechaExpedicion == CertificadoAgregar.FechaExpedicion).FirstOrDefault(); if (res != null) { CertificadoAgregar.FechaCreacion = DateTime.Now; ctx.CertificadosCompetencias.Add(CertificadoAgregar); ctx.SaveChanges(); } else { throw new Exception($"Ya existe un certificado con fecha de expedición: {CertificadoAgregar.FechaExpedicion}"); } } }
public Usuarios ConsultarUsuarioParaCambioContrasena(string numeroIdentificacion, string email) { Usuarios res = null; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { res = ctx.Usuarios.Where(u => u.NumeroIdentificacion.Equals(numeroIdentificacion) && u.Email.Equals(email)).FirstOrDefault(); if (res != null) { res.tokenCambioContrasena = $"{res.NumeroIdentificacion}_{DateTime.Now.Ticks}_{res.Email}_{DateTime.Now.Ticks}"; res.horaTokenCambioContrasena = DateTime.Now; ctx.SaveChanges(); //ctx.Entry(res).Reference(u => u.Roles).Load(); //res.Roles.Menus.ToList(); //ctx.Entry(res).Reference(u => u.TiposIdentificacion).Load(); //ctx.Entry(res).Reference(u => u.Ciudades).Load(); } } return(res); }
public void ActualizarContrasena(int IdUsuario, string Contrasena) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Usuarios usuarioModificar = ctx.Usuarios.Where(u => u.IdUsuario == IdUsuario).FirstOrDefault(); if (usuarioModificar != null) { usuarioModificar.Password = Convert.ToBase64String(Encoding.UTF8.GetBytes(Contrasena)); usuarioModificar.FechaCreacion = DateTime.Now; usuarioModificar.IdUsuarioModificacion = IdUsuario; usuarioModificar.DebeCambiarContrasena = false; ctx.SaveChanges(); } else { throw new Exception("No existe el usuario"); } } }
//Eliminar public void EliminarTipoPersona(int IdTipoPersona, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { TiposPersona TipoPersonaEliminar = ctx.TiposPersona.Where(u => u.IdTipoPersona == IdTipoPersona).FirstOrDefault(); if (TipoPersonaEliminar != null) { TipoPersonaEliminar.Activo = false; TipoPersonaEliminar.FechaModificacion = DateTime.Now; TipoPersonaEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe un tipo de persona con ID {IdTipoPersona}"); } } }
//Eliminar public void EliminarCiudad(string IdCiudad, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Ciudades CiudadEliminar = ctx.Ciudades.Where(u => u.IdCiudad == IdCiudad).FirstOrDefault(); if (CiudadEliminar != null) { CiudadEliminar.Activo = false; CiudadEliminar.FechaModificacion = DateTime.Now; CiudadEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe una Ciudad con ID {IdCiudad}"); } } }
//Eliminar public void EliminarDepartamento(string IdDepartamento, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Departamentos DepartamentoEliminar = ctx.Departamentos.Where(u => u.IdDepartamento == IdDepartamento).FirstOrDefault(); if (DepartamentoEliminar != null) { DepartamentoEliminar.Activo = false; DepartamentoEliminar.FechaModificacion = DateTime.Now; DepartamentoEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe un Depatamento con ID {IdDepartamento}"); } } }
//Eliminar public void EliminarUsoPropiedad(int IdUso, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { UsosPropiedades UsoPropiedadEliminar = ctx.UsosPropiedades.Where(u => u.IdUso == IdUso).FirstOrDefault(); if (UsoPropiedadEliminar != null) { UsoPropiedadEliminar.Activo = false; UsoPropiedadEliminar.FechaModificacion = DateTime.Now; UsoPropiedadEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe un uso de propiedad con ID {IdUso}"); } } }
//Eliminar public void EliminarPais(int IdPais, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Paises PaisEliminar = ctx.Paises.Where(u => u.IdPais == IdPais).FirstOrDefault(); if (PaisEliminar != null) { PaisEliminar.Activo = false; PaisEliminar.FechaModificacion = DateTime.Now; PaisEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe un País con ID {IdPais}"); } } }
//5. Ingresar Verificaciones LAB public void IngresarVerificacionLAB(VerificacionesLabEquipos Verificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { int sec = 0; try { sec = ctx.VerificacionesLabEquipos.Where(v => v.IdEquipo == Verificacion.IdEquipo).Count(); } catch { } sec += 1; Verificacion.FechaCreacion = DateTime.Now; Verificacion.Secuencia = sec; ctx.VerificacionesLabEquipos.Add(Verificacion); Equipos eq = ctx.Equipos.Where(e => e.IdEquipo == Verificacion.IdEquipo).FirstOrDefault(); if (eq != null) { eq.FechaProximaVerificacion = Verificacion.FechaVerificacion.AddMonths(int.Parse(eq.PeriodoVerificacion)); } ctx.SaveChanges(); } }
public void EditarPropiedad(Propiedades propiedad, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Propiedades PropiedadModificar = ctx.Propiedades.Where(c => c.IdPropiedades == propiedad.IdPropiedades).FirstOrDefault(); PropiedadModificar.Direccion = propiedad.Direccion; PropiedadModificar.IdUso = propiedad.IdUso; PropiedadModificar.Telefono = propiedad.Telefono; PropiedadModificar.Foto = propiedad.Foto; PropiedadModificar.Observaciones = propiedad.Observaciones; PropiedadModificar.IdTipoPropiedad = propiedad.IdTipoPropiedad; PropiedadModificar.NroPoliza = propiedad.NroPoliza; PropiedadModificar.FechaModificacion = DateTime.Now; PropiedadModificar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } }
//Eliminar public void EliminarMarcaEquipo(int IdMarca, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { MarcasEquipos MarcaEliminar = ctx.MarcasEquipos.Where(u => u.IdMarcaEquipo == IdMarca).FirstOrDefault(); if (MarcaEliminar != null) { MarcaEliminar.Activo = false; MarcaEliminar.FechaModificacion = DateTime.Now; MarcaEliminar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"No existe una Marca con ID {IdMarca}"); } } }
//ASignación de zona a inspector, con manejo del histórico public void AsignarZonaInspector(int IdZona, string IdCiudad, int IdInspector, int IdUsuarioAsigna) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Zonas zona = ctx.Zonas.Where(z => z.IdZona == IdZona && z.IdCiudad.Equals(IdCiudad)).FirstOrDefault(); if (zona != null) { if (zona.IdInspector == null) { DateTime now = DateTime.Now; zona.IdInspector = IdInspector; zona.IdUsuarioModificacion = IdUsuarioAsigna; zona.FechaModificacion = now; ctx.SaveChanges(); int sec = ctx.HistoricoAsignacionZona.Where(h => h.IdZona == IdZona && zona.IdCiudad.Equals(IdCiudad)).Count(); sec += 1; ctx.HistoricoAsignacionZona.Add(new HistoricoAsignacionZona() { IdZona = IdZona, IdCiudad = IdCiudad, IdInspector = IdInspector, IdUsuarioCreacion = IdUsuarioAsigna, FechaCreacion = now, FechaInicio = now, Secuencia = sec }); ctx.SaveChanges(); } else { throw new Exception("No se puede asignar inspector a zona, ésta ya tiene inspector. Intente reasignar inspector."); } } else { throw new Exception($"No existe la zona con ID {IdZona} en la ciudad con ID {IdCiudad}"); } } }
//Editar public void EditarTipoIdentificacion(TiposIdentificacion TipoIdentificacion, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { TiposIdentificacion TipoIdentificacionEditar = ctx.TiposIdentificacion.Where(c => c.IdTipoIdentificacion == TipoIdentificacion.IdTipoIdentificacion).FirstOrDefault(); if (ctx.TiposIdentificacion.Where(ti => ti.Abreviatura.Equals(TipoIdentificacion.Abreviatura) && ti.IdTipoIdentificacion != TipoIdentificacion.IdTipoIdentificacion).FirstOrDefault() == null) { TipoIdentificacionEditar.Abreviatura = TipoIdentificacion.Abreviatura; TipoIdentificacionEditar.TipoIdentificacion = TipoIdentificacion.TipoIdentificacion; TipoIdentificacionEditar.Activo = TipoIdentificacion.Activo; TipoIdentificacionEditar.FechaModificacion = DateTime.Now; TipoIdentificacionEditar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { throw new Exception($"Ya existe un Tipo de Identificación con abreviatura {TipoIdentificacion.Abreviatura}"); } } }
public void CancelarVisita(int IdVisita, string ObservacionCancelacion, int IdUsuarioCancelacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Visitas visita = ctx.Visitas.Where(v => v.IdVisita == IdVisita).FirstOrDefault(); if (visita != null) { if (visita.IdEstadoVisitas.Equals("P")) { visita.ObservacionesCancelacion = ObservacionCancelacion; visita.FechaModificacion = DateTime.Now; visita.IdUsuarioModificacion = IdUsuarioCancelacion; visita.IdEstadoVisitas = "X"; ctx.SaveChanges(); } else { throw new Exception("No se puede cancelar la visita"); } } } }
//Editar public void EditarPais(Paises Pais, int IdUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Paises PaisEditar = ctx.Paises.Where(c => c.IdPais == Pais.IdPais).FirstOrDefault(); if (PaisEditar != null) { PaisEditar.CodigoPais = Pais.CodigoPais; PaisEditar.Pais = Pais.Pais; PaisEditar.Activo = Pais.Activo; PaisEditar.FechaModificacion = DateTime.Now; PaisEditar.IdUsuarioModificacion = IdUsuarioModificacion; ctx.SaveChanges(); } else { } } }
/** * 2) */ public Clientes ConsultaDetalladaClientes(int IdCliente, string NumeroIdentificacion) { Clientes res = null; using (var ctx = new DB_A66D31_intratecPrbEntities1()) { if (IdCliente != -1) { res = ctx.Clientes.Where(c => c.IdCliente == IdCliente).FirstOrDefault(); } else if (!string.IsNullOrEmpty(NumeroIdentificacion)) { res = ctx.Clientes.Where(c => c.NumeroIdentificacion.Equals(NumeroIdentificacion)).FirstOrDefault(); } if (res != null) { res.Propiedades.ToList(); foreach (Propiedades prop in res.Propiedades) { ctx.Entry(prop).Reference(r => r.TiposPropiedades).Load(); ctx.Entry(prop).Reference(r => r.UsosPropiedades).Load(); } res.Visitas.ToList(); foreach (Visitas vis in res.Visitas) { ctx.Entry(vis).Reference(r => r.Zonas).Load(); ctx.Entry(vis).Reference(r => r.Usuarios).Load(); } ctx.Entry(res).Reference(r => r.TiposIdentificacion).Load(); ctx.Entry(res).Reference(r => r.TiposPersona).Load(); } else { throw new Exception($"No existe cliente con ID {IdCliente}"); } } return(res); }
//Reasignación visita public void ReasignacionVisita(int IdVisita, int IdInspector) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Visitas visita = ctx.Visitas.Where(v => v.IdVisita == IdVisita).FirstOrDefault(); if (visita != null) { if (visita.IdEstadoVisitas.Equals("P")) { visita.IdInspector = IdInspector; ctx.SaveChanges(); } else { throw new Exception($"No se puede reasignar la visita en el estado {visita.IdEstadoVisitas}"); } } else { throw new Exception($"No se encontró la visita con ID {IdVisita}"); } } }
public void ActualizarEquipo(Equipos equipos, int idUsuarioModificacion) { using (var ctx = new DB_A66D31_intratecPrbEntities1()) { Equipos equipoAModificar = ctx.Equipos.Where(e => e.IdEquipo == equipos.IdEquipo).FirstOrDefault(); equipoAModificar.Activo = equipos.Activo; equipoAModificar.Area = equipos.Area; equipoAModificar.Calibrado = equipos.Calibrado; equipoAModificar.FechaProximaCalibracion = equipos.FechaProximaCalibracion; equipoAModificar.FechaProximoMantenimiento = equipos.FechaProximoMantenimiento; equipoAModificar.IdMarcaEquipo = equipos.IdMarcaEquipo; equipoAModificar.IdTipoEquipo = equipos.IdTipoEquipo; equipoAModificar.Modelo = equipos.Modelo; equipoAModificar.PeriodoCalibracion = equipos.PeriodoCalibracion; equipoAModificar.PeriodoVerificacion = equipos.PeriodoVerificacion; equipoAModificar.SerieIDInterno = equipos.SerieIDInterno; equipoAModificar.Tolerancia = equipos.Tolerancia; equipoAModificar.IdTipoVisitaAplica = equipos.IdTipoVisitaAplica; equipoAModificar.IdUsuarioModificacion = idUsuarioModificacion; equipoAModificar.FechaModificacion = DateTime.Now; ctx.SaveChanges(); } }