maia/.svn/pristine/7b/7bbd5f458f2762ffec7089de2c7...

54 lines
1.9 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.pviaticos.hra.EmpleadoJpql;
import com.fp.persistence.pviaticos.solicitud.ViaSolicitud;
import com.fp.persistence.pviaticos.solicitud.ViaSolicitudKey;
import com.fp.simple.maia.MailRecipient;
/**
* Clase que se encarga de objener el email de un empleado y jefe inmediato a enviar notificaciones.
*
* @version 2.1
*/
public class EmpleadoyJefe extends MailRecipient {
/*
* (non-Javadoc)
*
* @see com.fp.simple.maia.MailRecipient#getEmailAddress(java.lang.Object)
*/
@SuppressWarnings("unchecked")
@Override
public Map<String, Object> getEmailAddress(Object pParam) throws Exception {
List<String> lemail = new ArrayList<String>();
Map<String, Object> mresp = new HashMap<String, Object>();
HashMap<String, Object> m = (HashMap<String, Object>) pParam;
Map<String, Object> mrequest = (Map<String, Object>) m.get("request");
if (mrequest.get("csolicitud") == null) {
return mresp;
}
String solicitud = (String) mrequest.get("csolicitud");
ViaSolicitud vsol = ViaSolicitud.find(PersistenceHelper.getEntityManager(), new ViaSolicitudKey(solicitud, "S"));
String codigoJefe = vsol.getCod_jefe();
EmpleadoJpql e = new EmpleadoJpql();
// adiciona email del empleado.
lemail.add(e.find(vsol.getCod_empleado()).getEmail());
if (codigoJefe == null) {
codigoJefe = e.find(vsol.getCod_empleado()).getCodigoJefe();
}
// adiciona email del jefe del empleado.
lemail.add(e.find(codigoJefe).getEmail());
mresp.put("lemail", lemail);
return mresp;
}
}