carpeta
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js" integrity="sha512-AA1Bzp5Q0K1KanKKmvN/4d3IRKVlv9PYgwFPvm32nPO6QS8yH1HO7LbgB1pgiOxPtfeg5zEn2ba64MUcqJx6CA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.10.3/dist/sweetalert2.all.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/sweetalert2@11.10.3/dist/sweetalert2.min.css" rel="stylesheet">
</head>
<body>
<div class="container">
<?php
class Conexion{
static public function conectar()
{
// echo $tabla;
$conexion = new PDO ("mysql:host=localhost;dbname=dbaudiencias", "root","");
// $sql = $conexion->prepare("SELECT * FROM delitos");
// $sql->execute();
//var_dump($sql->fetchAll());
return $conexion;
}
}
class CarpetasModel extends Conexion{
# Muestra todas las carpetas
static public function CarpetasCreateModels($datos,$tabla)
{
$stmt= Conexion::conectar()->prepare("INSERT INTO $tabla(num_inv,tipo_solicitud,distrito) VALUES (:num_inv,:tipo_solicitud,:distrito)");
$stmt->bindParam(":num_inv",$datos['num_inv'],PDO::PARAM_STR);
$stmt->bindParam(":tipo_solicitud",$datos['tipo_solicitud'],PDO::PARAM_STR);
$stmt->bindParam(":distrito",$datos['distrito'],PDO::PARAM_STR);
if($stmt->execute()){
return "success";
}else{
return "error";
}
$stmt = null;
}
# Muestra la carpeta
static public function CarpetasVistaModels($tabla)
{
$stmt= Conexion::conectar()->prepare("SELECT id,num_inv,carpeta,fecha_carpeta,tipo_solicitud,distrito,Asignado FROM $tabla ORDER BY $tabla.id DESC");
$stmt->execute();
return $stmt->fetchAll();
}
static public function CarpetasDeleteModels($datosmodel,$tabla)
{
try {
$stmt = Conexion::conectar()->prepare("DELETE FROM $tabla WHERE id = :id ");
$stmt->bindParam(":id", $datosmodel, PDO::PARAM_INT);
if ($stmt->execute()) {
return "success";
} else {
return "error"; // Mensaje personalizado para el usuario
}
} catch (PDOException $e) {
// Captura la excepción PDOException y muestra un mensaje personalizado al usuario
return "error";
} finally {
// Opcional: Puedes liberar recursos aquí si es necesario, aunque no es esencial debido a la gestión automática de PDO.
$stmt = null;
}
}
# Asigna a la persona
static public function CarpetaEditarModels($datosmodel,$tabla)
{
$stmt= Conexion::conectar()->prepare("UPDATE $tabla SET Asignado=:Asignado WHERE id = :id ");
$stmt->bindParam(":Asignado",$datosmodel['Asignado'],PDO::PARAM_STR);
$stmt->bindParam(":id",$datosmodel['id'],PDO::PARAM_INT);
if($stmt->execute()){
return "success";
}else{
return "error";
}
$stmt = null;
}
# Muestra todas las solicitudes
static public function PendienteMuestraModels($datos,$tabla,$Tipo)
{
$stmt= Conexion::conectar()->prepare("SELECT * FROM $tabla WHERE id_carpeta = :id AND Estado = :Tipo");
$stmt->bindParam(":id",$datos,PDO::PARAM_INT);
$stmt->bindParam(":Tipo",$Tipo,PDO::PARAM_STR);
$stmt->execute();
return $stmt->fetchAll();
}
}
?>
<br>
<div class="d-flex justify-content-between ">
<div> <!-- Agrega una solicitud de la carpeta -->
<button type="button " class="btn btn-success mb-2" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
Agregar
</button>
</div>
</div>
<!-- Modal-Crea una solicitud -->
<div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="staticBackdropLabel">Solicitud de Carpeta</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<form action="" method="POST">
<div class="mb-3">
<label for="exampleInputEmail1" class="form-label">Numero de investigacion</label>
<input type="text" class="form-control" name="num_inv" placeholder="num_inv:">
</div>
<div class="mb-3">
<label for="exampleInputPassword1" class="form-label">Tipo de solicitud</label>
<select class="form-select" name="tipo_solicitud" aria-label="Default select example">
<option value="Con detenido">Con detenido</option>
<option value="Sin detenido">Sin detenido</option>
<option value="Orden de apreción">Orden de aprehensión</option>
<option value="Por escrito">Orden de aprehensión por escrito</option>
</select>
</div>
<div class="mb-3">
<label for="inputPassword6" class="col-form-label">Distrito</label>
<select class="form-select" name="distrito" aria-label="Default select example">
<option value="Azueta">Azueta</option>
<option value="Montes de oca">Montes de oca</option>
</select>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
</div>
</div>
</div>
<!--fin Modal-Crea una solicitud -->
<?php
$carpetas = new CarpetasController();
$carpetas->CarpetasCreateController();
?>
<table id="carpetas" class="table">
<thead class="thead-dark">
<tr>
<th>num_inv</th>
<th>carpeta</th>
<th>fecha</th>
<th>tipo_solicitud</th>
<th>Asignado</th>
<th>Acciones</th>
<th>movimientos</th>
</tr>
</thead>
<!--Muestra todas las carpetas -->
<tbody id="tablaCarpetas">
<?php
$carpetas->CarpetasVistaController();
$carpetas->CarpetasDeleteController();
?>
</tbody>
</table>
<?php
class CarpetasController{
#Crea una solicitud para despues asignarle una carpeta-window.location = "index.php?pagina=carpetas/carpetas-base";
public function CarpetasCreateController()
{
if (isset($_POST['num_inv'])) {
$datos =["num_inv"=>$_POST['num_inv'],
"tipo_solicitud"=>$_POST['tipo_solicitud'],
"distrito"=>$_POST['distrito']
];
$respuesta = CarpetasModel::CarpetasCreateModels($datos,"carpetas");
if($respuesta=="success"){
#Mediante pantillaControlador verica la vista que le corresponde la variable
//header("location:index.php?pagina=createCarpeta");
echo '<script>
if ( window.history.replaceState ) {
window.history.replaceState( null, null, window.location.href );
}
window.location = "carpetas.php";
</script>';
}else{
//header("location:index.php");
echo '<script>
if ( window.history.replaceState ) {
window.history.replaceState( null, null, window.location.href );
}
window.location = "index.php";
</script>';
}
}
}
#Muestra todas las carpetas-llama los metodos CareateCarpeta-AsignarCarpeta-Historial
public function CarpetasVistaController()
{
$carpetas = CarpetasModel::CarpetasVistaModels("carpetas");
foreach ($carpetas as $carpeta) {
if($carpeta['id']!==0){
echo '
<tr>
<td>'.$carpeta["num_inv"].'</td>
<td>'.$carpeta["carpeta"].'</td>
<td>'.$carpeta["fecha_carpeta"].'</td>
<td>'.$carpeta["tipo_solicitud"].'</td>
<td>'.$carpeta["Asignado"].'</td>
<td>
<div class="btn-group">
<a href="index.php?pagina=carpeta/carpeta-base&id='.$carpeta["id"].'" class="btn btn-success active" aria-current="page">Consultar</a>
<button type="button" class="btn btn-success" data-bs-toggle="modal" data-bs-target="#asignarcarpeta' . $carpeta["id"] . '">
Asignar</button>
<a href="index.php?pagina=historial" class="btn btn-success">Historial</a>
</div>
</td>
<td>
<div class="btn-group">
<a style="display: inline;" class="nav-link " href="http://localhost/0-MVC-SITE-v5-SOLICITUDES/PARTESDELSISTEMA/carpetas/carpetas.php?idBorrar='.$carpeta["id"].'"><button type="button" class="btn btn-warning btn-sm ">Eliminar</button></a>
</div>
</td>
</tr>
<!-- Modal -->
<div class="modal fade" id="asignarcarpeta' . $carpeta["id"] . '" tabindex="-1" aria-labelledby="asignarcarpetaLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="asignarcarpeta
Label">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<form action="" method="POST">
<div class="modal-body">
<input type="hidden" name="Editid" value="'.$carpeta["id"] . '">
<input type="hidden" name="editarcarpeta" value="editarcarpeta">
<!-- Carpeta:carpeta -->
<div class="mb-1">
<label for="inputPassword6" class="col-form-label">Modifico</label>
<input type="text" class="form-control bg-white" name="Asignado" value="'.$carpeta["Asignado"] .'" >
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
</div>
</div>
</div>
'.self::CarpetaEditarController().'
'; } }
}
#Eliminar una carpeta
public function CarpetasDeleteController()
{
if(isset($_GET['idBorrar'])){
$datosController = $_GET['idBorrar'];
$respuesta = CarpetasModel::CarpetasDeleteModels($datosController,"carpetas");
if($respuesta=="success"){
// header("location:index.php?pagina=carpetas");
echo '<script>
if ( window.history.replaceState ) {
window.history.replaceState( null, null, window.location.href );
}
window.location = "carpetas.php";
</script>';
}
if($respuesta=="error"){
// header("location:index.php?pagina=carpetas");window.location = "index.php?pagina=carpetas/carpetas-base";
echo '<script>
if ( window.history.replaceState ) {
window.history.replaceState( null, null, window.location.href );
}
window.location = "carpetas.php";
</script>';
}
}
}
#Editar carpeta
public function CarpetaEditarController()
{
if (isset($_POST['editarcarpeta'])){
echo "hola";
echo "editcarpeta".$_POST['Editid'];
$datos =["id"=>$_POST['Editid'],
"Asignado"=>$_POST['Asignado']
];
//var_dump($datos);
$respuesta = CarpetasModel::CarpetaEditarModels($datos,"carpetas");
if($respuesta=="success"){
// header("location:index.php?pagina=carpetas");
echo '<script>
if ( window.history.replaceState ) {
window.history.replaceState( null, null, window.location.href );
}
window.location = "carpetas.php";
</script>';
}
}
}
#vistaCarpetaController
static public function PendienteMuestraController()
{
if (isset($_GET['id'])) {
$idshow=$_GET['id'];
$Tipo="Proceso";
$pendientes = CarpetaModel::PendienteMuestraModels($idshow, "solicitudes",$Tipo);
//var_dump($pendientes);
foreach ($pendientes as $pendiente) {
echo '
<tr>
<td>'.$pendiente["id"].'</td>
<td>'.$pendiente["Fecha_registro"].'</td>
<td>'.$pendiente["Acto"].'</td>
<td>'.$pendiente["Fecha_vence"].'</td>
<td>'.$pendiente["Registro"].'</td>
<td>'.$pendiente["Resolvio"].'</td>
<td>'.$pendiente["Comentario"].'</td>
<td>'.$pendiente["Estado"].'</td>
</tr>
';
}
}
}
}
?>
<script>
$(document).ready(function() {
$('#carpetas').DataTable({
"order": [[ 4, "desc" ]],
pageLength: 4,
lengthMenu: [
[4, 10, 20, -1],
[4, 10, 20, 'Todos']
],
columnDefs: [{
orderable: false,
targets: -1
}],
dom: '<"row"<"col-sm-1 col-md-1"l><"col-sm-8 col-md-8"f><"col-sm-3 col-md-3"<"dt-buttons btn-group flex-wrap"B>>>t<"row"<"col-sm-12 col-md-3"p><"col-sm-12 col-md-7"i>>',
botones: [{
text: 'csv',
extend: 'csvHtml5',
},
{
texto: 'excel',
extensión: 'excelHtml5',
},
{
texto: 'pdf',
extensión: 'pdfHtml5',
},
{
texto: 'imprimir',
extend: 'print',
},
]
});
});
</script>
</div>
</body>
</html>
Comentarios
Publicar un comentario