SIGESA: Machete Creación Entidad

Domain

/*
 * Copyright (c) 2022.
 *
 * Centro de Gestion Informatica
 * Direccion de Tecnologias de la Informacion y Comunicacion
 * Universidad Nacional - Costa Rica
 * http://www.una.ac.cr
 *
 */
package cr.ac.una.cgi.sigesa.ppi.ppo.domain;

import javax.persistence.AttributeOverride;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import cr.ac.una.cgi.sdkuna.domain.CampoConfigurable;
import cr.ac.una.cgi.sdkuna.domain.Usuario;
import cr.ac.una.cgi.sdkuna.generic.BaseEntity;

/**
 * Entity para la administración de la entidad {@link ProductoPOAI}
 *
 * @author Gustavo Matamoros González
 * @version 0.0.1
 * @since 13/05/2024
 */
@Entity
@Table(name = "PRODUCTO_POAI")
@AttributeOverride(name = "id", column
        = @Column(name = "ID_PRODUCTO_POAI"))
@SequenceGenerator(name = "sequence", sequenceName = "SQ_PRODUCTO_POAI", allocationSize = 1)
public class ProductoPOAI extends BaseEntity<Usuario, CampoConfigurable> {

    public ProductoPOAI() {
    }

    /*
    @Column(name = "NOMBRE")
    private String nombre;

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    */
}

Repository

/*
 * Copyright (c) 2022.
 *
 * Centro de Gestion Informatica
 * Direccion de Tecnologias de la Informacion y Comunicacion
 * Universidad Nacional - Costa Rica
 * http://www.una.ac.cr
 *
 */
package cr.ac.una.cgi.sigesa.ppi.ppo.repository;

import org.springframework.stereotype.Repository;
import cr.ac.una.cgi.sdkuna.generic.GenericRepository;
import cr.ac.una.cgi.sigesa.ppi.ppo.domain.ProductoPOAI;

/**
 * Repository para la administración de la entidad {@link ProductoPOAI}
 *
 * @author Gustavo Matamoros González
 * @version 0.0.1
 * @since 13/05/2024
 */
@Repository
public interface ProductoPOAIRepository extends GenericRepository<ProductoPOAI> {

}

Service

/*
 * Copyright (c) 2022.
 *
 * Centro de Gestion Informatica
 * Direccion de Tecnologias de la Informacion y Comunicacion
 * Universidad Nacional - Costa Rica
 * http://www.una.ac.cr
 *
 */
package cr.ac.una.cgi.sigesa.ppi.ppo.service;

import cr.ac.una.cgi.sdkuna.api.service.EntityService;
import cr.ac.una.cgi.sigesa.ppi.ppo.domain.ProductoPOAI;

/**
 * Interface para la administración de la entidad {@link ProductoPOAI}
 *
 * @author Gustavo Matamoros González
 * @version 0.0.1
 * @since 13/05/2024
 */
public interface ProductoPOAIService extends EntityService<ProductoPOAI> {

}

ServiceImpl

/*
 * Copyright (c) 2022.
 *
 * Centro de Gestion Informatica
 * Direccion de Tecnologias de la Informacion y Comunicacion
 * Universidad Nacional - Costa Rica
 * http://www.una.ac.cr
 *
 */
package cr.ac.una.cgi.sigesa.ppi.ppo.service;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import cr.ac.una.cgi.sdkuna.api.service.EntityServiceImpl;
import cr.ac.una.cgi.sigesa.ppi.ppo.domain.ProductoPOAI;
import cr.ac.una.cgi.sigesa.ppi.ppo.repository.ProductoPOAIRepository;

/**
 * Clase que implementa el servicio {@link ProductoPOAIService} para la entidad
 * {@link ProductoPOAI}
 *
 * @author Gustavo Matamoros González
 * @version 0.0.1
 * @since 13/05/2024
 */
@Service
@Transactional
public class ProductoPOAIServiceImpl extends EntityServiceImpl<ProductoPOAI, ProductoPOAIRepository> implements ProductoPOAIService {

}

BeanASER (Maestro – Detalle)

/*
 * Copyright (C) 2021.
 *
 * Centro de Gestion Informatica
 * Direccion de Tecnologias de la Informacion y Comunicacion
 * Universidad Nacional - Costa Rica
 * http://www.una.ac.cr
 * 
 */
package cr.ac.una.cgi.sigesa.ppi.ppo.view.model;

import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import cr.ac.una.cgi.sdkuna.view.commons.ASER;
import cr.ac.una.cgi.sdkuna.view.commons.ASERColumn;
import cr.ac.una.cgi.sdkuna.view.commons.ASERImpl;
import cr.ac.una.cgi.sigesa.ppi.ppo.domain.ProductoPOAI;

/**
 * Spring Bean Session para la administración de la entidad {@link ProductoPOAI}
 *
 * @author Gustavo Matamoros González
 * @version 0.0.1
 * @since 06/10/2022
 */
@Component
@Scope("session")
public class ProductoPOAIBean extends ASERImpl<ProductoPOAI> implements ASER {

    public ProductoPOAIBean() {
    }

    @PostConstruct
    public void init() {

        List<ASERColumn> columns = new ArrayList<>();
        
        
        columns.add(new ASERColumn("codigo", getI18n("productoPOAI_codigo_label"), true));
        columns.add(new ASERColumn("descripcion", getI18n("productoPOAI_descripcion_label"), true));

        this.setColumnsDetails(columns);
    }

    public void initProperties() {

        if (!isPostBack()) {

        }
    }
}