0


ssm+vue高校实验室管理系统源码和论文

ssm+vue高校实验室管理系统源码和论文081

开发工具:idea
数据库mysql5.7+
数据库链接工具:navcat,小海豚等
技术:ssm

一.****毕业设计的内容

本高校实验室管理系统采用Java语言、MySQL数据库,基于SSM框架进行开发设计,系统主要实现了管理员模块、教师模块以及学生模块三大部分,具体如下:

管理员模块:1、管理员登录 2、管理注册用户信息(教师、学生),包含学号/工号、密码、联系方式3、实验室资源管理(实验室的增删改查)4、掌握实验室分配使用情况(查看实验室是否被预订,查看实验室当前课程信息)5、管理任课教师的课程安排和学生的预订信息(审核预约信息)、管理计费系统(对学生个人实验室使用依据时长计费。合理即可);

教师模块:1、注册(工号、密码、联系方式)、登录(不需验证码)2、用户信息查看与修改3、查看空闲实验室4、预约某个实验室5、查看实验课程日程安排(自己预约过的实验室信息、课程信息(包括上课时间、课程名))6、处理学生反馈信息(学生给教师留言的信息)

学生模块:1、注册(工号、密码、联系方式)、登录(不需验证码)2、用户信息查看与修改3、查看空闲实验室和剩余机位数量。4、完成实验选课(选取任课老师预订的课程)5、反馈实验信息(给任课老师)6、预约实验(自己课外时间去实验的,要收费,预约一个机位)7、实验计时收费

二.毕业设计的意义

目前,许多学校部门都基本应用了相应的信息管理手段,例如:学生宿舍管理信息系统,教务信息管理系统等。如今,不管是什么性质的单位,面对大量的数据信息都要能够进行有效的管理,需要有一个全面统筹的系统提供对这些海量信息数据的管理,因此高校实验室管理方面,开发设计实验室管理系统的发展空间是相当大的,对高校的发展有着巨大的意义与实用性。

对实验室的各种资源设备实现维护与监管,充分发挥其使用效益,实现资源的合理调配与共享.建立科学规范的实验室低值耗材管理模式,对实验室实行开放管理,统筹安排,最大限度地满足师生的实验需求.可使实验室管理人员有更多的时间去维护仪器设备,从本质上提高高校实验室管理的工作效率,促进实验室的规范化管理,从而大大提高实验室利用效率。高校实验室管理系统的建立不仅是对资源的一种共享,而且是对低效重复性工作的解放

package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.JiaoshiEntity;
import com.entity.view.JiaoshiView;

import com.service.JiaoshiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;

/**
 * 教师
 * 后端接口
 * @author 
 * @email 
 * @date 2021-04-19 16:46:14
 */
@RestController
@RequestMapping("/jiaoshi")
public class JiaoshiController {
    @Autowired
    private JiaoshiService jiaoshiService;
    
    @Autowired
    private TokenService tokenService;
    
    /**
     * 登录
     */
    @IgnoreAuth
    @RequestMapping(value = "/login")
    public R login(String username, String password, String captcha, HttpServletRequest request) {
        JiaoshiEntity user = jiaoshiService.selectOne(new EntityWrapper<JiaoshiEntity>().eq("gonghao", username));
        if(user==null || !user.getMima().equals(password)) {
            return R.error("账号或密码不正确");
        }
        String token = tokenService.generateToken(user.getId(), username,"jiaoshi",  "教师" );
        return R.ok().put("token", token);
    }
    
    /**
     * 注册
     */
    @IgnoreAuth
    @RequestMapping("/register")
    public R register(@RequestBody JiaoshiEntity jiaoshi){
        //ValidatorUtils.validateEntity(jiaoshi);
        JiaoshiEntity user = jiaoshiService.selectOne(new EntityWrapper<JiaoshiEntity>().eq("gonghao", jiaoshi.getGonghao()));
        if(user!=null) {
            return R.error("注册用户已存在");
        }
        Long uId = new Date().getTime();
        jiaoshi.setId(uId);
        jiaoshiService.insert(jiaoshi);
        return R.ok();
    }
    
