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 getEmailAddress(Object pParam) throws Exception { List lemail = new ArrayList(); Map mresp = new HashMap(); HashMap m = (HashMap) pParam; Map mrequest = (Map) 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; } }