{"id":13429,"date":"2022-10-25T08:12:23","date_gmt":"2022-10-25T14:12:23","guid":{"rendered":"http:\/\/201.237.206.56\/Sitios\/ugit.siua.ac.cr\/?p=13429"},"modified":"2023-04-13T09:30:26","modified_gmt":"2023-04-13T15:30:26","slug":"cgi-creacion-de-bitacora","status":"publish","type":"post","link":"https:\/\/sada.services\/?p=13429","title":{"rendered":"CGI: Creaci\u00f3n de bitacora"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Creamos la tabla<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/* \n * Copyright (C) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n * \n * Author:  Gustavo Matamoros Gonz\u00e1lez\n * Created: 25\/10\/2022\n *\/\n\n\/********************************************************\/\n\/********************************************************\/\n\/* CREACI\u00d3N DE TABLA                                    *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE TABLE \"PPI\".\"BITACORA_PAE\"\n(\n    \/********************************************************\/\n    \/* CAMPOS: ID                                           *\/\n    \/********************************************************\/\n    \"ID_BITACORA_PAE\"            number (19,0)       NOT NULL ENABLE,\n    \n    \n    \n    \/********************************************************\/\n    \/* CAMPOS: FK                                           *\/\n    \/********************************************************\/\n    \"PLAN_APORTE_ESTRATEGICO\"    number (19,0)       NOT NULL ENABLE,\n    \"ESTADO_FORMULACION_PAE\"     number (19,0)       NOT NULL ENABLE,    \n    \"USUARIO\"                    number (19,0)       NOT NULL ENABLE,        \n    \n    \n    \n    \/********************************************************\/\n    \/* CAMPOS: GENERALES                                    *\/\n    \/********************************************************\/\n    \"FECHA\"                 DATE                NOT NULL ENABLE,\n\n\n    \n    \/********************************************************\/\n    \/* CAMPOS: FRAMEWORK SDK-UNA                            *\/\n    \/********************************************************\/\n    \"FECHA_CREACION\"        DATE                NOT NULL ENABLE,\n    \"USUARIO_CREACION\"      NUMBER(19,0)        NOT NULL ENABLE,\n    \"FECHA_MODIFICACION\"    DATE                NOT NULL ENABLE,\n    \"USUARIO_MODIFICACION\"  NUMBER(19,0)        NOT NULL ENABLE,\n    \"VERSION\"               NUMBER(19,0),\n    \"CAMPO_CONFIGURABLE\"    NUMBER(19,0),\n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: PRIMARIA                                      *\/\n    \/********************************************************\/\n    CONSTRAINT \"PK_BITACORA_PAE\" PRIMARY KEY(\"ID_BITACORA_PAE\"),\n    \n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: FORANEAS                                      *\/\n    \/********************************************************\/\n    --BITACORA_PAE-&gt;PLAN_APORTE_ESTRATEGICO\n    CONSTRAINT FK_BIT_PAE_PAE FOREIGN KEY(PLAN_APORTE_ESTRATEGICO)          REFERENCES PPI.PLAN_APORTE_ESTRATEGICO(ID_PLAN_APORTE_ESTRATEGICO),\n\n    --BITACORA_PAE-&gt;ESTADO_FORMULACION_PAE\n    CONSTRAINT FK_BIT_PAE_EST_FOR_PAE FOREIGN KEY(ESTADO_FORMULACION_PAE)   REFERENCES PPI.ESTADO_FORMULACION_PAE(ID_ESTADO_FORMULACION_PAE),\n    \n     --BITACORA_PAE-&gt;USUARIO\n    CONSTRAINT FK_BIT_PAE_USU FOREIGN KEY(USUARIO)                          REFERENCES SAS.USUARIO (ID_USUARIO),\n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: FORANEAS SIGESA                               *\/\n    \/********************************************************\/\n    CONSTRAINT FK_BIT_PAE_USU_CRE FOREIGN KEY(USUARIO_CREACION)        REFERENCES SAS.USUARIO(ID_USUARIO),\n    CONSTRAINT FK_BIT_PAE_USU_MOD FOREIGN KEY(USUARIO_MODIFICACION)    REFERENCES SAS.USUARIO(ID_USUARIO),\n    CONSTRAINT FK_BIT_PAE_CAM_CON FOREIGN KEY(CAMPO_CONFIGURABLE)      REFERENCES SAS.CAMPO_CONFIGURABLE(ID_CAMPO_CONFIGURABLE)\n    \n    \n);\n\n\/********************************************************\/\n\/********************************************************\/\n\/* COMENTARIOS                                          *\/\n\/********************************************************\/\n\/********************************************************\/\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PAE\".\"PLAN_APORTE_ESTRATEGICO\"            IS 'Campo que relaciona la tabla BITACORA_PAE con la tabla PLAN_APORTE_ESTRATEGICO';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PAE\".\"ESTADO_FORMULACION_PAE\"             IS 'Campo que relaciona la tabla BITACORA_PAE con la tabla ESTADO_FORMULACION_PAE';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PAE\".\"USUARIO\"                            IS 'Campo que relaciona la tabla BITACORA_PAE con la tabla USUARIO';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PAE\".\"FECHA\"                              IS 'Fecha y hora en que se realiza la transacci\u00f3n';\n\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* SECUENCIA                                            *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE SEQUENCE PPI.SQ_BITACORA_PAE START WITH 1 INCREMENT BY 1 MINVALUE 1 NOCACHE  NOCYCLE  NOORDER;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* SINONIMOS                                            *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE PUBLIC SYNONYM BITACORA_PAE FOR \"PPI\".\"BITACORA_PAE\";\nCREATE PUBLIC SYNONYM SQ_BITACORA_PAE FOR PPI.SQ_BITACORA_PAE;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* VERIFICACI\u00d3N  EXISTENCIA TABLA                       *\/\n\/********************************************************\/\n\/********************************************************\/\nSELECT * FROM BITACORA_PAE;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* ELIMINAR TABLA                                       *\/\n\/********************************************************\/\n\/********************************************************\/\nDROP SEQUENCE \"PPI\".SQ_BITACORA_PAE;\nDROP PUBLIC SYNONYM BITACORA_PAE;\nDROP PUBLIC SYNONYM SQ_BITACORA_PAE;\nDROP TABLE \"PPI\".BITACORA_PAE;\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* GRANT PERMISOS SOBRE LA TABLA                        *\/\n\/********************************************************\/\n\/********************************************************\/\nGRANT DELETE, INSERT, UPDATE, SELECT, REFERENCES ON PPI.BITACORA_PAE TO WWW_SIGESA, WWW_TEUNA;\nGRANT SELECT, ALTER ON PPI.SQ_BITACORA_PAE TO WWW_SIGESA, WWW_TEUNA;\nGRANT SELECT ON \"PPI\".\"BITACORA_PAE\" TO \"ANALISTA\", \"ANALISTA_SIGESA\";<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Nota adicional mapeo<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>ARR\n\/\/ ***************************************\n    \/\/ MAPEO: ACTIVIDAD_RESPUESTA_RIESGO->BITACORA_ARR\n    \/\/ ***************************************\n    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, orphanRemoval = true)\n    @JoinColumn(name = \"ACTIVIDAD_RIESGO\", nullable = false)\n    private List&lt;BitacoraARR> listaBitacoraARR;\n    \n    \n    \nBitacora\n@ManyToOne(fetch = FetchType.LAZY, optional = false)\n    @JoinColumn(name = \"ACTIVIDAD_RIESGO\",\n            referencedColumnName = \"ID_ACTIVIDAD_RESPUESTA_RIESGO\",\n            nullable = false,\n            insertable = false,\n            updatable = false)\n    private ActividadRespuestaRiesgo actividadRespuestaRiesgo;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPAE.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.domain;\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.domain.CampoConfigurable;\nimport cr.ac.una.cgi.sdkuna.domain.Usuario;\nimport cr.ac.una.cgi.sdkuna.generic.BaseEntity;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++                BD           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport javax.persistence.AttributeOverride;\nimport javax.persistence.Column;\nimport javax.persistence.Entity;\nimport javax.persistence.SequenceGenerator;\nimport javax.persistence.Table;\nimport javax.persistence.Temporal;\n\n\n\n\n\/\/ *********************************************************************\n\/\/ Para hacer mapeos\n\/\/ *********************************************************************\nimport javax.persistence.ManyToOne;\nimport javax.persistence.JoinColumn;\n\n\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++      TIPOS DE DATOS         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport java.util.Date;\n\n\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\/**\n * Entity para la administraci\u00f3n de la entidad {@link BitacoraPAE}\n *\n * @author: Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion:       25\/10\/2022\n * @fechaModificacion:   25\/10\/2022\n * @Version: 1.0.0\n *\/\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n@Entity\n@Table(name = \"BITACORA_PAE\")\n@AttributeOverride(name = \"id\", column\n        = @Column(name = \"ID_BITACORA_PAE\"))\n@SequenceGenerator(name = \"sequence\", sequenceName = \"SQ_BITACORA_PAE\", allocationSize = 1)\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE CLASE  *****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic class BitacoraPAE extends BaseEntity&lt;Usuario, CampoConfigurable&gt; {\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      MAPEO: DEFINICI\u00d3N      ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;PlanAporteEstrategico\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"PLAN_APORTE_ESTRATEGICO\")\n    private PlanAporteEstrategico planAporteEstrategico;\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;EstadoFormulacionPAE\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"ESTADO_FORMULACION_PAE\")\n    private EstadoFormulacionPAE estadoFormulacionPAE;\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;Usuario\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"USUARIO\")\n    private Usuario usuario;\n\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++          MAPEO: GET\/SET        +++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;PlanAporteEstrategico\n    \/\/ ***************************************\n    public PlanAporteEstrategico getPlanAporteEstrategico() {\n        return planAporteEstrategico;\n    }\n\n    public void setPlanAporteEstrategico(PlanAporteEstrategico planAporteEstrategico) {\n        this.planAporteEstrategico = planAporteEstrategico;\n    }\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;EstadoFormulacionPAE\n    \/\/ ***************************************\n    public EstadoFormulacionPAE getEstadoFormulacionPAE() {\n        return estadoFormulacionPAE;\n    }\n\n    public void setEstadoFormulacionPAE(EstadoFormulacionPAE estadoFormulacionPAE) {\n        this.estadoFormulacionPAE = estadoFormulacionPAE;\n    }\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPAE-&gt;Usuario\n    \/\/ ***************************************\n    public Usuario getUsuario() {\n        return usuario;\n    }\n\n    public void setUsuario(Usuario usuario) {\n        this.usuario = usuario;\n    }\n\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      CAMPOS: DEFINICI\u00d3N     ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ CAMPO: FECHA\n    \/\/ ***************************************\n    @Column(name = \"FECHA\")\n    @Temporal(javax.persistence.TemporalType.TIMESTAMP)\n    private Date fecha;\n\n    \n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      CAMPOS:  GET\/SET       ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ CAMPO: NOMBRE\n    \/\/ ***************************************\n    public Date getFecha() {\n        return fecha;\n    }\n\n    public void setFecha(Date fecha) {\n        this.fecha = fecha;\n    }\n   \n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**************** FIN DEFINICI\u00d3N DE CLASE  ****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPAERepository.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.repository;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.generic.GenericRepository;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             DOMAIN          ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPAE;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++       SPRING-BOOT           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport org.springframework.stereotype.Repository;\n\n\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Repository para la administraci\u00f3n de la entidad {@link BitacoraPAE}\n *\n * @author Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 25\/10\/2022\n * @fechaModificacion: 25\/10\/2022\n * @Version: 1.0.0\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n@Repository\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE INTERFACE   ************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic interface BitacoraPAERepository extends GenericRepository&lt;BitacoraPAE&gt; {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**********     FIN DEFINICI\u00d3N DE INTERFACE     ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPAEService.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.service;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.api.service.EntityService;\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             DOMAIN          ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPAE;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Interface para la administraci\u00f3n de la entidad {@link BitacoraPAE}\n *\n * @author Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 25\/10\/2022\n * @fechaModificacion: 25\/10\/2022\n * @Version: 1.0.0.\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE INTERFACE   ************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic interface BitacoraPAEService extends EntityService&lt;BitacoraPAE&gt; {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**********     FIN DEFINICI\u00d3N DE INTERFACE     ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPAEServiceImpl.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.service;\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.api.service.EntityServiceImpl;\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++       SPRING-BOOT           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport org.springframework.stereotype.Service;\nimport org.springframework.transaction.annotation.Transactional;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*++++++++++++         DOMAIN Y REPOSITRY         ++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPAE;\nimport cr.ac.una.cgi.sigesa.ppi.ppe.repository.BitacoraPAERepository;\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Clase que implementa el servicio {@link BitacoraPAEService} para la entidad\n * {@link BitacoraPAE}\n *\n * @author: Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 25\/10\/2022\n * @fechaModificacion: 25\/10\/2022\n * @version: 1.0.0\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n@Service\n@Transactional\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE CLASE  *****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic class BitacoraPAEServiceImpl extends EntityServiceImpl&lt;BitacoraPAE, BitacoraPAERepository&gt; implements BitacoraPAEService {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/***************      FIN DEFINICI\u00d3N DE CLASE   ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">PlanAporteEstrategicoServiceImpl.java<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Todo el proceso anterior de la creaci\u00f3n de una bitacora es para poder registrar en la BD e n la tabla BITACORA_PAE, los cambios de estados que se pueden dar en PlanAporteEstrategicoServi ceImpl.java<\/li>\n\n\n\n<li>Por esto abrimos el archivo y lo vamos a modificar para:\n<ul class=\"wp-block-list\">\n<li>Insertar un nuevo registro cada vez que se modifica el estado (NOTA: estas modificaciones espec\u00edficas se dan en un FLUJO)<\/li>\n\n\n\n<li>Y sobreescritura del m\u00e9todo de \u00abactualizarEstado\u00bb de FLUJOS ya que es esto lo quer lo dispara<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Agregamos los import necesarios<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ****************************************\n\/\/ Proceso: BitacoraPAE\n\/\/ ****************************************\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPAE;\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.EstadoFormulacionPAE;\nimport cr.ac.una.cgi.sdkuna.service.UsuarioService;<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"629\" height=\"152\" src=\"\/wp-content\/uploads\/2022\/10\/Seleccion_050.png\" alt=\"\" class=\"wp-image-13467\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_050.png 629w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_050-300x72.png 300w\" sizes=\"(max-width: 629px) 100vw, 629px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Agregamos los AutoWired<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ****************************************\n    \/\/ Proceso: BitacoraPAE\n    \/\/ ****************************************\n    @Autowired\n    BitacoraPAEService bitacoraPAEService;\n    \n    @Autowired\n    EstadoFormulacionPAEService estadoFormulacionPAEService;\n\n    @Autowired\n    UsuarioService usuarioService;<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"532\" height=\"237\" src=\"\/wp-content\/uploads\/2022\/10\/Seleccion_051.png\" alt=\"\" class=\"wp-image-13468\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_051.png 532w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_051-300x134.png 300w\" sizes=\"(max-width: 532px) 100vw, 532px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El m\u00e9todo para insertar registros en la bitacora<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/**\n     * *\n     *\n     * M\u00e9todo que inserta registros en la tabla BITACORA_PAE\n     * \n     *\n     * @param planAporteEstrategico: Plan Aporte Estrategico\n     * @param nextStatus: Siguiente estado\n     * @param firstSave: Si es la primera vez que se almacena (estadoInicial)\n     * @throws Exception\n     * @author Gustavo Matamoros Gonz\u00e1lez\n     * @since 25\/10\/22\n     *\/\n    private BitacoraPAE crearRegistroBitacoraPAE(PlanAporteEstrategico planAporteEstrategico, Long nextStatus, boolean firstSave) {\n\n        EstadoFormulacionPAE estadoFormulacionPAE;\n\n        if (firstSave) {\n            estadoFormulacionPAE = estadoFormulacionPAEService.obtenerEstadoBorrador();\n        } else {\n            estadoFormulacionPAE = estadoFormulacionPAEService.findOne(nextStatus);\n        }\n\n        BitacoraPAE bitacoraPAE = new BitacoraPAE();\n        bitacoraPAE.setPlanAporteEstrategico(planAporteEstrategico);\n        bitacoraPAE.setEstadoFormulacionPAE(estadoFormulacionPAE);\n        bitacoraPAE.setFecha(new Date());\n        bitacoraPAE.setUsuario(usuarioService.getUsuarioActual());\n\n        return bitacoraPAEService.save(bitacoraPAE);\n    }<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"519\" src=\"\/wp-content\/uploads\/2022\/10\/Seleccion_052-1024x519.png\" alt=\"\" class=\"wp-image-13469\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_052-1024x519.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_052-300x152.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_052-768x389.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_052.png 1191w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Y el m\u00e9todo para la sobreescritura de \u00abactualizaEstado\u00bb de flujos<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/**\n     * *\n     *\n     * M\u00e9todo de sobreescritura para actualizarEstado, para reportar los cambios de estado de flujos en BITACORA_PAE\n     * \n     * \n     *\n     * @param entity: Plan Aporte Estrategico\n     * @param columnName: nombre de la columna de BD de Bitacora\n     * @param serviceClass: ServiceClass\n     * @param nextStatus: Estado a registrar\n     * @param columnaTablaEstados: nombre de la columna de BD de Estados\n     * @throws Exception\n     * @author Gustavo Matamoros Gonz\u00e1lez\n     * @since 25\/10\/22\n     *\/\n    @Override\n    public PlanAporteEstrategico actualizarEstado(\n                PlanAporteEstrategico entity, \n                String columnName, \n                String serviceClass, \n                Long nextStatus, \n                String columnaTablaEstados\n                ) {\n  \n        this.crearRegistroBitacoraPAE(entity, nextStatus, false);\n        return super.actualizarEstado(entity, columnName, serviceClass, nextStatus, columnaTablaEstados);\n    }<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1006\" height=\"544\" src=\"\/wp-content\/uploads\/2022\/10\/Seleccion_053.png\" alt=\"\" class=\"wp-image-13471\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_053.png 1006w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_053-300x162.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_053-768x415.png 768w\" sizes=\"(max-width: 1006px) 100vw, 1006px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>NOTA:\n<ul class=\"wp-block-list\">\n<li>Cuando se crea un nuevo registro el m\u00e9todo se debe llmar con <\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>this.crearRegistroBitacora(planOperativo, 0L, true);<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Y en el actualiza se debe llamar con <\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>this.crearRegistroBitacora(entity, nextStatus, false);<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ahora debemos ingresar a SIGESA <\/li>\n\n\n\n<li>Agregar un nuevo Plan Aporte Estrategico y probar que cada vez que se modifica un estado sea almacenado en la BD<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT\n    * FROM\n    PPI.BITACORA_PAE;\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"562\" src=\"\/wp-content\/uploads\/2022\/10\/Seleccion_054-1024x562.png\" alt=\"\" class=\"wp-image-13473\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_054-1024x562.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_054-300x165.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_054-768x422.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/10\/Seleccion_054.png 1182w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Creaci\u00f3n de segunda bitacora (BITACORA_PXE)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Esta secci\u00f3n solo esta para alamcenar los Insert de la segunda bitacora por hacer y as\u00ed almacernar los INSERT&#8217;s<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>Insert into \nESTADO_FORMULACION_PXE (\n            ID_ESTADO_FORMULACION_PXE,\n            NOMBRE,ACTIVO,\n            FECHA_CREACION,\n            USUARIO_CREACION,\n            FECHA_MODIFICACION,\n            USUARIO_MODIFICACION,\n            CAMPO_CONFIGURABLE,\n            VERSION) \nvalues (\n            '2',\n            'Borrador',\n            '1',\n            SYSDATE,\n            '78176',\n            SYSDATE,\n            '781761',\n            null,\n            '0'\n);\n\nInsert into \nESTADO_FORMULACION_PXE (\n            ID_ESTADO_FORMULACION_PXE,\n            NOMBRE,ACTIVO,\n            FECHA_CREACION,\n            USUARIO_CREACION,\n            FECHA_MODIFICACION,\n            USUARIO_MODIFICACION,\n            CAMPO_CONFIGURABLE,\n            VERSION) \nvalues (\n            '3',\n            'Completado',\n            '1',\n            SYSDATE,\n            '78176',\n            SYSDATE,\n            '781761',\n            null,\n            '0'\n);\n\nInsert into \nESTADO_FORMULACION_PXE (\n            ID_ESTADO_FORMULACION_PXE,\n            NOMBRE,ACTIVO,\n            FECHA_CREACION,\n            USUARIO_CREACION,\n            FECHA_MODIFICACION,\n            USUARIO_MODIFICACION,\n            CAMPO_CONFIGURABLE,\n            VERSION) \nvalues (\n            '4',\n            'Ratificado',\n            '1',\n            SYSDATE,\n            '78176',\n            SYSDATE,\n            '781761',\n            null,\n            '0'\n);\nInsert into \nESTADO_FORMULACION_PXE (\n            ID_ESTADO_FORMULACION_PXE,\n            NOMBRE,ACTIVO,\n            FECHA_CREACION,\n            USUARIO_CREACION,\n            FECHA_MODIFICACION,\n            USUARIO_MODIFICACION,\n            CAMPO_CONFIGURABLE,\n            VERSION) \nvalues (\n            '5',\n            'Aprobado',\n            '1',\n            SYSDATE,\n            '78176',\n            SYSDATE,\n            '781761',\n            null,\n            '0'\n);\n\nInsert into \nESTADO_FORMULACION_PXE (\n            ID_ESTADO_FORMULACION_PXE,\n            NOMBRE,ACTIVO,\n            FECHA_CREACION,\n            USUARIO_CREACION,\n            FECHA_MODIFICACION,\n            USUARIO_MODIFICACION,\n            CAMPO_CONFIGURABLE,\n            VERSION) \nvalues (\n            '6',\n            'Anulado',\n            '1',\n            SYSDATE,\n            '78176',\n            SYSDATE,\n            '781761',\n            null,\n            '0'\n);\n\n-- Ejecutar 6 veces\nSELECT SQ_ESTADO_FORMULACION_PXE.nextval  from dual; <\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tabla segunda bitacora<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/* \n * Copyright (C) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n * \n * Author:  Gustavo Matamoros Gonz\u00e1lez\n * Created: 26\/10\/2022\n *\/\n\n\/********************************************************\/\n\/********************************************************\/\n\/* CREACI\u00d3N DE TABLA                                    *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE TABLE \"PPI\".\"BITACORA_PXE\"\n(\n    \/********************************************************\/\n    \/* CAMPOS: ID                                           *\/\n    \/********************************************************\/\n    \"ID_BITACORA_PXE\"            number (19,0)       NOT NULL ENABLE,\n    \n    \n    \n    \/********************************************************\/\n    \/* CAMPOS: FK                                           *\/\n    \/********************************************************\/\n    \"PLAN_ACCION_ESTRATEGICA\"    number (19,0)       NOT NULL ENABLE,\n    \"ESTADO_FORMULACION_PXE\"     number (19,0)       NOT NULL ENABLE,    \n    \"USUARIO\"                    number (19,0)       NOT NULL ENABLE,        \n    \n    \n    \n    \/********************************************************\/\n    \/* CAMPOS: GENERALES                                    *\/\n    \/********************************************************\/\n    \"FECHA\"                      DATE                NOT NULL ENABLE,\n\n\n    \n    \/********************************************************\/\n    \/* CAMPOS: FRAMEWORK SDK-UNA                            *\/\n    \/********************************************************\/\n    \"FECHA_CREACION\"        DATE                NOT NULL ENABLE,\n    \"USUARIO_CREACION\"      NUMBER(19,0)        NOT NULL ENABLE,\n    \"FECHA_MODIFICACION\"    DATE                NOT NULL ENABLE,\n    \"USUARIO_MODIFICACION\"  NUMBER(19,0)        NOT NULL ENABLE,\n    \"VERSION\"               NUMBER(19,0),\n    \"CAMPO_CONFIGURABLE\"    NUMBER(19,0),\n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: PRIMARIA                                      *\/\n    \/********************************************************\/\n    CONSTRAINT \"PK_BITACORA_PXE\" PRIMARY KEY(\"ID_BITACORA_PXE\"),\n    \n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: FORANEAS                                      *\/\n    \/********************************************************\/\n    --BITACORA_PXE-&gt;PLAN_ACCION_ESTRATEGICA\n    CONSTRAINT FK_BIT_PXE_PAE FOREIGN KEY(PLAN_ACCION_ESTRATEGICA)          REFERENCES PPI.PLAN_ACCION_ESTRATEGICA(ID_PLAN_ACCION_ESTRATEGICA),\n\n    --BITACORA_PXE-&gt;ESTADO_FORMULACION_PXE\n    CONSTRAINT FK_BIT_PXE_EST_FOR_PXE FOREIGN KEY(ESTADO_FORMULACION_PXE)   REFERENCES PPI.ESTADO_FORMULACION_PXE(ID_ESTADO_FORMULACION_PXE),\n    \n     --BITACORA_PXE-&gt;USUARIO\n    CONSTRAINT FK_BIT_PXE_USU FOREIGN KEY(USUARIO)                          REFERENCES SAS.USUARIO (ID_USUARIO),\n    \n    \n    \n    \n    \/********************************************************\/\n    \/* LLAVE: FORANEAS SIGESA                               *\/\n    \/********************************************************\/\n    CONSTRAINT FK_BIT_PXE_USU_CRE FOREIGN KEY(USUARIO_CREACION)        REFERENCES SAS.USUARIO(ID_USUARIO),\n    CONSTRAINT FK_BIT_PXE_USU_MOD FOREIGN KEY(USUARIO_MODIFICACION)    REFERENCES SAS.USUARIO(ID_USUARIO),\n    CONSTRAINT FK_BIT_PXE_CAM_CON FOREIGN KEY(CAMPO_CONFIGURABLE)      REFERENCES SAS.CAMPO_CONFIGURABLE(ID_CAMPO_CONFIGURABLE)\n    \n    \n);\n\n\/********************************************************\/\n\/********************************************************\/\n\/* COMENTARIOS                                          *\/\n\/********************************************************\/\n\/********************************************************\/\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PXE\".\"PLAN_ACCION_ESTRATEGICA\"            IS 'Campo que relaciona la tabla BITACORA_PXE con la tabla PLAN_ACCION_ESTRATEGICA';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PXE\".\"ESTADO_FORMULACION_PXE\"             IS 'Campo que relaciona la tabla BITACORA_PXE con la tabla ESTADO_FORMULACION_PXE';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PXE\".\"USUARIO\"                            IS 'Campo que relaciona la tabla BITACORA_PXE con la tabla USUARIO';\nCOMMENT ON COLUMN \"PPI\".\"BITACORA_PXE\".\"FECHA\"                              IS 'Fecha y hora en que se realiza la transacci\u00f3n';\n\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* SECUENCIA                                            *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE SEQUENCE PPI.SQ_BITACORA_PXE START WITH 1 INCREMENT BY 1 MINVALUE 1 NOCACHE  NOCYCLE  NOORDER;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* SINONIMOS                                            *\/\n\/********************************************************\/\n\/********************************************************\/\nCREATE PUBLIC SYNONYM BITACORA_PXE FOR \"PPI\".\"BITACORA_PXE\";\nCREATE PUBLIC SYNONYM SQ_BITACORA_PXE FOR PPI.SQ_BITACORA_PXE;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* VERIFICACI\u00d3N  EXISTENCIA TABLA                       *\/\n\/********************************************************\/\n\/********************************************************\/\nSELECT * FROM BITACORA_PXE;\n\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* ELIMINAR TABLA                                       *\/\n\/********************************************************\/\n\/********************************************************\/\nDROP SEQUENCE \"PPI\".SQ_BITACORA_PXE;\nDROP PUBLIC SYNONYM BITACORA_PXE;\nDROP PUBLIC SYNONYM SQ_BITACORA_PXE;\nDROP TABLE \"PPI\".BITACORA_PXE;\n\n\n\n\/********************************************************\/\n\/********************************************************\/\n\/* GRANT PERMISOS SOBRE LA TABLA                        *\/\n\/********************************************************\/\n\/********************************************************\/\nGRANT SELECT, DELETE, UPDATE, INSERT ON PPI.BITACORA_PXE TO WWW_SIGESA, WWW_TEUNA;\nGRANT SELECT, ALTER ON PPI.SQ_BITACORA_PXE TO WWW_SIGESA, WWW_TEUNA;\nGRANT SELECT ON \"PPI\".\"BITACORA_PXE\" TO \"ANALISTA\", \"ANALISTA_SIGESA\";<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPXE.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.domain;\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.domain.CampoConfigurable;\nimport cr.ac.una.cgi.sdkuna.domain.Usuario;\nimport cr.ac.una.cgi.sdkuna.generic.BaseEntity;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++                BD           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport javax.persistence.AttributeOverride;\nimport javax.persistence.Column;\nimport javax.persistence.Entity;\nimport javax.persistence.SequenceGenerator;\nimport javax.persistence.Table;\nimport javax.persistence.Temporal;\n\n\n\n\n\/\/ *********************************************************************\n\/\/ Para hacer mapeos\n\/\/ *********************************************************************\nimport javax.persistence.ManyToOne;\nimport javax.persistence.JoinColumn;\n\n\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++      TIPOS DE DATOS         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport java.util.Date;\n\n\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\/**\n * Entity para la administraci\u00f3n de la entidad {@link BitacoraPXE}\n *\n * @author: Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion:       26\/10\/2022\n * @fechaModificacion:   26\/10\/2022\n * @Version: 1.0.0\n *\/\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n@Entity\n@Table(name = \"BITACORA_PXE\")\n@AttributeOverride(name = \"id\", column\n        = @Column(name = \"ID_BITACORA_PXE\"))\n@SequenceGenerator(name = \"sequence\", sequenceName = \"SQ_BITACORA_PXE\", allocationSize = 1)\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE CLASE  *****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic class BitacoraPXE extends BaseEntity&lt;Usuario, CampoConfigurable&gt; {\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      MAPEO: DEFINICI\u00d3N      ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;PlanAccionEstrategica\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"PLAN_ACCION_ESTRATEGICA\")\n    private PlanAccionEstrategica planAccionEstrategica;\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;EstadoFormulacionPXE\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"ESTADO_FORMULACION_PXE\")\n    private EstadoFormulacionPXE estadoFormulacionPXE;\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;Usuario\n    \/\/ ***************************************\n    @ManyToOne\n    @JoinColumn(name = \"USUARIO\")\n    private Usuario usuario;\n\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++          MAPEO: GET\/SET        +++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;PlanAccionEstrategica\n    \/\/ ***************************************\n    public PlanAccionEstrategica getPlanAccionEstrategica() {\n        return planAccionEstrategica;\n    }\n\n    public void setPlanAccionEstrategica(PlanAccionEstrategica planAccionEstrategica) {\n        this.planAccionEstrategica = planAccionEstrategica;\n    }\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;EstadoFormulacionPXE\n    \/\/ ***************************************\n    public EstadoFormulacionPXE getEstadoFormulacionPXE() {\n        return estadoFormulacionPXE;\n    }\n\n    public void setEstadoFormulacionPXE(EstadoFormulacionPXE estadoFormulacionPXE) {\n        this.estadoFormulacionPXE = estadoFormulacionPXE;\n    }\n\n    \/\/ ***************************************\n    \/\/ MAPEO: BitacoraPXE-&gt;Usuario\n    \/\/ ***************************************\n    public Usuario getUsuario() {\n        return usuario;\n    }\n\n    public void setUsuario(Usuario usuario) {\n        this.usuario = usuario;\n    }\n\n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      CAMPOS: DEFINICI\u00d3N     ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ CAMPO: FECHA\n    \/\/ ***************************************\n    @Column(name = \"FECHA\")\n    @Temporal(javax.persistence.TemporalType.TIMESTAMP)\n    private Date fecha;\n\n    \n\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*+++++++++++++      CAMPOS:  GET\/SET       ++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n    \/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\n    \/\/ ***************************************\n    \/\/ CAMPO: NOMBRE\n    \/\/ ***************************************\n    public Date getFecha() {\n        return fecha;\n    }\n\n    public void setFecha(Date fecha) {\n        this.fecha = fecha;\n    }\n   \n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**************** FIN DEFINICI\u00d3N DE CLASE  ****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPXERepository.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.repository;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.generic.GenericRepository;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             DOMAIN          ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPXE;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++       SPRING-BOOT           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport org.springframework.stereotype.Repository;\n\n\n\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Repository para la administraci\u00f3n de la entidad {@link BitacoraPXE}\n *\n * @author Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 26\/10\/2022\n * @fechaModificacion: 25\/10\/2022\n * @Version: 1.0.0\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n@Repository\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE INTERFACE   ************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic interface BitacoraPXERepository extends GenericRepository&lt;BitacoraPXE&gt; {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**********     FIN DEFINICI\u00d3N DE INTERFACE     ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPXEService.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.service;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.api.service.EntityService;\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             DOMAIN          ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPXE;\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Interface para la administraci\u00f3n de la entidad {@link BitacoraPXE}\n *\n * @author Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 26\/10\/2022\n * @fechaModificacion: 26\/10\/2022\n * @Version: 1.0.0.\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE INTERFACE   ************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic interface BitacoraPXEService extends EntityService&lt;BitacoraPXE&gt; {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**********     FIN DEFINICI\u00d3N DE INTERFACE     ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">BitacoraPXEServiceImpl.java<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n * Copyright (c) 2022.\n *\n * Centro de Gestion Informatica\n * Direccion de Tecnologias de la Informacion y Comunicacion\n * Universidad Nacional - Costa Rica\n * http:\/\/www.una.ac.cr\n *\n *\/\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       PACKAGE     ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npackage cr.ac.una.cgi.sigesa.ppi.ppe.service;\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************       IMPORT'S    ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++             SDK-UNA         ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sdkuna.api.service.EntityServiceImpl;\n\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*+++++++++++++       SPRING-BOOT           ++++++++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport org.springframework.stereotype.Service;\nimport org.springframework.transaction.annotation.Transactional;\n\n\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\n\/*++++++++++++         DOMAIN Y REPOSITRY         ++++++++++++++++++++*\/\n\/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\/\nimport cr.ac.una.cgi.sigesa.ppi.ppe.domain.BitacoraPXE;\nimport cr.ac.una.cgi.sigesa.ppi.ppe.repository.BitacoraPXERepository;\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    DOCUMENTACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/**\n * Clase que implementa el servicio {@link BitacoraPXEService} para la entidad\n * {@link BitacoraPXE}\n *\n * @author: Gustavo Matamoros Gonz\u00e1lez\n * @fechaCreacion: 26\/10\/2022\n * @fechaModificacion: 26\/10\/2022\n * @version: 1.0.0\n *\/\n\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/*********************    CONFIGURACI\u00d3N  ******************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\n\n@Service\n@Transactional\n\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/****************    DEFINICI\u00d3N DE CLASE  *****************************\/\n\/**********************************************************************\/\n\/**********************************************************************\/\npublic class BitacoraPXEServiceImpl extends EntityServiceImpl&lt;BitacoraPXE, BitacoraPXERepository&gt; implements BitacoraPXEService {\n\n}\n\/**********************************************************************\/\n\/**********************************************************************\/\n\/***************      FIN DEFINICI\u00d3N DE CLASE   ***********************\/\n\/**********************************************************************\/\n\/**********************************************************************\/<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Nota adicional mapeo BitacoraPAE.java BitacoraPAERepository.java BitacoraPAEService.java BitacoraPAEServiceImpl.java PlanAporteEstrategicoServiceImpl.java Creaci\u00f3n de segunda bitacora (BITACORA_PXE) BitacoraPXE.java BitacoraPXERepository.java BitacoraPXEService.java BitacoraPXEServiceImpl.java<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[429],"tags":[442,430],"class_list":["post-13429","post","type-post","status-publish","format-standard","hentry","category-cgi","tag-bitacora","tag-cgi"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/13429","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=13429"}],"version-history":[{"count":18,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/13429\/revisions"}],"predecessor-version":[{"id":14596,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/13429\/revisions\/14596"}],"wp:attachment":[{"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=13429"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=13429"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=13429"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}