package DAO;
import Entidade.MetaItemPainelDeBordo;
import org.hibernate.Query;
import org.hibernate.Session;
public class MetaItemPainelDeBordoDao {
public void salvar(MetaItemPainelDeBordo mipdb){
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
session.saveOrUpdate(mipdb);
session.getTransaction().commit();
session.close();
}
public MetaItemPainelDeBordo buscaMeta(MetaItemPainelDeBordo mipdb) {
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
Query obj = session.createQuery("From MetaItemPainelDeBordo where mipbDscMes = :mes and ipbCodigo = :cod");
obj.setString("mes", mipdb.getMipbDscMes());
obj.setInteger("cod", mipdb.getIpbCodigo());
MetaItemPainelDeBordo list = (MetaItemPainelDeBordo) obj.uniqueResult();
session.getTransaction().commit();
session.close();
return list;
}
/*-- Function: func_atualizameta()
-- DROP FUNCTION func_atualizameta();
CREATE OR REPLACE FUNCTION func_atualizameta()
RETURNS trigger AS
$BODY$
BEGIN
UPDATE item_painel_de_bordo
SET ipb_num_media_realizado = sub.media
FROM (
SELECT ipb_codigo, avg(mipb_num_meta) media FROM meta_item_painel_de_bordo GROUP BY ipb_codigo) AS SUB
where sub.ipb_codigo = item_painel_de_bordo.ipb_codigo;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION func_atualizameta()
OWNER TO postgres;
*/
}