package restservices;
import com.google.gson.Gson;
import dao.UsuarioDAO;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Request;
import javax.ws.rs.core.UriInfo;
import model.Usuario;
import restservices.response.EstadoResponse;
import restservices.request.LoginRequest;
@Path("login")
public class LoginService {
@Context
UriInfo uriInfo;
@Context
Request request;
/*
{
"email":"alonsus91",
"password":"contraseƱa"
}
*/
@POST
@Produces({MediaType.APPLICATION_JSON})
@Path("user")
public EstadoResponse cambiarEstado(String request) {
Gson gson = new Gson();
LoginRequest loginRequest = new LoginRequest();
loginRequest = gson.fromJson(request, LoginRequest.class);
UsuarioDAO usuarioDAO = new UsuarioDAO();
Usuario usuario = usuarioDAO.findByEmail(loginRequest.getEmail());
if (usuario == null) {
usuario = usuarioDAO.findUsername(loginRequest.getEmail());
}
if (usuario != null) {
String passJSON = loginRequest.getPassword();
String passBBDD = usuario.getPassword();
if (passJSON.equals(passBBDD)) {
EstadoResponse estadoResponse = new EstadoResponse();
estadoResponse.setEstado("ok");
return estadoResponse;
} else {
EstadoResponse estadoResponse = new EstadoResponse();
estadoResponse.setEstado("contraseƱa incorrecta");
return estadoResponse;
}
} else {
EstadoResponse estadoResponse = new EstadoResponse();
estadoResponse.setEstado("usuario no existente");
return estadoResponse;
}
}
}