public static Dictamen ConsultarDictamen(int idReporte)
        {
            int      IdReporte = idReporte;
            Dictamen dictamen  = new Dictamen();
            SocketBD socket    = new SocketBD();
            string   mensaje   = "";
            Paquete  paquete   = new Paquete();

            paquete.Consulta    = String.Format("SELECT folio, descripcion, fechaHora, idReporte, username FROM dbo.dictamen WHERE idReporte = {0}", IdReporte);
            paquete.TipoDominio = TipoDato.Dictamen;
            paquete.TipoQuery   = TipoConsulta.Select;

            mensaje = JsonSerializer.Serialize(paquete);

            socket.IniciarConexion();
            socket.EnviarMensaje(mensaje);
            string respuesta = socket.RecibirMensaje();

            socket.TerminarConexion();

            if (respuesta.Length > 0)
            {
                dictamen = (Dictamen)JsonSerializer.Deserialize(respuesta, typeof(Dictamen));;
            }

            return(dictamen);
        }
예제 #2
0
        public async Task <IActionResult> PutDictamen([FromRoute] int id, [FromBody] Dictamen dictamen)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != dictamen.Folio)
            {
                return(BadRequest());
            }

            _context.Entry(dictamen).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DictamenExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public static int RegistrarDictamen(Dictamen nuevoDictamen)
        {
            int      resultado = 0;
            Dictamen dictamen  = new Dictamen();
            SocketBD socket    = new SocketBD();
            string   mensaje   = "";
            Paquete  paquete   = new Paquete();

            paquete.Consulta = String.Format("INSERT INTO dbo.dictamen (folio, descripcion, fechaHora, idReporte, username) VALUES ({0}, '{1}', '{2}', {3}, '{4}')",
                                             nuevoDictamen.Folio, nuevoDictamen.Descripcion, nuevoDictamen.FechaHora.ToString("yyyy-MM-dd hh:mm tt"), nuevoDictamen.IdReporte, nuevoDictamen.Username);
            paquete.TipoDominio = TipoDato.Dictamen;
            paquete.TipoQuery   = TipoConsulta.Insert;

            mensaje = JsonSerializer.Serialize(paquete);

            socket.IniciarConexion();
            socket.EnviarMensaje(mensaje);
            string respuesta = socket.RecibirMensaje();

            socket.TerminarConexion();

            if (respuesta.Length > 0)
            {
                resultado = int.Parse(respuesta);
            }

            return(resultado);
        }
 // Constructor.
 public InformePOJO(AlumnoPOJO alumno, Dictamen dictamenAsesor, Dictamen dictamenRevisor1, Dictamen dictamenRevisor2)
 {
     Alumno           = alumno;
     DictamenAsesor   = dictamenAsesor;
     DictamenRevisor1 = dictamenRevisor1;
     DictamenRevisor2 = dictamenRevisor2;
 }
        private void llenarCampos()
        {
            Dictamen dictamen = DictamenDAO.getDictamenByIdReporte(idReporte);

            folio   = dictamen.Folio;
            peritos = PeritoDAO.getAllPeritos();
            cb_perito.ItemsSource = peritos;
            dp_fecha.SelectedDate = dictamen.Fecha;
            tb_Folio.Text         = dictamen.IdReporte.ToString();

            if (dictamen.Estado == "Inactivo")
            {
                tb_Descripcion.Text = dictamen.Descripcion;
                for (int i = 0; i < peritos.Count; i++)
                {
                    cb_perito.SelectedIndex = i;
                    Perito perito = (Perito)cb_perito.SelectedItem;
                    if (perito.IdPerito == dictamen.IdPerito)
                    {
                        break;
                    }
                    tb_Descripcion.IsEnabled = false;
                    cb_perito.IsEnabled      = false;
                }
            }
            else
            {
                MessageBox.Show("Dictamen en curso");
                this.Close();
            }
        }
        private void button_RegistrarDictamen_Click(object sender, RoutedEventArgs e)
        {
            if (validarCampos())
            {
                Dictamen dictamen = new Dictamen();
                dictamen.Folio       = folio;
                dictamen.Descripcion = tb_Descripcion.Text;
                peritoSeleccionado   = (Perito)cb_perito.SelectedItem;
                dictamen.IdPerito    = peritoSeleccionado.IdPerito;
                dictamen.Estado      = "Inactivo";
                string hora = DateTime.Now.ToString("t");
                dictamen.Hora = hora;

                try
                {
                    DictamenDAO.updateDictamen(dictamen);
                    MessageBox.Show("Dictamen realizado de manera exitosa.");
                    this.Close();
                }
                catch (Exception x)
                {
                    MessageBox.Show("Ocurrió un error, inténtelo de nuevo." + x.Message);
                }
            }
            else
            {
                MessageBox.Show("Asegúrese de llenar todos los campos.");
            }
        }
        public static void removeDictamen(Dictamen dictamen)
        {
            SqlConnection connection = null;

            try
            {
                connection = ConexionBD.getConnection();
                if (connection != null)
                {
                    SqlCommand command;
                    int        folio = dictamen.Folio;
                    String     query = String.Format("UPDATE Dictamen SET estado = 'Eliminado' WHERE folio = {0}", folio);
                    command = new SqlCommand(query, connection);
                    command.ExecuteNonQuery();
                    command.Dispose();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw;
            }
            finally
            {
                connection.Close();
            }
        }
        public static void updateDictamen(Dictamen dictamen)
        {
            SqlConnection connection = null;

            try
            {
                connection = ConexionBD.getConnection();
                if (connection != null)
                {
                    SqlCommand command;
                    int        folio       = dictamen.Folio;
                    String     descripcion = dictamen.Descripcion;
                    int        idPerito    = dictamen.IdPerito;
                    String     estado      = dictamen.Estado;
                    String     hora        = dictamen.Hora;
                    String     query       = String.Format("UPDATE Dictamen SET descripcion = '{0}', " +
                                                           "idPerito = {1}, " +
                                                           "hora = '{2}', estado = '{3}' WHERE folio = {4}",
                                                           descripcion, idPerito, hora, estado, folio);
                    command = new SqlCommand(query, connection);
                    command.ExecuteNonQuery();
                    command.Dispose();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw;
            }
            finally
            {
                connection.Close();
            }
        }
 public String Registro(String descripcion, int idPerito, int idReporte)
 {
     using (TransitoContext dbSS =
                new TransitoContext())
     {
         Dictamen dictamen = new Dictamen();
         dictamen.Descripcion = descripcion;
         dictamen.IdPerito    = idPerito;
         dictamen.IdReporte   = idReporte;
         dictamen.Fecha       = DateTime.Now;
         dbSS.Dictamen.Add(dictamen);
         if (dbSS.SaveChanges() == 1)
         {
             Reporte reporte = new Reporte();
             reporte         = dbSS.Reporte.Find(idReporte);
             reporte.Estatus = "Dictaminado";
             dbSS.Reporte.Update(reporte);
             if (dbSS.SaveChanges() == 1)
             {
                 return("{\"correcto\": \"si\"}");
             }
             else
             {
                 return("{\"correcto\": \"no\"}");
             }
         }
         else
         {
             return("{\"correcto\": \"no\"}");
         }
     }
 }
        /// <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");
            }
        }
