maia_modificado/.svn/pristine/66/66e278ba9f861416768844579c7...

56 lines
1.8 KiB
Plaintext
Executable File

package com.fp.viaticos.mail;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fp.persistence.commondb.PersistenceHelper;
import com.fp.persistence.pbpm.gene.TbpmGroupsUsers;
import com.fp.persistence.pviaticos.hra.Empleado;
import com.fp.persistence.pviaticos.hra.EmpleadoJpql;
import com.fp.simple.maia.MailRecipientGroup;
/**
* Clase que se encarga de objener la lista de emails asociados a un grupo definod en TbpmGroupsUsers.
*
* @version 2.1
*/
public class Grupos extends MailRecipientGroup {
/*
* (non-Javadoc)
*
* @see com.fp.simple.maia.MailRecipientGroup#getEmailAddress(java.lang.Object, java.lang.String)
*/
@Override
public Map<String, Object> getEmailAddress(Object pParam, String pGroupCode) throws Exception {
List<String> lemail = new ArrayList<String>();
Map<String, Object> mresp = new HashMap<String, Object>();
List<TbpmGroupsUsers> lgrupos = TbpmGroupsUsers.find(PersistenceHelper.getEntityManager(), pGroupCode);
for (TbpmGroupsUsers tbpmGroupsUsers : lgrupos) {
String email = this.getEmailPorUsuario(tbpmGroupsUsers.getPk().getUsercode());
if (email != null) {
lemail.add(email);
}
}
mresp.put("lemail", lemail);
return mresp;
}
/**
* Obtiene el email de un empleado de la sbs.
*
* @param cusuario Codigo de usaurio.
* @return String
* @throws Exception
*/
private String getEmailPorUsuario(String cusuario) throws Exception {
EmpleadoJpql ejpql = new EmpleadoJpql();
Empleado e = ejpql.findPorUsuarioWeb(cusuario);
return e.getEmail();
}
}