    /**
     * 退出
     */
    @RequestMapping("/logout")
    public R logout(HttpServletRequest request) {
        request.getSession().invalidate();
        return R.ok("退出成功");
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
        Long id = (Long)request.getSession().getAttribute("userId");
        JiaoshiEntity user = jiaoshiService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 密码重置
     */
    @IgnoreAuth
    @RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
        JiaoshiEntity user = jiaoshiService.selectOne(new EntityWrapper<JiaoshiEntity>().eq("gonghao", username));
        if(user==null) {
            return R.error("账号不存在");
        }
        user.setMima("123456");
        jiaoshiService.updateById(user);
        return R.ok("密码已重置为:123456");
    }

    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,JiaoshiEntity jiaoshi, 
        HttpServletRequest request){

        EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>();
        PageUtils page = jiaoshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaoshi), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,JiaoshiEntity jiaoshi, HttpServletRequest request){
        EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>();
        PageUtils page = jiaoshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaoshi), params), params));
        return R.ok().put("data", page);
    }

    /**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( JiaoshiEntity jiaoshi){
           EntityWrapper<JiaoshiEntity> ew = new EntityWrapper<JiaoshiEntity>();
          ew.allEq(MPUtil.allEQMapPre( jiaoshi, "jiaoshi")); 
        return R.ok().put("data", jiaoshiService.selectListView(ew));
    }

     /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(JiaoshiEntity jiaoshi){
        EntityWrapper< JiaoshiEntity> ew = new EntityWrapper< JiaoshiEntity>();
         ew.allEq(MPUtil.allEQMapPre( jiaoshi, "jiaoshi")); 
        JiaoshiView jiaoshiView =  jiaoshiService.selectView(ew);
        return R.ok("查询教师成功").put("data", jiaoshiView);
    }
    
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        JiaoshiEntity jiaoshi = jiaoshiService.selectById(id);
        return R.ok().put("data", jiaoshi);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        JiaoshiEntity jiaoshi = jiaoshiService.selectById(id);
        return R.ok().put("data", jiaoshi);
    }
    

    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody JiaoshiEntity jiaoshi, HttpServletRequest request){
        jiaoshi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(jiaoshi);
        JiaoshiEntity user = jiaoshiService.selectOne(new EntityWrapper<JiaoshiEntity>().eq("gonghao", jiaoshi.getGonghao()));
        if(user!=null) {
            return R.error("用户已存在");
        }

        jiaoshi.setId(new Date().getTime());
        jiaoshiService.insert(jiaoshi);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody JiaoshiEntity jiaoshi, HttpServletRequest request){
        jiaoshi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(jiaoshi);
        JiaoshiEntity user = jiaoshiService.selectOne(new EntityWrapper<JiaoshiEntity>().eq("gonghao", jiaoshi.getGonghao()));
        if(user!=null) {
            return R.error("用户已存在");
        }

        jiaoshi.setId(new Date().getTime());
        jiaoshiService.insert(jiaoshi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody JiaoshiEntity jiaoshi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(jiaoshi);
        jiaoshiService.updateById(jiaoshi);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        jiaoshiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
    @RequestMapping("/remind/{columnName}/{type}")
    public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
                         @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
        map.put("column", columnName);
        map.put("type", type);
        
        if(type.equals("2")) {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            Calendar c = Calendar.getInstance();
            Date remindStartDate = null;
            Date remindEndDate = null;
            if(map.get("remindstart")!=null) {
                Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
                c.setTime(new Date()); 
                c.add(Calendar.DAY_OF_MONTH,remindStart);
                remindStartDate = c.getTime();
                map.put("remindstart", sdf.format(remindStartDate));
            }
            if(map.get("remindend")!=null) {
                Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
                c.setTime(new Date());
                c.add(Calendar.DAY_OF_MONTH,remindEnd);
                remindEndDate = c.getTime();
                map.put("remindend", sdf.format(remindEndDate));
            }
        }
        
        Wrapper<JiaoshiEntity> wrapper = new EntityWrapper<JiaoshiEntity>();
        if(map.get("remindstart")!=null) {
            wrapper.ge(columnName, map.get("remindstart"));
        }
        if(map.get("remindend")!=null) {
            wrapper.le(columnName, map.get("remindend"));
        }

        int count = jiaoshiService.selectCount(wrapper);
        return R.ok().put("count", count);
    }
    

}
package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.ShiyanshiEntity;
import com.entity.view.ShiyanshiView;

import com.service.ShiyanshiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;

/**
 * 实验室
 * 后端接口
 * @author 
 * @email 
 * @date 2021-04-19 16:46:14
 */
