You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.3 KiB

package com.lostfound.servlet;
import com.lostfound.dao.InMemoryDAO;
import com.lostfound.model.Item;
import com.lostfound.util.SessionUtil;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/claim")
public class ClaimServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
if (!SessionUtil.isLoggedIn(req)) {
resp.sendRedirect("login.jsp");
return;
}
String itemId = req.getParameter("id");
Item item = InMemoryDAO.getItem(itemId);
if (item == null) {
resp.sendRedirect("search.jsp?error=物品不存在");
return;
}
req.setAttribute("item", item);
req.getRequestDispatcher("/claim-confirm.jsp").forward(req, resp);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
String itemId = req.getParameter("itemId");
InMemoryDAO.markAsMatched(itemId);
resp.sendRedirect("my-items.jsp?msg=认领成功!对方已获得积分。");
}
}