예제 #11
0
        public async Task <IActionResult> PostDictamen([FromBody] Dictamen dictamen)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Dictamen.Add(dictamen);
            var reporte = _context.Reporte.Where(m => m.Idreporte == dictamen.Idreporte).FirstOrDefault();

            reporte.Estatus = true;
            _context.Reporte.Update(reporte);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (DictamenExists(dictamen.Folio))
                {
                    //return new StatusCodeResult(StatusCodes.Status409Conflict);
                    return(CreatedAtAction("GetDictamen", new { inserted = false, cause = "Ya existe un dictamen para este reporte" }));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetDictamen", new { inserted = true, id = dictamen.Folio }, dictamen));
        }
        /// <summary>
        /// Actualización del reporte
        /// </summary>
        /// <param name="nuevoDictamen"></param>
        private void ActualizarReporte(Dictamen nuevoDictamen)
        {
            Reporte modificarReporte = entidadesBD.Reportes.Find(reporteElegido.idReporte);

            modificarReporte.estatus  = "Dictaminado";
            modificarReporte.Dictamen = nuevoDictamen;

            entidadesBD.SaveChanges();
        }
예제 #13
0
 private void CargarDictamen()
 {
     using (SistemaReportesVehiculosEntities db = new SistemaReportesVehiculosEntities())
     {
         Dictamen dictamen = db.Dictamen.Find(folio);
         cb_responsable.Text  = dictamen.responsable;
         txt_descripcion.Text = dictamen.descripcion;
     }
 }
        private string ProcesarSeleccion(Paquete paquete)
        {
            string respuesta = "";

            if (paquete.TipoDominio == TipoDato.Delegacion)
            {
                List <Delegacion> listaDelegaciones = DelegacionDAO.ConsultarDelegaciones(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaDelegaciones);
            }
            else if (paquete.TipoDominio == TipoDato.Usuario)
            {
                List <Usuario> listaUsuarios = UsuarioDAO.ConsultarUsuarios(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaUsuarios);
            }
            else if (paquete.TipoDominio == TipoDato.Municipio)
            {
                List <Municipio> listaMunicipios = MunicipioDAO.ConsultarMunicipios(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaMunicipios);
            }
            else if (paquete.TipoDominio == TipoDato.DelegacionTipo)
            {
                List <DelegacionTipo> listaTiposDelegacion = DelegacionTipoDAO.ConsultarTipos(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaTiposDelegacion);
            }
            else if (paquete.TipoDominio == TipoDato.Conductor)
            {
                List <Conductor> listaConductores = ConductorDAO.ConsultarConductores(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaConductores);
            }
            else if (paquete.TipoDominio == TipoDato.Vehiculo)
            {
                List <Vehiculo> listaVehiculos = VehiculoDAO.ConsultarVehiculos(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaVehiculos);
            }
            else if (paquete.TipoDominio == TipoDato.Cargo)
            {
                List <Cargo> listaCargos = CargoDAO.ConsultarCargos(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaCargos);
            }
            else if (paquete.TipoDominio == TipoDato.Dictamen)
            {
                Dictamen dictamen = DictamenDAO.ConsultarDictamenDeReporte(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(dictamen);
            }
            else if (paquete.TipoDominio == TipoDato.ReporteSiniestro)
            {
                List <ReporteSiniestro> listaReporteSiniestro = ReporteSiniestroDAO.ConsultarReportes(paquete.Consulta);
                respuesta = JsonSerializer.Serialize(listaReporteSiniestro);
            }
            else if (paquete.TipoDominio == TipoDato.Fotografia)
            {
                //Implementar FotografiaDAO
            }

            return(respuesta);
        }
예제 #15
0
        /// <summary>
        /// Carga la informacion del reporte seleccionado
        /// </summary>
        private void CargarDatosDictamen()
        {
            dictamenRecuperado = reporteElegido.Dictamen;

            LbNombrePerito.Content = dictamenRecuperado.nombreCompletoPerito;
            LbFecha.Content        = dictamenRecuperado.fecha;
            LbHora.Content         = dictamenRecuperado.hora;
            LbFolio.Content        = dictamenRecuperado.folio;
            TBDescripcion.Text     = dictamenRecuperado.descripcion;
        }
        public Dictamen ObtenerDictamen(int idReporte)
        {
            Dictamen dictamen = new Dictamen();

            using (TransitoContext dbSS = new TransitoContext())
            {
                dictamen = dbSS.Dictamen.FirstOrDefault(dic => dic.IdReporte == idReporte);
            }
            return(dictamen);
        }
예제 #17
0
        public async Task <JsonResult> RechazarGrupo(Dictamen dictamen)
        {
            bool result = await FireStore.DictamenGrupo(dictamen.grupoID, 0, dictamen.motivoRechazo);

            if (result)
            {
                return(Json(new { Success = true }));
            }
            else
            {
                return(Json(new { Success = false }));
            }
        }
예제 #18
0
        public async Task <JsonResult> DictaminarRenovacion(Dictamen dictamen)
        {
            string        resultado = "";
            RequestResult result    = await FireStore.CambioEstado(dictamen.idDocumento, int.Parse(dictamen.status), dictamen.grupoID, double.Parse(dictamen.monto), dictamen.motivoRechazo);

            if (result.error == 0)
            {
                return(Json(new { Success = true }));
            }
            else
            {
                return(Json(new { Success = false }));
            }
        }
예제 #19
0
        public static int verificaDictamen(string fecha)
        {
            int           idDictamen = 0;
            Dictamen      dictamen   = null;
            SqlConnection conexion   = null;

            try
            {
                conexion = ConnectionUtils.getConnection();
                SqlCommand    command;
                SqlDataReader rd;
                if (conexion != null)
                {
                    String query = String.Format("SELECT " +
                                                 "x.idDictamen, " +
                                                 "x.fechaDictamen " +
                                                 "FROM dbo.Dictamen x " +
                                                 "WHERE x.fechaDictamen='{0}';", fecha);
                    Console.WriteLine(query);
                    command = new SqlCommand(query, conexion);
                    rd      = command.ExecuteReader();

                    while (rd.Read())
                    {
                        dictamen               = new Dictamen();
                        dictamen.IdDictamen    = (!rd.IsDBNull(0)) ? rd.GetInt32(0) : 0;
                        dictamen.FechaDictamen = (!rd.IsDBNull(1)) ? rd.GetString(1) : "";
                    }
                    rd.Close();
                    command.Dispose();

                    idDictamen = dictamen.IdDictamen;
                    Console.WriteLine(idDictamen);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                Console.WriteLine("No se encontro el dictamen");
            }
            finally
            {
                if (conexion != null)
                {
                    conexion.Close();
                }
            }
            return(idDictamen);
        }
예제 #20
0
        public async Task <JsonResult> Liberar(Dictamen dictamen)
        {
            string id     = dictamen.grupoID == null ? dictamen.idDocumento : dictamen.grupoID;
            bool   grupo  = dictamen.grupoID == null ? false : true;
            bool   result = await FireStore.SetControlId(id, null, null, grupo);

            if (result)
            {
                return(Json(new { Success = true }));
            }
            else
            {
                return(Json(new { Success = false }));
            }
        }
예제 #21
0
        public static Dictamen obtenerDictamen(int idReporte)
        {
            Dictamen      dictamen = new Dictamen();
            SqlConnection conn     = null;

            try
            {
                conn = ConexionBD.getConnection();
                if (conn != null)
                {
                    SqlCommand    command;
                    SqlDataReader dataReader;

                    String query = String.Format("SELECT * FROM dictamen where idReporte = '{0}'; ", idReporte);

                    command    = new SqlCommand(query, conn);
                    dataReader = command.ExecuteReader();

                    if (dataReader.Read())
                    {
                        dictamen.NombrePerito = (!dataReader.IsDBNull(0)) ? dataReader.GetString(0) : "";
                        dictamen.Folio        = (!dataReader.IsDBNull(1)) ? dataReader.GetInt32(1) : 0;
                        dictamen.FechaYhora   = (!dataReader.IsDBNull(2)) ? dataReader.GetDateTime(2).ToString("g") : "";
                        dictamen.Descripcion  = (!dataReader.IsDBNull(3)) ? dataReader.GetString(3) : "";
                        dictamen.IdReporte    = (!dataReader.IsDBNull(4)) ? dataReader.GetInt32(4) : 0;
                    }
                    command.Dispose();
                    dataReader.Close();
                }
            }
            catch (SqlException e)
            {
                MessageBox.Show("Error en la Base de Datos", "Ocurrió un error");
                Console.WriteLine(e.Message);
            }
            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }
            return(dictamen);
        }
예제 #22
0
        public static void guardarDictamen(Dictamen dictamen)
        {
            String query = "";

            query = "INSERT INTO dbo.Dictamen (descripcion,fechaDictamen,idPersonal) " +
                    "VALUES(@descripcion,@fechaDictamen,@idPersonal);";


            SqlConnection conn = null;

            try
            {
                conn = ConnectionUtils.getConnection();
                SqlCommand command;
                if (conn != null)
                {
                    Console.WriteLine(query);
                    command             = new SqlCommand(query, conn);
                    command.CommandType = CommandType.Text;
                    command.Parameters.AddWithValue("@descripcion", dictamen.Descripcion);
                    command.Parameters.AddWithValue("@fechaDictamen", dictamen.FechaDictamen);
                    command.Parameters.AddWithValue("@idPersonal", dictamen.IdPersonal);

                    command.Parameters.AddWithValue("@idDictamen", dictamen.IdDictamen);


                    int i = command.ExecuteNonQuery();
                    Console.WriteLine("Filas afectadas: " + i);
                    command.Dispose();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                Console.WriteLine("No se pudo guardar la información...");
            }
            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }
        }
예제 #23
0
        private void btn_RegistrarDictamen_Click(object sender, RoutedEventArgs e)
        {
            if (ValidarFormulario())
            {
                Dictamen dictamen = new Dictamen();
                dictamen.Descripcion = txt_Descripcion.Text;
                dictamen.Folio       = int.Parse(txt_Folio.Text);
                dictamen.FechaHora   = DateTime.Now;
                dictamen.IdReporte   = reporte.IdReporte;
                dictamen.Username    = usuario.Username;

                int resultado = DictamenDAO.RegistrarDictamen(dictamen);
                if (resultado == 1)
                {
                    this.DialogResult = true;
                    this.Close();
                }
            }
        }
예제 #24
0
        public static Dictamen ConsultarDictamenDeReporte(string consulta)
        {
            Dictamen      dictamen = null;
            SqlConnection conn     = null;

            try
            {
                conn = ConexionBD.GetConnection();
                if (conn != null)
                {
                    SqlCommand    comando;
                    SqlDataReader dataReader;
                    comando    = new SqlCommand(consulta, conn);
                    dataReader = comando.ExecuteReader();

                    if (dataReader.Read())
                    {
                        dictamen             = new Dictamen();
                        dictamen.Folio       = (!dataReader.IsDBNull(0)) ? dataReader.GetInt32(0) : 0;
                        dictamen.Descripcion = (!dataReader.IsDBNull(1)) ? dataReader.GetString(1) : "";
                        dictamen.FechaHora   = (!dataReader.IsDBNull(2)) ? dataReader.GetDateTime(2) : System.DateTime.MinValue;
                        dictamen.IdReporte   = (!dataReader.IsDBNull(3)) ? dataReader.GetInt32(3) : 0;
                        dictamen.Username    = (!dataReader.IsDBNull(4)) ? dataReader.GetString(4) : "";
                    }

                    dataReader.Close();
                    comando.Dispose();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }

            return(dictamen);
        }
        public static List <Dictamen> getAllDictamentes()
        {
            List <Dictamen> dictamenes = new List <Dictamen>();
            SqlConnection   connection = null;

            try
            {
                connection = ConexionBD.getConnection();
                if (connection != null)
                {
                    SqlCommand    command;
                    SqlDataReader dataReader;
                    String        query = "SELECT * FROM Dictamen";
                    command    = new SqlCommand(query, connection);
                    dataReader = command.ExecuteReader();
                    while (dataReader.Read())
                    {
                        Dictamen dictamen = new Dictamen();
                        dictamen.Folio       = (!dataReader.IsDBNull(0)) ? dataReader.GetInt32(0) : 0;
                        dictamen.Descripcion = (!dataReader.IsDBNull(1)) ? dataReader.GetString(1) : "";
                        dictamen.Fecha       = (!dataReader.IsDBNull(2)) ? dataReader.GetDateTime(2) : new DateTime();
                        dictamen.IdPerito    = (!dataReader.IsDBNull(3)) ? dataReader.GetInt32(3) : 0;
                        dictamen.IdReporte   = (!dataReader.IsDBNull(4)) ? dataReader.GetInt32(4) : 0;
                        dictamen.Hora        = (!dataReader.IsDBNull(6)) ? dataReader.GetString(6) : "";
                        dictamen.Estado      = (!dataReader.IsDBNull(5)) ? dataReader.GetString(5) : "";
                        dictamenes.Add(dictamen);
                    }
                    dataReader.Close();
                    command.Dispose();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw;
            }
            finally
            {
                connection.Close();
            }
            return(dictamenes);
        }
예제 #26
0
        private void CargarInformacionReporte()
        {
            idReporte = reporteVisualizar.IdReporte;
            txt_direccionDetalle.Text = reporteVisualizar.Direccion;
            txt_fechaDetalle.Text     = reporteVisualizar.Fecha;
            cargarImagenes();

            Dictamen dictamen = DictamenDAO.obtenerDictamen(idReporte);

            if (reporteVisualizar.Estatus.ToLower().Equals("dictaminado"))
            {
                lb_dictamen.Content     = "Dictamen: ";
                txt_dictamen.Text       = dictamen.Descripcion;
                txt_dictamen.Visibility = Visibility.Visible;
            }
            else
            {
                lb_dictamen.Content = "Aún no hay dictamen";
            }
        }
예제 #27
0
        private void btn_dictaminar_Click(object sender, RoutedEventArgs e)
        {
            string descripcion = txt_descripcion.Text;
            string hora        = DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Millisecond.ToString();
            string fecha       = DateTime.Now.Day.ToString() + DateTime.Now.Month.ToString();

            placas = cb_responsable.Text;

            int idReportAux = idReporte;

            if (string.IsNullOrEmpty(descripcion))
            {
                MessageBox.Show("Campos Vacios...", "Error");
                return;
            }
            try
            {
                using (SistemaReportesVehiculosEntities db = new SistemaReportesVehiculosEntities())
                {
                    Dictamen dictamenNew = db.Dictamen.Find(folio);
                    dictamenNew.folio           = fecha + hora;
                    dictamenNew.descripcion     = descripcion;
                    dictamenNew.responsable     = placas;
                    dictamenNew.fechaHora       = DateTime.Now;
                    dictamenNew.idUsuario       = idUsuario;
                    dictamenNew.idReporte       = idReportAux;
                    db.Entry(dictamenNew).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                    MessageBox.Show("dictamen actualizado con éxito");
                    idReportAux = dictamenNew.idReporte;
                }
                this.Visibility = Visibility.Collapsed;
                this.itActualizar.Actualizar(idReportAux);
            }


            catch
            {
                MessageBox.Show("Error");
            }
        }
 public IActionResult VerDetalle(int idSesion, int idReporte)
 {
     Console.WriteLine("idreporte = " + idReporte);
     byte[] arr = new byte[100];
     if (HttpContext.Session.TryGetValue("SesionPerito", out arr))
     {
         using (TransitoContext dbSS = new TransitoContext())
         {
             BitacoraPerito registro =
                 dbSS.BitacoraPerito
                 .FirstOrDefault(b => b.IdBitacora == idSesion);
             if (registro != null && registro.Activa == true)
             {
                 Reporte            reporte   = dbSS.Reporte.FirstOrDefault(a => a.IdReporte == idReporte);
                 Conductor          conductor = dbSS.Conductor.FirstOrDefault(a => a.Telefono == reporte.Telefono);
                 Vehiculo           vehiculo  = dbSS.Vehiculo.FirstOrDefault(a => a.Placa.Equals(reporte.Placa));
                 Dictamen           dictamen  = dbSS.Dictamen.FirstOrDefault(a => a.IdReporte == idReporte);
                 List <FotoReporte> fotos     = dbSS.FotoReporte.ToList();
                 ViewBag.idSesion  = idSesion;
                 ViewBag.Conductor = conductor;
                 ViewBag.Reporte   = reporte;
                 ViewBag.Vehiculo  = vehiculo;
                 ViewBag.Dictamen  = dictamen;
                 ViewBag.Fotos     = fotos;
                 ViewBag.IdPerito  = registro.IdPerito;
                 ViewBag.Dictamen  = dictamen;
                 return(View("VerDetalle"));
             }
             else
             {
                 return(new RedirectResult("/"));
             }
         }
     }
     else
     {
         return(new RedirectResult("/"));
     }
 }
        public static void addDictamen(Dictamen dictamen)
        {
            SqlConnection connection = null;

            try
            {
                connection = ConexionBD.getConnection();
                if (connection != null)
                {
                    SqlCommand command;
                    int        folio       = dictamen.Folio;
                    String     descripcion = dictamen.Descripcion;
                    DateTime   fecha       = dictamen.Fecha;
                    String     date        = fecha.ToString("yyyy-MM-dd HH:mm:ss.fff");
                    int        idPerito    = dictamen.IdPerito;
                    int        idReporte   = dictamen.IdReporte;
                    String     estado      = dictamen.Estado;
                    String     hora        = dictamen.Hora;
                    String     query       = String.Format("INSERT INTO Dictamen (folio, descripcion, fechaYHora, idperito, idReporte, estado, hora)" +
                                                           " VALUES ({0}, '{1}', CONVERT(varchar, '{2}'),{3},{4},'{5}','{6}')",
                                                           folio, descripcion, date, idPerito, idReporte, estado, hora);
                    command = new SqlCommand(query, connection);
                    command.ExecuteNonQuery();
                    command.Dispose();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw;
            }
            finally
            {
                connection.Close();
            }
        }
        private void button_RegistrarReporte_Click(object sender, RoutedEventArgs e)
        {
            if (validarCampos())
            {
                if (conductoresSeleccionados.Count > 0)
                {
                    if (vehiculosSeleccionados.Count > 0)
                    {
                        if (images.Count >= 3)
                        {
                            Reporte reporte = new Reporte();
                            reporte.Direccion   = tb_direccion.Text;
                            reporte.Descripcion = tb_descripcion.Text;
                            reporte.Fecha       = (DateTime)dp_fecha.SelectedDate;
                            reporte.Estado      = "Activo";
                            ReporteDAO.addReporte(reporte);

                            int ultimoReporte = ReporteDAO.getLastIndex();

                            Dictamen dictamen = new Dictamen();
                            dictamen.Descripcion = "";
                            dictamen.Estado      = "Activo";
                            dictamen.Fecha       = (DateTime)dp_fecha.SelectedDate;
                            string hora = DateTime.Now.ToString("t");
                            dictamen.Hora      = hora;
                            dictamen.IdPerito  = 0;
                            dictamen.IdReporte = ultimoReporte;
                            dictamen.Folio     = ultimoReporte;
                            DictamenDAO.addDictamen(dictamen);



                            VehiculosReporte vehiculosReporte;
                            foreach (Vehiculo vehiculo in vehiculosSeleccionados)
                            {
                                vehiculosReporte            = new VehiculosReporte();
                                vehiculosReporte.IdReporte  = ultimoReporte;
                                vehiculosReporte.IdVehiculo = vehiculo.IdVehiculo;
                                VehiculosReporteDAO.addVehiculosReporte(vehiculosReporte);
                            }

                            ConductoresReporte conductoresReporte;
                            foreach (Conductor conductor in conductoresSeleccionados)
                            {
                                conductoresReporte             = new ConductoresReporte();
                                conductoresReporte.IdReporte   = ultimoReporte;
                                conductoresReporte.IdConductor = conductor.IdConductor;
                                ConductoresReporteDAO.addConductoresReporte(conductoresReporte);
                            }

                            try
                            {
                                foreach (Image imagen in images)
                                {
                                    String filepath = imagen.Source.ToString().Substring(8);
                                    String filename = String.Format("Reporte{0}", ultimoReporte);
                                    ConexionSFTP.subirArchivo(filepath, filename);
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message);
                                throw;
                            }
                            MessageBox.Show("Registro exitoso.");
                            limpiarCampos();
                        }
                        else
                        {
                            MessageBox.Show("Debe seleccionar al menos 3 fotografías.");
                        }
                    }
                    else
                    {
                        MessageBox.Show("Debe elegir al menos un vehículo.");
                    }
                }
                else
                {
                    MessageBox.Show("Debe elegir al menos un Conductor");
                }
            }
            else
            {
                MessageBox.Show("Asegúrese de llenar todos los campos.");
            }
        }