/// <summary>
        /// Guarda un reporte con la informacion una vez validada
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Guardar_Cick(object sender, RoutedEventArgs e)
        {
            if (ComprobarCampos())
            {
                Reporte nuevoReporte = new Reporte();

                nuevoReporte.calle               = TbCalle.Text;
                nuevoReporte.colonia             = TbColonia.Text;
                nuevoReporte.descripcion         = TbDescripcion.Text;
                nuevoReporte.fecha               = DateTime.Now;
                nuevoReporte.estatus             = "En proceso";
                nuevoReporte.DelegacionMunicipal = RecuperarDelegacionMunicipalSeleccionada();
                nuevoReporte.Vehiculos           = RecuperarVehiculos();
                entidadesBD.Reportes.Add(nuevoReporte);
                entidadesBD.SaveChanges();
                GuardarImagen(nuevoReporte);
                MessageBox.Show("Registro Exitoso");

                cerrarVentana();
            }
            else
            {
                MessageBox.Show("No se puede realizar el registro");
            }
        }
        /// <summary>
        /// Manejador encargado del guardado del dictamen, checando que se cumplan las validaciones
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Guardar_Click(object sender, RoutedEventArgs e)
        {
            if (ComprobarCampos())
            {
                Dictamen nuevoDictamen = new Dictamen();

                string nombreCompleto = usuarioIniciado.nombres + " " + usuarioIniciado.apellidoPaterno + " " +
                                        usuarioIniciado.apellidoMaterno;

                nuevoDictamen.descripcion          = TbDescripcion.Text;
                nuevoDictamen.fecha                = DateTime.Today;
                nuevoDictamen.hora                 = DateTime.Now.TimeOfDay;
                nuevoDictamen.folio                = GenerarFolio();
                nuevoDictamen.nombreCompletoPerito = nombreCompleto;
                entidadesBD.Dictamenes.Add(nuevoDictamen);

                entidadesBD.SaveChanges();
                ActualizarReporte(nuevoDictamen);

                MessageBox.Show("Dictamen registrado con exito");
                cerrarVentana();
            }
            else
            {
                MessageBox.Show("Debe ingresar un dictamen");
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Se toma la informacion de los campos de texto y se actualiza con eso al conductor
        /// </summary>
        private void ModificarAConductor()
        {
            try
            {
                conductorAModificar.nombres                = tb_nombre.Text;
                conductorAModificar.apellidoPaterno        = tb_apellidoPat.Text;
                conductorAModificar.apellidoMaterno        = tb_apellidoMat.Text;
                conductorAModificar.fechaNacimiento        = (DateTime)dp_fechaNacimiento.SelectedDate;
                conductorAModificar.numeroLicenciaConducir = tb_licenciaCond.Text;

                if (ConductorRepetido(conductorAModificar) == false)
                {
                    bdTransitoEntities.SaveChanges();
                    MessageBox.Show("Vehiculo modificado exitosamente");
                }
                else
                {
                    MessageBox.Show("ERROR: El vehiculo ya esta registrado en el sistema");
                }
            }
            catch (SqlException ex)
            {
                MessageBox.Show("Error en la conexion con la base de datos", "Error", MessageBoxButton.OK);
            }
        }
        /// <summary>
        /// Manejo de modificacion de delegaciones
        /// </summary>
        public void ManejoModificacionDelegacion()
        {
            if (DelegacionValida() && !DelegacionRepetida(RecuperarDelegacionNuevo()))
            {
                DelegacionMunicipal modificarDelegacion =
                    entidadesBD.DelegacionesMunicipales.Find(delegacionElegida.idDelegacion);

                modificarDelegacion.nombre       = tbNombreDelegacion.Text;
                modificarDelegacion.calle        = tbCalle.Text;
                modificarDelegacion.colonia      = tbColonia.Text;
                modificarDelegacion.numero       = int.Parse(tbNumero.Text);
                modificarDelegacion.codigoPostal = int.Parse(tbCodigoPostal.Text);
                modificarDelegacion.correo       = tbCorreoElectronico.Text;
                modificarDelegacion.telefono     = tbTelefono.Text;
                modificarDelegacion.municipio    = tbMunicipio.Text;

                entidadesBD.SaveChanges();

                MessageBox.Show("Modificación de la Delegación Exitosa");
            }
            else
            {
                MessageBox.Show("Delgación ya existente en la base de datos");
            }
        }
        /// <summary>
        /// Maneja el evento del clic en el botón "Eliminar"
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnEliminar_Click(object sender, RoutedEventArgs e)
        {
            int indiceSeleccion = dgDelegaciones.SelectedIndex;
            int idEliminar;

            if (indiceSeleccion >= 0)
            {
                DelegacionMunicipal delegacionEliminar = listaDelegaciones[indiceSeleccion];
                MessageBoxResult    resultado          = MessageBox.Show("¿Estas seguro de eliminar la delegación? " +
                                                                         delegacionEliminar.nombre + "", "Confirmar acción",
                                                                         MessageBoxButton.OKCancel);
                if (resultado == MessageBoxResult.OK)
                {
                    idEliminar = delegacionEliminar.idDelegacion;

                    RecuperarUsuariosDeDelegacion(idEliminar);

                    entidadesBD.DelegacionesMunicipales.Remove(delegacionEliminar);

                    try
                    {
                        entidadesBD.SaveChanges();
                        VaciarTabla();
                        LlenarTabla();
                    }
                    catch (DbEntityValidationException a)
                    {
                        foreach (var eve in a.EntityValidationErrors)
                        {
                            Console.WriteLine("Entidad \"{0}\" Estado \"{1}\" ",
                                              eve.Entry.Entity.GetType().Name, eve.Entry.State);
                            foreach (var ve in eve.ValidationErrors)
                            {
                                Console.WriteLine("- Propiedad: \"{0}\", Error: \"{1}\"",
                                                  ve.PropertyName, ve.ErrorMessage);
                            }
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Para eliminar un alumno debes seleccionarlo", "Sin selección");
            }
        }
        /// <summary>
        /// Controla la modificacion de la informacion del
        /// vehiculo seleccionado
        /// </summary>
        private void ModificarVehiculo()
        {
            try
            {
                vehiculoAModificar.numeroPolizaSeguro = tb_numeroPolizaSeguro.Text;
                vehiculoAModificar.nombreAseguradora  = tb_nombreAseguradora.Text;
                vehiculoAModificar.color       = tb_color.Text;
                vehiculoAModificar.año         = Int32.Parse(tb_anio.Text);
                vehiculoAModificar.modelo      = tb_modelo.Text;
                vehiculoAModificar.marca       = tb_marca.Text;
                vehiculoAModificar.numeroPlaca = tb_numeroPlacas.Text;
                string seleccionComboBox = cb_conductor.Text;

                //Si en el combobox decide darle a la opción otro, tiene la posibilidad de crear
                //un conductor desde aqui
                if (("Otro conductor").Equals(seleccionComboBox))
                {
                    MessageBoxResult respuesta = MessageBox.Show("Quieres crear un nuevo conductor?",
                                                                 "", MessageBoxButton.YesNo);
                    if (respuesta == MessageBoxResult.Yes)
                    {
                        RegistrarConductorWindow nuevaVentana = new RegistrarConductorWindow();
                        bool conductorRegistrado = (bool)nuevaVentana.ShowDialog();
                        actualizarConductores();
                        if (conductorRegistrado)
                        {
                            cb_conductor.SelectedIndex = cb_conductor.Items.Count - 1;
                        }
                        else
                        {
                            cb_conductor.SelectedIndex = 0;
                        }
                    }
                }
                else
                {
                    vehiculoAModificar.Conductor = RecuperarConductor();

                    if (VehiculoRepetido(vehiculoAModificar) == false)
                    {
                        bdTransitoEntities.SaveChanges();
                        MessageBox.Show("Vehiculo modificado exitosamente");
                    }
                    else
                    {
                        MessageBox.Show("ERROR: El vehiculo ya esta registrado en el sistema");
                    }
                }
            }
            catch (SqlException ex)
            {
                MessageBox.Show("Error en la conexion con la base de datos", "Error", MessageBoxButton.OK);
            }
        }
        /// <summary>
        /// Elimina el o los vehiculos seleccionados en el datagrid previo a darle clic al boton btn_eliminar
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_eliminar_Click(object sender, RoutedEventArgs e)
        {
            if (dg_vehiculos.SelectedItems.Count > 0)
            {
                List <Vehiculo> vehiculosSeleccionados = new List <Vehiculo>();
                foreach (Vehiculo vehiculoDG in dg_vehiculos.SelectedItems)
                {
                    vehiculosSeleccionados.Add(vehiculoDG);
                }


                MessageBoxResult respuesta;
                if (dg_vehiculos.SelectedItems.Count > 1)
                {
                    respuesta = MessageBox.Show("¿Estas seguro que quieres eliminar los vehiculos seleccionados?",
                                                "", MessageBoxButton.YesNo);
                }
                else
                {
                    respuesta = MessageBox.Show("¿Estas seguro que quieres eliminar el vehiculo seleccionado?",
                                                "", MessageBoxButton.YesNo);
                }

                if (respuesta == MessageBoxResult.Yes)
                {
                    foreach (Vehiculo vehiculoAEliminar in vehiculosSeleccionados)
                    {
                        bdTransito.Vehiculos.Remove(vehiculoAEliminar);
                    }

                    try
                    {
                        bdTransito.SaveChanges();
                    }
                    catch (SqlException ex)
                    {
                        MessageBox.Show("Error en la conexion con la base de datos", "Error", MessageBoxButton.OK);
                        Console.WriteLine(ex.StackTrace);
                    }
                }
            }
            else
            {
                MessageBox.Show("No se ha seleccionado ningún vehiculo para eliminar", "Error", MessageBoxButton.OK);
            }

            ActualizarTabla();
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Manejador del evento botón "Eliminar"
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnEliminar_Click(object sender, RoutedEventArgs e)
        {
            int indiceSeleccion = dgUsuarios.SelectedIndex;

            if (indiceSeleccion >= 0)
            {
                Usuario          usuarioEliminar = listaUsuarios[indiceSeleccion];
                MessageBoxResult resultado       = MessageBox.Show("¿Estas seguro de eliminar al usuario?" +
                                                                   usuarioEliminar.nombres + usuarioEliminar.apellidoPaterno + usuarioEliminar.apellidoMaterno +
                                                                   "?", "Confirmar acción",
                                                                   MessageBoxButton.OKCancel);
                if (resultado == MessageBoxResult.OK)
                {
                    entidadesBD.Usuarios.Remove(usuarioEliminar);

                    try
                    {
                        entidadesBD.SaveChanges();
                        VaciarTabla();
                        LlenarTabla();
                    }
                    catch (DbEntityValidationException a)
                    {
                        foreach (var eve in a.EntityValidationErrors)
                        {
                            Console.WriteLine("Entidad \"{0}\" Estado \"{1}\" ",
                                              eve.Entry.Entity.GetType().Name, eve.Entry.State);
                            foreach (var ve in eve.ValidationErrors)
                            {
                                Console.WriteLine("- Propiedad: \"{0}\", Error: \"{1}\"",
                                                  ve.PropertyName, ve.ErrorMessage);
                            }
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Para eliminar un usuario debes seleccionarlo", "Sin selección");
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Administra el reigstro de nuevo usuario
        /// </summary>
        public void ManejoRegistroUsuario()
        {
            VerificarUsuario();
            if (UsuarioValido() && !UsuarioRepetido(RecuperarUsarioNuevo()))
            {
                Usuario nuevoUsuario = new Usuario();

                nuevoUsuario.nombreUsuario       = tbNombreUsuario.Text;
                nuevoUsuario.nombres             = tbNombres.Text;
                nuevoUsuario.apellidoPaterno     = tbApellidoPaterno.Text;
                nuevoUsuario.apellidoMaterno     = tbApellidoMaterno.Text;
                nuevoUsuario.tipoUsuario         = cbUsuarios.Text;
                nuevoUsuario.contraseña          = pbContrasenia.Password;
                nuevoUsuario.DelegacionMunicipal = RecuperarDelegacionMunicipalSeleccionada();

                entidadesBD.Usuarios.Add(nuevoUsuario);

                entidadesBD.SaveChanges();

                MessageBox.Show("Registro Exitoso");
            }
        }
        /// <summary>
        /// Menaja el registro de delegaciones, checando que cumplan ciertas validaciones
        /// </summary>
        public void ManejoRegistroDelegacion()
        {
            VerificarDelegacion();
            if (DelegacionValida() && !DelegacionRepetida(RecuperarDelegacionNuevo()))
            {
                DelegacionMunicipal nuevaDelegacion = new DelegacionMunicipal();

                nuevaDelegacion.nombre       = tbNombreDelegacion.Text;
                nuevaDelegacion.calle        = tbCalle.Text;
                nuevaDelegacion.colonia      = tbColonia.Text;
                nuevaDelegacion.numero       = int.Parse(tbNumero.Text);
                nuevaDelegacion.codigoPostal = int.Parse(tbCodigoPostal.Text);
                nuevaDelegacion.correo       = tbCorreoElectronico.Text;
                nuevaDelegacion.telefono     = tbTelefono.Text;
                nuevaDelegacion.municipio    = tbMunicipio.Text;

                entidadesBD.DelegacionesMunicipales.Add(nuevaDelegacion);

                entidadesBD.SaveChanges();

                MessageBox.Show("Registro Delegación Exitoso");
            }
        }
        /// <summary>
        /// Manejo de la funcionalidad del manejo de modificacion de usuario
        /// </summary>
        public void ManejoModificacionUsuario()
        {
            if (UsuarioValido() && !UsuarioRepetido(RecuperarUsarioNuevo()))
            {
                Usuario modificarUsuario = entidadesBD.Usuarios.Find(usuarioElegido.idUsuario);

                modificarUsuario.nombreUsuario       = tbNombreUsuario.Text;
                modificarUsuario.nombres             = tbNombres.Text;
                modificarUsuario.apellidoPaterno     = tbApellidoPaterno.Text;
                modificarUsuario.apellidoMaterno     = tbApellidoMaterno.Text;
                modificarUsuario.tipoUsuario         = cbUsuarios.Text;
                modificarUsuario.contraseña          = pbContrasenia.Password;
                modificarUsuario.DelegacionMunicipal = RecuperarDelegacionMunicipalSeleccionada();

                entidadesBD.SaveChanges();

                MessageBox.Show("Modificación de usuario Exitosa");
            }
            else
            {
                MessageBox.Show("Usuario ya existente en la base de datos");
            }
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Controla el registro de la informacion de un
        /// nuevo condutor en la base de datos
        /// </summary>
        private void RegistrarConductor()
        {
            Conductor nuevoConductor = new Conductor();

            nuevoConductor.nombres                = tb_nombre.Text;
            nuevoConductor.apellidoPaterno        = tb_apellidoPat.Text;
            nuevoConductor.apellidoMaterno        = tb_apellidoMat.Text;
            nuevoConductor.fechaNacimiento        = (DateTime)dp_fechaNacimiento.SelectedDate.Value;
            nuevoConductor.numeroLicenciaConducir = tb_numLicenciaConducir.Text;

            if (ConductorRepetido(nuevoConductor) == false)
            {
                bdTransitoEntities.Conductores.Add(nuevoConductor);
                bdTransitoEntities.SaveChanges();
                MessageBox.Show("Conductor registrado exitosamente");
                LimpiarVentana();
                this.DialogResult = true;
            }
            else
            {
                MessageBox.Show("ERROR: El conductor ya esta registrado en el sistema");
                this.DialogResult = false;
            }
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Guarda la informacion de nuevo vehiculo
        /// </summary>
        private void RegistrarVehiculo()
        {
            try
            {
                Vehiculo nuevoVehiculo = new Vehiculo();

                nuevoVehiculo.numeroPolizaSeguro = tb_numPolizaSeguro.Text;
                nuevoVehiculo.nombreAseguradora  = tb_nombreAseguradora.Text;
                nuevoVehiculo.color       = tb_color.Text;
                nuevoVehiculo.año         = Int32.Parse(tb_anio.Text);
                nuevoVehiculo.modelo      = tb_modelo.Text;
                nuevoVehiculo.marca       = tb_marca.Text;
                nuevoVehiculo.numeroPlaca = tb_numeroPlacas.Text;
                string seleccionComboBox = cb_conductor.Text;

                if ((seleccionComboBox).Equals("Otro conductor"))
                {
                    MessageBoxResult respuesta = MessageBox.Show("Quieres crear un nuevo conductor?",
                                                                 "", MessageBoxButton.YesNo);
                    if (respuesta == MessageBoxResult.Yes)
                    {
                        RegistrarConductorWindow nuevaVentana = new RegistrarConductorWindow();
                        bool conductorRegistrado = (bool)nuevaVentana.ShowDialog();
                        ActualizarConductores();
                        if (conductorRegistrado)
                        {
                            cb_conductor.SelectedIndex = cb_conductor.Items.Count - 1;
                        }
                        else
                        {
                            cb_conductor.SelectedIndex = 0;
                        }
                    }
                }
                else
                {
                    nuevoVehiculo.Conductor = RecuperarConductor();

                    if (VehiculoRepetido(nuevoVehiculo) == false)
                    {
                        entidadesBD.Vehiculos.Add(nuevoVehiculo);
                        entidadesBD.SaveChanges();
                        MessageBox.Show("Vehiculo registrado exitosamente");
                        LimpiarVentana();
                    }
                    else
                    {
                        MessageBox.Show("ERROR: El vehiculo ya esta registrado en el sistema");
                    }
                }
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entidad \"{0}\" Estado \"{1}\" ",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Propiedad: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
            }
        }
        /// <summary>
        /// Elimina el o los conductores seleccionados en el datagrid previo a darle clic al boton btn_eliminar
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_eliminar_Click(object sender, RoutedEventArgs e)
        {
            if (dg_conductor.SelectedItems.Count > 0)
            {
                List <Conductor> conductoresSeleccionados = new List <Conductor>();
                foreach (Conductor conductorDG in dg_conductor.SelectedItems)
                {
                    conductoresSeleccionados.Add(conductorDG);
                }


                MessageBoxResult respuesta;
                if (dg_conductor.SelectedItems.Count > 1)
                {
                    respuesta = MessageBox.Show("¿Estas seguro que quieres eliminar los conductores seleccionados?",
                                                "", MessageBoxButton.YesNo);
                }
                else
                {
                    respuesta = MessageBox.Show("¿Estas seguro que quieres eliminar el conductor seleccionado?",
                                                "", MessageBoxButton.YesNo);
                }

                if (respuesta == MessageBoxResult.Yes)
                {
                    foreach (Conductor conductorAEliminar in conductoresSeleccionados)
                    {
                        /* Si encuentra que el conductor que quiere eliminar tiene una relacion con uno o
                         * mas vehiculos, entonces tiene que eliminar todos los vehiculos relacionados a el, o no borrarlo*/
                        if (conductorAEliminar.Vehiculos.Count > 0)
                        {
                            MessageBoxResult respuestaElimVehiculos =
                                MessageBox.Show("No se puede eliminar el conductor " +
                                                conductorAEliminar.nombres + " " +
                                                conductorAEliminar.apellidoPaterno + " " +
                                                conductorAEliminar.apellidoMaterno +
                                                "debido a que tiene vehiculos asignados. " +
                                                "¿Deseas eliminar todos los vehiculos de este conductor tambien?",
                                                "Advertencia: No se puede eliminar a un conductor con vehiculos",
                                                MessageBoxButton.YesNo);

                            if (respuestaElimVehiculos == MessageBoxResult.Yes)
                            {
                                EliminarVehiculosConductor(conductorAEliminar);

                                bdTransito.Conductores.Remove(conductorAEliminar);
                            }
                        }
                        else
                        {
                            bdTransito.Conductores.Remove(conductorAEliminar);
                        }
                    }

                    try
                    {
                        bdTransito.SaveChanges();
                    }
                    catch (SqlException ex)
                    {
                        MessageBox.Show("Error en la conexion con la base de datos", "Error", MessageBoxButton.OK);
                        Console.WriteLine(ex.StackTrace);
                    }
                }
            }
            else
            {
                MessageBox.Show("No se ha seleccionado ningún conductor para eliminar", "Error", MessageBoxButton.OK);
            }

            ActualizarTabla();
        }