cooreecione rutas asignar y respuestas/ ruta exportar plan de mejora

master
Christian Dacid Sullca Puma 2022-11-04 01:12:57 -05:00
parent d2a2614da8
commit 42ac3f10d0
18 changed files with 23007 additions and 195 deletions

View File

@ -15,7 +15,7 @@ use App\Models\Observaciones;
use App\Models\ProblemasOportunidades; use App\Models\ProblemasOportunidades;
use App\Models\Recursos; use App\Models\Recursos;
use App\Models\Responsables; use App\Models\Responsables;
use Barryvdh\DomPDF\Facade\Pdf;
//plan::where(["id_user" => $id_user, "id" => $id])->exists() //plan::where(["id_user" => $id_user, "id" => $id])->exists()
@ -327,7 +327,7 @@ class PlanController extends Controller
{ {
$id_user = auth()->user(); $id_user = auth()->user();
if ($id_user->isAdmin()) { if ($id_user->isAdmin()) {
$request->validate([ $resp = $request->validate([
'id_estandar' => 'required|integer|exists:estandars,id', 'id_estandar' => 'required|integer|exists:estandars,id',
'id_user' => 'required|integer|exists:users,id', 'id_user' => 'required|integer|exists:users,id',
'codigo' => [ 'codigo' => [
@ -337,18 +337,27 @@ class PlanController extends Controller
}), }),
], ],
]); ]);
if ($resp) {
$plan = new plan(); $plan = new plan();
$plan->id_user = $request->id_user; $plan->id_user = $request->id_user;
$plan->id_estandar = $request->id_estandar; $plan->id_estandar = $request->id_estandar;
$plan->codigo = $request->codigo; $plan->codigo = $request->codigo;
$plan->avance = 0; $plan->avance = 0;
$plan->estado = "Programado"; $plan->estado = "Planificado";
$plan->nombre = ""; $plan->nombre = "";
$plan->evaluacion_eficacia = false;
$plan->save(); $plan->save();
return response([ return response([
"status" => 1, "status" => 1,
"message" => "!Plan de mejora asignado exitosamente", "message" => "!Plan de mejora asignado exitosamente",
], 200); ], 200);
} else {
return response([
"status" => 0,
"message" => "Codigo no disponible, intente con otro",
], 200);
}
} else { } else {
return response([ return response([
"status" => 0, "status" => 0,
@ -478,43 +487,160 @@ class PlanController extends Controller
->where("plans.id_user", $id_user) ->where("plans.id_user", $id_user)
->orderBy('plans.id', 'asc') ->orderBy('plans.id', 'asc')
->get(); ->get();
foreach ($planAll as $plan) {
$plan->esCreador = ($plan->id_user == $id_user) ? true : false;
unset($plan->id_user);
}
if ($planAll->count() > 0) { if ($planAll->count() > 0) {
return response([ return response([
"status" => 1, "status" => 1,
"message" => "!Lista de planes de mejora", "message" => "!Lista de planes de mejora",
"data" => $planAll, "data" => $planAll,
]); ], 200);
} else { } else {
return response([ return response([
"status" => 0, "status" => 0,
"message" => "!No tienes planes de mejora", "message" => "!No tienes planes de mejora",
"data" => [], "data" => [],
], 404); ], 200);
} }
} }
/* public function pdfPlan($id) /*$id_user = auth()->user()->id;*/
public function exportPlan($id)
{ {
$id_user = auth()->user()->id;
if (plan::where("id", $id)->exists()) { if (plan::where("id", $id)->exists()) {
$plan = plan::find($id); $plan = plan::find($id);
$plan->fuentes = Fuentes::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->fuentes = Fuentes::where("id_plan", $id)->get(['descripcion as value']);
$plan->problemas_oportunidades = ProblemasOportunidades::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->problemas_oportunidades = ProblemasOportunidades::where("id_plan", $id)->get(['descripcion as value']);
$plan->causas_raices = CausasRaices::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->causas_raices = CausasRaices::where("id_plan", $id)->get(['descripcion as value']);
$plan->acciones_mejoras = AccionesMejoras::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->acciones_mejoras = AccionesMejoras::where("id_plan", $id)->get(['descripcion as value']);
$plan->recursos = Recursos::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->recursos = Recursos::where("id_plan", $id)->get(['descripcion as value']);
$plan->metas = Metas::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->metas = Metas::where("id_plan", $id)->get(['descripcion as value']);
$plan->observaciones = Observaciones::where("id_plan", $id)->get(['id', 'descripcion as value']); $plan->observaciones = Observaciones::where("id_plan", $id)->get(['descripcion as value']);
$plan->responsables = Responsables::where("id_plan", $id)->get(['id', 'nombre as value']); $plan->responsables = Responsables::where("id_plan", $id)->get(['nombre as value']);
$plan->evidencias = Evidencias::where("id_plan", $id)->get(); $plan->evidencias = Evidencias::where("id_plan", $id)->get();
$pdf = PDF::loadView('planPDF', compact('plan')); try {
$pdf->setPaper('A4', 'landscape');
return $pdf->stream('plan.pdf'); $template = new \PhpOffice\PhpWord\TemplateProcessor('plantilla_plan_de_mejora.docx');
//1
$template->setValue('codigo', $plan->codigo);
//2
$content_fuentes = count($plan->fuentes) == 0 ? "No hay fuentes" : "";
foreach ($plan->fuentes as $fuente) {
$content_fuentes .= "- " . $fuente->value . "</w:t><w:br/><w:t>";
}
$template->setValue('fuentes', $content_fuentes);
//3
$content_problemas_oportunidades = count($plan->problemas_oportunidades) == 0 ? "No hay problemas/oportunidades" : "";
foreach ($plan->problemas_oportunidades as $problema_oportunidad) {
$content_problemas_oportunidades .= "- " . $problema_oportunidad->value . "</w:t><w:br/><w:t>";
}
$template->setValue('problema_oportunidad', $content_problemas_oportunidades);
//4
$content_causas_raices = count($plan->causas_raices) == 0 ? "No hay causas raices" : "";
foreach ($plan->causas_raices as $causa_raiz) {
$content_causas_raices .= "- " . $causa_raiz->value . "</w:t><w:br/><w:t>";
}
$template->setValue('causa', $content_causas_raices);
//5
$template->setValue('oportunidad', $plan->oportunidad_plan == null ? "No hay oportunidad plan de mejora" : $plan->oportunidad_plan);
//6
$content_acciones_mejoras = count($plan->acciones_mejoras) == 0 ? "No hay acciones de mejora" : "";
foreach ($plan->acciones_mejoras as $accion_mejora) {
$content_acciones_mejoras .= "- " . $accion_mejora->value . "</w:t><w:br/><w:t>";
}
$template->setValue('acciones', $content_acciones_mejoras);
//7
$template->setValue('semestre', $plan->semestre_ejecucion == null ? "Sin definir" : $plan->semestre_ejecucion);
//8
$template->setValue('duracion', $plan->duracion == null ? "Sin definir" : $plan->duracion);
//9
$content_recursos = count($plan->recursos) == 0 ? "No hay recursos" : "";
foreach ($plan->recursos as $recurso) {
$content_recursos .= "- " . $recurso->value . "</w:t><w:br/><w:t>";
}
$template->setValue('recursos', $content_recursos);
//10
$content_metas = count($plan->metas) == 0 ? "No hay metas" : "";
foreach ($plan->metas as $meta) {
$content_metas .= "- " . $meta->value . "</w:t><w:br/><w:t>";
}
$template->setValue('metas', $content_metas);
//11
$content_responsables = count($plan->responsables) == 0 ? "No hay responsables" : "";
foreach ($plan->responsables as $responsable) {
$content_responsables .= "- " . $responsable->value . "</w:t><w:br/><w:t>";
}
$template->setValue('responsables', $content_responsables);
//12
$content_observaciones = count($plan->observaciones) == 0 ? "No hay observaciones" : "";
foreach ($plan->observaciones as $observacion) {
$content_observaciones .= "- " . $observacion->value . "</w:t><w:br/><w:t>";
}
$template->setValue('observaciones', $content_observaciones);
//13
$template->setValue('estado', $plan->estado);
//14
$content_evidencias = count($plan->evidencias) == 0 ? "No hay evidencias" : "";
foreach ($plan->evidencias as $evidencia) {
$content_evidencias .= "- " . $evidencia->codigo . "</w:t><w:br/><w:t>";
}
$template->setValue('evidencias', $content_evidencias);
//15
$template->setValue('avance', $plan->avance);
//16
$template->setValue('eficacia', $plan->evaluacion_eficacia ? "SI" : "NO");
//Lista de evidencias
$template->cloneRow('n', count($plan->evidencias));
$i = 1;
foreach ($plan->evidencias as $evidencia) {
$template->setValue('n#' . $i, $i);
$template->setValue('código_e#' . $i, $evidencia->codigo);
$template->setValue('denominacion#' . $i, $evidencia->denominacion);
$template->setValue('adjunto#' . $i, "Anexo" . $i);
$i++;
}
$tempfiledocx = tempnam(sys_get_temp_dir(), 'PHPWord');
$template->saveAs($tempfiledocx);
$headers = [
'Content-Type' => 'application/msword',
'Content-Disposition' => 'attachment;filename="plan.docx"',
];
return response()->download($tempfiledocx, 'plan.docx', $headers)->deleteFileAfterSend(true);
} catch (\PhpOffice\PhpWord\Exception\Exception $e) {
return response([
"status" => 0,
"message" => $e->getMessage(),
], 404);
}
} else { } else {
return response([ return response([
"status" => 0, "status" => 0,
"message" => "!No se encontro el plan de mejora", "message" => "!No se encontro el plan de mejora",
], 404); ], 404);
} }
} */ }
} }

View File

@ -14,7 +14,8 @@
"laravel/framework": "^9.11", "laravel/framework": "^9.11",
"laravel/sanctum": "^2.14.1", "laravel/sanctum": "^2.14.1",
"laravel/socialite": "^5.5", "laravel/socialite": "^5.5",
"laravel/tinker": "^2.7" "laravel/tinker": "^2.7",
"phpoffice/phpword": "^0.18.3"
}, },
"require-dev": { "require-dev": {
"fakerphp/faker": "^1.9.1", "fakerphp/faker": "^1.9.1",

176
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "ad4d8b936acfaca906125948a1f538a5", "content-hash": "d99e0a3df01e9cbaa8f3a9132b366454",
"packages": [ "packages": [
{ {
"name": "barryvdh/laravel-dompdf", "name": "barryvdh/laravel-dompdf",
@ -1454,6 +1454,68 @@
], ],
"time": "2022-08-28T14:45:39+00:00" "time": "2022-08-28T14:45:39+00:00"
}, },
{
"name": "laminas/laminas-escaper",
"version": "2.12.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-escaper.git",
"reference": "ee7a4c37bf3d0e8c03635d5bddb5bb3184ead490"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laminas/laminas-escaper/zipball/ee7a4c37bf3d0e8c03635d5bddb5bb3184ead490",
"reference": "ee7a4c37bf3d0e8c03635d5bddb5bb3184ead490",
"shasum": ""
},
"require": {
"ext-ctype": "*",
"ext-mbstring": "*",
"php": "^7.4 || ~8.0.0 || ~8.1.0 || ~8.2.0"
},
"conflict": {
"zendframework/zend-escaper": "*"
},
"require-dev": {
"infection/infection": "^0.26.6",
"laminas/laminas-coding-standard": "~2.4.0",
"maglnet/composer-require-checker": "^3.8.0",
"phpunit/phpunit": "^9.5.18",
"psalm/plugin-phpunit": "^0.17.0",
"vimeo/psalm": "^4.22.0"
},
"type": "library",
"autoload": {
"psr-4": {
"Laminas\\Escaper\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
],
"description": "Securely and safely escape HTML, HTML attributes, JavaScript, CSS, and URLs",
"homepage": "https://laminas.dev",
"keywords": [
"escaper",
"laminas"
],
"support": {
"chat": "https://laminas.dev/chat",
"docs": "https://docs.laminas.dev/laminas-escaper/",
"forum": "https://discourse.laminas.dev",
"issues": "https://github.com/laminas/laminas-escaper/issues",
"rss": "https://github.com/laminas/laminas-escaper/releases.atom",
"source": "https://github.com/laminas/laminas-escaper"
},
"funding": [
{
"url": "https://funding.communitybridge.org/projects/laminas-project",
"type": "community_bridge"
}
],
"time": "2022-10-10T10:11:09+00:00"
},
{ {
"name": "laravel/framework", "name": "laravel/framework",
"version": "v9.36.4", "version": "v9.36.4",
@ -2965,6 +3027,118 @@
}, },
"time": "2022-09-06T12:16:56+00:00" "time": "2022-09-06T12:16:56+00:00"
}, },
{
"name": "phpoffice/phpword",
"version": "0.18.3",
"source": {
"type": "git",
"url": "https://github.com/PHPOffice/PHPWord.git",
"reference": "be0190cd5d8f95b4be08d5853b107aa4e352759a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHPOffice/PHPWord/zipball/be0190cd5d8f95b4be08d5853b107aa4e352759a",
"reference": "be0190cd5d8f95b4be08d5853b107aa4e352759a",
"shasum": ""
},
"require": {
"ext-xml": "*",
"laminas/laminas-escaper": "^2.2",
"php": "^5.3.3 || ^7.0 || ^8.0"
},
"require-dev": {
"dompdf/dompdf": "0.8.* || 1.0.*",
"ext-gd": "*",
"ext-zip": "*",
"friendsofphp/php-cs-fixer": "^2.2",
"mpdf/mpdf": "5.7.4 || 6.* || 7.* || 8.*",
"php-coveralls/php-coveralls": "1.1.0 || ^2.0",
"phploc/phploc": "2.* || 3.* || 4.* || 5.* || 6.* || 7.*",
"phpmd/phpmd": "2.*",
"phpunit/phpunit": "^4.8.36 || ^7.0",
"squizlabs/php_codesniffer": "^2.9 || ^3.5",
"tecnickcom/tcpdf": "6.*"
},
"suggest": {
"dompdf/dompdf": "Allows writing PDF",
"ext-gd2": "Allows adding images",
"ext-xmlwriter": "Allows writing OOXML and ODF",
"ext-xsl": "Allows applying XSL style sheet to headers, to main document part, and to footers of an OOXML template",
"ext-zip": "Allows writing OOXML and ODF"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-develop": "0.19-dev"
}
},
"autoload": {
"psr-4": {
"PhpOffice\\PhpWord\\": "src/PhpWord"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"LGPL-3.0"
],
"authors": [
{
"name": "Mark Baker"
},
{
"name": "Gabriel Bull",
"email": "me@gabrielbull.com",
"homepage": "http://gabrielbull.com/"
},
{
"name": "Franck Lefevre",
"homepage": "https://rootslabs.net/blog/"
},
{
"name": "Ivan Lanin",
"homepage": "http://ivan.lanin.org"
},
{
"name": "Roman Syroeshko",
"homepage": "http://ru.linkedin.com/pub/roman-syroeshko/34/a53/994/"
},
{
"name": "Antoine de Troostembergh"
}
],
"description": "PHPWord - A pure PHP library for reading and writing word processing documents (OOXML, ODF, RTF, HTML, PDF)",
"homepage": "http://phpoffice.github.io",
"keywords": [
"ISO IEC 29500",
"OOXML",
"Office Open XML",
"OpenDocument",
"OpenXML",
"PhpOffice",
"PhpWord",
"Rich Text Format",
"WordprocessingML",
"doc",
"docx",
"html",
"odf",
"odt",
"office",
"pdf",
"php",
"reader",
"rtf",
"template",
"template processor",
"word",
"writer"
],
"support": {
"issues": "https://github.com/PHPOffice/PHPWord/issues",
"source": "https://github.com/PHPOffice/PHPWord/tree/0.18.3"
},
"time": "2022-02-17T15:40:03+00:00"
},
{ {
"name": "phpoption/phpoption", "name": "phpoption/phpoption",
"version": "1.9.0", "version": "1.9.0",

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,162 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<style>
@font-face {
font-family: 'Calibri';
font-weight: normal;
font-style: normal;
font-variant: normal;
src: url('fonts/calibri.ttf') format("truetype");
}
@font-face {
font-family: 'Calibri';
font-weight: bold;
font-style: normal;
font-variant: normal;
src: url('fonts/calibrib.ttf') format("truetype");
}
/*
@font-face {
font-family: 'Calibri';
font-weight: normal;
font-style: italic;
font-variant: normal;
src: url('fonts/calibrii.ttf') format("truetype");
}
@font-face {
font-family: 'Calibri';
font-weight: bold;
font-style: italic;
font-variant: normal;
src: url('fonts/calibriz.ttf') format("truetype");
} */
.encabezado {
width: 100%;
border-collapse: collapse;
border-spacing: 0;
border: 0.5px solid black;
text-align: center;
}
.encabezado-columna-1 {
width: 20%;
}
.encabezado-columna-2 {
width: 60%;
}
.encabezado-columna-3 {
width: 10%;
}
.encabezado-columna-4 {
width: 10%;
}
.encabezado tbody tr td {
border: 0.5px solid black;
}
.encabezado tbody tr {
border: 0.5px solid black;
}
.lista {
font-size: 14px;
}
.lista ol {
padding-inline-start: 0;
list-style: none;
counter-reset: contador;
}
.lista ol .op {
counter-increment: contador;
}
.lista ol .op::before {
content: "("counter(contador) ") ";
}
body {
font-family: 'Calibri';
font-weight: normal;
font-style: normal;
font-variant: normal;
font-size: 12px;
}
</style>
<body>
<table class="encabezado">
<tbody>
<tr>
<td class="encabezado-columna-1" rowspan="3">
<img src='img/logo_unsa.png' width="100%" alt="logo">
</td>
<td class="encabezado-columna-2"> <b>FORMATO</b> </td>
<td class="encabezado-columna-3"> <b>Código</b></td>
<td class="encabezado-columna-4">F-PE01.04-05</td>
</tr>
<tr>
<td rowspan="2"> <b>PLAN DE MEJORA</b></td>
<td> <b>Versión</b></td>
<td>1.0</td>
</tr>
<tr>
<td> <b>Página</b></td>
<td>Página 1 de 72</td>
</tr>
</tbody>
</table>
<div class="lista">
<ol>
<li class="op"> Registrar en la columna el código de la acción de la mejora
continua, por ejemplo: OM
01:2020, que refiere
a la oportunidad de mejora 01 correspondiente al año 2020.</li>
<li class="op">
Registrar si la fuente de la Mejora proviene de:
<ul style="list-style-type: disc">
<li>Solicitudes de acción correctiva. </li>
<li>Servicios no conformes. </li>
<li>Quejas. </li>
<li>Evaluación de competencias. </li>
<li>Evaluación de los objetivos Educacionales. </li>
<li> Actividades diarias. </li>
<li> Lineamientos institucionales. </li>
<li>Acuerdos de Consejo de Facultad y Asamblea Docente. </li>
<li>Buenas prácticas de otras organizaciones. </li>
<li>Otros. </li>
</ul>
</li>
<li class="op">Registre el problema / oportunidad que genera la mejora</li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
<li class="op"> </li>
</ol>
</div>
</body>
</html>

View File

@ -40,7 +40,7 @@ Route::get('estandares', [EstandarController::class, 'listEstandarValores']);
//CAMBIAR ESTO //CAMBIAR ESTO
Route::get('user', [UserController::class, 'listUser']); Route::get('user', [UserController::class, 'listUser']);
/* Route::get('plan/pdf/{id}', [PlanController::class, 'pdfPlan'])->where('id', '[0-9]+'); */ Route::get('plan/export/{id}', [PlanController::class, 'exportPlan'])->where('id', '[0-9]+');
Route::middleware("auth:sanctum")->group(function () { Route::middleware("auth:sanctum")->group(function () {
//rutas auth //rutas auth

View File

@ -0,0 +1,569 @@
{
"codeToName": {
"32": "space",
"160": "space",
"33": "exclam",
"34": "quotedbl",
"35": "numbersign",
"36": "dollar",
"37": "percent",
"38": "ampersand",
"146": "quoteright",
"40": "parenleft",
"41": "parenright",
"42": "asterisk",
"43": "plus",
"44": "comma",
"45": "hyphen",
"173": "hyphen",
"46": "period",
"47": "slash",
"48": "zero",
"49": "one",
"50": "two",
"51": "three",
"52": "four",
"53": "five",
"54": "six",
"55": "seven",
"56": "eight",
"57": "nine",
"58": "colon",
"59": "semicolon",
"60": "less",
"61": "equal",
"62": "greater",
"63": "question",
"64": "at",
"65": "A",
"66": "B",
"67": "C",
"68": "D",
"69": "E",
"70": "F",
"71": "G",
"72": "H",
"73": "I",
"74": "J",
"75": "K",
"76": "L",
"77": "M",
"78": "N",
"79": "O",
"80": "P",
"81": "Q",
"82": "R",
"83": "S",
"84": "T",
"85": "U",
"86": "V",
"87": "W",
"88": "X",
"89": "Y",
"90": "Z",
"91": "bracketleft",
"92": "backslash",
"93": "bracketright",
"94": "asciicircum",
"95": "underscore",
"145": "quoteleft",
"97": "a",
"98": "b",
"99": "c",
"100": "d",
"101": "e",
"102": "f",
"103": "g",
"104": "h",
"105": "i",
"106": "j",
"107": "k",
"108": "l",
"109": "m",
"110": "n",
"111": "o",
"112": "p",
"113": "q",
"114": "r",
"115": "s",
"116": "t",
"117": "u",
"118": "v",
"119": "w",
"120": "x",
"121": "y",
"122": "z",
"123": "braceleft",
"124": "bar",
"125": "braceright",
"126": "asciitilde",
"161": "exclamdown",
"162": "cent",
"163": "sterling",
"165": "yen",
"131": "florin",
"167": "section",
"164": "currency",
"39": "quotesingle",
"147": "quotedblleft",
"171": "guillemotleft",
"139": "guilsinglleft",
"155": "guilsinglright",
"150": "endash",
"134": "dagger",
"135": "daggerdbl",
"183": "periodcentered",
"182": "paragraph",
"149": "bullet",
"130": "quotesinglbase",
"132": "quotedblbase",
"148": "quotedblright",
"187": "guillemotright",
"133": "ellipsis",
"137": "perthousand",
"191": "questiondown",
"96": "grave",
"180": "acute",
"136": "circumflex",
"152": "tilde",
"175": "macron",
"168": "dieresis",
"184": "cedilla",
"151": "emdash",
"198": "AE",
"170": "ordfeminine",
"216": "Oslash",
"140": "OE",
"186": "ordmasculine",
"230": "ae",
"248": "oslash",
"156": "oe",
"223": "germandbls",
"207": "Idieresis",
"233": "eacute",
"159": "Ydieresis",
"247": "divide",
"221": "Yacute",
"194": "Acircumflex",
"225": "aacute",
"219": "Ucircumflex",
"253": "yacute",
"234": "ecircumflex",
"220": "Udieresis",
"218": "Uacute",
"203": "Edieresis",
"169": "copyright",
"229": "aring",
"224": "agrave",
"227": "atilde",
"154": "scaron",
"237": "iacute",
"251": "ucircumflex",
"226": "acircumflex",
"231": "ccedilla",
"222": "Thorn",
"179": "threesuperior",
"210": "Ograve",
"192": "Agrave",
"215": "multiply",
"250": "uacute",
"255": "ydieresis",
"238": "icircumflex",
"202": "Ecircumflex",
"228": "adieresis",
"235": "edieresis",
"205": "Iacute",
"177": "plusminus",
"166": "brokenbar",
"174": "registered",
"200": "Egrave",
"142": "Zcaron",
"208": "Eth",
"199": "Ccedilla",
"193": "Aacute",
"196": "Adieresis",
"232": "egrave",
"211": "Oacute",
"243": "oacute",
"239": "idieresis",
"212": "Ocircumflex",
"217": "Ugrave",
"254": "thorn",
"178": "twosuperior",
"214": "Odieresis",
"181": "mu",
"236": "igrave",
"190": "threequarters",
"153": "trademark",
"204": "Igrave",
"189": "onehalf",
"244": "ocircumflex",
"241": "ntilde",
"201": "Eacute",
"188": "onequarter",
"138": "Scaron",
"176": "degree",
"242": "ograve",
"249": "ugrave",
"209": "Ntilde",
"245": "otilde",
"195": "Atilde",
"197": "Aring",
"213": "Otilde",
"206": "Icircumflex",
"172": "logicalnot",
"246": "odieresis",
"252": "udieresis",
"240": "eth",
"158": "zcaron",
"185": "onesuperior",
"128": "Euro"
},
"isUnicode": false,
"FontName": "Helvetica-Bold",
"FullName": "Helvetica Bold",
"FamilyName": "Helvetica",
"Weight": "Bold",
"ItalicAngle": "0",
"IsFixedPitch": "false",
"CharacterSet": "ExtendedRoman",
"FontBBox": [
"-170",
"-228",
"1003",
"962"
],
"UnderlinePosition": "-100",
"UnderlineThickness": "50",
"Version": "002.000",
"EncodingScheme": "WinAnsiEncoding",
"CapHeight": "718",
"XHeight": "532",
"Ascender": "718",
"Descender": "-207",
"StdHW": "118",
"StdVW": "140",
"StartCharMetrics": "317",
"C": {
"32": 278,
"160": 278,
"33": 333,
"34": 474,
"35": 556,
"36": 556,
"37": 889,
"38": 722,
"146": 278,
"40": 333,
"41": 333,
"42": 389,
"43": 584,
"44": 278,
"45": 333,
"173": 333,
"46": 278,
"47": 278,
"48": 556,
"49": 556,
"50": 556,
"51": 556,
"52": 556,
"53": 556,
"54": 556,
"55": 556,
"56": 556,
"57": 556,
"58": 333,
"59": 333,
"60": 584,
"61": 584,
"62": 584,
"63": 611,
"64": 975,
"65": 722,
"66": 722,
"67": 722,
"68": 722,
"69": 667,
"70": 611,
"71": 778,
"72": 722,
"73": 278,
"74": 556,
"75": 722,
"76": 611,
"77": 833,
"78": 722,
"79": 778,
"80": 667,
"81": 778,
"82": 722,
"83": 667,
"84": 611,
"85": 722,
"86": 667,
"87": 944,
"88": 667,
"89": 667,
"90": 611,
"91": 333,
"92": 278,
"93": 333,
"94": 584,
"95": 556,
"145": 278,
"97": 556,
"98": 611,
"99": 556,
"100": 611,
"101": 556,
"102": 333,
"103": 611,
"104": 611,
"105": 278,
"106": 278,
"107": 556,
"108": 278,
"109": 889,
"110": 611,
"111": 611,
"112": 611,
"113": 611,
"114": 389,
"115": 556,
"116": 333,
"117": 611,
"118": 556,
"119": 778,
"120": 556,
"121": 556,
"122": 500,
"123": 389,
"124": 280,
"125": 389,
"126": 584,
"161": 333,
"162": 556,
"163": 556,
"fraction": 167,
"165": 556,
"131": 556,
"167": 556,
"164": 556,
"39": 238,
"147": 500,
"171": 556,
"139": 333,
"155": 333,
"fi": 611,
"fl": 611,
"150": 556,
"134": 556,
"135": 556,
"183": 278,
"182": 556,
"149": 350,
"130": 278,
"132": 500,
"148": 500,
"187": 556,
"133": 1000,
"137": 1000,
"191": 611,
"96": 333,
"180": 333,
"136": 333,
"152": 333,
"175": 333,
"breve": 333,
"dotaccent": 333,
"168": 333,
"ring": 333,
"184": 333,
"hungarumlaut": 333,
"ogonek": 333,
"caron": 333,
"151": 1000,
"198": 1000,
"170": 370,
"Lslash": 611,
"216": 778,
"140": 1000,
"186": 365,
"230": 889,
"dotlessi": 278,
"lslash": 278,
"248": 611,
"156": 944,
"223": 611,
"207": 278,
"233": 556,
"abreve": 556,
"uhungarumlaut": 611,
"ecaron": 556,
"159": 667,
"247": 584,
"221": 667,
"194": 722,
"225": 556,
"219": 722,
"253": 556,
"scommaaccent": 556,
"234": 556,
"Uring": 722,
"220": 722,
"aogonek": 556,
"218": 722,
"uogonek": 611,
"203": 667,
"Dcroat": 722,
"commaaccent": 250,
"169": 737,
"Emacron": 667,
"ccaron": 556,
"229": 556,
"Ncommaaccent": 722,
"lacute": 278,
"224": 556,
"Tcommaaccent": 611,
"Cacute": 722,
"227": 556,
"Edotaccent": 667,
"154": 556,
"scedilla": 556,
"237": 278,
"lozenge": 494,
"Rcaron": 722,
"Gcommaaccent": 778,
"251": 611,
"226": 556,
"Amacron": 722,
"rcaron": 389,
"231": 556,
"Zdotaccent": 611,
"222": 667,
"Omacron": 778,
"Racute": 722,
"Sacute": 667,
"dcaron": 743,
"Umacron": 722,
"uring": 611,
"179": 333,
"210": 778,
"192": 722,
"Abreve": 722,
"215": 584,
"250": 611,
"Tcaron": 611,
"partialdiff": 494,
"255": 556,
"Nacute": 722,
"238": 278,
"202": 667,
"228": 556,
"235": 556,
"cacute": 556,
"nacute": 611,
"umacron": 611,
"Ncaron": 722,
"205": 278,
"177": 584,
"166": 280,
"174": 737,
"Gbreve": 778,
"Idotaccent": 278,
"summation": 600,
"200": 667,
"racute": 389,
"omacron": 611,
"Zacute": 611,
"142": 611,
"greaterequal": 549,
"208": 722,
"199": 722,
"lcommaaccent": 278,
"tcaron": 389,
"eogonek": 556,
"Uogonek": 722,
"193": 722,
"196": 722,
"232": 556,
"zacute": 500,
"iogonek": 278,
"211": 778,
"243": 611,
"amacron": 556,
"sacute": 556,
"239": 278,
"212": 778,
"217": 722,
"Delta": 612,
"254": 611,
"178": 333,
"214": 778,
"181": 611,
"236": 278,
"ohungarumlaut": 611,
"Eogonek": 667,
"dcroat": 611,
"190": 834,
"Scedilla": 667,
"lcaron": 400,
"Kcommaaccent": 722,
"Lacute": 611,
"153": 1000,
"edotaccent": 556,
"204": 278,
"Imacron": 278,
"Lcaron": 611,
"189": 834,
"lessequal": 549,
"244": 611,
"241": 611,
"Uhungarumlaut": 722,
"201": 667,
"emacron": 556,
"gbreve": 611,
"188": 834,
"138": 667,
"Scommaaccent": 667,
"Ohungarumlaut": 778,
"176": 400,
"242": 611,
"Ccaron": 722,
"249": 611,
"radical": 549,
"Dcaron": 722,
"rcommaaccent": 389,
"209": 722,
"245": 611,
"Rcommaaccent": 722,
"Lcommaaccent": 611,
"195": 722,
"Aogonek": 722,
"197": 722,
"213": 778,
"zdotaccent": 500,
"Ecaron": 667,
"Iogonek": 278,
"kcommaaccent": 556,
"minus": 584,
"206": 278,
"ncaron": 611,
"tcommaaccent": 333,
"172": 584,
"246": 611,
"252": 611,
"notequal": 549,
"gcommaaccent": 611,
"240": 611,
"158": 500,
"ncommaaccent": 611,
"185": 333,
"imacron": 278,
"128": 556
},
"CIDtoGID_Compressed": true,
"CIDtoGID": "eJwDAAAAAAE=",
"_version_": 6
}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,6 @@
{
"calibri": {
"normal": "C:\\Users\\Admin\\Documents\\2022-B\\PIS\\Proyecto\\PIS-proyect\\storage\\fonts\/calibri_normal_650fab480f865f16d5ab44d03694990b",
"bold": "calibri_bold_5aa7660202ecfc12e78f2c176e74d27e"
}
}