首页 > 其他分享 >开源项目-投票管理系统

开源项目-投票管理系统

时间:2024-10-30 11:46:48浏览次数:5  
标签:管理系统 springframework new 开源 投票 import currentPage page

哈喽,大家好,今天主要给大家带来一个开源项目-投票管理系统

投票管理系统主要有首页,发起投票,管理投票,参与投票,查看投票等功能

首页

为用户提供了一键导航到各个功能模块的便捷途径。

新增投票

用户可以在此轻松创建新的投票活动,设置投票主题、选项等信息。

管理投票

管理员或投票发起人可以在此对已有的投票活动进行全面管理,包括编辑、删除、查看投票结果等操作。

参与投票

用户可以通过简单的操作,选择自己心仪的选项参与投票,表达自己的意见和看法。

查看投票

可以在此查看投票的详细结果,了解各个选项的得票情况,为后续决策提供参考。

代码示例

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.View;
import org.springframework.web.servlet.view.JstlView;

import com.wantao.bean.Page;
import com.wantao.bean.Vote;
import com.wantao.bean.VoteOption;
import com.wantao.bean.VoteResult;
import com.wantao.daoImpl.VoteDaoImpl;
import com.wantao.daoImpl.VoteOptionDaoImpl;
import com.wantao.util.ChartUtil;
import com.wantao.util.PageUtil;

@Controller
public class VoteHandler {
    @RequestMapping(value = "/addVote", method = RequestMethod.POST)
    public String addVote(int channel, String voteName, String[] voteOptions) {// 只要name属性相同,前后端自动绑定
       VoteDaoImpl voteDaoImpl = new VoteDaoImpl();
       VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();
       Vote vote = new Vote();// 创建投票对象
       vote.setChannelId(channel);// 设置频道id
       vote.setVoteName(voteName);// 设置投票名称
       voteDaoImpl.addVote(vote);// 执行增加投票的方法
       int voteId = voteDaoImpl.findVoteByName(voteName).getVoteId();// 获取投票id
       for (String voteoption : voteOptions) {
          VoteOption voteOption = new VoteOption();// 创建投票选择对象
          voteOption.setVoteId(voteId);
          voteOption.setVoteOptionName(voteoption);
          voteOptionDaoImpl.addVoteOption(voteOption);
       }
       return "redirect:/index.jsp";
    }

    @RequestMapping(value = "/editorVote", method = RequestMethod.GET)
    public String editorVote(HttpSession session, @RequestParam(name = "currentPage") int currentPage) {
       VoteDaoImpl voteDaoImpl = new VoteDaoImpl();
       VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();
       List voteIds=new ArrayList();
       Page page=null;
       int everyPageCount = 10;// 每页记录数
       int totalCount = voteDaoImpl.findAllVoteCount();// 总记录数
       if (currentPage ==1) {//第一页创建page对象
           page = PageUtil.createPage(currentPage, everyPageCount, totalCount);
          page.setBeginIndex(currentPage);
       }else {//非第一页直接获取page对象
       page =(Page) session.getAttribute("page");
       }
       page.setCurrentPage(currentPage);
       page.setHasNextPage(PageUtil.getHasNextPage(currentPage, page.getTotalPage()));
       page.setHasPrePage(PageUtil.getHasPrePage(currentPage));
       List<Vote> votes = voteDaoImpl.findAllVote(page);
       List<VoteResult> voteResults = new ArrayList<VoteResult>();
       for (Vote vote : votes) {
          VoteResult voteResult = new VoteResult();
          List<VoteOption> voteOptions = voteOptionDaoImpl.findVoteOptionByVoteId(vote.getVoteId());
          voteResult.setVote(vote);
          voteResult.setVoteOptions(voteOptions);
          voteResults.add(voteResult);
          voteIds.add(vote.getVoteId());
       }
       session.setAttribute("voteResults", voteResults);
       session.setAttribute("page", page);
       session.setAttribute("voteIds", voteIds);
       return "editorVote";
    }

    @RequestMapping(value = "/delete")
    public String deleteVote(@RequestParam(value = "currentPage") int currentPage, @RequestParam(value = "id") int id) {
       VoteDaoImpl voteDaoImpl = new VoteDaoImpl();
       VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();
       voteOptionDaoImpl.deleteVoteOption(id);
       voteDaoImpl.deleteVote(id);
       return "redirect:editorVote?currentPage="+currentPage;
    }
}
以上就是系统的大致内容了,感兴趣的同学可以通过连接 下载​​​​​​​源码~

标签:管理系统,springframework,new,开源,投票,import,currentPage,page
From: https://blog.csdn.net/u010479989/article/details/143316325

相关文章