Java项目:ssm高校党员管理系统
创始人
2024-04-16 09:56:49
0

作者主页:源码空间站2022

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

高校党员信息管理系统,分为普通用户和管理员两种角色。

普通用户登录后主要功能有:

我的中心:首页、个人资料、修改密码;
党费信息:党费信息查询、党费缴纳;
通知查询:查看通知;
党员成绩信息:党课信息查询
个人操作日志:个人操作日志;

管理员登录后主要功能有:

系统用户管理:首页、管理员账号管理、添加管理kmuu账号、修改密码;
普通用户管理:用户信息查询、用户信息添加;
党员信息管理:正式党员查询、预备党员查询、发展对象查询、入党积极分子查询、入党申请人查询;
党组织管理:党组织查询、党组织添加;
党员党课成绩:党课信息查询、党课添加;
党费信息管理:党费信息管理
党员成绩管理:党员成绩查询、党员成绩添加;
通知信息管理:通知信息查询、通知信息添加;
党员活动管理:活动信息查询、活动信息添加;
操作日志管理:操作日志查询;

数据备份:数据备份;

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 
6.数据库:MySql 5.7版本;

技术栈

1. 后端:Spring SpringMVC MyBatis
2. 前端:JSP+Bootstrap+JQuery+AmazeUI

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置
3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
5. 运行项目,输入localhost:8081 登录

运行截图

相关代码 

(Active)表控制层