@RestController
@RequestMapping("/shiyanshi")
public class ShiyanshiController {
    @Autowired
    private ShiyanshiService shiyanshiService;
    

    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ShiyanshiEntity shiyanshi, 
        HttpServletRequest request){

        EntityWrapper<ShiyanshiEntity> ew = new EntityWrapper<ShiyanshiEntity>();
        PageUtils page = shiyanshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shiyanshi), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ShiyanshiEntity shiyanshi, HttpServletRequest request){
        EntityWrapper<ShiyanshiEntity> ew = new EntityWrapper<ShiyanshiEntity>();
        PageUtils page = shiyanshiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shiyanshi), params), params));
        return R.ok().put("data", page);
    }

    /**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ShiyanshiEntity shiyanshi){
           EntityWrapper<ShiyanshiEntity> ew = new EntityWrapper<ShiyanshiEntity>();
          ew.allEq(MPUtil.allEQMapPre( shiyanshi, "shiyanshi")); 
        return R.ok().put("data", shiyanshiService.selectListView(ew));
    }

     /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ShiyanshiEntity shiyanshi){
        EntityWrapper< ShiyanshiEntity> ew = new EntityWrapper< ShiyanshiEntity>();
         ew.allEq(MPUtil.allEQMapPre( shiyanshi, "shiyanshi")); 
        ShiyanshiView shiyanshiView =  shiyanshiService.selectView(ew);
        return R.ok("查询实验室成功").put("data", shiyanshiView);
    }
    
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ShiyanshiEntity shiyanshi = shiyanshiService.selectById(id);
        return R.ok().put("data", shiyanshi);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ShiyanshiEntity shiyanshi = shiyanshiService.selectById(id);
        return R.ok().put("data", shiyanshi);
    }
    

    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ShiyanshiEntity shiyanshi, HttpServletRequest request){
        shiyanshi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(shiyanshi);

        shiyanshiService.insert(shiyanshi);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ShiyanshiEntity shiyanshi, HttpServletRequest request){
        shiyanshi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(shiyanshi);

        shiyanshiService.insert(shiyanshi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ShiyanshiEntity shiyanshi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(shiyanshi);
        shiyanshiService.updateById(shiyanshi);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        shiyanshiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
    @RequestMapping("/remind/{columnName}/{type}")
    public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
                         @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
        map.put("column", columnName);
        map.put("type", type);
        
        if(type.equals("2")) {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            Calendar c = Calendar.getInstance();
            Date remindStartDate = null;
            Date remindEndDate = null;
            if(map.get("remindstart")!=null) {
                Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
                c.setTime(new Date()); 
                c.add(Calendar.DAY_OF_MONTH,remindStart);
                remindStartDate = c.getTime();
                map.put("remindstart", sdf.format(remindStartDate));
            }
            if(map.get("remindend")!=null) {
                Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
                c.setTime(new Date());
                c.add(Calendar.DAY_OF_MONTH,remindEnd);
                remindEndDate = c.getTime();
                map.put("remindend", sdf.format(remindEndDate));
            }
        }
        
        Wrapper<ShiyanshiEntity> wrapper = new EntityWrapper<ShiyanshiEntity>();
        if(map.get("remindstart")!=null) {
            wrapper.ge(columnName, map.get("remindstart"));
        }
        if(map.get("remindend")!=null) {
            wrapper.le(columnName, map.get("remindend"));
        }

        int count = shiyanshiService.selectCount(wrapper);
        return R.ok().put("count", count);
    }
    

}

本文转载自: https://blog.csdn.net/weixin_46437112/article/details/132555512
版权归原作者 程序猿毕业分享网 所有, 如有侵权,请联系我们删除。

“ssm+vue高校实验室管理系统源码和论文”的评论:

还没有评论