source: portal_2019/js/handlerJSONBDOC.js @ 3994a7c

devportal
Last change on this file since 3994a7c was 0320f1b, checked in by Angelo Osorio <danielking.321@…>, 5 years ago

cambios en el frontend

  • Property mode set to 100644
File size: 3.8 KB
Line 
1/** Funcion para el manejo de un archivo json
2 * Recibe el json (verificación de una firma bdoc), lo introduce en una tabla y devuelve una un cadena de texto.
3 */
4
5function manejoJsonBDOC(json) {
6  var fielJsonEs = {
7    numberOfSignatures:"Número de firma(s)",
8    signaturePostalCode:"Código postal",
9    signerCertificateSerial:"Serial del certificado del firmante",
10    signatureProfile:"Perfil de la firma",
11    signatureState:"Estado donde se realiza la firma",
12    signatureMethod:"Algoritmo de firma utilizado",
13    signatureId:"Identificador de la firma",
14    signatureSigningTime:"Fecha y hora de la firma",
15    signerCertificateIsValid:"El certificado todavía está válido",
16    signerCertificateIssuer:"Emisor del certificado firmante",
17    signatureCity:"Ciudad donde se realiza la firma",
18    signatureS0ValidationException1:"Excepción de validación",
19    isValid:"Firma válida",
20    signerCertificateSubjectName:"Nombre del firmante",
21    signatureCountry:"País donde se realiza la firma"
22  };
23  var objVarVerifique = JSON.parse(json);
24  var signatures = ''; //variable que maneja las firmas
25  var fields = ''; //variable que maneja los campos de la firma
26  var title = '<h2 class="text-dark pb-3"> Información de la firma electrónica </h2>';
27  var head =
28    `<div class="container-table">
29      <table class="display table table-striped table-bordered" >
30        <thead>
31          <tr class="font-weight-bold">
32            <th class="text-right border-bottom-0 font-weight-bold"> Campo </th>
33            <th class="text-left border-bottom-0 font-weight-bold"> Descripción </th>
34          </tr>
35        </thead>
36        <tbody>`;
37  var footer =
38        `</tbody>
39      </table>
40    </div>`;
41  var html = title;
42  var numsign = 0;
43  var htmltemp = '';
44  var objxEsp = '';
45
46  $.each(objVarVerifique, function(idx, obj) {
47
48    if(idx == "error") {
49      html = '<h2 class="text-danger"> Extensión no soportada, verifique el archivo </h2>';
50      return(html);
51    }
52
53    if(idx == "numberOfSignatures"){
54      numsign = obj;
55      html += `<p class="text-left text-dark"> ${fielJsonEs[idx]}: ${obj} </p>`;
56    }
57
58    if(idx == "signatures") {
59      signatures = obj; //se almacena la(s) cabecera(s) de las firmas
60    }
61  });
62
63  var contsing = 1; // variable que indica la firma donde esta posicionado
64
65  // recorre las firmas signatures
66
67  $.each(signatures, function(idx, obj) {
68    html += '<p class="text-left text-dark pt-3"> Información de la firma <strong> Nro '+ contsing +'</strong><p>';
69    html += head;
70    // variable que indica el campo de la firma -- arranca en el campo 6 porque necesitamos que muestre de primero las 5
71    // campos requeridos
72    var contfiels = 5;
73    fields = obj; // variable que almacena los campos de la firma
74    $.each(fields, function(id, objx) {
75      // Recorreo los campos de la firma
76      if(fielJsonEs[id]=='Nombre del firmante') {
77        html += '<tr><td>' + fielJsonEs[id] + '</td><td>' + objx +' </td></tr>';
78      }
79      else if(fielJsonEs[id]=='Fecha y hora de la firma') {
80        html += '<tr><td>' + fielJsonEs[id] + '</td><td>' + objx +'     </td></tr>';
81      }
82      else if(fielJsonEs[id]=='Firma válida') {
83        if(objx == 'true') {
84          objxEsp = 'verdadero';
85        } else {
86          objxEsp='falso';
87        }
88        html += '<tr><td>' + fielJsonEs[id] + '</td><td>' + objxEsp +'</td></tr>';
89      }
90      else if(fielJsonEs[id]=='El certificado todavía está válido') {
91        if(objx == 'true') {
92          objxEsp = 'verdadero';
93        } else {
94          objxEsp='falso';
95        }
96        html += '<tr><td>' + fielJsonEs[id] + '</td><td>' + objxEsp +'</td></tr>';
97      }
98      else {
99        htmltemp += '<tr><td>' + fielJsonEs[id] + '</td><td>' + objx +' </td></tr>';
100        contfiels++;
101      }
102    });
103    contsing++;
104    html += htmltemp;
105    htmltemp = '';
106    html += footer;
107  });
108  return(html);
109}
Note: See TracBrowser for help on using the repository browser.