package com.bs.controller;import com.bs.pojo.*;
import com.bs.service.ActiveService;
import com.bs.service.OptionService;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
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.bind.annotation.ResponseBody;import javax.servlet.http.HttpSession;
import java.util.Date;/*** (Active)表控制层** @author makejava* @since 2020-03-31 20:40:23*/
@Controller
@RequestMapping("active")
public class ActiveController {/*** 服务对象*/@Autowiredprivate ActiveService activeService;private static Option option = new Option();private static ResultBean resultBean = new ResultBean();@Autowiredprivate OptionService optionService;/*** 管理员操作方法** @param rootUser*/public void adminOption(Admin rootUser) {option.setOptionUser(rootUser.getAdminAccount());option.setRoleName(rootUser.getAdminRole());option.setOptionTime(new Date());option.setAdminId(rootUser.getAdminId());}/*** 超级管理员 查看所有课程信息** @param page* @param pageSize* @param model* @return*/@RequestMapping("activeList")public String activeList(@RequestParam(value = "page", defaultValue = "1") int page,@RequestParam(value = "pageSize", defaultValue = "5") int pageSize,Model model, HttpSession session, Active active) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//查询所有PageInfo activePageInfo = activeService.queryAll(page, pageSize, active);System.out.println("====所有信息===" + activePageInfo.getList());if (rootUser != null) {//添加操作日志option.setOptionName("查看所有通知信息.");//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}model.addAttribute("activePageInfo", activePageInfo);return "admin/active-list";}/*** 前往添加界面** @return*/@RequestMapping("goAdd")public String goAdd(HttpSession session, Model model) {session.removeAttribute("insertmessage");session.removeAttribute("editmassage");return "admin/add-active";}/*** 管理员添加** @param active* @param model* @return*/@RequestMapping(value = "addActive", method = RequestMethod.POST)public String addActive(Active active, Model model, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//添加操作if (active != null) {System.out.println("=====存入的信息====" + active);active = activeService.insert(active);if (rootUser != null) {//添加操作日志option.setOptionName("添加的活动为:" + active.getActiveTitle());//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}session.setAttribute("insertmessage", "success");return "redirect:/active/activeList";} else {session.setAttribute("insertmessage", "isEmpty");return "redirect:/active/activeList";}}/*** 管理员 前往修改界面** @return*/@RequestMapping("goEdit")public String goEditGrade(Integer activeId, Model model, HttpSession session) {session.removeAttribute("editmassage");session.removeAttribute("insertmessage");//当前信息Active active = activeService.queryById(activeId);System.out.println("当前信息===" + active);model.addAttribute("activeInfo", active);return "admin/edit-active";}/*** 管理员 查看-修改信息** @param active* @param model* @param session* @return*/@RequestMapping(value = "editActive", method = RequestMethod.POST)public String editActive(Active active, Model model, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//修改操作if (active != null) {System.out.println("=======存入的信息为:"+active);active = activeService.update(active);if (rootUser != null) {//添加操作日志操作option.setOptionName("修改标题为 " +active.getActiveTitle()+"的信息");//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}session.setAttribute("editmassage", "success");model.addAttribute("activeInfo", active);return "redirect:/active/activeList";} else {session.setAttribute("editmassage", "isEmpty");return "redirect:/active/activeList";}}/*** 管理员删除** @param activeId* @param session* @return*/@RequestMapping(value = "remove", method = RequestMethod.POST)@ResponseBodypublic ResultBean remove(@RequestParam Integer activeId, HttpSession session) {session.removeAttribute("editmassage");session.removeAttribute("insertmessage");//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//删除普通管理员操作if (activeId != null) {Active queryById = activeService.queryById(activeId);boolean delete = activeService.deleteById(activeId);if (delete) {//添加操作日志操作option.setOptionName("移除标题为" + queryById.getActiveTitle() + "的信息");//调用管理员操作方法adminOption(rootUser);}optionService.insert(option);resultBean.setErrno(0);resultBean.setMessage("操作成功");}return resultBean;}}

(Admin)表控制层

package com.bs.controller;import com.bs.pojo.Admin;
import com.bs.pojo.Option;
import com.bs.pojo.ResultBean;
import com.bs.service.AdminService;
import com.bs.service.OptionService;
import com.github.pagehelper.PageInfo;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
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.bind.annotation.ResponseBody;import javax.servlet.http.HttpSession;
import java.util.Date;/*** (Admin)表控制层** @author makejava* @since 2020-04-01 07:55:11*/
@Controller
@RequestMapping("admin")
public class AdminController {private static Option option = new Option();private static ResultBean resultBean = new ResultBean();/*** 服务对象*/@Autowiredprivate AdminService adminService;@Autowiredprivate OptionService optionService;/*** 验证码验证** @param session* @param message* @return 指定页面*/@RequestMapping("/loginView")public String loginView(HttpSession session, String message) {session.setAttribute("loginMsg", "登陆失败,验证码错误");System.out.println("验证码错误");return "redirect:/view/404";}/*** 登录** @param admin* @return*/@RequestMapping("checkLogin")public String checkLogin(Admin admin, Model model, HttpSession session) {System.out.println("====================开始登陆=======" + admin);
//        String password = new Md5Hash(admin.getAdminPassword(),admin.getAdminAccount(),1024).toString();
//        System.out.println("========"+password);try {//1.认证 创建令牌UsernamePasswordToken token = new UsernamePasswordToken(admin.getAdminAccount(), admin.getAdminPassword());//2.获取主体对象Subject subject = SecurityUtils.getSubject();//3.登陆方法subject.login(token);if (subject.isAuthenticated()) {System.out.println("认证成功");Admin byAccount = adminService.queryByAccount(admin.getAdminAccount());if (byAccount.getFlag().equals(1)) {//数据传递是不带密码byAccount.setAdminPassword("");//添加操作日志option.setOptionName(byAccount.getAdminAccount() + ":登录.");//调用管理员操作方法adminOption(byAccount);optionService.insert(option);session.setAttribute("user", byAccount);session.setAttribute("loginMsg", "登录成功");return "redirect:/admin/index";}}} catch (AuthenticationException e) {e.printStackTrace();System.out.println("认证失败");}session.setAttribute("loginMsg", "账号或密码错误");return "redirect:/view/404";}/*** 超级管理员 查看所有管理员信息** @param page* @param pageSize* @param model* @return*/@RequestMapping("adminList")public String adminList(@RequestParam(value = "page", defaultValue = "1") int page,@RequestParam(value = "pageSize", defaultValue = "5") int pageSize,Model model, HttpSession session, Admin admin) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//查询所有管理员PageInfo adminPageInfo = adminService.queryAll(page, pageSize, admin);System.out.println("====所有管理员===" + adminPageInfo.getList());if (rootUser != null) {//添加操作日志option.setOptionName("查看所有管理员.");//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}model.addAttribute("adminPageInfo", adminPageInfo);return "admin/admin-list";}/*** 前往添加管理员界面** @return*/@RequestMapping("goAddAdmin")public String goAddAdmin(HttpSession session) {session.removeAttribute("insertmessage");return "admin/add-admin";}/*** 超级管理员添加其他管理员** @param admin* @param model* @return*/@RequestMapping("addAdmin")public String addAdmin(Admin admin, Model model, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//添加管理员操作if (admin != null) {Admin byAccount = adminService.queryByAccount(admin.getAdminAccount());if (byAccount == null) {admin.setAddTime(new Date());admin = adminService.insert(admin);if (rootUser != null) {//添加操作日志option.setOptionName("添加管理员,账号为:" + admin.getAdminAccount());//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}session.setAttribute("insertmessage", "success");return "redirect:/admin/adminList";} else {session.setAttribute("insertmessage", "errorRepete");}} else {session.setAttribute("insertmessage", "errorNull");}return "redirect:/admin/goAddAdmin";}/*** 前往修改管理员密码界面** @return*/@RequestMapping("goEditPassword")public String goEditPassword(Model model, HttpSession session) {session.removeAttribute("editmassage");//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);model.addAttribute("adminInfo", rootUser);return "admin/password";}/*** 修改密码** @param admin* @param model* @param session* @return*/@RequestMapping("editPassword")public String editPassword(Admin admin, Model model, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//修改密码操作if (admin != null) {admin.setAdminId(rootUser.getAdminId());System.out.println("=====修改的信息=====" + admin);admin.setAddTime(new Date());admin = adminService.update(admin);if (rootUser != null) {//添加操作日志操作option.setOptionName("修改密码.");//调用管理员操作方法adminOption(rootUser);optionService.insert(option);}session.setAttribute("editmassage", "success");model.addAttribute("adminInfo", admin);}return "redirect:/";}/*** 超级管理员修改普通管理员权限** @param adminId* @param flag* @param session* @return*/@RequestMapping(value = "editFlag", method = RequestMethod.POST)@ResponseBodypublic ResultBean editFlag(@RequestParam Integer adminId, @RequestParam Integer flag, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//授权操作if (adminId != null && flag != null) {Admin admin = new Admin();admin.setAdminId(adminId);admin.setFlag(flag);admin.setAddTime(new Date());System.out.println("=====修改的信息=====" + admin);admin = adminService.update(admin);if (rootUser != null && flag == 1) {//添加操作日志操作option.setOptionName("给管理员授权");//调用管理员操作方法adminOption(rootUser);} else {//添加操作日志操作option.setOptionName("冻结管理员");//调用管理员操作方法adminOption(rootUser);}optionService.insert(option);resultBean.setErrno(0);resultBean.setMessage("操作成功");}return resultBean;}/*** 超级管理员删除普通管理员** @param adminId* @param session* @return*/@RequestMapping(value = "removeAdmin", method = RequestMethod.POST)@ResponseBodypublic ResultBean removeAdmin(@RequestParam Integer adminId, HttpSession session) {//当前登陆账号信息Admin rootUser = (Admin) session.getAttribute("user");System.out.println("当前登陆账号信息===" + rootUser);//删除普通管理员操作if (adminId != null) {Admin admin = adminService.queryById(adminId);boolean delete = adminService.deleteById(adminId);if (delete) {//添加操作日志操作option.setOptionName("移除管理员" + admin.getAdminAccount());//调用管理员操作方法adminOption(rootUser);}optionService.insert(option);resultBean.setErrno(0);resultBean.setMessage("操作成功");}return resultBean;}/*** 通过主键查询单条数据** @param id 主键* @return 单条数据*/@RequestMapping("selectOne")@ResponseBodypublic Admin selectOne(Integer id) {return adminService.queryById(id);}/*** 查询多条数据** @param page     页码* @param pageSize 页大小* @param admin    实体* @return PageInfo 分页数据集合*/@RequestMapping("searchAll")@ResponseBodypublic PageInfo searchAll(@RequestParam(value = "page", defaultValue = "1") int page,@RequestParam(value = "pageSize", defaultValue = "5") int pageSize,Admin admin) {return adminService.queryAll(page, pageSize, admin);}/*** 管理员操作方法** @param rootUser*/public void adminOption(Admin rootUser) {option.setOptionUser(rootUser.getAdminAccount());option.setRoleName(rootUser.getAdminRole());option.setOptionTime(new Date());option.setAdminId(rootUser.getAdminId());}
}

如果也想学习本系统,下面领取。关注并回复:026ssm 

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
ChatGPT 怎么用最新详细... ChatGPT 以其强大的信息整合和对话能力惊艳了全球,在自然语言处理上面表现出了惊人...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...