udistrital / Cumplidos_y_certificaciones_documentacion

0 stars 0 forks source link

Implementar cambios y servicios desarrollados en el cliente. #246

Closed JuanCamiloMartinezLopez closed 2 hours ago

JuanCamiloMartinezLopez commented 1 week ago

Se requiere realizar la implementación de las consultas a los servicios desarrollados y cambios a las vistas.

Sub Tareas

Criterios de aceptación

Requerimientos

No aplica

Definition of Ready - DoR

Definition of Done - DoD - Desarrollo

stevencol commented 2 days ago

Se inicia con actividad, cambiando "tipo necesidad" por "tipo" en la vista de gestión evaluación.

stevencol commented 2 days ago

Se cambia el texto y adicionalmente, se cambia el input por una listade el tipo de necesidad Animation

stevencol commented 2 days ago

Se crea método que implementa búsqueda de personas de la ussue #244 , pero genera erro de cors al usar, se creA con la validación para que sea mayor a 3 dígitos para que la consulta se realiza Animation

error :


Access to fetch at 'https://autenticacion.portaloas.udistrital.edu.co/apioas/administrativa_jbpm/v2/personas_documento/1111' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

image

Headers: image

image

stevencol commented 1 day ago

El momento de hacer la petición de carga desde el formulario genera error:

Header: image

Payload: image

Response: image

Flujo:

Animation

Después de investigar, se detecta la causa del error, el cual les generado por la cabecera enviada desde el requestmanager el cual envía la cabezara 'Accept': 'application/json', y 'Authorization': Bearer ${acces_token}, , en el request manager hay un método para la carga de archivos el cual envía la cabezara adecuada :; 'Content-Type': 'multipart/form-data', pero no envia el header de Authorization, pro lo cual se crea una version modificada desde el service:

  post_file(endpoint: any, element: any) {

    const postOptions = {
      ...this.httpOptions,
       headers: new HttpHeaders({
            'Content-Type': 'multipart/form-data',
        })

    }
    return this.http.post<any>(`${environment.EVALUACION_CUMPLIDOS_PROVEEDORES_MID}${endpoint}`, element, postOptions).pipe(
        catchError(this.errManager.handleError),
    );
}

El cual se pone a prueba

stevencol commented 23 hours ago

se modifica servico y funciona correctamente

postCargaExcel(endpoint: any, element: any) {
    if (this.acces_token != '') {
      const postOptions = {
        headers: new HttpHeaders({
          'Content-Type': 'multipart/form-data',
          Authorization: `Bearer ${this.acces_token}`,
        }),
      };

      return this.http
        .post<any>(
          `${environment.EVALUACION_CUMPLIDOS_PROVEEDORES_MID}${endpoint}`,
          element,
          postOptions
        )
        .pipe(catchError(this.errManager.handleError));
    }
    return this.http
      .post<any>(
        `${environment.EVALUACION_CUMPLIDOS_PROVEEDORES_MID}${endpoint}`,
        element
      )
      .pipe(catchError(this.errManager.handleError));
  }
stevencol commented 22 hours ago

Animation

stevencol commented 11 hours ago

Al intentar implementar la consulta de contratos-supervisor del revision_cumplido_prov_mi, no se encuentra la vista, por lo que se procede a buscar la rama de su elaboración y se encuentra en: #187. Se intenta unir con la rama actual de la issue, pero genera inconvenientes, por lo que se copia directamente el componente y se pega en la rama actual, la búsqueda se implementa de manera temporal ya que no permite búsqueda por contrato, ya que se hace desde el mid y no permite querys

stevencol commented 11 hours ago

Para la consulta se crea el método :


  consultarContratos():Promise<void> {
    return new Promise((resolve, reject) => {

      this.cumplidosProveedoresMidService.get('/supervisor/contratos-supervisor/'+this.documentoSupervisor).subscribe({
        next: (res: any) => {
          if(res.Data && res.Data.contratos.length > 0){
            this.dataSource = res.Data.contratos.map((item: any) => {
              return {
                nombreProveedor: item.NombreProveedor,
                dependencia: item.NombreDependencia,
                tipoContrato: item.TipoContrato,
                contrato: item.NumeroContratoSuscrito,
                vigencia: item.Vigencia,
                acciones: [
                  {
                    icon: 'edit',
                    actionName: 'edit',
                    isActive: true,
                  },
                  {
                    icon: 'visibility',
                    actionName: 'visibility',
                    isActive: true,
                  },
                  {
                    icon: 'accessibility',
                    actionName: 'accessibility',
                    isActive: true,
                  },
                ],
              }

            },)

          }
          resolve()
        },error: (err: any) => {
          this.popUpManager.showErrorAlert("Error al consultar los contratos")
        }

      })
    });

  }
stevencol commented 11 hours ago

Funcionamiento: Animation

stevencol commented 11 hours ago

Funcionamiento completo cada de ítems:

Animation

stevencol commented 11 hours ago

Nota por el momento no se puede obtener el link de la evaluación, por lo que se la consulta se hace con el id 1:

JuanCamiloMartinezLopez commented 2 hours ago

@stevencol Buen trabajo.