package com.rjconsultores.ventaboletos.ws.rs;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;

import org.apache.commons.lang.StringUtils;

import com.rjconsultores.ventaboletos.dao.CajaDAO;
import com.rjconsultores.ventaboletos.vo.caja.UsuarioVO;
import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;

@Path("/cajas")
public class CajaCerradoRS {
	@GET
	@Path("/cerrados")
	@Produces({ MediaType.APPLICATION_XML })
	public List<UsuarioVO> buscarCajaCerrado(@QueryParam("fecha") String fecha, @QueryParam("cveusuario") String cveusuario, @QueryParam("turnoid") String turnoid) {
		SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");

		Date fec = new Date();		

		try {
			fec = StringUtils.isBlank(fecha) ? new Date() : sdf.parse(fecha);
		} catch (Exception e) {
		}

		if (cveusuario == null) {
			cveusuario = "*";
		}
		
		if (turnoid == null) {
			turnoid = "*";
		}
		
		CajaDAO cajaDAO = (CajaDAO) AppContext.getApplicationContext().getBean("cajaDAO");
		List<UsuarioVO> list = cajaDAO.buscarCajaCerrado(fec, cveusuario, turnoid);

		return list;
	}
	@GET
	@Path("/usuarios")
	@Produces({ MediaType.APPLICATION_XML })
	public List<UsuarioVO> buscarUsuarioCerrado(@QueryParam("fecha") String fecha) {
		SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
		
		Date fec = new Date();		
		
		try {
			fec = StringUtils.isBlank(fecha) ? new Date() : sdf.parse(fecha);
		} catch (Exception e) {
		}
		
		CajaDAO cajaDAO = (CajaDAO) AppContext.getApplicationContext().getBean("cajaDAO");
		List<UsuarioVO> list = cajaDAO.buscarUsuarioCerrado(fec);
		
		return list;
	}
}
