package com.fp.viaticos.rules.query.empleados;

import java.util.List;

import com.fp.bpm.query.QueryJsf;
import com.fp.dto.query.QueryRequest;
import com.fp.dto.rules.QueryRule;
import com.fp.persistence.pviaticos.hra.Empleado;
import com.fp.persistence.pviaticos.hra.EmpleadoJpql;
import com.fp.persistence.pviaticos.param.ViaNotificacionMovilizacion;

/**
 * Clase que se encarga de consultar datos de VIA_CIUDAD_USUARIO, y el nombre del empleado sbs asociado al codigo de
 * usuario web.
 * 
 * @author Jorge Vaca
 * @version 2.1
 */
@SuppressWarnings("serial")
public class NotificacionMovilizacion extends QueryRule {

    /*
     * (non-Javadoc)
     * 
     * @see com.fp.dto.rules.QueryRule#process(com.fp.dto.query.QueryRequest)
     */
    @SuppressWarnings({ "unchecked" })
    @Override
    public QueryRequest process(QueryRequest pQueryRequest) throws Exception {
        QueryJsf qf = new QueryJsf();
        qf.execute(pQueryRequest);
        List<ViaNotificacionMovilizacion> ldata = (List<ViaNotificacionMovilizacion>) pQueryRequest.getResponse().get("NOTIFIACIONMOVILIZACION");
        for (ViaNotificacionMovilizacion obj : ldata) {
            EmpleadoJpql ejpql = new EmpleadoJpql();
            Empleado e = ejpql.findPorUsuarioWeb(obj.getCod_usuario().toLowerCase());
            obj.addAddtionalInfo("nusuario", e.getNombre());
        }
        return pQueryRequest;
    }

}
