/** * 删除参与/关注活动信息(从参与活动列表和关注活动列表中删除) * * @param mapping 路径映射对象 * @param form 表单对象 * @param request 请求对象 * @param response 响应对象 * @return ActionForward * @throws Exception */ public ActionForward doDeleteJoinAct( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 初始化 ErrorInformation errInfo = new ActivityErrInfo(); RequestUtils requ = RequestUtils.getInstance(request); int id = requ.getInt("id"); int joiner_id = requ.getInt("joiner_id"); int status = requ.getInt("status"); // 获取登录用户及角色信息 UserInfo loginUser = UserInfo.getLoginUser(request); if (loginUser == null) // 检查用户是否登录 errInfo.saveError(ActivityErrInfo.NEED_LOGIN); else { try { // 如果没有出错,则删除 int ret = JoinActivityDAO.deleteJoinAct(id, joiner_id, status); if (ret < 1) errInfo.saveError(ActivityErrInfo.ERR_UNKNOWN); // 因从列表中删除某一活动,用户积分减10 if (errInfo.isEmpty()) { int rt = AuthUserDAO.addScore(loginUser, -Utils.SCORE_JOIN_ACTIVITY); if (rt < 1) errInfo.saveError(ActivityErrInfo.ERR_UNKNOWN); } } catch (SQLException e) { Logger.Log(Logger.LOG_ERROR, e); errInfo.saveError(ActivityErrInfo.DATABASE_ERR); } } if (!errInfo.isEmpty()) { errInfo.saveToRequest("err", request); return mapping.findForward("error"); } return new ActionForward("/activity/index.jsp", true); }