56 lines
1.8 KiB
Plaintext
Executable File
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();
|
|
}
|
|
|
|
}
|